Question

Im écrire un moteur de jeu et je me demande quel format de modèle 3D dois-je utiliser / charge / export? Obj semble universel et facile, mais il semble aussi peu fiable en ce que la plupart des modèles là-bas contiennent des erreurs et il ne stocke pas près autant que d'autres formats.

Il semble y avoir des formats spécialement pour les jeux tels que MD2 / 3/5, mais je ne suis pas sûr, j'utiliser wings3d si le modèle I, et je ne sais pas ce que d'autres détails au-delà de chargement purement ce que je besoin et le soutien du format Id ont à mettre en œuvre, comme aurais-je besoin de mettre en œuvre des connaissances indigènes? et puis-je utiliser scénarisé par pièce animation plutôt que cinématique inverse et le truquage des os?

Était-ce utile?

La solution

Collada est un format basé sur XML ouvert pour les modèles 3D appartenant au groupe Khronos (normes OpenGL corps)

De la Collada.org FAQ:

Le jeu de fonctionnalités COLLADA 1.4.x comprend:

  • géométrie du maillage
  • Transformation hiérarchie (rotation, translation, de cisaillement, l'échelle, la matrice)
  • Effets
  • Shaders (Seizième, GLSL, GLES)
  • Matériaux
  • Textures
  • Eclairage
  • Caméras
  • dépecer
  • Animation
  • Physique (Les corps rigides, des contraintes, des poupées de chiffon, collision, volumes)
  • instanciation
  • Techniques
  • Multirepresentations
  • Actif
  • Les données utilisateur

Autres conseils

Avant de se soucier de ce que les formats 3D que vous voulez soutenir, je pense que vous devriez vraiment se concentrer sur les fonctionnalités que vous envisagez de mettre en œuvre dans votre moteur. Écrivez les bas que les exigences, et choisissez le format qui prend en charge les plus caractéristiques de la liste ... que vous souhaitez mettre en valeur votre moteur (je suppose que vous prévoyez pour votre moteur pour être accessible au public). Vous pouvez même rouler votre propre format, si votre moteur a des caractéristiques spécifiques (ce qui est toujours une bonne chose d'avoir un moteur de jeu).

Après cela, appuyer autant de formats populaires que vous pouvez (.X, .3DS, OBJ, .B3D) ... le moteur plus accessible est, plus les gens veulent travailler avec elle!

Collada est un format agréable et générique, mais comme Nils mentionne, il est un format idéal pour le déploiement final.

J'utiliser mon propre format binaire. J'ai essayé d'utiliser des formats existants, mais toujours courir dans les limites. Certains pourraient être contourné, d'autres où showstoppers.

Collada vaut peut-être regarder. Je ne pense pas que ce soit que le bien en tant que format pour être lu par un moteur 3D. Il est bien comme format général d'échange de données bien.

http://www.collada.org/mediawiki/index.php/Main_Page

1 pour Collada. Vous pouvez également un format binaire natif sur mesure pour le chargement très rapide (généralement juste un vidage binaire des données de vertex buffer / index, ainsi que du matériel et des données squelette, et les données de collision le cas échéant).

L'une des tendances dans l'industrie des jeux est de soutenir le chargement d'un format comme Collada dans la construction de développeur du moteur, mais aussi un ensemble d'outils qui exporte une version optimisée pour la libération. La version développeur peut mettre à jour dynamiquement le maillage, afin que les artistes enregistrer les modifications, le fichier est automatiquement rechargé leur permettant une (presque) vue WYSIWYG instant de leur modèle, mais en fournissant un format de sortie entièrement optimisé.

soutien Collada bien, puis fournir de bons convertisseurs depuis / vers les autres formats (cela pourrait être le plus dur). Cela vous donnera un maximum de flexibilité. Jetez un oeil à moteur C4

Collada est grande, mais il vit plus sur le côté de l'application 3D des choses. dire qu'il est préférable d'utiliser pour transférer des données entre les applications 3D, ne se charge pas des données 3D à partir d'un moteur de jeux. Avez-vous regardé dans Lua? Il est largement utilisé dans les jeux parce que son langage de script qui est à la fois rapide ridiculement (parfait pour les jeux) et très flexible (peut être utilisé pour représenter toutes les données dont vous avez besoin pour votre moteur).

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