Análisis técnico: Halo Reach
September 21st, 2010
La espera por fin ha terminado. Han pasado tres años desde que el mítico Jefe Maestro arrasase en 2007 con el épico Halo 3 y aunque ODST - publicado el año pasado - mostraba montones de pequeños y ajustes en la tecnología, había pocas dudas de que gran parte del motor de Bungie seguía intacto. Pese a que a nivel jugable cumplía, muchos jugadores ansiaban ver qué clase de título de nueva generación podía hacer Bungie tras la publicación de monstruos a nivel gráfico como Killzone 2.
Halo: Reach es ese juego, un enorme salto técnico respecto sus predecesores y competidores en 360 y un emocionante ejemplo de exclusiva first-party que de verdad lleva la consola a un nuevo terreno a nivel tecnológico - algo que no vemos muy a menudo en la plataforma de Microsoft.
Pero lo primero es lo primero, cubramos los bloques básicos del apartado gráfico. La resolución nativa del juego sigue siendo la misma que en la alpha y la
beta que analizamos previamente: 1152x720, con un ligero escalado horizontal hasta 1280 píxeles de ancho que es extremadamente difícil de detectar a simple ojo.
Esta configuración, junto con la falta de soporte anti-aliasing por hardware (Bungie apuesta por una solución personalizada) implica que todo el framebuffer se puede alojar en las 10MB de eDRAM conectadas directamente a la GPU Xenos de la 360, permitiendo al juego de Bungie disponer de un gran ancho de banda sin la necesidad de enviar el framebuffer a la RAM principal - una operación costosa a nivel de rendimiento en la mayoría de casos.
El nuevo motor de Halo da soporte a un gran número de luces dinámicas. Configura Firefight con munición ilimitada e invulnerabilidad y disfruta del show de luces.
Al producir Halo 3 Bungie optó por diferentes decisiones técnicas que definieron el propio look del juego, provocando aspectos positivos y negativos en la presentación final. El juego implementó iluminación HDR renderizando toda la escena dos veces con diferentes niveles de luz, para luego combinar las dos imágenes (un proceso similar a algunos métodos de fotografía HDR). Esto significa que la iluminación del juego era sublime para su tiempo, pero también que debía operar a resolución sub-HD para poder almacenar los dos procesos de renderizado en la eDRAM y que no quedaba espacio para usar el soporte MSAA por hardware.
Reach consigue mantener la resolución casi a 720p completos mientras retiene el HDR y una gran cantidad de luces dinámicas, lo cual nos sugiere que otra de las grandes innovaciones es la implementación de algún tipo de deferred rendering - algo que podremos confirmar si finalmente podemos realizar la entrevista técnica que tenemos planeada con el equipo de Reach.
Mientras, pasemos al siguiente bloque: el rendimiento. De forma parecida al anterior motor de Halo, Reach usa double-buffer - muestra un frame mientras renderiza el siguiente. También tiene una efectiva sincronización vertical, aunque en algunas extrañas ocasiones algunos frames provocan un pequeño tearing en la parte superior de la pantalla. Lo bueno de esto es que siempre que cada frame se renderice en menos de 33ms se obtiene un shooter a 30FPS muy suave.
Reach está limitado a 30FPS, igual que sus predecesores, pero unos impresionantes efectos de motion blur hacen que el juego parezca más suave.
Los problemas surgen cuando el frame renderizado tiene una gran cantidad de efectos. En este caso el juego espera al siguiente refresco vertical antes de cambiar el framebuffer. El asunto está en que si los frames muchos frames presentan el problema obtienes un frame-rate sostenido de 20FPS. Esto se aprecia especialmente en las cinemáticas, aunque puede ocurrir también durante el juego, afectando la respuesta del mando. Ese es el desafortunado precio a pagar por usar la sincronización vertical, siendo la ventaja que el juego no presentaría ningún tipo de tearing.
En el siguiente montaje con diez minutos de acción de la campaña de Reach os podéis hacer una idea del nivel de rendimiento. Las ocasionales caídas en el frame-rate no afectan a la experiencia (hay una ligera pausa cuando cruzas un checkpoint, por ejemplo), pero el fill-rate parece ser el culpable cuando una escena tiene un consumo excesivo. Los efectos de humo y explosiones consumen muchos recursos de la GPU y pueden ocasionar problemas.
Click this bar to view the full image.
Varias escenas de Halo: Reach analizadas con las herramientas de Digital Foundry.
Click this bar to view the full image.
Comparándolo con Halo 3 y ODST, se observa que durante la mayor parte del metraje Reach es un juego más suave. Aunque los frame-rates en condiciones ideales son idénticos, la nueva implementación de motion blur en el juego - tanto a nivel de cámara como de objetos - es muy superior a lo que vimos en el antiguo motor. Resumiendo, el juego
se ve mucho más fluido en movimiento.
Sin embargo, en las ocasiones en las que hay una caída de frame-rate, hay la sensación de que el rendimiento decrece comparado con Halo 3 y
ODST en sus peores momentos. ¿Por qué? El fill-rate es seguramente el culpable, en vez de el ancho de banda o la geometría.
Bungie realmente está forzando la máquina con Reach, mostrando escenas plagadas de enemigos. El documental que incluye la edición legendaria muestra la escena del dique como uno de los tiroteos más intensos del juego, lo cual nos da la oportunidad de hacer un interesante experimento - medir el rendimiento en esta sección para ver si la carga de la IA sobrecarga la CPU y ralentiza el juego. El vídeo que tenéis a continuación es el resultado de este experimento, y muestra como el juego se defiende extremadamente bien en estas condiciones, sugiriendo que cualquier caída en el frame-rate se debe probablemente a la carga gráfica.
Click this bar to view the full image.
Análisis de una de las escenas más intensas a nivel de IA de Reach.
Click this bar to view the full image.
Con una configuración de framebuffer ideal para funcionar dentro de la eDRAM de la GPU, Bungie goza de condiciones óptimas de proceso, permitiéndole muchas más cosas. El primer tramo de la campaña es un buen ejemplo de la evolución que ha tomado Bungie a nivel técnico. En cuanto el equipo Noble toca suelo, ya empiezas a ver la riqueza del terreno y la gran escala de la ingente distancia de dibujo - la cual Bungie afirma es cuatro veces superior a la de Halo 3.
Pero quizás la mejora más impresionante esté en el uso de los efectos alpha. Las texturas transparentes pueden reducir el rendimiento, pero Bungie las usa generosamente a pesar de ello, y a resolución completa - los lectores habituales de DF sabrá que los buffers alpha a un cuarto de resolución son el truco usado por muchos desarrolladores para obtener más rendimiento. Bungie, sin embargo, va a por el paquete completo: cuando cae la lluvia las gotas explotan en miles de partículas y todo el escenario queda bañado en una neblina atmosférica.
Todo esto tiene su precio a nivel de fill-rate y en ocasiones el motor no es capaz de seguir el ritmo, especialmente cuando aparecen varias explosiones. Sin embargo, durante la mayor parte del tiempo los resultados son un salto visual enorme comparado con lo que vimos en el motor de Halo 3.
Reach a la izquierda, Halo 3 a la derecha. Los shaders de agua del nuevo juego son más detallados y mucho más impresionantes, en conjunto con la iluminación avanzada.
Hacer que las cosas exploten y vuelen por los aires es uno de los elementos más satisfactorios de un shooter, y Bungie no se anda con chiquitas en este aspecto. Un truco barato para mejorar el rendimiento que a veces usan los desarrolladores es hacer que las explosiones sean opacas, eliminando el impacto que el uso de uso de alpha provoca en las deflagraciones no transparentes (el Uncharted: Drake's Fortune original de PS3 es un ejemplo clásico de ello).
Un rápido viaje al modo Teatro muestra que Bungie no sólo mantiene el uso de alpha sino que coloca varias capas de texturas alpha para crear explosiones aún más espectaculares. Una nueva inclusión en el juego (de hecho, añadida al final de su desarrollo, para desgracia de los ingenieros involucrados) es el localizador de objetivos - un pequeño dispositivo que marca una área de terreno para un intenso bombardeo orbital. Una vez más, intenso a nivel de alpha, pero una gran novedad en el arsenal de Halo.
Las explosiones de Reach son definitivamente impresionantes. El uso del modo Teatro nos permite acercarnos al máximo a ellas.
Las mejoras al motor de Halo 3 son sustanciales, hasta el punto en que Bungie afirma que la mayoría de los sistemas de renderizado se han reescrito desde cero. El resultado es un juego que sigue viéndose como un Halo, pero cuando lo pones a prueba en la mayoría de comparativas gráficas barre a sus predecesores.
Ya hemos hablado antes de la gran mejora en la distancia de dibujado, pero ¿cómo se compara realmente a nivel visual? Después de todo, uno de los puntos fuentes de los juegos de la saga Halo ha sido el tamaño y escala de los mapas. Aquí hay un par de comparativas - un horizonte de Halo 3 frente a su equivalente en Reach, y una vista de la ciudad de ODST junto a la sección del Falcon de la campaña del nuevo juego.
La captura de Halo 3 sin duda enfatiza el tamaño y escala del terreno eran impresionantes para la antigua tecnología, pero el detalle de la distancia es mínimo si se compara con el efecto que vemos en Reach. Combinado con la falta de efectos atmosféricos, el aspecto está claramente una generación por detrás. La captura de ODST muestra que aunque la ciudad es bastante grande, la escala del nivel es una ilusión óptica, ya que todos esos rascacielos no son aparentemente parte de la zona jugable.
Y, una vez más, las partículas atmosféricas de Reach realmente son algo especial. Juguemos al nivel, salgamos al modo Teatro y veamos qué tal luce con una cámara libre...
Reach a la izquierda, Halo 3 (arriba) y ODST (abajo) a la derecha. Los grandes niveles son parte de la experiencia Halo, pero sólo Reach aumenta el detalle durante toda la distancia.
Lo interesante es que la enorme distancia de dibujado no parece afectar al rendimiento. Esto es algo que podemos medir fácilmente en un entorno jugable, ya que Reach incluye varios "niveles sobre raíles", tal y como los llama Bungie, en los que tomas los mandos de un cañón dentro de un Falcom mientras vuelas sobre territorio hostil haciendo volar por los aires a las tropas Covenant que encuentras a tu camino, a menudo dando apoyo aéreo a los humanos que luchan por su vida en el suelo.
Vemos que se mantienen unos 30FPS casi constante, pero al igual que ocurre en tierra hay alguna caída ocasional a los 20FPS durante estas secciones. Un dato interesante sobre estas secciones es que puedes jugarlas de varias formas diferentes, dependiendo del lado por el que subas al Falcon, y sí, hay soporte cooperativo para cuatro personas también - al igual que la sección nocturna de vuelo con Falcon más tarde en el juego.
Click this bar to view the full image.
Análisis de rendimiento en varias escenas sobre raíles de Reach.
Click this bar to view the full image.
Por si todas estas mejoras al motor no fuesen suficientes también vale la pena mencionar que la calidad global de los modelos 3D del juego han mejorado sustancialmente. La carga poligonal ha aumentado, y la calidad de los materiales y las texturas también se ha mejorado. Combinado con el superior sistema de iluminación dinámica y la cantidad de fuentes de luz que el juego procesa, Reach otorga un look más refinado y realista a los Spartans, los vehículos y por supuesto las hordas Covenant.
Reach a la izquierda, Halo 3 a la derecha. La mayor carga poligonal y mejor arte e iluminación pueden provocar cambios sutiles y espectaculares en la calidad de la imagen.
Hay claramente muchas mejoras con respecto a la beta multijugador que probamos hace unos meses, pero vayamos a la que fue nuestra principal queja en el código antiguo: el anti-aliasing. Halo 3 y ODST no tenían ningún tipo de anti-aliasing, lo cual provocaba algunos bordes bastante feos, especialmente en zonas de alto contraste. La solución de Bungie con Reach es mezclar elementos del frame anterior en el actual con un pequeño off-set, produciendo un aspecto muy suave.
La desventaja de esta técnica es que cuando el movimiento es muy rápido el ghosting es un problema serio, resultando en un look muy parecido al que veíamos en los primeros monitores LCD, con latencias exageradas. En la beta habían dos grandes problemas - primero la vista con arma tenía mucho ghosting, incluso cuando solo caminabas. Pero lo peor es que movimientos rápidos como usar el martillo o recargar el arma podían provocar un gran ghosting exagerado directamente en el punto de vista del jugador.
El segundo problema eran las grandes estructuras del escenario cercanas al jugador. Al caminar al lado de ellas se producía un considerable frame-blending, lo cual quizás sea la razón por la cual Crysis 2 usa un sistema de anti-aliasing temporal similar, pero sólo con objetos lejanos.
Al probar el código final resulta obvio que Bungie ha hecho grandes mejoras en los peores efectos del AA temporal. El problema de ghosting con las grandes estructuras parece haberse eliminado y ya no es un problema. También parece que la vista de arma desactiva el efecto en los movimientos rápidos. Aquí tenéis un ejemplo con el martillo:
El ghosting en la vista del arma era un gran problema en la beta, pero Bungie lo ha solventado en el juego final.
Es justo decir que hay muchas ventajas y desventajas en la técnica de anti-aliasing temporal y que tenemos muestras representativas de ambas en Reach. Lo más positivo es que el efecto en el escenario más distante puede ser extraordinariamente bueno, y uno de los grandes logros de Reach es la creación de niveles masivos con una gran distancia de visión. El AA temporal también funciona bastante bien a la hora de reducir el aliasing especular - algo que hemos notado sobretodo en los objetos flotantes de la sección de vuelo orbital.
Las desventajas se dejan notar sobretodo en el movimiento de grandes objetos en frente de la cámara en las cinemáticas, o frente al jugador en el juego. En el segundo caso, si un compañero Spartan se cruza por tu campo de visión, gran parte de la pantalla puede verse ocupada por un personaje fantasmagórico poco atractivo. En las cinemáticas el efecto puede ser más pronunciado: no sólo los personajes se mueven casi siempre frente a la cámara, sino que encima está claro que estas partes del juego tienen problemas de frame-rate.
De forma similar a Mass Effect 2, las cinemáticas oscilan entre 20 y 30FPS. Lo que esto implica es que el ghosting se mantiene en pantalla más tiempo cuando la escena tiene un frame-rate menor, remarcando más los elementos menos deseables de esta técnica de anti-aliasing.
El AA temporal ha mejorado mucho con respecto a la beta pero sigue siendo problemático en algunas cinemáticas, cuando grandes objetos se mueven frente al jugador.
Sin embargo, la composición, encuadre y calidad artística de las cinemáticas es excelente. No hay duda de ello: la mejora está a años luz de lo que vimos en Halo 3 y en ODST.
En la era de las consolas HD los desarrolladores ha tenido la oportunidad de hacer evitar el streaming de las cinemáticas desde el disco, dejando la tarea en los propios motores para proveer la narrativa. Un motor necesita proporcionar un rendimiento consistente durante el juego, lo cual no es fácil cuando puede pasar cualquier cosa en cualquier momento. Es difícil anticiparse a la posible complejidad de la escena.
Las cinemáticas son un un caso muy diferente - los artistas pueden definir el look de la escena y son conscientes en todo momento del costo que tiene el renderizado de sus creaciones. Al no estar la GPU afectada por factores externos, los artistas pueden aumentar el nivel de detalle que producen, con mejores sombras y personajes y escenarios con mayor LOD como algunas de las mejoras que pueden entrar en juego.
Es el mismo motor que se usa para el juego, pero adaptado a lo que quiere el artista. El uso de la cámara es sublime: Bungie ha optado por una aproximación más real y dura en la presentación. La perspectiva de épica space opera de los anteriores Halo deja paso a cámaras en el casco y al hombro. También se usan overlays, como metraje de cámara de seguridad con interferencias digitales.
Click this bar to view the full image.
Análisis de algunas de nuestras cinemáticas preferidas.
Click this bar to view the full image.
El factor humano es un elemento esencial en la mejora de la tecnología de Halo. Los juegos anteriores de la saga sufrían debido al modelado de las caras y a una animación algo tosca. Bungie ha hecho grandes progresos con Reach, gracias a la llegada de un equipo de motion capture al estudio. Los miembros del equipo de desarrollo se pusieron bajo el traje de captura y proporcionaron un montón de datos para la animación, que después los artistas retocaban para su uso en las cinemáticas.
Reach es el primer juego en el que vemos la cara de los Spartans. Mientras que el Jefe Maestro seguirá siendo anónimo (mejor que el jugador se vea a si mismo en la armadura), el equipo Noble tiene una dimensión diferente - los cascos Spartan se quitan por primera vez. De hecho, en el documental que incluye la edición legendaria Bungie explica que cuando alguien se quita el casco puedes estar seguro de que va a pasar algo importante.
El modelado de las caras es un salto adelante enorme respecto a lo visto en ODST, pero el verdadero éxito es la animación. Para las escenas clave Bungie utiliza una técnica llamada "Faceover". En ella el diálogo se graba primero, y entonces se usan actores haciendo lip-synch y se graba la animación de su cara, para que después los artistas la adapten para la animación del juego.
Otra faceta interesante del juego es que el jugador puede optar por un Spartan masculino o femenino, lo cual resulta en dos versiones diferentes del diálogo del jugador. En algunos casos esto puede dar un toque muy diferente a la escena: Bungie pone como ejemplo una en particular en el comentario del desarrollador. Al principio del juego el jugador tiene que acabar con un grupo Covenant mientras mantiene a ralla un Phantom en el aire. Una vez los peligros han sido eliminados, Jorge aparece de entre las sombras para felicitarte y pone la mano sobre tu hombro - una acción con diferentes connotaciones para una jugadora femenina.
Reach también es el primer Halo en el que hay presentes humanos - una vez más necesitando un fuerte elemento humano para las cinemáticas - y también vemos a la creadora del programa Spartan, la doctora Halsey, un personaje que se beneficia especialmente de la técnica Faceover de Bungie. El equipo Noble también existe como mecanismo narrativo en el juego y en las cinemáticas, aparte de que tienes la sensación de que vas creando tu confianza con ellos.
Un nuevo tipo de criaturas.
Bungie también produjo un sistema de diálogo sensitivo al contexto muy creíble en anteriores Halo, y funciona aquí también. Aparte se incluye el nuevo sistema "Thespian", que permite movimientos similares a los de las cinemáticas en el propio juego - un efecto similar al de Half-Life 2. Permite que parte del argumento se meta dentro del juego, o como Bungie lo explica, "lleva parte de ese guión de mil páginas dentro del juego".
Finalmente conviene mencionar la sección de combate espacial que se ha incluido en Reach - no ha habido nada parecido en ningún Halo anterior. No tiene nada particularmente especial a nivel técnico - ni lo necesita - y ciertamente no pone en apuros al motor gráfico, pero si ofrece una mejor visión de la escala de algunas naves Covenant y no hay duda de que, teniendo lugar a la mitad del juego, es un agradable descaso de la acción en primera persona.
Click this bar to view the full image.
Análisis de rendimiento del nivel espacial.
Click this bar to view the full image.
De forma similar al dogfish orbital, la secuencia de acción en primera persona en baja gravedad en el crucero Covenant es digno de mención, y demuestra las mejoras a nivel de audio que ha implementado Bungie. En esta parte del juego hay poco aire, así que el sonido está correctamente amortiguado. Sus creadores han aplicado tratamiento digital de la señal a todos los elementos del juego (excepto la banda sonora) y aunque el ejemplo más claro es en esta sección, también ocurre durante el resto del juego - la lluvia rebota en el tejado de las estructuras del primer nivel, por ejemplo.
El Jefe Maestro usaba una linterna para ver en la oscuridad en la trilogía original, mientras que Reach implementa por primera vez la visión nocturna en los Spartans (a la izquierda). Es una solución más refinada que el visor que vimos en ODST (a la derecha).
Desde una perspectiva técnica Halo: Reach es, sin duda, una colosal mejora respecto a los juegos anteriores de la saga: mayor resolución sin sacrificar el HDR, una carga poligonal superior, un brutal uso de partículas y alpha, mayores niveles de iluminación dinámica, una distancia de dibujo cuatro veces mayor... la lista parece no acabar nunca. Pero incluso con todas esas mejoras, sigue siendo un Halo. Se ve como un Halo, se juega como un Halo... y eso es gracias al diseño.
Evolucionario en varios aspecto, sí, pero en lo que importa Halo: Reach es la revolución que esperábamos: un gran juego con una serie de características que llevan el rendimiento de Xbox 360 un paso más allá.