Saltar al contenido principal

Guía Unity Occlusion Culling + Occlusion Area

Descripción General

El Occlusion Culling es un proceso que permite mostrar o esconder la geometría de la escena dependiendo de lo que ve la cámara para que no se renderice lo que no se va ver.

Guía de trabajo

Occlusion Culling

Antes de comenzar asegúrate de haber marcado los objetos como estático: selecciona el objeto padre, en el inspector da click en el checkbox de static y acepta que los hijos también lo tengan.

Para activar el occlusion culling  en Unity, accede a la ventana de Window > Occlusion Culling.

Dentro de los parametros para modificar al momento de hacer el bake, se recomienda dejar Backface culling en 100. También están:

  • Smallest occluder: indica apartir de qué tamaño de objeto (en metros), éste ocultará los objetos detrás de él. Ejemplo: si pongo su valor en 2, significa que una pared de 2.2 m ocultará los objetos detrás de ella, pero una pared de 1.5 m no ocultará nada.
  • Smallest hole: indica el valor mínimo por el que la cámara puede ver a través de dos geometrías.

Dirígete a la sección de Bake y en la parte inferior presiona Bake.

En tu escena aparecerá un menú de Occlusion Culling, dando click en su slider, puedes cambiar de Edit a Visualization. En visualizationpodrás ver trabajando el oclussion culling como se muestra en a continuación.

Occlusion Area

Para hacerla, crea un objeto vacío en tu jerarquía y añádele el componente **Add Component > Occlusion Area.**Ajustala con los parámetros de tamaño y centro y verifica que el checkbox de is View Volume esté puesto. No es necesario que este objeto esté emparentado a algo, más bien es como una caja en la cual reaccionará la geometría que esté dentro.

Consideraciones

  • Hay que encontrar un balance entre los modelos que se les haga merge (para optimizar la cantidad de modelos y materiales) y aquellos que puedan estar divididos para aprovechar el occlusion culling.
  • Disminuir el parámetro de smallest occluder aumenta el peso del bake.
  • Se recomienda usar el occlussion area para dividir escenas muy grandes
  • Al momento de marcar un objeto como estático, hay dos opciones relevantes para el occlusion culling: occluder(objeto que tapa) y occludee, (objeto tapado). Los dos deben estar habilitados para los objetos en general pero se recomienda que los objetos transparentes sólo tengan habilitado occludee

Enlaces de descarga

Archivos Adjuntos

Comentarios

Si bien la documentación de Unity dice que el occlusion area es para los objetos dinámicos, el occlusion culling tambien los oculta. Respecto a esta duda, hay discusiones como las siguiente:

https://answers.unity.com/questions/1393573/explain-the-use-for-occlusion-area-how-is-this-dif.html

Ventajas

  • Puesto que únicamente renderiza lo que se ve, optimiza el modo de juego por mucho.
  • Los parámetros por default dan buenos resultados

Desventajas

Elaboró

Daphne Sánchez