RV2931
Messages postés185Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention16 juillet 2016
-
29 oct. 2007 à 16:07
luhtor
Messages postés2023Date d'inscriptionmardi 24 septembre 2002StatutMembreDernière intervention28 juillet 2008
-
29 oct. 2007 à 19:09
Bonjour à tous
Je suis en train de faire une appli OpenGL qui charge des fichiers SVG comme maps de fond, mon problème concerne l'affichage des figures qui se superposent en 2D dans un même plan Z, je pense que vous voyez le problème. Si 2 figures sont sur un même plan en Z, il faut choisir laquelle afficher en priorité par rapport à l'autre, sinon, on voit parfois l'une parfois l'autre, parfois l'une dans l'autre...
A première vue je ne vois que la solution de donner un z différent pour les deux figures suivant l'ordre dans lequel elles sont affichées, mais n'y a-t-il pas une autre solution ???
J'utilise des glArrayElement, mais j'ai vu qu'on pouvait utiliser une liste d'affichage, est-ce que cela résoudrait le problème ???
Merci
RV
L'intelligence est la chose la mieux répartie chez l'homme, car quoi qu'il en soit pourvu, il a toujours l'impression d'en avoir assez. "Descartes"
A voir également:
OpenGL 2D : problème d'affichage de figures entrelacées
RV2931
Messages postés185Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention16 juillet 2016 29 oct. 2007 à 18:46
Ahhhh ben voilà une réponse qu'elle est bonne,
c'est pas bête effectivement, j'y avait pas pensé
Sinon, je me paume un peu dans l'utilisation des matrices GL_PROJECTION et GL_MODELVIEW et des fonctions glFrustum ou gluPerspective...
J'aimerai bien faire un zoom, je pense qu'il y a plusieur solutions, jouer sur la position en z, ou alors, modifier la matrice GL_PROJECTION, laquelle c'est la mieux ?? sachant que la deuxième pose la question : quand est-ce qu'on rentre dans l'objet ???
J'aimerai aussi que quand je resize ma fenêtre OpenGL, le ratio reste le même, plus précisément, que les proportion soient gardées pour les objets à l'affichage et que seul l'angle de vu soit agrandit ou rapetit en horizontal ou vertical... bref quand j'étire ma fenêtre horizontalement que mon carré reste un carré et pas un rectangle. pour l'instant j'utilise glfrustum(-1.0,1.0,-1.0,1.0, 0.1,1000); pour modifier la GL_PROJECTION et ça me transforme mon carré en rectangle, ça vient bien de là non ???
Si il y a un petit lien qui décrit bien les fonctions les différentes phylosophies entre gluPerspective et glFrustum par ex ...
Merci encore
L'intelligence est la chose la mieux répartie chez l'homme, car quoi qu'il en soit pourvu, il a toujours l'impression d'en avoir assez. "Descartes"
luhtor
Messages postés2023Date d'inscriptionmardi 24 septembre 2002StatutMembreDernière intervention28 juillet 20086 29 oct. 2007 à 19:09
En 2D, on utilise uniquement glOrtho2D(...). Pour un zoom suffit de modifier ses paramètres sur une zone précise.
Le distinguo GL_PROJECTION/GL_MODELVIEW n'existe que pour le coté pratique. Tu peux utiliser uniquement GL_MODELVIEW. De toute facon, au final, les deux sont multipliés.
Dans GL_PROJECTION, tu mets la matrice calculée par glOrtho2D, dans GL_MODELVIEW, tu places les tranformations sur les objets.