Introducción a las Salas y Portales

El sistema de salas y portales es un componente opcional de Godot que te permite dividir tus niveles de juego en una serie de Rooms (también conocidas como celdas) y Portals<class_Portal. Los portales son aberturas entre las salas a través de las cuales la cámara (y las luces) pueden ver.

Esto permite varias características:

  • El culling de ocultación de portales es una técnica que puede aumentar el rendimiento al reducir el número de objetos que se dibujan, tanto en cámaras como en mapas de sombras.

  • Gameplay callbacks son funciones que permiten desactivar la actividad fuera del área de juego, como la inteligencia artificial, la física, la animación y el procesamiento, entre otros.

El compromiso para utilizar estas características es que debemos particionar manualmente nuestro nivel en habitaciones y añadir portales entre ellas.

Nota

Los portales en Godot no deben confundirse con los del juego del mismo nombre. No deforman el espacio, simplemente representan una ventana a través de la cual la cámara (o las luces) pueden ver.

Minimizando la labor manual

Aunque el esfuerzo necesario para crear habitaciones en un nivel grande puede parecer desalentador, existen varios factores que pueden hacer que esto sea mucho más fácil:

  • Si estás utilizando "kit bashing" y reutilizando salas o áreas existentes, esta es una forma ideal de ahorrar esfuerzo. Tus módulos de nivel pueden ser salas con portales ya colocados.

  • Si estás creando niveles procedurales, puedes generar salas y portales como parte del algoritmo de generación procedural que estás desarrollando.

  • Por último, si estás creando niveles de forma libre manualmente, ten en cuenta que no hay reglas estrictas sobre hasta dónde puedes llegar con los portales. Incluso si divides un nivel de juego grande en solo dos salas con un único portal entre ellas, esto aún puede resultar en mejoras de rendimiento significativas.

Los beneficios de rendimiento (especialmente en términos de ocultación) siguen una curva en forma de "L", donde la mayor parte ocurre cuando has creado solo unas pocas habitaciones. Así que no temas ser perezoso - *trabaja de manera inteligente*.

En general, cuando se trata de niveles de tamaño mediano y grande, es mejor hacer un poco de particionamiento mediante portales que no hacerlo en absoluto.

Algunas Advertencias

Nota

El sistema de portales debe considerarse una característica avanzada de Godot. No deberías intentar utilizar salas y portales hasta que estés familiarizado con el editor de Godot y hayas creado al menos un par de juegos de prueba exitosamente.

El sistema de portales te otorga un gran poder como diseñador de juegos, pero el compromiso es que requiere un enfoque muy técnico para el diseño de niveles. Está dirigido a producir resultados de calidad profesional y asume que el usuario está dispuesto a invertir el trabajo necesario para lograrlo. No está pensado para ser utilizado en todos los juegos en 3D. No todos los juegos se beneficiarán significativamente de los portales, y puede requerir más tiempo del que se dispone en un game jam corto.