Je tente d'intégrer dans mon projet un objet mesh dont les textures sont définies par un script material.
Ces textures sont des png avec un canal alpha pour la transparence.
J'obtiens de drôles de choses : là où on devrait seulement voir à travers les faces associées à la texture concernée, il arrive qu'on voit aussi à travers les objets placés derrière (comme des rayons X), mais pas à tous les coups !
J'ai fait plusieurs tentatives avec les paramètres scene_blend et même transparent_sorting, mais je ne parviens pas à trouver la solution.
Plus fort, le résultat obtenu n'est pas le même suivant l'image de texture associée au material. Et même en essayant d'associer la même texture à deux material différents, le résultat est bon pour l'un, mais pas pour l'autre. (par exemple, ça semble moins bien fonctionner avec le feuillage vert qu'avec le brun dans mon archive). Le résultat est aussi différent suivant l'ordre dont on définit les material dans le script. Un casse-tête !
J'ai dû manquer un truc...
L'archive est ici http://lecartablededudule.pagesperso-or ... _alpha.zip
Voyez les feuilles brunes, c'est nickel. Voyez les feuilles vertes, bêrk !
J'aimerais bien mettre une capture ici, mais je ne sais pas comment faire.
Un extrait de mon fichier material
Code : Tout sélectionner
material arbre_1_obj#3
{
technique
{
pass
{
ambient 0 0 0 1
diffuse 0.5 0.5 0.5 1
specular 0 0 0 1
scene_blend alpha_blend
//transparent_sorting force
texture_unit
{
texture arbre_1.png
}
}
}
}
material arbre_1_obj#4
{
technique
{
pass
{
ambient 0 0 0 1
diffuse 1 1 1 1
specular 0 0 0 1
scene_blend alpha_blend
//transparent_sorting force
texture_unit
{
texture arbre_2.png
}
}
}
}