Como renderizo o terreno em uma perspectiva 2.5D, como no jogo Don't Starve?

10

Tenho experiência na criação de jogos 2D de side scroller como Terraria, mas agora quero me desafiar e criar um jogo com uma perspectiva 2.5D . O jogo que estou tentando imitar é Don't Starve. No momento, meu foco é descobrir como renderizar o terreno. Estou tendo dificuldade para descobrir como eles geraram o terreno e depois o renderizaram. A maneira como acho que eles renderizaram o terreno é primeiro pintando o terreno em algum programa de pintura e, de alguma forma, manipulando a imagem plana para que pareça ter profundidade.

Estou completamente confuso com a forma como você processaria esse tipo de terreno. Quero que o terreno tenha os seguintes recursos:

Todas as dicas e sugestões serão apreciadas, Agradecemos antecipadamente.

(Estou trabalhando em Java, usando a Lightweight Java Game Library (LWJGL).)

Hamdan
fonte

Respostas:

34

Na verdade, sou um dos desenvolvedores do Don't Starve (Kevin nos nossos fóruns). Normalmente, não ligo para o material de renderização, mas posso dizer que o jogo é em 3D. O terreno é apenas um mapa 2D de blocos regular, com peças de transição especiais para melhorar a aparência dos cantos. Não há nenhum round especial no estilo Deathspank, embora tenhamos falado sobre isso no passado.

Existem dois tipos de entidades de jogo - na posição vertical e no solo. As entidades verticais estão meio que na placa da câmera, embora não totalmente, porque com o ângulo da câmera isso as fazia parecer que estavam deitadas. O material do solo é simplesmente desenhado no chão.

A aparência que isso fornece funciona para uma gama um pouco pequena de ângulos de câmera. Se você for alto demais, as coisas na vertical ficarão estranhamente encurtadas. Ficar realmente baixo funciona um pouco melhor, mas é muito difícil jogar o jogo, porque você não pode ver por trás das coisas ou qualquer coisa 'sul' do seu personagem. Encontrar a troca certa entre esses dois extremos exigiu muita experimentação.

De qualquer forma, se você tiver outras perguntas sobre a tecnologia por trás do jogo, somos bastante amigáveis ​​e próximos sobre esses assuntos nos fóruns do klei :)

Kevin
fonte
3

Não posso dizer com certeza como esse jogo foi feito, mas a partir do vídeo, parece que é apenas um mundo de jogo 3D comum que usa sprites em outdoors para objetos de jogos. Jogos semelhantes incluem alguns dos jogos Paper Mario e a série Death Spank.

Renderize seu terreno em 3D com uma câmera em perspectiva. Talvez aplique um simples sombreador de vértice para obter um pouco de "arredondamento" extra (o Death Spank fez isso com grande efeito, e parece que Don't Starve pode ter uma versão muito moderada do mesmo efeito; difícil de dizer).

Para seus objetos de jogo, crie sprites e torne-os sempre voltados para a câmera (chamados de "outdoor"). Existem muitos tutoriais sobre como obter billboard online, por exemplo, http://www.lighthouse3d.com/opengl/billboarding/

Sean Middleditch
fonte