Ver optimización del rendimiento de OpenGL ES basada en frustum (aplanador)
Tutorial de introducción a OpenGLES 1-Tutorial01-GLKit
Tutorial de introducción a OpenGLES 2-Tutorial02-Introducción a los sombreadores
Tutorial de introducción a OpenGLES 3-Tutorial03- Transformaciones 3D
p>
OpenGLES. Tutorial 4-Tutorial 04-GLKit Edición Avanzada
Tutorial Avanzado OpenGLES 1-Tutorial 05-La Tierra y la Luna
Tutorial Avanzado OpenGLES 2-Tutorial 06-Iluminación
Tutorial avanzado de OpenGLES 3-Tutorial 07-Efecto de partículas
Tutorial avanzado de OpenGLES 4-Tutorial 08-Búfer de fotograma
Tutorial avanzado de OpenGLES 5-Tutorial 09-Coche chocador
Esta vez se trata de optimización del rendimiento.
La optimización del renderizado no se trata solo de aumentar la velocidad de renderizado, no tiene sentido renderizar a más de 60 Hz porque el usuario nunca verá esta información. Al mismo tiempo, teniendo en cuenta el consumo de energía, la frecuencia de actualización de 30 Hz puede prolongar la duración de la batería.
Las siguientes estrategias de optimización de renderizado siempre son válidas:
Minimizar el número de primitivas que deben dibujarse sin afectar la visualización reduciendo la geometría del objeto renderizado.
En escenas donde muchos objetos se encuentran fuera del mosaico, el usuario nunca verá estos objetos.
Calcule el vector desde el ojo hasta el punto de prueba actual, extraiga los componentes de este vector en relación con los ejes X, Y y Z del interceptor plano y juzgue por separado.
El proceso de probar la esfera para probar el punto es más complicado. También necesita comparar los componentes del eje X/Y/Z y agregar la distancia del radio al rango de juicio.
Pero considere el siguiente caso.
Como se muestra a continuación, considere el caso en el que la esfera se corta externamente y obtenga el factor de aumento correspondiente.
¿Por qué los FPS oscilan entre 20 FPS y 30 FPS?
Dibujar y mostrar no es lo mismo.
Cuando se utiliza CADisplayLink (generación de hardware), la velocidad de dibujo puede ser de 60 FPS.
Si el tiempo de dibujo supera los 1/60 s, la velocidad de fotogramas teórica es de hasta 30 FPS.
Imagínese un segmento de línea de 1 s que se divide en 60 segmentos más pequeños, cada uno de los cuales puede usarse como punto de partida para el punto de partida de la trama.
Si el tiempo de dibujo excede 1/60s, el punto final del dibujo se extenderá hasta el segundo segmento de línea.
De esta forma, se puede dibujar un segmento de línea de 1 segundo para hasta 30 períodos de tiempo.
Puedes obtener FPS, pero no representa el rendimiento real, mientras que la duración del fotograma es una mejor opción; FPS no juzga el rendimiento de forma lineal.
Finalmente, incluso si usa un hilo personalizado (sin usar CADisplayLink) para llenar el espacio en el tiempo de dibujo, la velocidad de dibujo en realidad no será más rápida.
La parte principal de la demostración es la parte matemática, y la parte OpenGL ES no introduce nuevos puntos técnicos.
Por motivos laborales, las futuras actualizaciones serán más lentas. Si estás leyendo esto, eres un experto en tecnología, así que gracias por tu apoyo. Síguelo y dale me gusta -gt; animaré la actualización.
Código fuente adjunto.