Bonjour,
Pour le fun je créé un petit FPS où l'on se ballade dans un donjon. Je pensais représenter les items (potions, clef, ...) avec des billboards. Le principe fonctionne bien mais j'ai un soucis avec l'éclairage.
Pour générer un billboard j'utilise un gameobject "quad" et avec un script je m'arrange pour qu'il soit toujours face caméra. Naturellement la normal de ce carré tourne également. Donc au final je peux avoir une potion à coté d'une lampe, mais vu que sa normale pointe vers la caméra et pas vers la lampe, l'objet ne s'éclaire pas.
Il y a-t-il moyen d'éclairer un objet en ne tenant compte que de la distance qui le sépare d'une ou de plusieurs lampes sans tenir compte de la normale ?
J'espère avoir été compréhensible
Merci d'avance,
oldteen
billboard et éclairage
Re: billboard et éclairage
oups... je pensais avoir mis ce message dans la section Shader. Si un admin aurait l’amabilité de le déplacer
merci!
merci!
- boubouk50
- ModoGenereux
- Messages : 6222
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: billboard et éclairage
Je pense que c'est la bonne section, vu que la demande est sur comment faire plutôt qu'un shader. (Sachant que la réponse ne sera peut-être pas un shader)
Pour ma part je le ferai par script. Lorsque tu crées ton billboard, il devra récupérer les lumières les plus proches (SphereCast?), calculer la distance entre ces lumières et en déduire l'éclairage final.
J'utiliserais un shader Legacy Shaders/Transparent/VertexLit -> MainColor noire, SpecColor noire, EmissiveColor grise pure et je viendrais jouer sur l'emissiveColor par script. 0 vaut noir, 0.5 vaut éclairé à 100%, 1 vaut émissif à 200%.
Pour ma part je le ferai par script. Lorsque tu crées ton billboard, il devra récupérer les lumières les plus proches (SphereCast?), calculer la distance entre ces lumières et en déduire l'éclairage final.
J'utiliserais un shader Legacy Shaders/Transparent/VertexLit -> MainColor noire, SpecColor noire, EmissiveColor grise pure et je viendrais jouer sur l'emissiveColor par script. 0 vaut noir, 0.5 vaut éclairé à 100%, 1 vaut émissif à 200%.
"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: billboard et éclairage
Merci pour ton idée au final j'avais quelque chose de similaire en tête.
Avec un script ça ne devrait pas être compliqué.
Merci,
oldteen
Avec un script ça ne devrait pas être compliqué.
Merci,
oldteen