Accueil > Forum > > > > Matrice View DirectX
Matrice View DirectX
jeudi 1 mars 2007 à 17:13:01 |
Matrice View DirectX

BobTSMSI
|
Salut tout le monde!
Bon c'est pas faute d'avoir cherché mais j'ai un problème de 3D avec DirectX 8... Je débute sous Direct3D alors vous pourrez peut-être m'expliquer...
Mon prob c'est de faire bouger le point de vue de la scène... Je comprend le principe de transformation par des matrices... Je cherche à faire une caméra totalement libre sur les trois axes en rotation et en translation... Je précise que les axes sont les axes du repère de la caméra biensûr pas ceux du repère de la scène...
Ma méthode: J'initialise une matrice identité, je lui applique successivement 3 rotations pour les 3 axes puis une translation... La translation semble fonctionner impec mais les rotations nada....
Voici mon code:
D3DXMatrixIdentity matView D3DXMatrixRotationAxis matRoll, MVertex(matView.m13, matView.m23, matView.m33), camRoll * (pi / 180) D3DXMatrixMultiply matView, matRoll, matView D3DXMatrixRotationAxis matPitch, MVertex(matView.m11, matView.m21, matView.m31), camPitch * (pi / 180) D3DXMatrixMultiply matView, matPitch, matView D3DXMatrixRotationAxis matYaw, MVertex(matView.m12, matView.m22, matView.m32), camYaw * (pi / 180) D3DXMatrixMultiply matView, matYaw, matView transX = camRight * matView.m11 + camUp * matView.m12 + camLook * matView.m13 transY = camRight * matView.m21 + camUp * matView.m22 + camLook * matView.m23 transZ = camRight * matView.m31 + camUp * matView.m32 + camLook * matView.m33 D3DXMatrixTranslation matTrans, transX, transY, transZ D3DXMatrixMultiply matView, matTrans, matView d3dDevice.SetTransform D3DTS_VIEW, matView
Voilà...
Donc camRoll, camPitch et camYaw bah c'est pour les angles de rotation et puis camRight, camUp et camLook c'est pour la translation... Tout ça s'exécute dans la boucle principale. La translation semble fonctionner comme il faut mais curieusement la rotation donne l'impression que les objets tournent autour du point (0,0,0) alors que je voudrais qu'ils tournent par rapport à la position de la caméra.... Je sèche.... Trois jours que je cherche et rien...
Merci d'avance pour votre aide!!
|
|
jeudi 1 mars 2007 à 19:37:22 |
Re : Matrice View DirectX

AnteManoclis
|
Salut, Je pense qu'en ajoutant une translation à ta matrice de vue qui correspondrait à la position de la caméra, ton point (0,0,0) autour duquel tes objets tournent, deviendrait au final l'origine de ta caméra. Tchô AnteManoclis 
|
|
jeudi 1 mars 2007 à 19:47:27 |
Re : Matrice View DirectX

BobTSMSI
|
Oui mais j'ai une translation vers la position de ma caméra est dans le code que j'ai posté:
transX = camRight * matView.m11 + camUp * matView.m12 + camLook * matView.m13 transY = camRight * matView.m21 + camUp * matView.m22 + camLook * matView.m23 transZ = camRight * matView.m31 + camUp * matView.m32 + camLook * matView.m33 D3DXMatrixTranslation matTrans, transX, transY, transZ D3DXMatrixMultiply matView, matTrans, matView
Tu parles de cette translation?
|
|
vendredi 2 mars 2007 à 20:03:18 |
Re : Matrice View DirectX

AnteManoclis
|
Ben j'en sais rien en fait, je sais pas trop à quoi elle correspond cette translation, camRight, camUp et camLook je ne sais pas bien à quoi correspondent ces trois variables... Ce que j'ai compris de ton premier message, c'est que la rotation que tu effectues se passe autour de l'origine. De mon point de vue, c'est normal, quand tu appliques une rotation, c'est toujours le repère qui sert de référence, alors mon idée était la suivante : en ajoutant une translation à ta matrice "générale" (et cela même s'il y en a déjà une, c'est pas grave), tu "déplaces" l'ensemble du repère, et par conséquent, l'origine aussi. Alors une rotation autour d'un point (x, y, z) revient à une rotation autour de (0, 0, 0) à laquelle tu vas ajouter une translation de vecteur (x, y, z). Tchô AnteManoclis 
|
|
Cette discussion est classée dans : axes, translation, matview, d3dxmatrixmultiply, camright
Répondre à ce message
Sujets en rapport avec ce message
comment incrementer une plage en VBA? [ par stef ]
bonjour,c'est l'histoire d'un mec qu'a 1 pb:débutant VBA, je cherche sur excel à creer autant de graph que j'ai de ligne de donnée, mais je ne trouve
c'est possible : incrementer un plage en VBA ? [ par stef ]
bonjour,c'est l'histoire d'un mec qu'a 1 pb:débutant VBA, je cherche sur excel à creer autant de graph que j'ai de ligne de donnée, mais je ne trouve
Commentaire sur les axes d'un mschart [ par Stoomm ]
Bonjour, Je cherche à mettre des infos sur les points de mon graphique (MsChart).Je n'y arrive pas. Quelqu'un peut il m'aider ?Merci d'avance. A+.Stoo
position 4D du joystick [ par Stephane ]
salut a tousquelqu'un pourrait il me dire comment on a les positions de 4 axes sur un joystick. parcke avec les apis getjoypos on a que 3 axes et getj
Changement des axes d'un MSChart par le code [ par Cyrus ]
Comment changer les valeurs MIN/MAX des axes d'un objet MSChart par le code ?Apparemment, on peut uniquement les changer par la fenêtre de propriétés
Tres urgent !!! MsChart pour faire un histogramme 3D avec plusieur axes d'abscisse [ par asmf ]
Bonjour tout le mondej'ai un pti pb avec le control mschart, je dois generer des graphe de suivi de production, et l'un de mes graphe doit etre un his
VBA et EXCEL [ par ElCochonDInde ]
Salut tlm,voila j'ai une macro a programmer et je dois tracer un graphique. Jusque la rien de bien compliqué mais je dois placer des labels dessus, la
Creer un Graphique sous excel [ par Tetris42 ]
bonjour voila 1 semaine que je cherche a contruire un graph ss excel.Je realise mon graph a partir de 3 colones (deux qui varient et une fixe juste l
chartspace avec plusieurs graphiques et des axes différents: c'est possible? [ par math85 ]
bonjour,j'utilise dans un projet vb les chartspaces d office xp.j'ai réussi à mettre plusieurs graphiques dans un seul en utilisant la propriété Chart
bah probleme graphique :) [ par MrDarkVelvet ]
Voila, je tape un code pour creer un graphique a partir d'un tableau excel qui se presente sous la forme d'un tableau à 2 colonnes et plusieurs lignes
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2010 : PLEINIèRE DERNIER JOURTECHDAYS PARIS 2010 : PLEINIèRE DERNIER JOUR par ROMELARD Fabrice
Cette session est la dernière pleinière de ces 3 jours de TechDays Paris 2010. Généralement, cette troisième journée est plus axée sur l'avenir vu par Microsoft. Après un retour sur l'avenir vu par la Science Fiction ou par ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|