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

  FORUM HardWare.fr
  Programmation
  C++

  [C++][DirectX] Billboarding

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C++][DirectX] Billboarding

n°1664016
styl26
Posté le 29-12-2007 à 21:32:11  profilanswer
 

Bonjour à tous !
J'ai besoin q'un objet qui suive (d'orientation) ma caméra avec un pas d'angle, pour sa je prend la matrice de vue et je l'inverse. Là mon objet se tourne vers ma caméra en temps réel, mais ce que je veux c'est qu'il se tourne avec sacade selon un pas déterminé par rapport à l'axe X et Y. C'est à dire qu'au lieu qu'il se tourne de façon fluide vers la caméra et bien il ne doit se tourner que quand la caméra a tourner d'un angle > à PI/2 autour de l'axe X et retourner de PI/2 en Y si la caméra a tourner d'un angle supérieur a PI/2 autour de l'axe Y. Et je n'y arrive pas :/
Si quelqu'un avait une idée merci d'avance :)

mood
Publicité
Posté le 29-12-2007 à 21:32:11  profilanswer
 

n°1664028
styl26
Posté le 30-12-2007 à 00:16:19  profilanswer
 

Pour simplifier je veux juste un moyen de faire un billboard en déduisant les angles de la matrice de vue inversée selon les axes X, Y et Z puis de reconstituer cette même matrice avec ces 3 nouvelles matrices. Comme sa je peux y effectuer des modifications intermédiaires :D

n°1664045
bjone
Insert booze to continue
Posté le 30-12-2007 à 02:35:39  profilanswer
 
n°1664047
bjone
Insert booze to continue
Posté le 30-12-2007 à 02:38:04  profilanswer
 

sinon le plus simple est de stoquer initialement l'orientation sous forme d'angles d'euler.
 
tu veux quoi ? animer les streums de doom ou les vaisseaux de wing commander ?

n°1664048
styl26
Posté le 30-12-2007 à 03:00:27  profilanswer
 

Je veux qu'un terrain "sphérisé" suive ma caméra par pas pour que les points ne soient pas mis à jour à chaque mouvement de caméra ce qui fait gagné en performance et evite que mes montagnes bougent inexplicablement vu que l'altitude doit être calculé par rapport à l'angle :D
Merci pour le lien, j'implémente et je feedback :p

n°1664050
styl26
Posté le 30-12-2007 à 03:21:32  profilanswer
 

Ok sa marche merci beaucoup, il me faut plus qu'une chose :D
Pour que je puisse mettre en place mon système de pas d'angle il me faut que 2 angles et pas 3 sinon sa va donnée n'importe quoi, a ton avis comment je pourrais exprimé un angle autour d'un axe (Z par exemple) en fonction des 2 autres axes (X et Y) ?
Je sais pas si ce que je dis est correcte mais au final j'aimerai avoir que 2 angles au lieu de 3 et j'avoue ne pas trop savoir comment faire :/
Merci ;)

n°1664118
bjone
Insert booze to continue
Posté le 30-12-2007 à 17:52:26  profilanswer
 

j'ai du mal a visualiser ce que tu veux faire, mais pour "exprimeR un angle autour d'un axe" tu devrais regarder des cotés du quaternion.
mais bon c'est peut être une mauvaise piste.

n°1664135
styl26
Posté le 30-12-2007 à 18:30:24  profilanswer
 

Ouai j'y est pensé au quaternion mais je vois pas en quoi sa pourrait m'aider étant donné que de toute façon mon système de pas d'angle s'applique sur les angles d'Euler.
Pour bien comprendre mon problème il faut que t'imagine une sphere comme on en fait en programmation avec des anneaux et des segments. Et bien moi j'ai un plan ki se plaque contre cette sphere et j'aimerai que ce plan regarde en direction de la caméra tout en restant plaqué à cette même sphere. Pour ça il doit donc se déplacer sur la sphere (enfaite mon plan c'est un peu un morceau de sphere). Le truc compliqué à comprendre c'est qu'il faut imaginer les anneaux et segments de la sphere comme une grille et moi avec mon plan j'aimerai faire un "SNAP TO GRID" quand il se déplace, c'est à dire qu'il se déplace pas fluidement mais de carreau en carreau tu comprend à peu pres ?


Message édité par styl26 le 30-12-2007 à 18:32:42
n°1664176
bjone
Insert booze to continue
Posté le 30-12-2007 à 22:46:36  profilanswer
 

ouais je vois un petit peu.
 
tu veux faire un moteur de terrain de planète ?

n°1664194
styl26
Posté le 31-12-2007 à 00:55:47  profilanswer
 

Oui c'est exactement ça !

mood
Publicité
Posté le 31-12-2007 à 00:55:47  profilanswer
 

n°1664559
styl26
Posté le 02-01-2008 à 00:10:51  profilanswer
 

Quelqu'un aurait-il une idée ? :)


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

  [C++][DirectX] Billboarding

 

Sujets relatifs
[C++][DirectX] DXUT et FrameRate[ DirectX ] Connaître la valeur des commandes exécutées
[directX] comment passer du model space au screen space ?[C#] [Résolu] Comment communiquer avec une dll c++
[C#][DirectX Managed] Passer en mode plein écranCarte SIS 661FX et managed DirectX/C#
[DirectX] problème de skinned mesh[C] Des accolades "just pour le fun" ?
Joystique avec DirectX Sans fenetres...Souci à l'execution de softs écrits en c# + directx managed 2.0
Plus de sujets relatifs à : [C++][DirectX] Billboarding


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