Vecteurs directeurs de la camera en world ou local

Questions à propos du scripting Shader.
Avatar de l’utilisateur
Alesk
Messages : 2303
Inscription : 13 Mars 2012 09:09
Localisation : Bordeaux - France
Contact :

Vecteurs directeurs de la camera en world ou local

Message par Alesk » 16 Fév 2016 13:08

Salut tout le monde,

Depuis un shader, je cherche à récupérer les vecteurs forward, up et right de la caméra (tels qu'on peut les obtenir en script avec transform.forward, transform.up ou transform.right)

Je fouille depuis des semaines, et pas moyen de trouver une info fiable ou compréhensible :(
Ma meilleure piste réside dans les matrices prédéfinies, que l'on peut trouver ici : http://unity.ogf.su/Documentation/Compo ... grams.html

Mais je ne parviens pas à identifier laquelle serait la bonne (s'il y en a une) et quelles sont les données à en extraire.

Je cherche cette info en world et/ou en local space (ça peut toujours servir d'avoir les deux)

Help ! ^_^

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6215
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Vecteurs directeurs de la camera en world ou local

Message par boubouk50 » 16 Fév 2016 14:42

Alors j'ai trouvé:
CamUpVector = UNITY_MATRIX_IT_MV[1].xyz;
CamFwdVector = UNITY_MATRIX_IT_MV[2].xyz

Je sais pas dans quel repère c'est par contre. teste.

J'ai ça aussi: https://gist.github.com/unitycoder/c5847a82343a8e721035
"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

Avatar de l’utilisateur
Alesk
Messages : 2303
Inscription : 13 Mars 2012 09:09
Localisation : Bordeaux - France
Contact :

Re: Vecteurs directeurs de la camera en world ou local

Message par Alesk » 16 Fév 2016 16:00

Ok merci beaucoup !

A priori c'est bien ça :)
Il a fallu que je les multiplie par -1 pour que ça fonctionne correctement dans mon shader !
Du coup j'ai bien dû tomber sur la solution lors mes précédents essais, mais je suis passé à coté à cause de ça >_<

Et c'est en world space

EDIT : et visiblement, au moins dans mon cas, ça fonctionne mieux avec UNITY_MATRIX_V plutôt que UNITY_MATRIX_IT_MV qui me génère des petits décrochages lors de la rotation de la caméra.

Répondre

Revenir vers « les Shaders »