NEW STATE para dispositivos móviles reduce el uso de GPU en un 22% con el Inspector de GPU de Android
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Información general
NEW STATE Mobile es un juego de batalla masiva de Krafton que se lanzó en noviembre de 2021 en todo el mundo y alcanzó más de 45 millones de descargas en el primer mes de su lanzamiento. KRAFTON, Inc. es un colectivo de estudios independientes de desarrollo de juegos que se reúnen con el fin de crear experiencias de entretenimiento innovadoras y atractivas para los gamers de todo el mundo. La empresa está formada por PUBG Studios, Bluehole Studio, Striking Distance Studios, RisingWings, Dreamotion y Unknown Worlds, cada uno con su propia experiencia única. NEW STATE Mobile se creó con Unreal Engine 4 y se realizaron varios intentos para reducir el consumo de calor y batería causado por el alto uso de la GPU a partir de sus características distintivas de videojuegos.
Los gamers pueden jugar batallas a largo alcance, por lo que el motor de juego debe poder renderizar escenas a una distancia considerable. Además, hay numerosas plantas presentes en el campo de batalla, lo que hace que su superposición tenga un impacto significativo en la disminución del rendimiento. Como resultado, el equipo decidió utilizar el Inspector de GPU de Android (AGI) para optimizar el uso de la GPU del juego y eliminar los cuellos de botella.

Figura 1: Captura de pantalla de NEW STATE Mobile
Qué hizo la empresa
NEW STATE Mobile usó AGI para acceder a mucha información del contador de GPU y optimizar su uso de GPU según corresponda. Identificaron pases de renderización innecesarios con la ayuda de los datos de generación de perfiles de actividad de la GPU proporcionados por AGI. Después de identificar qué segmentos consumían el uso de la GPU y el ancho de banda de la memoria, siguieron verificando el progreso de la optimización con el contador de GPU y la actividad de la GPU de un lado a otro para verificar si estaban en la dirección correcta.

Figura 2: Captura de pantalla de NEW STATE Mobile
Estos son algunos datos que aprendieron sobre el rendimiento del juego con AGI:
Optimización del pase base: El paso previo de profundidad, una tecnología que aumenta el uso de Early-z, ayudó a disminuir el uso del sombreado de fragmentos. El paso previo a la profundidad se usó específicamente para el nivel de detalle (LOD0), que ocupa la mayor parte del espacio de la pantalla, lo que minimiza la carga que puede generar las llamadas de dibujo adicionales. Además, el uso del formato de Scenecolor de 32 bits puede aumentar el rendimiento de todo el pase de renderización. El formato predeterminado de SceneColor de UnrealEngine4 es FloatRGBA, que es de 64 bits. Si se usa un formato de 32 bits, el ancho de banda de la memoria se puede reducir a la mitad.
Impacto medido: Después de aplicar la previa de profundidad, el uso de GPU disminuyó en un 7.5%. Debido a la separación de profundidad, más fragmentos podrían ser Early-Z. La tasa de tiempo necesaria para el sombreado de fragmentos se redujo un 2%. Con el formato de Scenecolor de 32 bits, el uso de GPU se redujo en un 5.3%. Los sombreadores ocupados disminuyeron un 2% y la lectura total de GPU de la memoria del sistema disminuyó 330 MB/s. La cantidad de escrituras de la GPU en la memoria del sistema se redujo en 78 MB/s y la lectura de memoria de textura también se redujo en 43 MB/s.
Optimización de paso de sombras: Cuando se usan mallas como aplicadores de sombras, el nivel de detalle de polígonos alto no genera una diferencia en la calidad. Es preferible usar un nivel de detalle de polígonos bajos, que ayuda a reducir la cantidad de triángulos. En Unreal Engine 4, se puede usar el nivel de detalle de polígonos bajos mediante el comando de la consola "ForceLODShadow".
Impacto medido: La cantidad de triángulos que se usan para las sombras disminuyó alrededor de 120,000. Los datos del contador de GPU en AGI mostraron que el uso de GPU disminuyó alrededor del 2%, la cantidad de memoria de GPU que se leía en la memoria del sistema disminuyó 130 MB/s y la cantidad escrita desde la GPU a la memoria del sistema disminuyó alrededor de 23 MB.
Instalación automática: La instalación automática, que se puede aplicar para la optimización del pase paralelo y base, te permite combinar los mismos comandos de renderización en el tiempo de ejecución y, luego, renderizarlos todos a la vez. Esto permitió a los dispositivos móviles NEWSTATE aplicar iluminación global a objetos individuales sin perder rendimiento. La instalación automática es una función básica de UnrealEngine4.
Medición del impacto: Se redujeron 500 las llamadas de dibujo. Redujo aproximadamente el 48% de las llamadas de dibujo. El uso de GPU disminuyó alrededor de un 3.5%. Estas mediciones se tomaron con OpenGL.

Figura 3: Datos internos que muestran la reducción del uso de GPU
Resultados
Gracias a AGI, NEW STATE Mobile redujo su uso de GPU en un 22%. A partir de la optimización del pase de profundidad y pase de sombra, el uso de GPU disminuyó un 19% y un 3%, respectivamente. También se redujeron de forma significativa las llamadas de dibujo y la memoria total leída y escrita por la GPU desde la memoria del sistema.
Comenzar
Obtén información para analizar el impacto de tu juego en dispositivos Android identificando problemas de rendimiento y áreas para optimizar con el Inspector de GPU de Android (AGI).
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2022-02-25 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2022-02-25 (UTC)"],[],[],null,["# NEW STATE Mobile reduces GPU usage by 22% with Android GPU Inspector\n\nBackground\n----------\n\n[NEW STATE Mobile](https://play.google.com/store/apps/details?id=com.pubg.newstate) is a battle royale game from Krafton that launched Nov 2021 worldwide, and reached 45M+ downloads in the first month of launch. KRAFTON, Inc. is a collective of independent game development studios brought together to create innovative and engaging entertainment experiences for gamers across the world. The company consists of PUBG Studios, Bluehole Studio, Striking Distance Studios, RisingWings, Dreamotion, and Unknown Worlds, each with its own unique expertise. NEW STATE Mobile was created with Unreal Engine 4, and various attempts have been made to reduce heat and battery consumption caused by high GPU usage from their distinctive gaming features.\n\nGamers can play long range battles, so the game engine needs to be able to render scenes from quite a distance. Also, numerous vegetations are present in the battleground, leading the overdraw of these vegetations to have a substantial impact on decreasing performance. This led the team to [Android GPU Inspector](http://developer.android.com/agi) (AGI) to help optimize the game's GPU usage and eliminate bottlenecks.\n\n**Figure 1**: Screenshot from NEW STATE Mobile\n\nWhat they did\n-------------\n\nNEW STATE Mobile used AGI to access loads of GPU counter information and optimize their GPU usage accordingly. They identified unnecessary render passes with the help of the GPU activity profiling data provided by AGI. After identifying which segments were taking up GPU usage and memory bandwidth, they continued to check the optimization progress using the GPU Counter and GPU activity back and forth to check if they were headed in the right direction.\n\n**Figure 2**: Screenshot from NEW STATE Mobile\n\nHere are a few things they learned about the game's performance using AGI:\n\n- **Base pass optimization**: Depth prepass, which is a technology that increases usage of Early-z, helped decrease the use of fragment shading. Depth prepass was specifically used for LOD0 which takes up most of the screen space, minimizing the burden that can come from additional draw calls. Also, using the 32-bit scenecolor format can increase the performance of the entire render pass. Default SceneColor format of UnrealEngine4 is FloatRGBA, which is 64-bit. If a 32-bit format is used, memory bandwidth can be reduced by half.\n\n- **Impact measured**: After applying depth prepass, GPU utilization dropped by 7.5%. Due to the depth prepass, more Fragments could be Early-Z. The rate of time required for fragment shading has decreased by 2%. Through the 32-bit scenecolor format, GPU utilization was reduced by 5.3%. Shaders Busy decreased by 2%, and total GPU read from system memory decreased 330 MB/s. The amount the GPU writes to system memory was reduced by 78 MB/s and Texture memory read was also reduced by 43 MB/s.\n\n- **Shadow pass optimization**: When meshes are used as shadow casters, using high polygon LOD does not really make a difference in quality. It is preferred to use low polygon LOD which helps reduce the number of triangles. In Unreal Engine 4, low polygon LOD can be used via the console command 'ForceLODShadow'.\n\n- **Impact measured**: The number of triangles used for shadows decreased by about 120,000. The GPU counter data in AGI showed that GPU usage decreased about 2%, the amount of the GPU memory read from the system memory decreased 130MB/s, and the amount written from the GPU to the system memory decreased about 23MBs.\n\n- **Auto-instancing**: Auto-instancing, which can be applied for both shadow pass and base pass optimization, allows you to merge the same render commands at runtime and then be rendered all at once. This allowed NEWSTATE mobile to apply global illumination to individual objects without losing performance. Auto-instancing is a basic feature provided by UnrealEngine4.\n\n- **Impact measured**: Draw calls were reduced by 500. It reduced about 48% of the draw calls. GPU utilization decreased about 3.5%. These measurements were taken using OpenGL.\n\n**Figure 3**: Internal data showing GPU usage reduction\n\nResults\n-------\n\nBy using AGI, NEW STATE Mobile reduced its GPU usage by 22%. From depth prepass and shadow pass optimization, GPU usage was down by 19% and 3% respectively. Draw calls and the total memory read and written by GPU from system memory was also substantially reduced.\n\nGet started\n-----------\n\nLearn how to analyze the impact of your game on Android devices by identifying performance issues and areas to optimize with the [Android GPU Inspector](https://developer.android.com/agi) (AGI)."]]