¿Creación de nivel del juego tipo Rayman Origins?

11

¿Alguien sabe la técnica que usaron para crear sus niveles (usando el origen de Rayman como ejemplo)? Estoy hablando estrictamente de los pisos y las paredes. No parece a base de mosaico. ¿Cuál es el flujo de trabajo que se necesitaría para un juego basado en fichas? Estoy tratando de implementar algo como esto (abajo) pero estoy atrapado entre dos formas de hacerlo

ingrese la descripción de la imagen aquí

Primero: solo tenga activos artísticos y obtenga / establezca posiciones de ellos, similares a los basados ​​en mosaicos, pero los objetos serían más detallados (con diferentes posiciones para las x e y), parece un poco tedioso, podría guardar las ubicaciones en un archivo de texto y cargarlo desde allí.

Segundo: he visto un artículo que no puedo encontrar, pero el desarrollador del juego dibujó el nivel base (las paredes, los pisos) y luego agregó un poco de imágenes encima. Entonces, en la imagen a continuación, simplemente dibujarían repisas y paredes verdes, luego los cubrirían con activos en forma de hoja. - Realmente me gustaría implementar esta opción, ya que podría, por ejemplo, dibujar una línea recta para una colina, luego cubrirla con algunos activos, pero la colisión seguiría siendo la línea recta

bitbitbot
fuente
1
no preguntando a la tecnología, preguntando qué técnica. Podría tratar de explicarlo, pero sería muy difícil, así que di el origen de Rayman como ejemplo
bitbitbot el
1
Pruebe algunas capturas de pantalla de lo que está hablando, díganos qué investigación ha hecho. ¿Estás intentando implementar esto tú mismo? Incluso si es "muy difícil" tratar de explicar lo que quiere, es mucho más probable que obtenga la respuesta que desea, e incluso puede descubrir la respuesta usted mismo en el proceso. Además, en este caso, la tecnología es lo mismo que la técnica.
MichaelHouse
2
El nivel es probablemente mallas estáticas (modelos) o una combinación de modelos y geometría BSP realizada en un editor de niveles.
Tetrad
1
Estoy bastante seguro de que solo se trata de material 2D hecho con paralaje y profundidad de foco, como Braid y Aquaria.
Tim Holt el
1
Hacen las animaciones de esta manera youtube.com/watch?v=B_QhZYTukac con su motor UbiArt (que debía hacerse público alguna vez, pero no sé si este sigue siendo su plan). Los niveles no deberían ser muy diferentes.
Gustavo Maciel

Respuestas:

9

Mira el artículo vinculado a continuación, puede ser lo que estás buscando ...

http://javilop.com/gamedev/c-game-programming-tutorial-non-tile-based-arbitrary-positioned-entity-engine-editor-like-in-braid-or-aquaria-games/

Este enfoque no solo permite ubicaciones arbitrarias x, y para objetos, sino que también le permite tener profundidad. La profundidad le permite hacer efectos de paralaje, además de la profundidad focal (elementos más desenfocados).

Este es el estilo utilizado en Braid y Aquaria, que tienen un aspecto "casi" en 3D. El juego que mencionas se puede hacer de la misma manera. Incluso las escenas en las que los objetos están animados en 3D pueden ser sprites animados.

editar Mirando más allá, estoy bastante seguro de que Rayman Origin es solo un conjunto de sprites 2D, algunos animados.

Tim Holt
fuente
1
Golpéame, ese fue exactamente el artículo que habría vinculado :) Aunque Aquaria también usa algún tipo de imagen de máscara en blanco y negro de los contornos de nivel, que se texturiza automáticamente. Luego, se superponen otros sprites en la parte superior para obtener más detalles.
David Gouveia
Es un enfoque realmente dulce para el diseño de nivel "2D": el efecto es realmente visualmente poderoso.
Tim Holt
2
Para complementar la respuesta de Tim, aquí está lo mismo, pero para Braid: davidhellman.net/blog/archives/85 ; Y lo que mencioné sobre las máscaras de mapas de Aquaria se puede ver aquí: aquariawiki.ryanballantyne.name/wiki/index.php/Modify_a_map
David Gouveia
@Tim Holt, gracias. Estoy intentando esto en Unity, ¡esto es exactamente de lo que estoy hablando! Gracias
bitbitbot
@DavidGouveia ¡Quiero saber sobre las máscaras del mapa! Eso se ve fantástico
bitbitbot
9

Puedo dar más información sobre esto desde que trabajé en ello. De hecho, estábamos usando un editor de niveles similar a lo que se describe en las respuestas de Tim Holt: los niveles están construidos en 3D, pero todos los objetos son planos y la proyección es ortográfica.

Pero hay más que "un conjunto de sprites 2D". La forma en que UBIart funcionaba en ese momento (estoy seguro de que evolucionó bastante hoy con el próximo lanzamiento de Rayman Legends ) es que teníamos aproximadamente dos conjuntos diferentes de entidades:

  • Los frisos eran la geometría de bloqueo, por lo que las colisiones estáticas en el lado del juego. Los diseñadores de niveles podrían editarlos con un simple editor de polígonos para crear el diseño de un nivel. Los artistas de nivel podrían crear y asignar diferentes conjuntos de texturas de borde y relleno para dar a los niveles su aspecto base.

  • Los actores eran elementos decorativos o de juego, utilizando un sistema basado en componentes. La mayoría de ellos eran imágenes estáticas o animadas usando una herramienta de animación esquelética 2D personalizada. Los diseñadores de niveles podrían ubicar a los actores del juego en cualquier lugar de un nivel y jugar de inmediato. Los artistas de nivel también podrían colocar imágenes directamente en el editor, lo que crearía actores para ellos.

El punto clave fue que la edición de nivel se realizó directamente en el motor del juego: cualquier cambio en el diseño o el aspecto podría probarse en el juego de inmediato.


Si está interesado, encontrará algunos artículos bastante interesantes sobre Gamasutra:

Laurent Couvidou
fuente