J'ai construit une application d'affichage 3D en Javascript/canvas cela marche plutôt bien. J'ai récemment implémenté la possibilité de mapper des textures. J'importe des modèles 3d à partir du format stl qui fonctionnent bien car ils ne stockent que des tris, ils sont donc faciles à importer car je n'ai pas besoin de les décomposer mais ils ne stockent pas de textures.Obtention de la carte de texture à partir d'un modèle 3D
Les textures sont stockées est ainsi en tant que telle
textureObject(){
this.img=image //Js image object
this.triArray=[[x1,y1],[x2,y2]...]//Map of where polys
function returnImage(int i){
//returns a cropped triangle around the coordinates in the triArray.
}
}
La mise en œuvre réelle est un peu différent mais c'est la viande et la sauce de celui-ci. Bien que ce ne soit pas un mappage de texture parfait, c'est juste une transformation affine qui peut sembler moche comme péché mais qui est assez bonne pour moi. Mon problème est que je ne suis pas sûr de savoir comment sauvegarder le triArray à partir d'un objet 3D qui est déjà créé de sorte que je n'ai pas besoin de créer un tout nouveau format de fichier juste pour ce projet.
Je pense avoir 2 options:
Faire un importateur pour un autre format de fichier s'il y a un qui stocke ses informations de coordonnées de texture dans le fichier. (Mais quel format de fichier?)
OU
ou est-il un moyen standard de textures cartographiques aux objets que je pourrais alors mettre en œuvre pour créer mon tableau? (Quelle est la méthode?)
J'ai finalement résolu cela moi-même, j'ai utilisé STL et j'ai découvert comment ils sont disposés et a écrit un spectateur (http: //sobriety.1free. ws/index.php? action = OBJViewer) Je l'implémenterai dans mon code principal quand je pourrai mettre la main sur des modèles subtri 100tri ou que j'apprendrai comment faire le mien. – Sobriety