begin process at 2012 05 29 22:40:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

OpenGL

 > 

Problème de Transparence Opengl


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème de Transparence Opengl

mercredi 2 mars 2005 à 12:25:39 | Problème de Transparence Opengl

yayayvon

Bonjour,
J'arrive à afficher des objets texturés transparents (utilisation du blending et gldepthMask), mais seulement en les affichant après tous les objets opaques. J'ai lu dans le red book qu'on est obligé de la faire dans cet ordre là. Dans mon programme je souhaite afficher un objet transparent qui bouge avec le gluLookAt, et donc l'afficher avant la scène opaque. Comment puis-je faire?

Merci d'avance,
Yann 
jeudi 3 mars 2005 à 21:02:44 | Re : Problème de Transparence Opengl

KeniiyK

Membre Club

Pourquoi "qui bouge avec le gluLookAt, et donc l'afficher avant la scène opaque" ?, tu fais ton gluLookAt, puis ta scene opaque, puis ton objet translucide, je vois pas ou est ton pb...

samedi 5 mars 2005 à 14:01:11 | Re : Problème de Transparence Opengl

yayayvon

En fait je fais un doomlike. Mon programme est de la forme suivante, dans l'affichage:

glMatrixMode(GL_MODELVIEW);
 glLoadIdentity();
 
 gluLookAt(60,120,-100,0,0,300,0,1,0);

  viseur();                              // modélisation du viseur et
  modelisation_kalash            // de l'arme
                                             // juste après le glulookat pour qu'on les voit
                                             // tout le temps à l'écran

// Transformations qui permettent que lorsque l'on se déplace, la map bouge (et non le point de vue)
//vue pilote simplifiée
 glRotatef(regard_y,1,0,0);
 glRotatef(pitch, 0.0,1.0,0.0);
 glTranslatef(-pos_x, -pos_y, -pos_z);

modelisation_map();


Je souhaiterai afficher d'autres éléments, en transparence cette fois-ci, qui suivent le gluLookAt en plus du viseur et de l'arme. Quand je tire, je souhaite afficher de la fumée transparente au niveau du viseur. Le problème c'est que je la dessine avant la dernière modélisation opaque (la map) donc je ne la vois pas.
Ma question est donc : n'y a t'il pas un moyen de dessiner un objet transparent avant un objet opaque?

Merci d'avance

samedi 5 mars 2005 à 14:18:56 | Re : Problème de Transparence Opengl

KeniiyK

Membre Club
"Ma question est donc : n'y a t'il pas un moyen de dessiner un objet transparent avant un objet opaque?"
Reponse  : non, ton objet sera bien transparent, mais vu que la scene opaque sera dessinée apres il n'y aura rien dans le Color Buffer ou du moins juste la couleur du glClearColor.

Dans ton exemple essaye de faire :

glMatrixMode(GL_MODELVIEW); // deja ca tu le mets a la fin de ton resize ou reshape apres avoir defini ta matrice de projection
 glLoadIdentity(); 
 gluLookAt(60,120,-100,0,0,300,0,1,0);

  viseur();                              // modélisation du viseur et
  modelisation_kalash            // de l'arme
                                             // juste après le glulookat pour qu'on les voit
                                             // tout le temps à l'écran
glPushMatrix();
 glRotatef(regard_y,1,0,0);
 glRotatef(pitch, 0.0,1.0,0.0);
 glTranslatef(-pos_x, -pos_y, -pos_z);
modelisation_map();
glPopMatrix();

//dessine ici ton objet transparent tel quel sans push/popMatrix

//pas sur que ca marche, mais lis la suite

Mais le meilleur moyen pour modeliser ce genre de chose c'est d'avoir une camera  avec un repere local a la camera et de faire un gluLookAt("camera") et de savoir tracer n'importe quel objet de la scene dans un repere "univers" ou repere camera s'il faut qu'il suive la camera.
samedi 5 mars 2005 à 15:25:38 | Re : Problème de Transparence Opengl

yayayvon

Ca marche, 
c cool merci 


Cette discussion est classée dans : problème, afficher, opengl, transparence, objets


Répondre à ce message

Sujets en rapport avec ce message

Transparence en OpenGL [ par yayayvon ] Bonjour,J'arrive à afficher des objets texturés transparents (utilisation du blending et gldepthMask), mais seulement en les affichant après tous les Pb de transparence en OpenGL [ par greg63 ] Salut a tous, je débute en OpenGL et j'ai un petit pb avec la transparence : j'ai deux objets transparents qui sont cencés se croiser. C'est a dire qu OpenGL: Afficher Un Caractére. [ par Ombitious_Developper ] Salut :Comment Peut-On Afficher Un Caractére Dans Une Sorte De Carreau En OpenGL.glBegin(GL_QUADS);glVertex2f(1.0f, 1.0f);glVertex2f(-1.0f, 1.0f);glVe opengl ou comment selectionner un objet [ par erazor ] voila, mon problème est que dans le cadre du developpement d'un jeu de stratégie temps réel, je me voi posé le problème de la selection des batiments ma scène openGL s'effaçe! [ par mikey84 ] bonsoir. J'ai un problème dans ma scène d'affichage. J'utilise openGl et glut pour afficher une sphère, des lignes et des carrés. Et j'affiche aussi u problème police openGl [ par vodkapomme43 ] Bonjour,J'utilise le code suivant pour créer une police avec OPenGL:GLvoid BuildFont(GLvoid)        // Build Our Bitmap Font{ HFONT font; Problème flocon de Koch [ par Michococo ] Bonjour à tous,je planche depuis un petit moment sur un problème de récursivité, j'aimerais afficher le flocon de Koch (jusque-là tout va bien) mais e OpenGL (glutWireCube) [ par olivier_job ] Bonjour, j'ai un petit problème avec la fonction glutWireCube de la librarie glut. J'utilise un certain glLineStipple juste avant d'appeller la foncti transparence (Opengl & Glut) [ par norton ] Bonjour, j'utilise la librairie Glut pour mon jeu. j'aimerai charger un sprite et l'appiqué sur un carré dessiné avec glut (taille de la texture 64*64 Problème HEADER OPENGL avec Devcpp [ par The_Sin ] Salut,J'utilise Devcpp4 et quand j'essaye les tutos openGL que je trouve sur le net, le compilateur me renvoie cette erreurc:\projet\open.c:2: Gl\glut


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,387 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales