Cursos / Jogos Digitais / Desenvolvimento com Motores de Jogos I / Aula

arrow_back Aula 05 - Os Elementos Gráficos e a Câmera

Sistemas de Coordenadas do Unity

GUI Coordinates

O GUI Coordinates representa o sistema de coordenadas da Graphical User Interface (GUI) do seu jogo. Esse sistema de coordenadas funciona de maneira similar ao sistema de coordenadas de tela que vimos anteriormente, mas é invertido em relação aos seus eixos. A origem do sistema se dá no topo esquerdo da tela, e o seu fim no canto inferior direito, atingindo neste canto os valores Screen.width e Screen.height.

Esse sistema de coordenadas é utilizado, como o próprio nome sugere, para a adição de elementos de interface ao seu jogo. Podemos posicionar barras de vida, textos, botões, entre outras coisas, utilizando os pontos desse sistema de coordenadas, sem interagir diretamente com outros sistemas. Às vezes é necessário, no entanto, que haja o desenho de uma parte da interface em um local específico, como a vida de uma unidade acima de sua cabeça, por exemplo. Nesses casos, será preciso utilizar, mais uma vez, uma das funções de conversão, como citamos anteriormente.

Mas, espere! Assim como um boss às vezes aparece no meio da fase só para deixar a sua mensagem e de repente some, nós não entraremos em detalhes de como isso funciona agora! Deixaremos o suspense para a aula de interface gráfica que teremos mais adiante. ;)

Viewport Coordinates

A classe Viewport Coordinates representa o sistema de coordenadas da tela em si, independentemente da resolução, tamanho, etc. É um sistema de coordenadas 2D que inicia em 0,0 no canto inferior esquerdo e vai até o ponto 1,1 no canto superior direito. Essas coordenadas são especialmente úteis para quando precisamos posicionar mais de uma câmera em nossa cena, por exemplo. Entraremos em mais detalhes sobre a utilização desse sistema em breve, ao falarmos da câmera do Unity propriamente dita.

Screen Coordinates

Por fim, as Screen Coordinates representam o sistema de coordenadas da tela em relação à resolução. Esse sistema desenhará, de acordo com o que for definido pelo Viewport, as informações na tela em si, baseado na resolução e no formato desta. O seu posicionamento varia de 0,0 no canto inferior esquerdo até Screen.width, Screen.height no canto superior direito. Ele mapeia exatamente o que vimos anteriormente como sistema de coordenadas da tela.

Com isso, finalizamos os tópicos referentes aos sistemas de coordenadas em nossa aula. Já é possível identificar que há sistemas diversos e que, em alguns casos, há a necessidade de interação entre eles. Esta deve ser feita por métodos como o ScreenToWorldPoint(), o qual veremos em aulas futuras, quando utilizarmos, de fato, esses métodos.

Agora que entendemos melhor esses espaços, tentaremos compreender um pouco mais sobre a nossa câmera no Unity, a qual é um elemento específico que possui diversas propriedades a serem utilizadas e alteradas.

Versão 5.3 - Todos os Direitos reservados