Skip to main content

Assassin's Creed vs. PS Vita

Un nuevo artículo de Digital Foundry sobre la consola portátil de Sony.

Siguiendo con una serie de artículos en los que exploramos la PlayStation Vita, en esta ocasión Digital Foundry habla con desarrolladores de Ubisoft Sofia, responsables de Assassin's Creed III Liberation. Este título exclusivo para Vita es un trabajo destacable, puesto que consigue trasladar con éxito la experiencia de Assassin's Creed y del motor AnvilNext a una plataforma portátil.

Es un juego fascinante por muchas razones, entre las cuales está el compromiso de Ubisoft al producir desde cero una nueva entrega de la franquicia, con nuevos escenarios y personajes. Donde otros estudios se habrían limitado a reducir sus juegos de Xbox 360 y PlayStation para correr en Vita, Ubisoft Sofia aprovecha la oportunidad para producir un título que no sólo muestra los puntos fuertes y débiles del hardware de Sony, sino que además proporciona a los usuarios del AC3 de PS3 una aventura adicional y complementaria.

Eso, sin embargo, tampoco significa que el juego fuese un éxito absoluto. Hay penalización en la resolución, desaparece el anti-aliasing y el frame-rate es como poco inconsistente, como veréis en los vídeos a continuación. Desde un punto de vista conceptual también hay que decir que algunas ideas - como los múltiples 'disfraces' de Aveline - no funcionan del todo bien. En un juego que depende mucho de su mecánica de movimiento transversal, hay grandes secciones que resultan frustrantes al quitarte el parkour. Pero aún así es un Assassin's Creed y sigue siendo uno de nuestros juegos favoritos de Vita.

En esta profunda entrevista Mikhail Lozanov, Ivan Azmanov y Stefan Dyulagerov, directores técnicos de Ubisoft Sofia, y Biser Parashkevov y Borislav Bogdanov, artistas del estudio, nos hablan de la creación de uno de los juegos más ambiciosos que se han creado últimamente para una portátil.

Digital Foundry¿Qué pensasteis de PS Vita a nivel técnico cuando empezasteis a trabajar con ella? ¿Qué proceso habéis seguido para aprovechar su hardware?
Ubisoft Sofia

Sony hizo un gran trabajo extrayendo rendimiento del hardware móvil con un software bien escrito. Las mejoras de rendimiento de sus librerias son sustanciales si se comparan con otros fabricantes móviles que usan un hardware similar.

Al principio del proyecto probamos Vita con una versión de Anvil utilizada en otro Assassin's Creed ya publicado, pero pronto nos dimos cuenta de que el AnvilNext de AC3 tenía muchas más posibilidades y ofrecía más oportunidades al combinarse con el hardware de Vita. Debido a eso cambiamos de motor tan pronto como nos fue posible.

"El acceso directo al hardware estimula a los desarrolladores a crear un look único para sus juegos. Se podría comparar con los tiempos de la demoscena - crear lo que se pensaba que era imposible."

Análisis de rendimiento general de Assassin's Creed III: Liberation en PlayStation Vita, tomando la impresionante escena inicial del juego, un viaje por Nueva Orlans y Bayou y un pequeño combate.Ver en YouTube
Digital FoundryLa potencia de la CPU es obviamente más limitada: tienes un procesador ARM de cuatro núcleos y uno de ellos está reservado para el sistema, ¿no? ¿Qué desafíos añade esto?
Ubisoft Sofia

Evidentemente la CPU es más lenta que la actual generación de consolas de sobremesa, pero la arquitectura interna del motor se beneficia de tener varios núcleos. Sin embargo, no poder acceder al cuarto núcleo afectó a la forma en que destinábamos las tareas a estos núcleos - debimos introducir nuevas optimizaciones algorítmicas y pasar a SIMD algunas partes. Las mayores optimizaciones vinieron de ahorrar cálculos innecesarios o que no se realizaban con tanta frecuencia.

Uno de los mayores retos que tuvimos fue simular la vida en la ciudad. Inicialmente no sabíamos cuántos personajes podría procesar la Vita, pero usando la ejecución fuera de orden de la CPU el código de la IA corría de forma mucho más eficiente. Tuvimos que optimizar algunas porciones de código y reducir ligeramente el número de personajes, pero con algunos truquitos se replicó lo que define a Assassin's Creed como marca: tener ciudades vivas con muchos personajes que interactuan los unos con los otros.

Digital FoundrySony da mucho más acceso a bajo nivel al hardware del PowerVR del que tendrías en iOS o Android. ¿Qué ventajas os aporta esto como desarrolladores? ¿Puedes darnos ejemplos concretos de áreas específicas en las que se haya beneficiado AC3 Liberation?
Ubisoft Sofia

PS Vita es una consola de verdad. Tiene controles precisos y un hardware potente. Es cierto que algunos smartphones y tablets tienen hardware más potente, pero no puedes usarlo al 100% porque esos dispositivos deben realizar más tareas aparte de jugar - contestar llamadas, recibir emails, etc.

El SO de PS Vita es muy ligero y no interfiere con nuestro juego. El acceso directo al hardware garantiza que los desarrolladores pueden ser creativos en el uso de la memoria o los shaders, y hacer trucos que permitan, por ejemplo, una mejor iluminación, mientras en Android e iOS debes usar lo que te proporcionan los drivers. Desgraciadamente no hay otra opción, así que eso puede limitar mucho en términos de características que puedes implementar y añade otra capa que reduce el rendimiento, así como APIs estándar para acceder a hardware diferente.

El acceso directo al hardware estimula a los desarrolladores a crear un look único para sus juegos. Se podría comparar con los tiempos de la demoscena - crear lo que se pensaba que era imposible. En nuestro caso esto afectó a la arquitectura interna de la parte gráfica, la cual no hubiese sido posible en Android o iOS.

Digital FoundryUbisoft tiene un set de herramientas sólido pero en constante evolución para los AC. ¿Se usaron esas mismas herramientas para Liberation? ¿Fueron necesarias tareas de personalización?
Ubisoft Sofia

El motor de AC y las herramientas son sólidas, así que usamos todo excepto alguna cosa. Hubo las típicas modificaciones, pero todas ellas iban dirigidas al hardware específico de Vita - la pantalla táctil, los diferentes formatos para las texturas, el código de los shaders de la GPU, etc.

"Nunca vimos Liberation como un port de su hermano mayor - se diseñó desde cero para aprovechar las características de Vita y la propia consola."

Los desarrolladores reconocen que el combate puede afectar al frame-rate del juego. Aquí vemos varias batallas donde podéis juzgar vosotros mismos.Ver en YouTube
Digital FoundryAlgunos títulos de Vita son simples versiones reducidas de juegos para 360 o PS3. AC3 Liberation, en cambio, es un juego nuevo. Desde un punto de vista técnico, ¿qué ventajas os da esto?
Ubisoft Sofia

Hacer un port de AC3 para Vita hubiese sido como meter un elefante en una caja de cerillas. Es un juego enorme. Uno de los problemas que hubiésemos tenido es el enorme número de NPCs visibles en pantalla. No hay forma posible de mostrar tantos en Vita como en las consolas de sobremesa.

Otro problema es la iluminación y los efectos especiales, porque gran parte del look del juego queda definido por ello y sería imposible igualar su calidad. Y por último, pero no menos importante, está el tamaño de los datos del juego. No hay ninguna tarjeta con la capacidad de un Blu-ray (al menos no por ahora), así que ¿cómo metes tantos datos en una tarjeta de Vita?

Nos ordenaron ofrecer la "experiencia AC" completa en una consola portátil, y eso es algo que asusta si piensas lo complejo que es Assassin's Creed. Sin embargo, nunca vimos Liberation como un port de su hermano mayor - se diseñó desde cero para aprovechar las características de Vita y la propia consola. Al estar en una posición única - un juego nuevo, con una nueva heroína, una nueva era y un escenario nuevo - pudimos introducir decisiones técnicas con implicaciones obvias en el diseño y en la jugabilidad. Eso nos permitió planear dónde íbamos a destinar más recursos de la CPU y la GPU, planear qué optimizar y cómo, diseñar e introducir soluciones técnicas adaptadas al hardware.

Digital FoundryAsí podéis diseñar "evitando" las limitaciones del hardware...
Ubisoft Sofia

Cuando empezamos con el motor AnvilNext, el cual se diseñó y creó para consolas de sobremesa, nos enfrentamos a una serie de retos en términos de creación de niveles y personajes. Pero como estábamos creando un Asssassin's Creed desde cero pudimos diseñar evitando estos problemas.

Nueva Orleans se diseñó de forma específica pensando en las especificaciones del hardware de Vita. Por ejemplo, si hubiésemos importado Boston desde AC3, el mapa se tendría que haber modificado hasta el punto que perdería la idea de los grandes boulevards. Las estrechas calles de Nueva Orleans eran perfectas para eso, y por lo tanto estaban consecuentemente diseñadas para ocultar los recursos y permitirnos incrementar la densidad gráfica y de población. Cada casa y objeto fue diseñado, modelado y texturizado para sacar el máximo partido del hardware de Vita, por ejemplo usando mapas atlas para combinar texturas y conseguir gráficos de gran calidad que también fuesen eficientes. Las colisiones se crearon de forma que se asegurara un movimiento fluido de Aveline por la ciudad o los pantanos. Los shaders también se adaptaron para un uso óptimo de la GPU sin sacrificar la calidad gráfica.

Respecto a la creación de personajes, muchas de las mejoras técnicas se basan en la necesidad de compensar especificaciones de una tecnología existente, y al mismo tiempo conseguir alcanzar cierto nivel de calidad visual. La pequeña pantalla necesitaba un nuevo enfoque para los detalles, así que trabajamos con la idea de tener personajes detallados y que se pudieran distinguir bien, manteniendo los recursos de carga poligonal. Para conseguirlo evitamos el uso de alpha en las texturas para liberar rendimiento y destinarlo a la geometría, con lo cual todo el detalle que podríamos haber creado con la ayuda de canales alpha ahora se debía modelar e integrar en una pieza de la geometría.

Otra gran mejora que amplió la calidad visual de los personajes fue la implementación de iluminación de fondo en el shader para enfatizar los detalles e integrar los personajes en el escenario manteniendo la consistencia visual. Este enfoque nos dio libertad para iluminar más los personajes aparte de la iluminación global. En cuanto a rigging, optimizamos el número de huesos por personaje y creamos rigs específicamente diseñados para alcanzar una simulación realista de la ropa.

"Nueva Orleans se diseñó de forma específica pensando en las especificaciones del hardware de Vita."

No sería un Assassin's Creed sin algunas espectaculares panorámicas aéreas. Puedes hacerte una idea de cómo lucen en Vita con este recopilatorio de las dos primeras zonas del juego.Ver en YouTube
Digital FoundryHabéis utilizado iluminación diferida en AC3 Liberation. ¿Hay una penalización en el rendimiento por hacer esto en vez de un renderizador estándar?
Ubisoft Sofia

En realidad utilizar iluminación diferida fue más eficiente y mejoró el rendimiento del juego, permitiéndonos dedicar más potencia de proceso al gameplay, la vida de la ciudad y otros elementos vitales en un Assassin's Creed.

Digital FoundryLos juegos más exigentes de Vita no funcionan a la resolución nativa de 960x544. AC3 Liberation, por ejemplo, parece funcionar a 720x384. El mismo hardware, en cambio, se utilizaba con la Retina Display del iPad 3. ¿Por qué esta diferencia? ¿Es un problema de velocidad de la GPU o simplemente que las técnicas de render de los juegos de Vita son mucho más avanzadas que las de iOS?
Ubisoft Sofia

Gráficamente Liberation es muy exigente - la cantidad de trabajo que debe realizar la GPU es mucho mayor que la de el típico juego de iOS o Android. Para alcanzar y mantener la mayor calidad posible decidimos reducir la resolución a 720x384. También redujimos la velocidad de la GPU para alargar la duración de la batería y permitir que los jugadores jugasen más tiempo al estar fuera de casa.

Digital Foundry¿Cómo enfocasteis la optimización de rendimiento?
Ubisoft Sofia

Como no teníamos tanta potencia como en las consolas de sobremesa, fuimos muy selectivos y eficientes en términos de optimización. Algunas de las áreas y técnicas en las que nos centramos fueron partes críticas del motor para la CPU de Vita (Neon), redistribuir las tareas entre los diversos núcleos y distribuir los cálculos entre frame y frame.

Digital FoundryEl juego tuvo muy buena recepción pero hubo quejas acerca del frame-rate. ¿Qué elementos suponen una carga mayor para el hardware?
Ubisoft Sofia

Las luchas son el elemento que provoca más estrés en la CPU y la GPU, y dada la naturaleza del mundo abierto de Assassin's Creed también hay momentos en los que el frame-rate sufre durante los combates. Sin embargo, pensamos que ese era un compromiso aceptable en comparación con recortes en otros elementos - como por ejemplo tener una ciudad sin NPCs.

También utilizamos un sistema de carga dinámica que a veces producía caídas de frame-rate, pero esto desgraciadamente era inevitable teniendo en cuenta la cantidad de detalles gráficos y datos de Liberation.

Digital FoundryEl hardware móvil duplica su rendimiento cada año. ¿Hasta qué punto crees que Vita puede seguir siendo competitiva?
Ubisoft Sofia

El hardware móvil crece muy rápidamente, pero sigue habiendo únicamente dos consolas portátiles. Vita está en muy buena posición porque tiene todo lo bueno de las consolas de sobremesa combinado con características como las pantallas táctiles o el GPS. También creemos que la PlayStation Network juega un papel muy importante en la posición de Vita en el mercado, y Sony está haciendo un gran trabajo con ella. Teniendo en cuenta eso, la reciente rebaja de precio, el catálogo de PSP, PSN y PlayStation Mobile, así como los juegos triple A que ya han salido, es difícil no verle un buen futuro a Vita.

Traducción por Josep Maria Sempere.

También te puede interesar