Android: Cómo hacer archivos de elementos de juego legible desde el código C ++ usando NDK

StackOverflow https://stackoverflow.com/questions/2278359

  •  21-09-2019
  •  | 
  •  

Pregunta

Estoy creando un juego usando el puerto del motor c ++ gráficos 3D irrlicht a la plataforma Android. El motor gráfico está escrito en C ++. Tengo que ser capaz de cargar mallas y texturas, etc de código C ++. Mi plan actual es colocar todos los archivos de elementos de juego, ya sea en la res / directorio de crudo o el directorio de activos a continuación, en el arranque de copiar estos archivos a la tarjeta sd por lo que son accesibles desde el código irrlicht C ++. Es esta la mejor manera de hacer que los archivos multimedia de juego accesible desde C ++?

¿Fue útil?

Solución

Hay varias maneras de hacer esto ... cada uno tiene sus propias limitaciones, así que no puedo dar una buena recomendación sin saber más acerca de su situación. Aquí hay algunos enlaces a las discusiones con algunos consejos que pueden ayudarle a salir:

http://groups.google.com/group/android- NDK / browse_thread / hilo / 842ca9d7d82995b0

http: //groups.google.com/group/android-ndk/browse_thread/thread/4e25a5dfd46f8fea/1269bcd10bdb066d?lnk=gst&q=apk+compressed#1269bcd10bdb066d

Te puedo dar sugerencias más específicas si supiera a) ¿Cuántos recursos que necesitaba para acceder b) El tamaño del recurso más grande que se encontrará, más específicamente, son todos sus recursos <1 MB de tamaño sin comprimir?

Otros consejos

En teoría, se puede pasar a la InputStream nativa código C ++ y tienen que llamar a sus métodos. Incluso se puede implementar un istream en la parte superior de ellos. Sin embargo, no creo que esto es lo que está buscando.

Tenga en cuenta que los archivos de activos en el APK no se almacenan como, también, los archivos. Están comprimen y se archivan - un APK es en realidad un archivo ZIP renombrado. Así que recomiendo copiar el activo en una carpeta de datos desde dentro de Java, a continuación, pasar el nombre de archivo que se copia a C ++.

Esto, por cierto, completamente descarta escribir con esos activos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top