Accueil > Forum > > > > Matrix OpenGL
Matrix OpenGL
dimanche 22 janvier 2006 à 10:11:03 |
Matrix OpenGL

Alcantornet
|
Hello World, Dans mon programme openGl je place mes objet gâce aux commandes glTranslate glRotate et glScale mais après avoir fait plein de rotation et de translation l'objet s'affiche bien ou je veux, mais je voudrais s'avoir ou`il s'affiche pour faire la détection de collision. J'ai imaginai la chose suivant: // Applique les transformation OpenGL glPushMatrix(); glTranslatef(player.px,player.py,player.pz); glRotatef(player.rot_y,0,1,0); glRotatef(player.ix,1,0,0); glRotatef(player.iz,0,0,1); glRotatef(player.rot_tow-player.rot_y,0,1,0); glRotatef(player.rot_can,1,0,0); glCallList(player.id_list+1); // Objet glPopMatrix();
// On refait les mêmes transfo avec des fonction perso clReset(); clTranslate(player.px,player.py,player.pz); clRotate(0,player.rot_y,0); clRotate(player.ix,0,0); clRotate(0,0,player.iz); clRotate(0,player.rot_tow-player.rot_y,0); clRotate(player.rot_can,0,0); clRotate(90,0,0);
// Puis obtient sa position printf("x:%i y:%i z:%i\n",clGetPosX(),clGetPosY(),clGetPosZ());Mais je n'arrive pas à faire les fonction clRotate et clTranslate correctement et ce que qqun peut m'aider svp ??
|
|
dimanche 22 janvier 2006 à 11:34:49 |
Re : Matrix OpenGL

luhtor
|
Tu n'as pas besoin de faire calculer opengl, si tu calcul toi meme les transformations.
Si tu fais tes calculs sur une matrice M. Pour l'affichage, tu peux utiliser glMultMatrix:
glPushMatrix()
glMultMatrix(M); // M une matrice 4x4
TRACE TON TRUC;
glPopMatrix();
et voila, comme ca tu fais l'économie a opengl de calculer ton
truc et ca te permet de voir si ta matrice M est correct. Puisque si
elle ne l'est pas, l'objet s'affichera n'importe ou.
|
|
dimanche 22 janvier 2006 à 13:04:46 |
Re : Matrix OpenGL

Alcantornet
|
merci pour l'info de performance, mais justement je n'arrive pas à faire une matrice moi même.
|
|
dimanche 22 janvier 2006 à 13:58:47 |
Re : Matrix OpenGL

luhtor
|
Bas commence juste à faire une matrice de translation, que tu
multiplies à celle d'opengl, et tu regardes, si ton objet se translate
correctement.
Mais ton problème est un pb de maths ? tu vois pas cmt construire la matrice ou juste que ce que tu fais ne fonctionnes pas ?
Dans tous les cas, post ici la facon dont tu construis tes matrices.
|
|
dimanche 22 janvier 2006 à 18:42:40 |
Re : Matrix OpenGL

Alcantornet
|
j'ai fait plein de recherche sur la matrice et je me suis rendu compte que je pouvait prendre celle que opengl calcul grâce à glGetFloatv(GL_MODELVIEW_MATRIX, *matrix); cela m'évite de calculer les transformation puis dans la matrice je récupère les translation. x=matrix[3][0] y=matrix[3][1] z=matrix[3][2], mais il me reste à trouvée les rotations.
|
|
dimanche 22 janvier 2006 à 18:43:16 |
Re : Matrix OpenGL

Alcantornet
|
voir http://www.linuxgraphic.org/section3d/openGL/didacticiels/didac3/didac1.html
|
|
dimanche 22 janvier 2006 à 19:36:06 |
Re : Matrix OpenGL

luhtor
|
La matrice que openGL calcul, tu peux la récupérer oui. Apres tu
multiplie les points de ton objet par cette matrice, et ca te donne ses
coordonnées dans l'espace apres voir subi la tranformation.
|
|
dimanche 22 janvier 2006 à 19:57:09 |
Re : Matrix OpenGL

Alcantornet
|
j'aurais besoin de ressortir les rotations x y et z d'une matrice je pense qu'il faut utiliser atan(qqch) ??
|
|
dimanche 22 janvier 2006 à 21:30:35 |
Re : Matrix OpenGL

luhtor
|
Essai de trouver un autre moyen que d'extraire des angles de rotations. C'est la merde apres :)
et comme j'ai éviter ce genre de chose quand j'en ai eu besoin, j'y connais rien.
|
|
lundi 23 janvier 2006 à 09:31:58 |
Re : Matrix OpenGL

Alcantornet
|
Sais-tu alors appliquer une matrice à un point ?? point * matrice ??? stp.
|
|
Cette discussion est classée dans : opengl, player, rot, glrotatef, clrotate
Répondre à ce message
Sujets en rapport avec ce message
Opengl [ par bat67000 ]
Salut,jpige trop pas...(vive DX koi....)Pourquoi sous opengl faut faire glTranslatef puis glRotatef pour obtenir ce que l'on veu....(et encore)alors q
procedure glrotatef dans opengl.dll [ par pit976 ]
Bonjour a tous ! je debute avec opengl, mon bute est tout simplement de réussir à afficher ne serait ce qu'un point dans une fenêtre. J'ai donc suivi
changement de base OpenGL (Matrices) [ par cppdupdup34 ]
ami coder j'ai une requete !!je cherche desesperement a faire ce qu'openGL fait sans l'ecrirechanger de base de facon successivequand on fait un glRot
Aide sur l'installation d'opengl [ par anek971 ]
Bonjour a tous, ben j'utilise devc++ 4 et j'ai décidé de commencer l'opengl, le prob c'est que comme ecris sur ce forum j'ai installé opengl32.dll ,gl
DevIL + OpenGL = problème [ par Pamaury ]
Salut tout le monde,j'ai un gros problème : j'essaye de faire marcher DevIL avec OpenGL et pour l'instant j'ai eu que des problèmes jusqu'au moment où
Pixels et transformation [ par tintin72 ]
Bonjour,j'aimerai savoir s'il y a une correspondance entre les transformations en OpenGL et les pixels.Je m'explique:ex // code OpenGL qui dessi
Opengl et DevIL [ par xarier ]
Hi everybody ma questipon est la suivante: comment faire ca avec devil [ pour le dernier parametre ]glTexImage2D(GL_TEXTURE_2D, 0, 3, TextureImage[0]-
Equivalence Direct Input en OpenGL [ par tintin72 ]
Bonjour,Je programme un petit jeu en OpenGL et je me sert de Direct Input pour la gestion des touches du clavier. J'aimerai cependant savoir s'il exis
opengl glText2d () [ par mat74 ]
salut a ts , je suis en train de faire un tetris en opengl , il est presque fini , mais j'ai un petit pb avec l'ecriture .qd je lance le jeu l'ecritur
comment avoir opengl.dll [ par klh ]
j'ai fait un programme et j'ai inclu toutes les bibliothèques mais lors de l'execution un message s'affichera opengl.dll est introuvable
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Forum
MATLAB PROGRAMME MATLAB PROGRAMME par wahab1087
Cliquez pour lire la suite par wahab1087 RGB2GRAYRGB2GRAY par musa18
Cliquez pour lire la suite par musa18
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|