Pergunta

Estou enfrentando um problema que provavelmente é extremamente comum no design do jogo.

  1. Vamos supor que temos um mundo 2D
  2. O tamanho do mundo é m x n ret
  3. O mundo pode conter alguns itens nele
  4. Os itens têm (x, y) coordenar
  5. O mundo pode ser navegado por uma janela fisicamente (MXN).
  6. A janela do navegador pode ser ampliada para dentro / saída
  7. A janela do navegador pode ser levada para cima/para baixo + para a esquerda, enquanto nas extensões do recorde do mundo.

Como devo implementar isso? Estou especialmente preocupado com a janela do navegador. Alguém pode recomendar alguma boa leitura?

Isso não é uma lição de casa - é mais uma tarefa que eu me preparei para concluir.

Outras dicas

Implemente -o como você implementaria o Google Maps com marcadores especiais.

Basicamente, você está mapeando um subconjunto retangular de uma área para outro retângulo, ou seja. a janela do navegador. São essencialmente apenas 2 operações - uma de tradução, para posicionar a área vista no mundo e depois uma de escala, para levar essa área visível arbitrária e escalá -la para a janela. Separado para isso, é a questão de aprofundar o zoom, que está essencialmente modificando o tamanho da área vista.

No desenvolvimento de jogos, existem várias maneiras de abordar isso. Geralmente, você personalizaria uma projeção de visualização para mostrar o máximo possível do mundo (ou seja, transforme-se das coordenadas do mundo para ver coordenadas, normalmente uma projeção ortográfica) e simplesmente traduzir o mundo ou a visão para colocar a exibição de modo a ser apontando para o que você quer ver. Desde que você defina as posições de seus objetos corretamente, o hardware 3D desenhará o que você espera.

Você pode se safar com o DHTML, mas Flash ou Silverlight seria muito mais fácil de implementar algo assim.

Dê uma olhada no código atrás Google Maps Para alguma inspiração. Eles estão fazendo algo semelhante ao que você deseja em HTML puro.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top