¡Hola a todos!
De la mano de Lucas Pope, el programador jefe de Ratloop Asia os dejamos un post sobre su próximo juego para PSN, Rocketbirds: Hardboiled Chicken.
Soy Lucas Pope, programador jefe de Ratloop Asia. Nuestro próximo juego para PSN, Rocketbirds: Hardboiled Chicken, ha sufrido algunas mejoras en su camino hacia la PS3, y me gustaría profundizar en algunos detalles técnicos de la transición. Hardboiled Chicken es un juego enormemente ampliado y mejorado, basado en nuestro anterior lanzamiento en Flash Rocketbirds: Revolution. Al pasar de Flash a PS3, hemos añadido mejores controles, más pantallas, más capítulos, más armas, más enemigos y más modos de juego. Y hemos mejorado tremendamente los gráficos. En este artículo os hablaré de algunas de esas mejoras gráficas y cómo las hicimos.
Rocketbirds
Si no habéis visto ni jugado a Rocketbirds, se trata de un juego 2D sin scroll con un fuerte estilo visual. Acordaos de juegos clásicos en 2D de acción y aventura como Flashback, Oddworld o Blackthorne. Se podría considerar un juego de plataformas, pero no hay scroll y cada pantalla aparece completa cuando sobrepasas el borde.
2D Like We Mean It
En la versión original de Rocketbirds: Revolution, simplificamos las cosas. Cada pantalla tenía una imagen estática en primer plano y una imagen estática de fondo que se combinaban en tiempo de ejecución para crear la imagen final. Ese es el límite de lo que Flash puede hacer con rapidez en 720p, pero todo funcionaba de perlas y quedó lo bastante bien para recibir una candidatura en el IGF.
La renderización adecuadaPero la PS3 puede hacerlo mejor, así que con Hardboiled Chicken decidimos tirar la casa por la ventana y modelar cada pantalla en 3D. Las 225. Mallas, texturas, sombreados y demás. Entramos de lleno en la era moderna.
Complicaciones
Esto tiene buena pinta, pero un defectillo es el ángulo de cámara del juego, que utiliza una vista de casi 45 grados; no es una vista directamente frontal. Para simplificar la construcción, lo modelamos todo con geometría cuadrangular normal y situamos la cámara del juego para mostrar los lados izquierdo y frontal. Eso nos permite hacer un mapeado 1 a 1 entre las unidades lógicas del juego y las unidades de recursos 3D, pero requiere consideraciones bastante complicadas sobre profundidad y colocación.
Paralaje
Ahora que estamos usando 3D total, ¿qué podemos hacer con él? Bueno, una técnica muy interesante es añadir paralaje para sugerir profundidad. Normalmente, en un juego en 2D, eso significaría mover las capas de fondo a distintas velocidades. Pero como tenemos una cámara y un escenario de verdad, podemos girar la cámara ligeramente cuando el jugador se mueva para crear la sensación de un número infinito de planos desplazándose.
Fijaos en cómo se mueve el bosque del fondo y se descubre una parte mayor del póster de Putzki según el jugador se mueve a la derecha. Es un poco difícil verlo en una imagen estática, así que echadle un vistazo al mismo efecto en movimiento:
3D estereoscópico
Por último, la gran recompensa de este nuevo diseño es el 3D estereoscópico total. Se puede usar la estereoscopia en un juego típico de capas en 2D, pero en ese caso trabajas con capas en 2D y solo puedes conseguir una serie de profundidades fijas. Con un escenario modelado en 3D hay infinitas capas de profundidad. Infinitas.
Para coger un juego en mono y convertirlo en estéreo, primero hay que generar distintas cámaras para los ojos izquierdo y derecho. A diferencia de la mayoría de los juegos estereoscópicos basados en la perspectiva, Hardboiled Chicken utiliza una cámara ortogonal; no hay sensación de “distancia” y los objetos no se vuelven más pequeños al alejarse. Aunque la perspectiva y las cámaras ortogonales son distintas en muchos aspectos, la técnica ideal de generación de cámara en estéreo es básicamente la misma: torcer las vistas de los ojos hacia dentro para mantener la misma imagen de plano cero en ambos ojos.
Este método elimina las molestias de enfocar al personaje del jugador y los enemigos que se renderizan en el plano cero. Una visión temblorosa ligeramente molesta:
Regla 1: Nada de dolores de cabeza
Todo eso es bastante técnico, pero el efecto queda genial. Trabajamos mucho para cerciorarnos de que el 3D estereoscópico no fuera mareante y no provocara dolores de cabeza o fatiga. En las pantallas con mucha profundidad, reducimos la separación del estéreo para inclinarnos por la sutileza.
Regla 2: Alta resolución, velocidad rápida
Como la mayoría de la gente sabe, el 3D estereoscópico puede tener un precio. Renderizar dos pantallas enteras en cada fotograma no es gratis y muchos juegos estereoscópicos acaban bajando la resolución y/o el número de imágenes por segundo para mantener el ritmo. Con Hardboiled Chicken, decidimos desde el principio que queríamos utilizar la velocidad máxima (60 imágenes por segundo) y la resolución más alta (720p) tanto en modo mono como estéreo. Por suerte, esta decisión es mejor tomarla pronto y durante el proyecto optimizamos continuamente tanto la geometría como la renderización para acertar en el blanco.
Entrando en la nueva generación
Ahora que estamos en un sistema de nueva generación, también es lógico añadir algunos efectos de nueva generación. Aparte de un sistema de partículas muy mejorado, Hardboiled Chicken utiliza mapeado de tonos y efectos de posprocesamiento de brillo en cada pantalla. Pero no queríamos pasarnos de rosca, así que es todo muy sutil y añade lo justo para que los entornos y colores destaquen sin ser excesivos.
Para terminar
Finalmente, estamos extremadamente contentos con las mejoras visuales. Aunque la mecánica de juego es estrictamente en 2D, la naturaleza de las pantallas independientes se presta a los impresionantes efectos de paralaje y estereoscopia que solo se pueden conseguir con un renderizado en 3D. Cada pantalla presenta una especie de diorama dentro de vuestro televisor. Esperamos que podáis vivir la experiencia completa en un televisor 3D. Si no, no desesperéis, incluso con un equipo normal el paralaje y los demás efectos mejorados tienen un aspecto magnífico.
Se ha cerrado la sección de comentarios.