Saloute les gens
Je reviens une fois de plus avec un soucis en poche. Effectivement j'ai donc des particules l'apha (pour qu'elles soient jolies) qui suivent un tracé autour d'une modélisation. Celle-ci (modé) à un shader qui est animé dans le temps avec un slider qui joue sur l'apha, pour disparaître.
Le soucis est que j'ai l'impression que les particules ne savent pas si elles passent devant ou derrière la modélisation, pourtant elles passent bien derrière... soucis d'alpha ?
Quelqu'un aurait une idée ?
Merci
Soucis Zdeph, alpha entre particules et modélisation
Re: Soucis Zdeph, alpha entre particules et modélisation
Tu es dans le caca
Explications :
Au moment du rendu, les meshes sont regroupés par shader identiques.
Les shaders opaques sont rendus en premier, avec un test de distance vis à vis de la caméra pour chaque pixel tracé.
Ensuite sont rendus les shaders transparents, mais cette fois sans Z test entre eux (uniquement avec les pixels opaques déjà présents).
Du coup, pour avoir un rendu correct, il est impératif que les triangles du mesh soient tracés du plus éloigné au plus proche, surtout dans le cas de particules.
Et comme les meshes sont rendus un par un, selon que ton mesh central soit rendu en premier ou en dernier, il apparaitra complètement devant ou complètement derrière tes particules qui l'encerclent. (l'ordre de rendu est déterminé par les dimensions et la position de la bounding box du mesh vis à vis de la caméra)
Dans ce cas, il faut séparer le mesh des particules en deux : un mesh pour les particules se trouvant derrière le mesh central, et un autre pour les particules se trouvant devant. Toujours vis à vis de la caméra.
Et ça, il ne me semble pas que ça soit possible de base avec le moteur de particules d'unity
Explications :
Au moment du rendu, les meshes sont regroupés par shader identiques.
Les shaders opaques sont rendus en premier, avec un test de distance vis à vis de la caméra pour chaque pixel tracé.
Ensuite sont rendus les shaders transparents, mais cette fois sans Z test entre eux (uniquement avec les pixels opaques déjà présents).
Du coup, pour avoir un rendu correct, il est impératif que les triangles du mesh soient tracés du plus éloigné au plus proche, surtout dans le cas de particules.
Et comme les meshes sont rendus un par un, selon que ton mesh central soit rendu en premier ou en dernier, il apparaitra complètement devant ou complètement derrière tes particules qui l'encerclent. (l'ordre de rendu est déterminé par les dimensions et la position de la bounding box du mesh vis à vis de la caméra)
Dans ce cas, il faut séparer le mesh des particules en deux : un mesh pour les particules se trouvant derrière le mesh central, et un autre pour les particules se trouvant devant. Toujours vis à vis de la caméra.
Et ça, il ne me semble pas que ça soit possible de base avec le moteur de particules d'unity
Re: Soucis Zdeph, alpha entre particules et modélisation
Merci pour ta réponse qui effectivement me confirme que je suis dans une grosse M***** ...
En faite tu me conseil de ne pas faire vraiment tourner mes particules autour ? Mais de trouver une gruge pour donner cette impression ? Ou existe t'il une autre solution, car partant de ce principe je suis bon pour tout recommencer ....
petite image du projet avec un shader basique
En faite tu me conseil de ne pas faire vraiment tourner mes particules autour ? Mais de trouver une gruge pour donner cette impression ? Ou existe t'il une autre solution, car partant de ce principe je suis bon pour tout recommencer ....
petite image du projet avec un shader basique
- Pièces jointes
-
- Sans titre-2.png (45.05 Kio) Consulté 3612 fois
Re: Soucis Zdeph, alpha entre particules et modélisation
Désolé, mais là comme ça je ne vois pas de solution simple
Mais bon, déjà, tu utilises des particules en additive blending, ça élimine le souci de trier les particules entre elles.
Par contre, faut trouver un moyen pour que le rendu se fasse dans cet ordre :
- particules du fond
- mesh du milieu
- particules de devant
Là, sans avoir ton propre moteur de particules (donc tout un boulot en plus), je ne vois pas bien comment faire (mais mes connaissances ne sont pas exhaustives sur le sujet)
Mais bon, déjà, tu utilises des particules en additive blending, ça élimine le souci de trier les particules entre elles.
Par contre, faut trouver un moyen pour que le rendu se fasse dans cet ordre :
- particules du fond
- mesh du milieu
- particules de devant
Là, sans avoir ton propre moteur de particules (donc tout un boulot en plus), je ne vois pas bien comment faire (mais mes connaissances ne sont pas exhaustives sur le sujet)
Re: Soucis Zdeph, alpha entre particules et modélisation
Ok merci pour tes réponses