PORTALES ( Parte 1: Interiores )

Para los que no están familiarizados con el termino, es el sistema que se usa en COD para optimizar los los mapas y mejorar el FPS (Frames Per Second) de los jugadores.

Nota: el comando en la consola para ver los FPS es:

/r_showFPS

Información general
Para aprender a trabajar con los portales es importante entender como funcionan. Aunque no se ve, los mapas de COD están divididos en ¨celdas¨, estas celdas lo que hacen que simplemente que el ordenador cárge solamente los objetos, modelos etc. que el jugador puede ver en el momento.

¿Como funcionan?
Cuando te encuentras en el interior de algún edificio con portales correctamente creados y estas alejado de alguna ventana o de algún lugar donde no puedas ver lo que está en el exterior, puedes notar un incremento significativo en los FPS, eso sucede porque el programa simplemente elimina TODO lo que está en el exerior o fuera del campo visual. Igualmente estando en exteriores, el ordenador no cargará los objetos o modelos que se encuentran dentro de la estructuras y/o edificios mientras estén lejos de la vista del jugador. el cómo desaparecen podía ser visible con el comando ¨showtris¨ de COD2 pero ha sido anulado en esta versión de Radiant.

EL ARTE DE LOS PORTALES
Es como llaman algunos a este proceso, ya que parece simple pero puede generar mucho estrés y además requiere paciencia, debes planearlo desde un principio aunque sean creados poco antes de finalizar el mapa o cuando le falten detalles mínimos, ya que algún cambio no planificado puede generar una cantidad de errores impresionante, sobretodo cuando trabajas portales en exteriores, por eso los expertos recomiendan hacer una celda a la vez, hacer pruebas y luego continuar con otra.

Texturas para portales:



Las puedes encontrar en Textures > Locale > Tools

Portales en interiores (Indoor)
Evidentemente se trata de portales especialmente para edifícios y/o estructuras en las que se puede acceder al interior. La idea es que cada estructura funcione como una celda individual. Resulta más facil de hacer si has creado ¨prefabs¨ independientes de cada estructura de tu mapa.

Este es un prefab normal con puertas ventanas y un par de modelos en su interior.


Tanto para exterior como para interior, lo recomendable es simplificar los prefabs para trabajar los portales con más facilidad. Lo que hago a continuación es seleccionar las partes del prefab que son sólo de detalle como marcos de las puertas, balcones o cualquier cosa adicional, y en el menu ¨Selection¨ hago click en ¨Make Detail¨.


Puedes ver en la ventana 2D que los brushes que tenía seleccionados ahora sus líneas son de color verde, mientras que los otros siguen de color negro, los brushes u objetos en verde ahora son ¨Detail¨ y no interferirán con los portales que entren en contacto con ellos, mientras que los brushes en negro continúan siendo ¨Structural¨ y servirán para sellar la ¨celda¨.


Creando la celda
Lo siguiente que hago es presionar ¨F¨ para el menu de filtros y desactivar algunas casillas que no son importantes por ahora incluyendo ¨Detail¨.


Esto hace que todo lo que hemos convetido a detail junto con algunos otros objetos no se muestren en pantalla, quedandonos practicamente con una caja básica con puertas y ventanas.

Ahora con brushes de textura ¨Portal No Draw¨ cubro todas las salidas, cuidando que tengan exactamente el mismo grosor que las paredes.


Lo siguiente es, con Mayusculas + control y click, selecciono todas las caras exteriores de los brushes ¨Portal No Draw¨ y le aplico la textura ¨Portal¨


Hago un poco de navegación por dentro para verificar que todas las salidas estén correctamente selladas y con las textura corrécta.


Luego doy una vuelta alrededor del prefab para ver que todas las salidas tienen la textura ¨portal¨ ya que es muy fácil que alguna cara se quede con la textura ¨portal No Draw¨ y viceversa.


Finalmente presiono ¨F¨ para los filtros y activo las casillas que habia desactivado antes.


He aquí un prefab optimizado y listo para usar en mi mapa.


Portal No Draw
No Draw, significa No Dibujar. Literalmente la textura ¨Portal No Draw¨ le indica al Radiant no ¨dibujar¨ lo que esté en el interior de la celda, por eso si hay alguna brecha, a la hora de compilar, le es imposible al programa calcular que debe ocultar y que no, generando un error.

A la hora de compilar, presta atención a los errores relacionados a los portales y anota las coodenadas porque estas indican donde está el error (portal leak).

portal leak (Fuga en un portal)
Es el termino que normalmente se usa para indicar que hay alguna apertura en algun portal o que simplemente alguna celda de portales filtra por no haber sido sellada apropiadamente.

Structural & Detail
Un ejemplo más detallado de como los de IW manejan los ¨structural¨ & ¨Detail¨ es abriendo un prefab y desactivar la casilla ¨Detail¨ en la ventana de filtros.


Te darás cuenta de cómo en algunos casos prodría desaparecer hasta la midad de algunas estruturas. todo esto forma parte del proceso de creación de portales, más para exteriores en este caso.


Nota: Algunos prefabs de stock tienen ya portales creados, puedes revisarlos para ver cómo ha sido hecho.