[RESOLU]Superposition de mesh: Stencil Buffer - Amplify
[RESOLU]Superposition de mesh: Stencil Buffer - Amplify
Bonjour ! Je viens chercher de l'aide pour finir mon effet :p
(Au cas où, j'utilise HDRP et Shadergraph)
Cette flamme est composée de 2 meshes comme vous pouvez voir sur l'image
- Un coeur avec une texture alpha rouge qui effectue un scrolling vertical.
- Une coquille avec une texture alpha jaune qui effectue aussi un scrolling vertical.
Mon soucis est le suivant:
Si c'est possible, comment faire en sorte que le jaune apparaisse sur le rouge ? (ainsi sa grosse coquille disparaît)
ou
Est-il possible de faire disparaître tout le jaune qui dépasse du rouge ?
(Au cas où, j'utilise HDRP et Shadergraph)
Cette flamme est composée de 2 meshes comme vous pouvez voir sur l'image
- Un coeur avec une texture alpha rouge qui effectue un scrolling vertical.
- Une coquille avec une texture alpha jaune qui effectue aussi un scrolling vertical.
Mon soucis est le suivant:
Si c'est possible, comment faire en sorte que le jaune apparaisse sur le rouge ? (ainsi sa grosse coquille disparaît)
ou
Est-il possible de faire disparaître tout le jaune qui dépasse du rouge ?
- boubouk50
- ModoGenereux
- Messages : 6225
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: Comment terminer cette flamme ?
Salut,
Pour faire apparaitre le jaune au dessus du rouge, tu peux multiplier la couleur du rouge par l'alpha du jaune avant de l'additionner à la couleur du jaune.
Pour n'utiliser que la zone rouge en tant que zone visible, il te faut multiplier l'alpha du jaune par l'alpha du rouge.
Pour faire apparaitre le jaune au dessus du rouge, tu peux multiplier la couleur du rouge par l'alpha du jaune avant de l'additionner à la couleur du jaune.
Pour n'utiliser que la zone rouge en tant que zone visible, il te faut multiplier l'alpha du jaune par l'alpha du rouge.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Re: Comment terminer cette flamme ?
Merci de ton aide ! J'ai essayé différentes manières mais comment puis-je faire le lien entre ces 2 différents shaders sous shadergraph ? J'ai essayé en passant par subgraph mais je me retrouve avec des résultats plutôt mystérieux et qui surtout ne semble pas aller dans la bonne direction :p
- boubouk50
- ModoGenereux
- Messages : 6225
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: Comment terminer cette flamme ?
Désolé, c'est moi qui étais mal réveillé... (ou bien as-tu édité?)
Je pensais qu'il s'agissait d'un shader unique sur un mesh. C'est donc pas applicable pour ton cas. Désolé.
Pour le faire en shader, il faudrait n'utiliser que le mesh rouge et faire apparaitre le jaune par dessus.
Je pensais qu'il s'agissait d'un shader unique sur un mesh. C'est donc pas applicable pour ton cas. Désolé.
Pour le faire en shader, il faudrait n'utiliser que le mesh rouge et faire apparaitre le jaune par dessus.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Re: Comment terminer cette flamme ?
Non je n'ai pas édité :p,
Donc si je comprend bien, mon soucis n'est pas corrigeable en shader ?
Je vais explorer une autre solution. Merci de ton aide ^^
Donc si je comprend bien, mon soucis n'est pas corrigeable en shader ?
Je vais explorer une autre solution. Merci de ton aide ^^
- boubouk50
- ModoGenereux
- Messages : 6225
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: Comment terminer cette flamme ?
Pas à ma connaissance. Pas sur deux mesh séparés. En shader, tu peux superposer 2 textures sinon.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Re: Comment terminer cette flamme ?
Je ne peu pas superposer sur le même mesh étant donné que le core est en forme d'étoile pour avoir 10 faces/alpha, c'est ce qui donne la forme des flammes rouges sur le core. Le problème est vraiment de ne faire apparaître que le jaune qui superpose le rouge, la forme de la texture sur la coquille jaune est importante dans le visuel.
Apres quelques recherches, j'ai découvert qu'il existe des masques (ça me rappel un peu photoshop).
Il me sera peut être possible, en utilisant les layers, de masquer tout ce qui dépasse du rouge et de n'afficher que ce qu'il y a entre la caméra et le core dans la zone du core.
Si vous avez une idée de recherches ou de la doc sur le sujet, je suis preneur :p.
Apres quelques recherches, j'ai découvert qu'il existe des masques (ça me rappel un peu photoshop).
Il me sera peut être possible, en utilisant les layers, de masquer tout ce qui dépasse du rouge et de n'afficher que ce qu'il y a entre la caméra et le core dans la zone du core.
Si vous avez une idée de recherches ou de la doc sur le sujet, je suis preneur :p.
- boubouk50
- ModoGenereux
- Messages : 6225
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: Comment terminer cette flamme ?
Moi aussi
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Re: Comment terminer cette flamme ?
Salut ! J'ai enfin résolut mon soucis, ce n'est pas exactement ce que j'imaginais mais j'ai utilisé le stencil buffer (après quelques jours de galère). Ca permet de faire des merveilles
Et pour couronner le tout, c'est facilement mis en place grâce à amplify shader qui fait tout le code à notre place !
Et pour couronner le tout, c'est facilement mis en place grâce à amplify shader qui fait tout le code à notre place !