Mr.Gecko
01/02/2007, 22h47
Allons bon, c'est sans doute la section la mieux appropriée.
Voilà, j'ai parsé mon .x afin d'obtenir tout un tas d'infos, dont ce qui nous intéresse ici, les coordonnées uv de chaque vertex. Pas de problèmes, je texture un plan composé de deux triangles sans problème.
Par contre, lorsqu'un vertex est associé à plus d'une face je rencontre une situation facheuse !
En effet, pour 8 vertex, je récupère 8 coordonnées.
Cependant, lorsqu'un vertex est utilisé sur deux faces, il ne doit pas forcément être mappé de la même manière : il n'a pas les mêmes coordonnées. Je m'exprime mal voilà donc un récapitulatif :
http://mrgecko.free.fr/diversaivariai/text_prob.JPG
Si je n'avais que le plan vertical, je devrais passer à glTexCoord2f() les coordonnées (0,1) au vertex entouré de jaune, en haut ) gauche, et les coordonnées (1,1) à celui de droite.
Malheuresement, ce premier vertex est aussi usé par le second plan pour ce plan, les coordonnées uv de ce vertex devraient correspondre au coin bas-gauche de ma texture, à savoir (0,0). Pour le deuxième (1,0).
On voit bien sur l'image de droite que le second plan est mappé n'importe comment, puisqu'il utilise pour son coin gauche inférieur les coordonnées du coin gauche supérieur du plan vertical alors qu'ils devraient avoir les mêmes.
Y'a-t-il moyen de résoudre le problème ? kit à recoder le plugin en C s'il le faut...
Sinon je dois reparser un autre format..nif.. en fait si je pouvais de-welder les points qui ont même coordonnées (créer deux points distincts si un point partage deux faces) ca résoudrait le problème.
comprendo :D ou alors je suis à côté de la plaque :D ?
Voilà, j'ai parsé mon .x afin d'obtenir tout un tas d'infos, dont ce qui nous intéresse ici, les coordonnées uv de chaque vertex. Pas de problèmes, je texture un plan composé de deux triangles sans problème.
Par contre, lorsqu'un vertex est associé à plus d'une face je rencontre une situation facheuse !
En effet, pour 8 vertex, je récupère 8 coordonnées.
Cependant, lorsqu'un vertex est utilisé sur deux faces, il ne doit pas forcément être mappé de la même manière : il n'a pas les mêmes coordonnées. Je m'exprime mal voilà donc un récapitulatif :
http://mrgecko.free.fr/diversaivariai/text_prob.JPG
Si je n'avais que le plan vertical, je devrais passer à glTexCoord2f() les coordonnées (0,1) au vertex entouré de jaune, en haut ) gauche, et les coordonnées (1,1) à celui de droite.
Malheuresement, ce premier vertex est aussi usé par le second plan pour ce plan, les coordonnées uv de ce vertex devraient correspondre au coin bas-gauche de ma texture, à savoir (0,0). Pour le deuxième (1,0).
On voit bien sur l'image de droite que le second plan est mappé n'importe comment, puisqu'il utilise pour son coin gauche inférieur les coordonnées du coin gauche supérieur du plan vertical alors qu'ils devraient avoir les mêmes.
Y'a-t-il moyen de résoudre le problème ? kit à recoder le plugin en C s'il le faut...
Sinon je dois reparser un autre format..nif.. en fait si je pouvais de-welder les points qui ont même coordonnées (créer deux points distincts si un point partage deux faces) ca résoudrait le problème.
comprendo :D ou alors je suis à côté de la plaque :D ?