Coordonnées de texture foireuses avec lib3ds - C++ - Programmation
Marsh Posté le 17-12-2006 à 23:55:05
Salut,
J'utilise pas cette lib, mais texelL semble être un float[2]. Tu as bien un opérateur = acceptant un float[2] défini pour Vector2?
Marsh Posté le 18-12-2006 à 14:55:05
Oui, évidemment. J'ai également verifié ces opérateurs, au cas où...
Marsh Posté le 18-12-2006 à 22:48:49
...ah...mais quelle est la différence alors?
Ce qui m'étonne dans ce cas, c'est que j'utilise aussi bien ma déclaration de vertex pour créer des vertex buffers avec DirectX qu'avec OpenGL (via glBindBufferARB). Donc ça signifie que faire appel aux routines glTexCoords2f (celle qui est utilisée dans les exemples de la lib3ds, donc) est un cas spécial de mappage de texture!?
Marsh Posté le 19-12-2006 à 00:47:16
c'est pas ça mais l'origine et le sens des repères n'est pas forcément le même.
à vérifier, mais je pense que 3DS utilisait la convention OpenGl.
Marsh Posté le 19-12-2006 à 11:15:54
C'est ça! merci beaucoup!
Etonnant tout de même qu'OpenGL utilise 2 conventions différentes
Marsh Posté le 19-12-2006 à 15:28:26
Ben, c'est la même chose pour le repère
Et la logique OpenGL est à mon goût plus logique que celle de D3D
Marsh Posté le 19-12-2006 à 16:33:56
akalash47 a écrit : C'est ça! merci beaucoup! |
normalement tu n'en as qu'une par API. (pour les coordonnées UV).
c'est juste que suivant quelle API tu utilises, ce qui provient de 3DS ou autre soft d'authoring 3D aura à être transformé ou pas.
Marsh Posté le 19-12-2006 à 16:35:19
IrmatDen a écrit : Ben, c'est la même chose pour le repère |
pour les coordonnées c'est plus rigide comme convention. par question repère main gauche/main droite, tu t'en fous tu peux prendre n'importe quelle convention du moment que tu t'y tiens tout le long de ton code.
Marsh Posté le 19-12-2006 à 17:15:43
Le problème se pose quand tu as des fichiers exportés dans un repère que tu utilises dans une api/moteur utilisant l'autre, non? ce qui revient au même que le problème d'UV? (le problème se voit nettement plus vite c'est clair )
Marsh Posté le 17-12-2006 à 23:31:00
Bonjour,
J'utilise la lib3ds pour charger des mesh dans mon appli 3D.
Je suis un peu surpris car toutes les informations de vertex (position, normale, couleur) du mesh sont correctes...sauf les uv! Du moins avec tous les modèles que j'ai essayé, les textures ne sont pas correctement appliquées sur l'objet.
Voila mon code de chargement des vertex buffers:
Est-ce que ma manière de faire est incorrecte? Ou est-ce que ça pourrait provenir de la lib elle-même?
...Pour une fois, je préférerais que ce soit moi
Message édité par akalash47 le 18-12-2006 à 14:59:25