Je travaille avec SharpGL et j'ai un modèle .3ds que je veux rendre dans mon programme. Je cherche un extrait de code ou un didacticiel pour me lancer. Editer: Travailler avec .NET pour créer une application WPF avec un contrôle SharpGL pour le dessin OpenGL.Importation de modèles de 3ds Max vers un programme SharpGL (OpenGL/C#)?
Répondre
Vous devez écrire un importateur/lecteur/chargeur de format de fichier. Toi même. Ce qui est une douleur majeure. La bonne chose est que le format de fichier .3ds est bien connu et documented.
Cependant, la mauvaise chose est que le format .3ds est obsolète et ne stocke pas toutes les données dont l'application 3d moderne aurait besoin. Par exemple, il ne stocke pas les normales de surface et ne prend pas en charge les maillages skinnés. J'ai écrit 3ds lecteur avant, ce n'était pas très amusant. L'autre bonne chose est que quelqu'un a probablement écrit 3ds loader avant et vous pouvez le trouver en utilisant google. La mauvaise chose est que (par la loi de Murphy), ils l'ont probablement implémenté de telle façon que cela rendra complètement inutilisable votre code.
Donc normalement, il est recommandé d'utiliser un autre format bien documenté (et écrire le lecteur pour ce format à la place). Ou vous pouvez aller de l'avant et concevoir votre propre format pour les modèles qui prend en charge tout ce que vous voulez. Cependant, pour exporter vers ce format à partir de 3ds max, vous aurez besoin de votre propre plugin exportateur pour 3ds max (en utilisant 3ds max sdk) qui nécessite beaucoup de familiarité avec les mathématiques et la programmation 3D (en C++). J'ai déjà écrit plusieurs exportateurs auparavant, et c'est aussi une grande souffrance.
Donc, la solution la plus simple serait d'utiliser un format simple qui vous permet d'écrire facilement un chargeur. Quelque chose à base de texte, comme * .dxf. Ou vous pouvez rechercher un autre format de fichier de modèle 3D qui, heureusement, est livré avec une bibliothèque pour le charger. Par exemple, collada peut être l'un des candidats, bien que personnellement, je n'aime pas du tout le fait qu'il utilise XML.
- 1. max sdk 3ds MAX 2013
- 2. Comment étendre un matériau 3Ds Max correctement
- 3. 3ds max plugin pour navigateur IE
- 4. fuites de mémoire connues dans 3ds max?
- 5. 3DS Max - Rendu des normales de surface
- 6. pondération vertex et 3ds max
- 7. TROIS JS 3ds Max Dégradés non appliqués
- 8. 3ds max export modèle au format stl
- 9. Os dans 3DS max ou blender
- 10. Primitive spline personnalisée dans MaxScript (3ds Max)
- 11. 3ds max exportation animation à gif
- 12. 3ds max - écran objet sélectionné tiré
- 13. Open source C/C++ 3d renderer (avec prise en charge de 3ds modèles max)
- 14. Comment ajouter un "environnement" à ma scène dans 3ds MAX?
- 15. Lines en 3ds Max pour Faire un objet surface
- 16. jMonkeyEngine: importation de modèles .x
- 17. Importation par programme de données CSV vers Access
- 18. SharpGL folie
- 19. .3ds avec JOGL?
- 20. Comment créer une grille 3D dans 3DS Max?
- 21. Importation de Bugzilla vers Redmine
- 22. Importation de XML vers WordPress
- 23. Importation de CSV vers SQLITE
- 24. comment importer le gréement et les os de Poser11 à 3Ds Max
- 25. SharpGL et géométrie Shader
- 26. Importation d'un programme à partir d'ActionScript 3 vers Adobe AIR
- 27. Problème de rendu 3ds
- 28. Exporter des objets de 3Ds max 2010 avec V-Ray masqué à Virtools
- 29. 3DS Matériel -> OpenGL
- 30. Importation XML vers Oracle
Je pense que vous trouverez la plupart des 3DS C# chargeurs travailleront exclusivement avec D3D. Juste par intérêt, pourquoi utilisez-vous SharpGL et non SlimDX ou similaire? Ecrivez-vous pour Mono ou .NET? – Robinson
Je travaille avec .NET. Je n'utilise pas DirectX car je ne l'ai pas utilisé auparavant. – bobble14988