Cursos / Jogos Digitais / Desenvolvimento com Motores de Jogos II / Aula
Revisando o script, repare que temos três variáveis públicas:
Nesse script (executado antes do Start), o que fazemos no método Awake é um laço for para que uma quantidade de prefabs da lista prefabs_base seja criada em posições aleatórias. Cada prefab instanciado é criado com a coordenada Y (altura) igual ao do gameobject que o script está adicionado enquanto as coordenadas X e Z são configuradas com uma variação de + ou - distancia_maxima. Isso faz com que os prefabs fiquem na mesma altura do objeto com o script, entretanto suas posições no plano X,Z são aleatórias podendo no se distanciar do centro no máximo com o valor de distancia_maxima.
Vale observar que essa distância máxima é aplicada individualmente entre as coordenadas X e Y, e se você analisar com cuidado descobrirá que se a posição final do prefab gerado for próximo ao máximo possível em X e Y ele ficará em um local com uma distância linear ao centro maior que a distancia_maxima. Isso foi feito de forma proposital, pois assim a área possível de geração dos prefabs é um quadrado e não um círculo. A Figura 4 ilustra essa área detalhadamente.
A seguir vamos fazer duas mudanças nesse script antes de usá-lo em nosso jogo:
Versão 5.3 - Todos os Direitos reservados