Android: Comment rendre les fichiers actifs de jeu lisibles à partir du code C ++ en utilisant NDK

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

  •  21-09-2019
  •  | 
  •  

Question

Je crée un jeu en utilisant la irrlicht c ++ graphiques 3D port moteur à la plate-forme Android. Le moteur graphique est écrit en C ++. Je dois être capable de charger des mailles et des textures etc de c ++ code. Mon plan actuel est de placer tous les fichiers d'actifs de jeu soit dans la res / répertoire brut ou le répertoire actif puis au démarrage copier ces fichiers sur la carte SD de sorte qu'ils sont atteignables à partir du code irrlicht c ++. Est-ce la meilleure façon de rendre les fichiers multimédias de jeu de c ++ Accessable?

Était-ce utile?

La solution

Il y a plusieurs façons de le faire ... ils ont chacun leurs propres limites, donc je ne peux pas donner une bonne recommandation sans en savoir plus sur votre situation. Voici quelques liens vers des discussions avec quelques conseils qui peuvent vous aider:

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

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

Je peux vous donner des suggestions plus précises si je savais a) Combien de ressources dont vous avez besoin pour accéder b) La taille de la plus grande ressource que vous rencontrerez, plus particulièrement, sont toutes vos ressources <1 Mo en taille non compressé?

Autres conseils

En théorie, vous pouvez passer le InputStream en code natif C ++ et avoir appeler ses méthodes. Vous pouvez même mettre en place un istream au-dessus de ceux-ci. Cependant, je ne pense pas que ce soit ce que vous êtes après.

Gardez à l'esprit que les fichiers d'actifs dans l'APK ne sont pas stockés comme, eh bien, les fichiers. Ils sont compressés et archivés - un APK est en fait un fichier ZIP renommé. Donc, je vous recommande de copier l'actif dans un dossier de données à partir de Java, en faisant passer le nom de cette copie à C ++.

, par ailleurs, des règles complètement écrit à ces actifs.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top