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

arrow_back Aula 07 - Jogo Polygonal Rescue - Parte 5 - Gizmos Personalizados

Gizmos Personalizados

Você deve implementar o OnDrawGizmos em um script sempre que desejar desenhar Gizmos, os quais podem inclusive ser manipulados com o mouse. Nesta aula utilizaremos Gizmos para desenhar quatro linhas, as quais correspondem às bordas do retângulo representando a área de geração dos prefabs. É importante observar que essa função não é executada se o script ao qual essa área pertence não está expandido no Inspector.

O esqueleto padrão do método OnDrawGizmos é assim:

O funcionamento dos Gizmos segue o seguinte padrão: inicialmente você modifica a cor dos Gizmos e em seguida utiliza os comandos para desenhá-los na tela com a cor selecionada. Se deseja desenhar vários Gizmos com muitas cores, basta modificar a cor novamente, imediatamente, antes de desenhar cada Gizmo.

Para mudar a cor atual dos Gizmos você deve usar o seguinte comando:

Isso mudará a cor dos Gizmos desenhados abaixo desse comando para amarelo, por exemplo. Vamos testar agora o desenho de uma simples linha amarela no editor a partir do centro até um ponto a 10 unidades de distância no eixo X, ou seja, X+10. A implementação ficará assim:

Repare que o centro é a posição atual do GameObject com o script anexado (transform.position) e a variável final_da_linha é criada como um novo Vector3 com as mesmas posições do centro, porém com o valor do eixo X adicionado de 10 unidades. Logo após usamos o comando Gizmos.DrawLine(centro, final_da_linha) para desenhar uma linha entre esses dois pontos. Salve o script e volte ao Unity. Você verá uma linha amarela desenhada a partir do centro do IntanciarPrefabs com 10 unidades de tamanho, mesmo sem executar o jogo, como na Figura 12. Legal, não é mesmo?

Versão 5.3 - Todos os Direitos reservados