Ceci est pour un jeu 2D donc il n'y a qu'un axe x et y. Le jeu est en mode paysage sur l'iPhone. Je souhaite être en mesure de définir les coordonnées de l'écran x et y de l'endroit où rendre une texture.En OpenGL ES, comment convertir les coordonnées d'écran en coordonnées mondiales?
1
A
Répondre
7
Si vous faites un jeu en 2D, vous pouvez configurer vos matrices de projection et vue du modèle afin que vous n'avez pas besoin de convertir tout:
// This goes in your init code somewhere
// Set up 480x320 orthographic projection
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrthof(-240.0f, 240.0f, -160.0f, 160.0f, -1.0f, 1.0f);
// Rotate into landscape mode
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glRotatef(-90.0f, 0.0f, 1.0f, 0.0f);
Cela fait en sorte que les coordonnées du monde (-240, -160) correspond en haut à gauche de l'écran (en bas à gauche en mode paysage), (240, 160) en bas à droite (en haut à droite dans le paysage), etc. Depuis l'écran de l'iPhone est 480x320, vous n'aurez pas besoin de convertir entre les coordonnées du monde et de l'écran avec vos matrices mises en place ainsi.
Bien sûr, si vous voulez pouvoir déplacer l'appareil photo, vous devrez le décaler en fonction de l'emplacement de la caméra.
Questions connexes
- 1. C++ Transformation de coordonnées OpenGL
- 2. Comment convertir les coordonnées en Latitude & Longitude?
- 3. coordonnées absolues OpenGL
- 4. Problème de coordonnées OpenGL
- 5. Comment convertir les coordonnées de l'espace écran en coordonnées de l'espace image dans un PictureFox WinForms?
- 6. Transformations de coordonnées Cocoa/OpenGL
- 7. Comment convertir WPF MouseDevice.GetPosition (null) en coordonnées d'écran?
- 8. Comment convertir les coordonnées d'un écran pour former des coordonnées relatives (winforms)?
- 9. Coordonner les coordonnées du cercle en Javascript
- 10. comment obtenir les coordonnées UIImageView?
- 11. À propos des coordonnées GL ouvertes
- 12. Comment obtenir les coordonnées d'un élément HTML en utilisant C#?
- 13. Comment convertir les coordonnées de degré TM-2 en lat lon sur Android?
- 14. javascript - Récupérer le contrôle html en spécifiant les coordonnées
- 15. Tracer une ligne blanche en opengl es
- 16. OpenGL à OpenGL-ES - glBegin();
- 17. Comment transformer un polynôme en un autre système de coordonnées?
- 18. Problèmes glTexCoordPointer avec OpenGL ES
- 19. Système de coordonnées CALayer
- 20. Comment trouver des coordonnées 2D transformées en rotation dans XNA?
- 21. Bitmap et coordonnées géographiques
- 22. coordonnées Changement de CLLocation
- 23. Problème de coordonnées de commande
- 24. Service Web pour obtenir les coordonnées GPS
- 25. Est-il possible d'utiliser des coordonnées de texture/matrice avec des sprites point OpenGL?
- 26. Outil ou code PHP pour convertir l'adresse IP en coordonnées lat/lng
- 27. Coordonnées tactiles absolues du Touchpad
- 28. JFreeChart obtient les coordonnées de la souris
- 29. Obtenir les coordonnées GPS de Samsung Intrepid
- 30. OpenGL ES profondeur tampon
Merci pour votre inscription. Je viens de remarquer que dans OpenGL ES pour l'iPhone il n'y a pas de méthode gluOrtho2D. Savez-vous ce que l'énoncé équivélant est? – Dimitris
gluOrtho2D() est juste un wrapper autour de glOrtho(), donc je l'ai remplacé avec ça. –