4
Ich möchte eine glutSolidSphere
mit etwas Transparenz zeichnen, aber es scheint nicht zu funktionieren.Zeichnen einer festen Kugel mit Transparenz in openGL
glColor4f(1, 0, 0, 0); // should be completely invisible
glPushMatrix();
glTranslatef(position.x, position.y, position.z);
glutSolidSphere(3, 5, 5);
glPopMatrix();
In meiner Hauptfunktion initialisieren ich mit der folgenden Anzeigemodus:
glutInitDisplayMode(GLUT_DEPTH | GLUT_DOUBLE | GLUT_RGBA | GLUT_ALPHA);
Was soll ich hier fehlt?
Dies funktioniert jetzt, wenn sich mehrere Objekte überlappen. Wenn jedoch ein vollständig transparentes Objekt vorhanden ist und nichts dahinter ist, rendert es das Objekt anstelle der Hintergrundfarbe. – Etan
Leeren Sie den Bildpuffer in jedem Frame? –
void renderScene (void) { \t glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); – Etan