Forum des développeurs  

Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé.
Précédent   Forum des développeurs > Technologies / Divers > Développement 2D, 3D et Jeux > APIs multimédia > OpenGL

OpenGL Forum d'entraide sur le développement en OpenGL. Avant de poster -> FAQ OpenGL

Réponse
 
Outils de la discussion
Vieux 10/11/2008, 18h52   #1 (permalink)
Membre Confirmé
 
Date d'inscription: février 2008
Localisation: Munich - Allemagne
Âge: 28
Messages: 211
Par défaut Remplir l'intérieur d'une vue en coupe - Stencil buffer?

Bonjour,

je bosse, encore et toujours, sur un soft permettant d'afficher des verres de lunettes en 3D.
En ce moment je rajoute la possibilité d'afficher des vues en coupe, mais j'ai un petit problème.

Bon, commencons par le début: chaque verre se compose de 3 "géométries" stockées dans des Vertex arrays ou VBOs, en fonction de ce que supporte le hardware. Les 3 sont: face avant, face arriere, et bordure.

Pour afficher une coupe, je désactive l'eclairage, les textures, le culling (enfin quasiment tout quoi )je "tourne" mes verres pour les voir de côté, puis je joue avec les parametres zNear et zFar de glOrtho pour limiter ma vue a une petite tranche du verre.

Ca marche très bien sauf que....ben j'aimerais bien "remplir" mes coupes, plutôt que d'avoir ce que vous voyez en pièce jointe...

je pense qu'avec des shaders c'est faisable, mais mon soft doit tourner sans donc je cherche une autre solution. J'ai pensé au Stencil buffer et en regardant vite fait dans l'OpenGL programming guide j'ai l'impression que c#est faisable...mais comme je ne l'ai jamais utilisé je voudrais récupérer vos avis avant de me lancer là dedans.

Donc, faisable avec le Stencil buffer? Faisable autrement? Plus simplement peut être?

Bref, tout avis sera le bienvenu, merci d'avance!
Images attachées
Type de fichier : jpg CSView.jpg (34,4 Ko, 12 affichages)
ShevchenKik est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 11/11/2008, 12h35   #2 (permalink)
Membre Confirmé
 
Date d'inscription: février 2008
Localisation: Munich - Allemagne
Âge: 28
Messages: 211
Par défaut

Re, en cherchant un peu je suis tombé là dessus:

http://www.opengl.org/resources/code...es/node10.html

ca m'a l'air d'être exactement ce que je cherche, je vais donc changer de méthodologie et utiliser des clipping planes additionnels plutôt que ceux de la caméra.

Apres pour ce qui se passe avec le Stencil buffer ca m'a l'air assez bien expliqué...je teste!
ShevchenKik est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 12/11/2008, 15h59   #3 (permalink)
Rédacteur/Modérateur
 
Avatar de shenron666
 
Date d'inscription: avril 2005
Localisation: Perdu
Âge: 32
Messages: 1 758
Par défaut

ceci t'intéressera peut-etre :
Stenciling on the ATI Rage128 with OpenGL
__________________
Je ne répondrai à aucune question en MP

BUG : Fonctionnalité non documenté d'un logiciel en cours de développement
Règles de base du debuggage : ne pas avoir de préjugé sur ce qui va se passer

Tutoriels OpenGL
shenron666 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 12/11/2008, 21h06   #4 (permalink)
Membre Confirmé
 
Date d'inscription: février 2008
Localisation: Munich - Allemagne
Âge: 28
Messages: 211
Par défaut

Citation:
ceci t'intéressera peut-etre :
...et comment!

Un ENORME merci pour ce lien, qui m'a grandement simplifié la vie par rapport à l'exemple que j'avais trouvé. A la place d'un algo à 6 passes à jongler entre color et depth buffer et stencil test, ton exemple le fait en 3 passes avec juste du stencil test.
Simple et efficace, mille fois merci!
ShevchenKik est déconnecté   Envoyer un message privé Réponse avec citation
NEWS 2D - 3D - JEUXLES FAQsTUTORIELSOUTILSBIBLIOTHEQUESMEDIASLIVRESSOURCESTVBLOG

Réponse

Précédent   Forum des développeurs > Technologies / Divers > Développement 2D, 3D et Jeux > APIs multimédia > OpenGL



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non
Navigation rapide