[c++/OpenGL] Pbl de Z-buffer

Pbl de Z-buffer [c++/OpenGL] - Programmation

Marsh Posté le 23-05-2001 à 22:57:10    

J'ai tous essaye les tuts, IRC ....
Et je comprend po. Ca m'affiche toujours les faces qui devraient etre cache. je fais bien glEnable(GL_DEPTH_TEST) et ts ce qui va avec..Je suis a bout. S vous voulez m'aider ca se passe la
 ftp://alrj.org/pub/Code a yush-merci de votre cooperation.zip

Reply

Marsh Posté le 23-05-2001 à 22:57:10   

Reply

Marsh Posté le 24-05-2001 à 01:19:55    

la ligne fautive est :
 
gluPerspective (45, float(width)/float(height), 0, 100);
 
le problème : les deux derniers paramètres sont respectivement le znear et le zfar. s'il peut sembler logiquer de mettre le znear à zéro, c'est mal et ça cause justement ce genre de problèmes :) je n'ai plus le pourquoi du comment en tête, mais je crois me souvenir que c'est un problème de précision. le z buffer stocke z, linéaire dans l'espace, hyperbolique dans le plan de l'écran. en pratique plus tu mets un znear petit plus la précision est grande vers celui ci, laissant par ex 95% des valeurs du zbuffer pour z = [0, 0.0001] par ex. d'où très peu de valeurs du zbuffer pour z = [0.0001+, zfar], d'où chevauchement de faces.
 
bon, bref, tu changes ton znear à 1 par ex, et hop. sinon y'a le wbuffer qu'est plus précis aussi, enfin mate un peu tout ça, et lit la doc de directx (même si tu fais de l'opengl, c'est pour la culture générale 3d).

Reply

Marsh Posté le 24-05-2001 à 14:03:40    

T'as raison ca marche.
Ca faisait des jours que je cherchais(sisi) et meme les "soi-disant" coders :) de #codefr n'ont pas touve.
Vraiment, milles merciS.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed