Red de conocimiento informático - Problemas con los teléfonos móviles - Unidad en términos de desempeño

Unidad en términos de desempeño

1. Optimización del soporte de hardware

(1) Optimización de la configuración de la plataforma

Reducir FPS en ProjectSetting->Calidad

Recuento de VSync Los parámetros afecta tu FPS, EveryVblank es equivalente a FPS = 60. EverySecondVblank = 30;

Ambos casos no coinciden con el FPS del juego. Necesitamos ajustar manualmente el FPS. Primero desactive la función de sincronización vertical y luego configúrela manualmente en el método Awake del código.

FPS (Application.targetFrameRate = 45;)

Beneficios de reducir FPS:

1) Ahorra energía y reduce el calor del teléfono;

2) Puede estabilizar el FPS del juego y reducir la aparición de retrasos.

Después de configurar el FPS, ajuste el parámetro Paso de tiempo fijo.

Este parámetro está en ProjectSetting->Tiempo. El propósito es reducir la cantidad de operaciones físicas y mejorar el rendimiento del juego.

(2) Optimización del formato de archivo

1) Android actualiza el formato de compresión de mapas opacos a ETC de 4 bits, porque los teléfonos móviles en el mercado de Android tienen una variedad de GPU, y cada GPU admite diferentes formatos comprimidos, pero todos son compatibles con el formato ETC.

2) Para mapas transparentes, sólo podemos elegir RGBA 16bit o RGBA 32bit.

3) El tamaño del atlas no debe ser mayor que 1024; de lo contrario, la máquina de gama baja fallará directamente después de la instalación. Debido a que la versión del sistema móvil es inferior a 2.2, el atlas no se puede leer. supera los 1000. Las versiones 2.2 y superiores no encuentran esta situación. Preste atención a la RAM y ROM del teléfono móvil. Si el teléfono móvil mide menos de 512 M, puede abandonar directamente la adaptación del modelo.

(3) Sugerencias de optimización para el uso de las funciones de Unity

1. Puede encontrar alternativas para los efectos de pantalla de Unity, el cálculo dinámico de iluminación de píxeles (si es normal) y las sombras en tiempo real.

2. Optimización de renderizado

(1) Optimización de la configuración del modelo

1) La fusión de sombreadores Unity 3D necesita agregar un sombreador más cada vez que se moldea. pero todos estos modelos míos usan texturas y bolas de material, así que tengo que eliminarlos y agregarlos cada vez, lo cual es muy problemático. ¿Cómo fusionar estos sombreadores? Utilice embalaje de textura

1. Recorra el objeto del juego, saque el material y clasifíquelo según el sombreador.

2 Llame a la función PackTextures de Unity para fusionar cada clasificación de sombreador (PackTextures). textura correspondiente al material. (La función PackTextures tiene errores, pero puede usarla tal como está)

3. Actualice la textura, el material y las coordenadas UV del modelo original en función de la textura fusionada.

Cabe señalar que las texturas a fusionar deben estar cerca de los objetos de la escena. Si los objetos están lejos de la escena,

no se recomienda fusionar. texturas porque es probable que esto reduzca la eficiencia, en lugar de optimizarla.

2) ¿Fusión de cuadrículas? Hay 2 métodos de fusión

1. La fusión incorporada debe verificar la estática.

?2. Sugerencias de optimización de fusión de scripts (1) La cantidad de materiales de personajes debe ser de 2 a 3 y no más de 5 como máximo. Puede adoptar el modo 2+3, 2 principales y 3 asistentes.

?(2) La cantidad de huesos se controla mejor en 30

?(3) La cantidad de parches debe reducirse según las necesidades reales. Los controles relativamente bajos están por debajo de 2.000.

(4) Los objetos estáticos no necesitan agregar componentes de animación

(5) El rango de valores UV no debe exceder el intervalo (0, 1) tanto como sea posible

(6) Terreno El largo y el ancho deben ser inferiores a 257. Esto se debe a que un terreno demasiado grande generará una gran cantidad de datos de vértices, lo que tendrá un cierto impacto en el ancho de banda de la memoria. En los dispositivos iOS actuales, el ancho de banda de la memoria es muy limitado y debe ahorrarse tanto como sea posible.

Al mismo tiempo, si usa el terreno que viene con Unity, asegúrese de usar "Occlusion Culling" al mismo tiempo, porque aunque la herramienta de cepillado de terreno de Unity es conveniente, es un eliminador de cuadros. Los sorteos han aumentado mucho. No mezcle más de 4 texturas, mezclar terreno requiere mucho tiempo y debe evitarse. Siempre que sea posible, intente fusionar texturas.

(2) Optimización de renderizado por lotes

3. Optimización de la programación de código