M0286_Libro Curso

Android

Estas opciones de OpenGL, como por ejemplo GL_DEPTH_TEST, nos sirven para desactivar las comparaciones de profundidad, así los veremos poco nítidos al igual que los que están en primer plano. Con GL_BLEND permitimos que la opacidad de los objetos esté basada en su canal alfa. Conseguiremos que las caras traseras del cubo aparezcan a través de las caras frontales.

Figura 2.8. Version final del cubo a traves de la que podemos ver.

Aunque ya hemos acabado nuestro pequeño ejemplo de aplicación en 3D, debemos hablar de un tema de suavidad y delicadeza a la hora de representar movimientos gráficos, que viene definido por la velocidad con la que se pueden actualizar la visualización en pantalla. Esta velocidad suele medirse contando el número de pantallas o fotogramas por segundo. Lo recomendable sería conseguir unas tasas consistentes de 60FPS. Esto supone un reto bastante importante, ya que tan solo tenemos 1/60 de un segundo (16,67 milisegundos) entre las llamadas a onDrawFrame() para poder realizar todo lo que necesita hacer, incluyendo animaciones, cálculos físicos, más el tiempo que tarda en dibujar la escena propiamente dicha para el fotograma actual. Vamos a realizar una medición de dichos FPS. Para ello vamos a añadir al final del método onDrawFrame() el siguiente código: // LLevar un registro del numero de FPS

114

Made with FlippingBook - Online catalogs