Question

Je me demande était le meilleur moyen pour inverser les pixels de couleur dans le tampon de trame est. Je sais qu'il est possible de faire avec glReadPixels() et glDrawPixels() mais le succès de la performance de ces appels est assez grand.

En fait, ce que je suis en train de faire est d'avoir une coupe de cheveux couleur inversée qui est toujours visible, peu importe ce qui se cache derrière. Par exemple, j'avoir un bitmap de masque alpha arbitraire ou de la texture, l'ont rendu sans test de profondeur après la scène est tracé, et tous les pixels du tampon de trame sous les pixels masqués (complet alpha) de la texture seraient inversés.

J'ai essayé de le faire avec une texture, mais j'obtenir des résultats étranges, aussi toutes les options de mélange que je trouve encore la confusion.

Était-ce utile?

La solution

cette essayer:

glEnable(GL_COLOR_LOGIC_OP);
glLogicOp(GL_XOR);
// render geometry
glDisable(GL_COLOR_LOGIC_OP);

Autres conseils

Que diriez-vous:

glEnable (GL_BLEND); 
glBlend (GL_ONE_MINUS_DST_COLOR, GL_ZERO);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top