| Mesh+ alphamap | |
|
|
Auteur | Message |
---|
nomadsoul68
Messages : 11 Date d'inscription : 10/06/2013
| Sujet: Mesh+ alphamap Lun 10 Juin - 18:00 | |
| Bonjour,
Tout d'abord félicitation pour votre moteur 3d ! il est excellent !
Je débute avec Tzu3d et je n'arrive pas a faire la chose suivante:
- J'ai un Mesh déjà texturé qui est un arbre. L'arbre dispose de branche en polygone simple mais avec une texture au format PNG qui représente les feuilles. Est-il possible d'informer Tzu3d de charger la texture mais en excluant le blanc (alphamap) ?
Quand j'utilise la methode TZDeferredRendering sa marche les feuille apparaisse normalement, mais l'ordre du rendu est mauvais.
Il y a t-il une autre solution ?
Merci a vous. | |
|
| |
ShadowTzu Admin
Messages : 24 Date d'inscription : 21/02/2010 Age : 40 Localisation : Vesoul
| Sujet: Re: Mesh+ alphamap Jeu 27 Juin - 16:34 | |
| Bonjour, désolé de ma réponse tardive! oui, c'est possible, il faut charger la texture avant l'arbre: - Code:
-
Dim textureT As New Texture.TZTexture("feuille.png", "texture123") textureT.ColorKey = TZGlobal.Get_Color(1, 1, 1, 1)' du blanc comme couleur clef monarbre = New Mesh.TZMesh(...
| |
|
| |
nomadsoul68
Messages : 11 Date d'inscription : 10/06/2013
| Sujet: merci Jeu 27 Juin - 17:16 | |
| excellent merci beaucoup. | |
|
| |
nomadsoul68
Messages : 11 Date d'inscription : 10/06/2013
| Sujet: marche pas Jeu 27 Juin - 18:01 | |
| soit je sui un gros boulet ( ce qui est fort possible ) soit sa marche pas: j'ai modifier le png car il le blanc était transparent alors j'ai modifier le fichier.x pour qu'il pointe sur le twig.bmp - Code:
-
textureT = New Texture.TZTexture("twig.bmp", "texture123") textureT.ColorKey = TZGlobal.Get_Color(1, 1, 1, 1) ' du blanc comme couleur clef arbre = New Mesh.TZMesh("G:\Tzu3D_sdk\media\epicea.x", "map01")
arbre.load() et sa donne sa: | |
|
| |
ShadowTzu Admin
Messages : 24 Date d'inscription : 21/02/2010 Age : 40 Localisation : Vesoul
| Sujet: Re: Mesh+ alphamap Dim 30 Juin - 12:50 | |
| ah, désolé, j'ai oublié de préciser qu'il faut activer l'alphatest:
RenderState.TZRenderState.GetInstance.SetRenderState(eRenderState.AlphaTestEnable, True, False) RenderState.TZRenderState.GetInstance.SetRenderState(eRenderState.ReferenceAlpha, CByte(64), False) | |
|
| |
nomadsoul68
Messages : 11 Date d'inscription : 10/06/2013
| Sujet: heu non Lun 1 Juil - 17:03 | |
| merci de m'aider sur ce petit problème! voici mon code et sa marche toujours pas: - Code:
-
RState.SetRenderState(eRenderState.AlphaTestEnable, True, False) RState.SetRenderState(eRenderState.ReferenceAlpha, CByte(64), False) textureT = New Texture.TZTexture("twig.bmp", "texture123") textureT.ColorKey = TZGlobal.Get_Color(1, 1, 1, 1) Map = New Mesh.TZMesh("G:\Tzu3D_sdk\media\arbre.x", "map01") Map.Material(0).DiffuseMap = textureT Map.load() en enlevant Map.Material(0).DiffuseMap = textureT sa fonctionne toujours pas. En regardant dans la console, la texture twig.bmp est charger au moment de textureT = New Texture.TZTexture puis au moment du chargement du mesh. Il doit manquer un tout ptit truc non ? | |
|
| |
nomadsoul68
Messages : 11 Date d'inscription : 10/06/2013
| Sujet: on progresse Lun 1 Juil - 17:24 | |
| ok sa progresse un peu voici le code: - Code:
-
RState.SetRenderState(eRenderState.AlphaTestEnable, True, False) RState.SetRenderState(eRenderState.ReferenceAlpha, CByte(64), False) textureT = New Texture.TZTexture("twig.bmp", "texture123") textureT.ColorKey = TZGlobal.Get_Color(1, 1, 1, 1) Map = New Mesh.TZMesh("G:\Tzu3D_sdk\media\arbre.x", "map01") Map.Material(2).DiffuseMap = Texture.TZTextureManager.GetInstance.GetTexture("texture123") Map.Material(2).Ambient = Color.White Map.Material(2).Diffuse = Color.White Map.Material(2).CullMode = eCullMode.CULL_NONE Map.load() les feuillles se trouve en 3ieme place dans le mesh d'où le map.material(2). En faisant ce code les feuilles apparaissent plus sur un fond blanc mais sur un fond noir ( on voit bien que le moteur 3d a fait une decoupe de l'image pour la placé sur un fond noir maintenant comment enlever le fond noir) ? | |
|
| |
ShadowTzu Admin
Messages : 24 Date d'inscription : 21/02/2010 Age : 40 Localisation : Vesoul
| Sujet: Re: Mesh+ alphamap Mar 2 Juil - 1:09 | |
| RState.SetRenderState(eRenderState.AlphaTestEnable, True, False) RState.SetRenderState(eRenderState.ReferenceAlpha, CByte(64), False) RState.SetRenderState(eRenderState.AlphaFunction, CByte(5), False)
textureT = New Texture.TZTexture("twig.bmp", "texture123") textureT.ColorKey = TZGlobal.Get_Color(1, 1, 1, 1)
Map = New Mesh.TZMesh("G:\Tzu3D_sdk\media\arbre.x", "map01") Map.Material(2).DiffuseMap = textureT Map.Material(2).Ambient = Color.White Map.Material(2).Diffuse = Color.White Map.Material(2).CullMode = eCullMode.CULL_NONE Map.load()
voici la bonne solution, je vais simplifier ça parce qu'en effet c'est pas évident! | |
|
| |
nomadsoul68
Messages : 11 Date d'inscription : 10/06/2013
| Sujet: merci Mar 2 Juil - 19:34 | |
| en effet c'était donc sa! sa marche bien maintenant! merci a toi. | |
|
| |
Contenu sponsorisé
| Sujet: Re: Mesh+ alphamap | |
| |
|
| |
| Mesh+ alphamap | |
|