¿Cómo renderizo el terreno en una perspectiva 2.5D, como en el juego Don't Starve?

10

Tengo experiencia en hacer juegos de desplazamiento lateral 2D como Terraria, pero ahora quiero desafiarme a mí mismo y crear un juego que tenga una perspectiva 2.5D . El juego que intento imitar es Don't Starve. En este momento, mi enfoque está en descubrir cómo renderizar el suelo. Me está costando entender cómo generaron el suelo y luego lo renderizaron. La forma en que creo que renderizaron el suelo es pintando primero el suelo en algún programa de pintura y luego manipulando de alguna manera esa imagen plana para que parezca tener profundidad.

Estoy completamente confundido por cómo realmente representaría ese tipo de terreno. Quiero que el terreno tenga las siguientes características:

Cualquier consejo y sugerencia será apreciada, gracias de antemano.

(Estoy trabajando en Java, utilizando la Biblioteca de juegos Java de peso ligero (LWJGL)).

Hamdan
fuente

Respuestas:

34

De hecho, soy uno de los desarrolladores de Don't Starve (Kevin en nuestros foros). No suelo manejar el material de renderizado, pero puedo decirte que el juego está en 3D. El terreno es solo un mapa de mosaico 2D normal con piezas de transición especiales para que las esquinas se vean mejor. No hay redondeo especial al estilo Deathspank, aunque hemos hablado de hacerlo en el pasado.

Hay dos tipos de entidades de juego: verticales y terrestres. Las entidades verticales son un tipo de carteles a la cámara, aunque no del todo porque con el ángulo de la cámara esto los hizo ver como si estuvieran acostados. Las cosas del suelo simplemente se dibujan en el suelo.

El aspecto que esto da funciona para un rango algo pequeño de ángulos de cámara. Si sube demasiado, las cosas verticales se acortan de manera extraña. Ir realmente bajo funciona un poco mejor, pero es demasiado difícil de jugar porque no puedes ver detrás de las cosas ni nada 'al sur' de tu personaje. Encontrar el equilibrio correcto entre estos dos extremos requirió mucha experimentación.

De todos modos, si tiene alguna otra pregunta sobre la tecnología detrás del juego, somos bastante amigables y comunicativos sobre tales cosas en los foros de klei :)

Kevin
fuente
3

No puedo decir con certeza cómo lo hizo ese juego, pero por el video parece que es solo un mundo de juegos en 3D que usa sprites billboarded para los objetos del juego. Juegos similares incluyen algunos de los juegos de Paper Mario y la serie Death Spank.

Renderiza tu terreno en 3D con una cámara de perspectiva. Tal vez aplique un sombreador de vértices simple para obtener un poco de "redondez" adicional (Death Spank hizo esto con gran efecto, y parece que Don't Starve podría tener una versión muy tenue del mismo efecto; difícil de decir).

Para tus objetos de juego, crea sprites y haz que estén siempre orientados hacia la cámara (llamado "cartelera"). Hay muchos tutoriales sobre cómo conseguir vallas publicitarias en línea, por ejemplo, http://www.lighthouse3d.com/opengl/billboarding/

Sean Middleditch
fuente