Ik zit met een probleem, ik probeer in opengl gebruik te maken van masks, nou werkt dat opzich aardig maar, zodra ik meerdere gemaskte objecten achter elkaar render dan moet ik alles wat voor in de scene te zien is als laatste render anders word het transparante gedeelte van mijn texture niet meer transparan.
dit hoort het te zijn

En als ik in de verkeerde volgorde render (of de scene draai)

Nou zou ik dit kunnen oplossen door zelf een diepte test functie te schrijven zoals de DEPTH_TEST functie in opengl. Maar er moet iets beters zijn dan dat denk ik.
Ik gebruikte in eerste instantie de code van NEHE en heb later een eigen frameword geschreven, maar in allebei het zelfde resultaat. Hieronder staan een aantal opengl opties die ik heb geprobeerd aan/uit te zetten
Ook heb ik het geprobeerd met verschillende alpha functies de onderstaande geeft het effect wat ook hierboven op de afbeeldingen te zien is.
Weet iemand hiervoor een oplossing waardoor ik dit probleem kwijt ben.
dit hoort het te zijn

En als ik in de verkeerde volgorde render (of de scene draai)

Nou zou ik dit kunnen oplossen door zelf een diepte test functie te schrijven zoals de DEPTH_TEST functie in opengl. Maar er moet iets beters zijn dan dat denk ik.
Ik gebruikte in eerste instantie de code van NEHE en heb later een eigen frameword geschreven, maar in allebei het zelfde resultaat. Hieronder staan een aantal opengl opties die ik heb geprobeerd aan/uit te zetten
code:
1
2
3
4
| glDepthMask(true); glEnable(GL_DEPTH_TEST); glDepthFunc(GL_LEQUAL); glEnable(GL_BLEND); |
Ook heb ik het geprobeerd met verschillende alpha functies de onderstaande geeft het effect wat ook hierboven op de afbeeldingen te zien is.
code:
1
| glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); |
Weet iemand hiervoor een oplossing waardoor ik dit probleem kwijt ben.
Yoda: Very dark the other side is.. hmm.. too dark... Obi-Wan: Yoda, shut up and eat your toast allready...