2010-09-27 27 views
5

Actualmente estoy jugando con la lección sobre 08 aquíCómo establecer el color de fondo sobre el Open GL ES Android

http://insanitydesign.com/wp/projects/nehe-android-ports/

me gustaría cambiar el color de fondo de negro a blanco. Para hacer esto al comienzo de onDrawFrame() He llamado

gl.glClearColor (1.0f, 0.0f, 0.0f, 0.0f);

Esto realmente establece una pantalla de fondo blanco, ¡pero también resulta en que nada más aparezca en la pantalla! Claramente, este es un método incorrecto, pero ¿por qué? ¿Cómo lo soluciono?

Muchas gracias de antemano.

Editar (5 días después): ¿Nadie lo sabe?

+2

¿Realmente estableció un fondo blanco? Debería ser rojo. – ybungalobill

+0

lo siento, quise escribir gl.glClearColor (0.0f, 0.0f, 0.0f, 0.0f); – user455141

Respuesta

2

Después de llamar a gl.glClearColor(), vuelva a dibujar todo lo demás. gl.glClearColor() no cambia el color de fondo, simplemente llena la pantalla de color blanco (lo que en efecto borra todo lo que dibujó anteriormente).

+0

Estoy redibujando todo, pero igual veo blanco. Si deshabilito la mezcla y habilito la prueba de profundidad, entonces funciona perfectamente. Entonces, claramente es un problema relacionado con la mezcla ... – user455141

7

La pantalla en blanco se debe a que ha establecido el valor alfa en 0.0f.

La firma del parámetro es: - gl.glClearColor(float red, float green, float blue, float alpha) donde los flotadores tienen un valor entre 0.0 y 1.0.

Más el valor flotante de alpha más opaco que la pantalla.

Cuestiones relacionadas