Como criar blocos isométricos inclinados (altura)

11

Talvez isso seja melhor explicado em termos pictóricos. Estou tentando criar um jogo isométrico 2.5D. Minha visão é que o jogo se pareça com meu objetivo:

paisagem isométrica

Como não sou um artista gráfico, estou tendo problemas para criar os blocos "inclinados" para simular terrenos de diferentes alturas. A criação do bloco isométrico básico foi fácil usando as seguintes etapas:

  1. Crie uma versão quadrada de 64 x 64 do bloco
  2. Girar 45 graus
  3. Escale a altura para baixo por um fator de 2

Criar as peças "inclinadas" é mais um desafio. À minha disposição, tenho o Photoshop, mas estou longe de ser um especialista em usá-lo. Aqui está o meu problema atual:

insira a descrição da imagem aqui

Não tenho certeza de como posso manipular vértices, caso contrário isso seria fácil, mas basicamente, para obter um bloco "inclinado" do meu bloco isométrico básico, tudo o que preciso fazer é deslocar o vértice inferior e o direito em 16 pixels , enquanto fixa os outros dois vértices. Isso geraria o bloco que eu quero.

Qual é uma maneira fácil de conseguir isso? O Photoshop é a ferramenta certa para isso? Alguma sugestão?

Filip Jeremic
fonte
Qual sistema gráfico sua versão atual usa DirectX, OpenGL ou proprietário do mecanismo? a resposta básica seria armazenar vértices e modificá-los conforme necessário (você pode fazer isso como uma matriz de 8 vetores), mas a maneira como você os entrega para a tela geralmente é com um utilitário / biblioteca de gráficos como directX, openGL
gardian06
Estou usando o SFML para renderizar os sprites para a tela, o que seria o openGL. Estou armazenando os sprites como blocos de 64x64 no disco.
Filip Jeremic
@FilipJeremic, Hmm .. Este é um jogo de neopets?
Pacerier

Respostas:

3

Você pode criar os blocos, se quiser - usando o Photoshop ou outra coisa. Eu recomendaria um programa de desenho vetorial, não um programa de desenho de pixels (não sei o suficiente sobre o Photoshop, etc, para saber o que ele oferece atualmente).

Pessoalmente, sugiro que você não se preocupe em criar peças, em vez disso, faça com que o jogo as desenhe usando sua API de desenho, será muito mais fácil (especialmente se você perceber quantas peças inclinadas diferentes você precisaria).

MarkR
fonte
Não tenho certeza eu concordo com ter o jogo tornar telhas para você a menos que o seu motor / quadro vai deixar você fazer isso facilmente (em 2D)
John McDonald
3

Mantenha a imagem quadrada de 64 x 64 como fonte. Para obter versões inclinadas, incline- a primeiro no lado direito (para combinar com o exemplo da imagem), depois gire 45 graus e reduza-a em altura. O resultado seria a inclinação que você estava procurando (com um pouco de tentativa e erro quanto à inclinação).

Como todas as etapas (alterar o sombreamento, a inclinação, a rotação e o dimensionamento) além de criar o quadrado inicial são bastante simples, convém executar essas etapas com o openGL na inicialização do seu jogo ou como uma etapa automatizada na compilação processo (basta criar um pequeno programa que possa fazer todas as inclinações / rotações necessárias e adicioná-lo ao script de construção).

O uso de gráficos vetoriais provavelmente seria uma idéia se você quiser continuar criando manualmente cada bloco inclinado. O Photoshop tem suporte para camadas vetoriais, assim você não precisará aprender um novo programa para tentar isso.

Daniel Carlsson
fonte
Por que você usa o Photoshop em vez do Fireworks e etc?
21717 Pacerier
@ Pacerier Não, a pergunta original mencionava o photoshop. Pessoalmente, comecei a usar o Krita recentemente, antes do Paint.net (que ainda uso para trabalhos mais rápidos).
Daniel Carlsson