Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
854 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  construction d'une "LookAt matrix" avec un vecteur up

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

construction d'une "LookAt matrix" avec un vecteur up

n°1997311
akalash47
Posté le 30-05-2010 à 20:50:59  profilanswer
 

Bonsoir,
 
Au risque de passer pour un naze, j'ai toujours un peu de mal à comprendre comment déterminer le vecteur "up" quand on construit une matrice de vue.
Prenons par exemple XMMatrixLookAtLH( XMVECTOR EyePos, XMVECTOR FocusPos, XMVECTOR UpDir ). Supposons que la direction de la vue est vers le bas ou quasiment, ben en fait le vecteur "up" correct c'est plutôt le vecteur "left", et inversement.
 
N.B C'est pour générer la shadow map d'une lumière directionnelle, je n'ai pas d'info "yaw, pitch, roll" ni vecteur "right" pour cette source, donc je ne sais pas comment certains parmi vous calculeraient "proprement" ce vecteur.
 
Merci!

mood
Publicité
Posté le 30-05-2010 à 20:50:59  profilanswer
 

n°1997500
bjone
Insert booze to continue
Posté le 31-05-2010 à 12:19:21  profilanswer
 

ta shadow map est carrée ?
 
Sinon pour générer un Up aléatoire correct, il faut juste faire un produit vectoriel d'un vecteur aléatoire avec le vecteur focuspos<-eyepos et renormaliser.


Message édité par bjone le 31-05-2010 à 12:20:12
n°1998148
akalash47
Posté le 01-06-2010 à 23:01:53  profilanswer
 

Oui elle est carrée, j'utilise une projection orthographique et l'algorithme le plus naïf qui soit pour démarrer. Pourquoi cette question?
 
D'accord, merci pour l'info!

n°2000136
Lightness1​024
Posté le 09-06-2010 à 10:47:28  profilanswer
 

oui m'enfin aléatoire.. ca va changer a chaque regénération de la shadow map et grésiller partout du fait du downsampling. (shadow map petite sur surface grande).
donc il faudrait plutot fixer une reference pour le vecteur up, namely: (0, 1, 0).
et ensuite re-orthogonaliser. si tu regardes EXACTEMENT vers le bas, t'es dans le caca et faut faire un pti cas particulier (genre tu fixes up=left comme tu dis)


---------------
http://projets.6mablog.com/
n°2000244
bjone
Insert booze to continue
Posté le 09-06-2010 à 14:37:35  profilanswer
 

<mode mauvaise foi>
Ça dépends si tu fais de la cohérence temporelle via resampling dans l'ancienne shadowmap avec l'ancienne matrice, ça peut aider à smoother les ombres :D
</mode mauvaise foi>
 

n°2000295
Lightness1​024
Posté le 09-06-2010 à 17:13:57  profilanswer
 

interressante technique :D


---------------
http://projets.6mablog.com/

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  construction d'une "LookAt matrix" avec un vecteur up

 

Sujets relatifs
vecteur de bits en language C !!!![Algo][I.A.][Réseau de neurones][Graphe] Construction et Exploitation
C'est quoi un vecteur en language C ?Construction d'un fichier
Tri vecteur de point 3D par abscisse[Résolu] Problème lors du tri d'un vecteur d'itérateurs
Filtrer les K plus grandes valeurs d'un vecteurreporting service matrix liste ou autre
Demande d'avis sur mon blog/site en constructionProblème d'allocation mémoire sur gros vecteur
Plus de sujets relatifs à : construction d'une "LookAt matrix" avec un vecteur up


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR