A voir également:
- JOGL camera a la souris
- Quelle touche pour débloquer la souris ? - Guide
- Ma caméra ne fonctionne pas - Guide
- Camera pc windows 7 - Télécharger - TV & Vidéo
- Autoclick souris - Télécharger - Divers Utilitaires
- Google traduction camera - Guide
2 réponses
Utilisateur anonyme
Modifié par shaynox le 11/04/2015 à 12:22
Modifié par shaynox le 11/04/2015 à 12:22
Salut, j'ai le même problème que toi et cherche désespérément une réponse aussi :D
Tu utilise quoi pour faire tes rotations ? matrice mvp ?
(\___/)
(='.'=)
(")_(")
This is Bunny. Copy and paste bunny into...
...your signature to help him gain world domination
Tu utilise quoi pour faire tes rotations ? matrice mvp ?
(\___/)
(='.'=)
(")_(")
This is Bunny. Copy and paste bunny into...
...your signature to help him gain world domination
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
11 avril 2015 à 12:32
11 avril 2015 à 12:32
Bonjour,
Je ne connais pas JOGL, j'ai fait de l'OpenGL mais ce n'était pas en Java.
Techniquement tu dois avoir des composants Swing je pense, pour faire ton déplacement "X et Y avec le clavier" tu as un KeyListener ? Il faudrait faire pareil avec des MouseListener, MouseMotionListener et MouseWheelListener.
Je ne connais pas JOGL, j'ai fait de l'OpenGL mais ce n'était pas en Java.
Techniquement tu dois avoir des composants Swing je pense, pour faire ton déplacement "X et Y avec le clavier" tu as un KeyListener ? Il faudrait faire pareil avec des MouseListener, MouseMotionListener et MouseWheelListener.
Sauf que je crois qu'il a un probleme de target de la camera (vecteur forward), perso pour bouger la gérée la camera, j'ai 3 angles sur les 3 axes (x y z) et j'ai la position de la camera x, y et z.
Alors oui je peut regarder dans tout les sens via la modification des angles x y z de la camera, mais je ne peut la déplacer que par changer sa position genre if key_Z: cam_position += 1
Et je crois qu'il as le meme probleme.
Alors oui je peut regarder dans tout les sens via la modification des angles x y z de la camera, mais je ne peut la déplacer que par changer sa position genre if key_Z: cam_position += 1
Et je crois qu'il as le meme probleme.
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
11 avril 2015 à 13:04
11 avril 2015 à 13:04
Vous utilisez quoi comme instructions pour faire ce déplacement ?
Ça ne fonctionne pas avec un gluLookAt ?
http://www.felixgers.de/teaching/jogl/gluLookAt.html
Ça ne fonctionne pas avec un gluLookAt ?
http://www.felixgers.de/teaching/jogl/gluLookAt.html
Utilisateur anonyme
>
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
Modifié par shaynox le 11/04/2015 à 13:21
Modifié par shaynox le 11/04/2015 à 13:21
non je n'utilise pas glulookat, j'utilise mon proper algorithm pour le faire, pour faire simple:
- J'ai un vecteur point de mon objet
// Object_Management
- J'addition ce vecteur avec un autre vecteur appellee obj_position[4]
- Puis je passe ce vecteur à travers mes equation de rotations:
- J'addition le vecteur sortie avec un autre vecteur appellee obj_repere[4]
// Camera_Management
- J'addition le vecteur sortie avec un autre vecteur appellee world_repere[4]
- J'addition le vecteur sortie avec un autre vecteur appellee cam_repere[4]
- Je passe ce vecteur à travers mes equation de rotations une nouvelles fois:
// Screen_Management
- J'affiche ce vecteur a l'ecran en le mettant dans un tableaux grace a l'equation:
Et pour gérée le déplacement de la camera, je change le vecteur cam_repere[] selon sur quell axe je veut me déplacer (malheureusement, ça march super, c'est a dire que je me retrouve dans la meme situation que l'auteur de ce topic :D).
- J'ai un vecteur point de mon objet
// Object_Management
- J'addition ce vecteur avec un autre vecteur appellee obj_position[4]
- Puis je passe ce vecteur à travers mes equation de rotations:
X-axe
1y = (1y * cos(phi_x)) - (1z * sin(phi_x))
1z = (1z * cos(phi_x)) + (1y * sin(phi_x))
Y-axe
End.1z = 1z' = (1z * cos(phi_y)) - (1x * sin(phi_y))
1x = (1x * cos(phi_y)) + (1z * sin(phi_y))
Z-axe
End.1x = 1x' = (1x * cos(phi_z)) - (1y * sin(phi_z))
End.1y = 1y' = (1y * cos(phi_z)) + (1x * sin(phi_z))
- J'addition le vecteur sortie avec un autre vecteur appellee obj_repere[4]
// Camera_Management
- J'addition le vecteur sortie avec un autre vecteur appellee world_repere[4]
- J'addition le vecteur sortie avec un autre vecteur appellee cam_repere[4]
- Je passe ce vecteur à travers mes equation de rotations une nouvelles fois:
X-axe
1y = (1y * cos(phi_x)) - (1z * sin(phi_x))
1z = (1z * cos(phi_x)) + (1y * sin(phi_x))
Y-axe
End.1z = 1z' = (1z * cos(phi_y)) - (1x * sin(phi_y))
1x = (1x * cos(phi_y)) + (1z * sin(phi_y))
Z-axe
End.1x = 1x' = (1x * cos(phi_z)) - (1y * sin(phi_z))
End.1y = 1y' = (1y * cos(phi_z)) + (1x * sin(phi_z))
// Screen_Management
- J'affiche ce vecteur a l'ecran en le mettant dans un tableaux grace a l'equation:
x = (x * distance) / z
y = (y * distance) / z
screen[repere - (x * BPP + PITCH * y)] = color
Et pour gérée le déplacement de la camera, je change le vecteur cam_repere[] selon sur quell axe je veut me déplacer (malheureusement, ça march super, c'est a dire que je me retrouve dans la meme situation que l'auteur de ce topic :D).