Question

Je travaille sur un raytracer et je ne veux pas réinventer la roue en matière de formats de fichiers pour les scènes 3D. Je veux aussi être en mesure de tester mon programme avec des scènes faites par d'autres. Je suis un programmeur pas un modeleur 3D.

Y at-il un format spécifique scène 3D ou bien adapté pour le raytracing?

Était-ce utile?

La solution

Quand j'écrit mon raytracer, j'ai écrit un exportateur Blender (il est gratuit). Blender lui-même peut charger des dizaines de formats, puis un simple script python 20 ligne vous donnera les points que vous avez besoin.

La fonction super agréable est que, dans Blender, vous pouvez convertir tous les visages de modèle à des triangles. La plupart des traceurs de rayons ne fonctionnent avec des triangles (ou des polygones de convertir à triangles en interne). Donc, avoir Blender faire le travail lourd de ces polygones est crissement super sympa.

Pour commencer avec 20 lignes de code vous permettra d'exporter seulement les polygones. De là, vous pouvez l'étendre à des matériaux de sortie, etc. Je Normales, comme cette méthode, parce que je peux obtenir les données que je veux dans le format que je veux, mais toujours la possibilité d'importer des modèles plus complexes.

D'autres méthodes fonctionnera, mais vous devez d'abord comprendre comment analyser un fichier, puis l'obtenir dans le format que vous voulez. Je code plutôt un traceur de rayons d'un analyseur.

Autres conseils

Il n'y a vraiment pas spécifique de format ray tracing (sauf si vous comptez le format PovRay). raytracing est une méthode de rendu des images qui peuvent être appliquées à toute scène. Les gens des scènes de modélisation seront en utilisant le logiciel de modélisation de leur choix et enregistrez généralement dans le format par défaut du modeleur.

Il semble que vous n'avez des exigences pour charger un format particulier (ou que vous ne poseriez pas) donc je devine que vous voulez juste être en mesure d'importer différentes géométrie de autour du filet pour les tests. Si tel est le cas, consultez le forum au titre du FPMO: http://ompf.org/ Ils ont une section avec des liens à des scènes librement disponibles. Vous pouvez avoir une idée de ce qui est là commun.

Une autre option est d'utiliser la bibliothèque d'importation d'actifs Ouvert: http://assimp.sourceforge.net/

cela peut importer un grand nombre de formats de fichiers pour vous. Il leur charge tous dans une structure de données interne, que vous pouvez ensuite traiter comme bon vous semble. Il utilise une licence BSD, il devrait être licence raisonnablement compatible avec ce que vous faites.

Je ne crois pas qu'il y ait une particulière scène format utilisé, car les différents modélisateurs nécessitent des paramètres différents, et les directives de configuration, etc.

Le WaveFront .obj est cependant très populaire pour décrire des objets individuels dans les une scène, et de nombreux fichiers dans ce format sont disponibles sur Internet.

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