Tópicos Especiais em  
Engenharia de Software (Jogos II)  
Aula 03 Terrenos, Árvores e Partículas  
Edirlei Soares de Lima  
<edirlei@iprj.uerj.br>  
Unity 3D: Graphics  
A Unity oferece diversos elementos para a criação de  
ambientes virtuais realistas.  
Iluminação em Tempo-Real  
Sombras  
Shaders  
Sistema Partículas  
Editor de Terrenos  
Editor de Árvores  
Água  
Sistema de Terrenos  
O sistema de terrenos da Unity permite a criação de vastos  
ambientes abertos: florestas, montanhas, vales, rios, ilhas...  
O editor de terrenos possui um conjunto completo de  
ferramentas para tornar o processo de criação de terrenos  
simples e rápido.  
Editor de Terrenos  
Adicionar terreno: GameObject -> 3D Object -> Terrain  
Ferramentas de altura:  
Raise/Lower Height  
Paint Height  
Smooth Height  
Brushes  
Editor de Terrenos  
Ferramentas de textura:  
Textures  
Brushes  
Editor de Terrenos  
Ferramentas de árvores:  
Trees  
Editor de Terrenos  
Ferramentas de grama e detalhes:  
Details  
Editor de Terrenos  
Zonas de Vento:  
Adicionar zona de vento: GameObject -> 3D Object -> Wind Zone  
Propriedades:  
Mode (Spherical ou Directional);  
Radius: raio;  
Main: força do vento;  
Turbulence: variação na força do vento;  
Pulse Magnitude: magnitude dos pulsos de vento;  
Pulse Frequency: frequência dos pulsos de vento;  
Editor de Terrenos  
Configurações do Terreno:  
Draw: habilita/desabilita a renderização do  
terreno;  
Pixel Error: precisão do mapeamento da  
estrutura do terreno (mapa de altura, texturas,  
etc) e o terreno gerado;  
Base Map Distance: distancia máxima em que as  
texturas do terreno são renderizadas em  
resolução máxima;  
Cast Shadows: habilita/desabilita sombras no  
terreno;  
Material: material utilizado na renderização do  
terreno;  
Editor de Terrenos  
Configurações do Terreno:  
Thickness: extensão do volume de colisão;  
Draw (tree and detail): habilita/desabilita a  
renderização de árvores e detalhes do terreno;  
Detail Distance: distancia máxima em que os  
detalhes são renderizados;  
Detail Density: número máximo de detalhes em  
uma única unidade de área;  
Tree Distance: distancia máxima em que as  
árvores são renderizadas;  
Editor de Terrenos  
Configurações do Terreno:  
Billboard Start: distancia em que as árvores são  
substituídas por imagens billboards;  
Fade length: distancia na qual as árvores vão  
transitar entre modelos 3D e billboards;  
Max Mesh Trees: número máximo de árvores  
representadas por objetos 3D;  
Terrain Width: tamanho do terreno no eixo x;  
Terrain Length: tamanho do terreno no eixo z;  
Terrain Height: altura do terreno;  
Heightmap Resolution: resolução do mapa de  
alturas do terreno;  
Exercício 06  
Continue a implementação da fortaleza criada nos exercícios  
anteriores adicionando a ela os seguintes elementos:  
a) Crie um terreno e posicione a fortaleza  
nele.  
Lembre-se de aumentar a elevação  
mínima do terreno para permitir a  
criação de buracos no futuro.  
b) Crie montanhas e vales ao redor da  
fortaleza.  
c) Utilize texturas para pintar as  
montanhas e vales do terreno.  
d) Posicione árvores e grama no terreno.  
e) Configure a iluminação do ambiente.  
Simulação de Água  
Standard Asset Environment  
WaterProDaytime  
WaterBasicDaytime  
Simulação de Água  
Standard Asset Environment  
Water4Advanced  
Water4Simple  
Exercício 07  
Continue a implementação da fortaleza criada nos exercícios  
anteriores adicionando a ela um fosso com água ao redor da  
fortaleza.  
Editor de Árvores  
O editor de árvores permite a criação de árvores diretamente  
na Unity. É uma ferramenta extremamente útil quando se  
deseja criar florestas detalhadas com diferentes tipos de  
árvores.  
Editor de Árvores  
Criar uma nova árvore: GameObject -> 3D Object -> Tree  
Ferramentas:  
Editor de Árvores  
Ferramentas de edição de árvores:  
Branch Group  
Editor de Árvores  
Ferramentas de edição de árvores:  
Branch levels:  
Editor de Árvores  
Ferramentas de edição de árvores:  
Leaf Groups  
Editor de Árvores  
Ferramentas de edição de árvores:  
Materiais:  
Shader "Nature -> Tree Creator Bark"  
Shader "Nature -> Tree Creator Leaves"  
Exercício 08  
Utilizando o Editor de Árvores, crie pelo menos duas árvores  
distintas (uma palmeira e uma conífera). Em seguida, utilize-as  
no terreno da fortaleza.  
Sistema de Partículas  
Particles are small simple images or meshes  
that are displayed and moved in great  
numbers by a particle system.  
Cada partícula representa uma pequena  
porção de um fluido ou uma entidade amorfa.  
O efeito criado por todas as partículas em  
conjunto cria a impressão da entidade  
completa.  
Exemplos: nuvem, fogo, chuva, fumaça, etc.  
Sistema de Partículas  
Cada partícula tem um tempo de vida  
predeterminado (poucos segundos), durante  
o qual elas podem passar por várias  
transformações (forma, cor, transparência...).  
O sistema emite partículas em posições  
aleatórias dentro de uma região do espaço de  
acordo com uma taxa de emissão.  
A partícula é exibida até que o seu tempo de  
vida acaba.  
Sistema de Partículas  
Cada partícula tem o seu próprio vetor de  
velocidade que determina a direção e a  
distância que a partícula vai percorrer  
durante o seu tempo de vida.  
A velocidade pode ser alterada por forças de  
gravidade aplicadas pelo próprio sistema ou  
afetadas por zona de vento criadas no  
terreno.  
Sistema de Partículas  
Criar um novo sistema de partículas:  
GameObject -> Effects -> Particle System  
ou Component -> Effects -> Particle  
System).  
(
Sistema de Partículas  
Propriedades:  
Duration: tempo de duração do sistema;  
Looping: habilita/desabilita a execução em  
loop do sistema;  
Prewarm: inicializa o sistema como se ele já  
tivesse completado um ciclo de execução;  
Start Delay: intervalo de tempo antes do  
sistema começar a emitir partículas;  
Start Lifetime: tempo de vida das partículas;  
Start Speed: velocidade inicial das partículas;  
3D Start Size: tamanho inicial das partículas  
nos três eixos;  
Start Size: tamanho inicial das partículas;  
Sistema de Partículas  
Propriedades:  
3D Start Rotation: rotação inicial das  
partículas nos três eixos;  
Start Rotation: rotação inicial das partículas;  
Randomize Rotation Direction: faz partículas  
aleatórias terem rotações aleatórias;  
Start Color: cor inicial das partículas;  
Gravity Modifier: modifica a escala da  
gravidade aplicada sobre o sistema;  
Play on Awake: executa automaticamente o  
sistema de partículas;  
Max Particles: número máximo de partículas  
da simulação;  
Sistema de Partículas  
Propriedades (Emission):  
Determina a taxa e o tempo de emissão das  
partículas.  
Rate: número de partículas emitidas por  
unidade de tempo;  
Bursts: permite que partículas extras sejam  
emitidas em determinados tempos;  
Sistema de Partículas  
Propriedades (Shape):  
Determina a forma da onde as partículas são  
emitidas.  
Shape: forma utilizada para emissão;  
Sphere, Hemisphere, Cone, Box, Mesh, MeshRenderer,  
Skinned MeshRenderer, Circle e Edge.  
Sistema de Partículas  
Propriedades (Velocity Over Lifetime):  
Velocidade das partículas durante o seu tempo  
de vida.  
X, Y e Z: velocidades das partículas nos eixos X,  
Y e Z;  
Space: espaço local ou global;  
Sistema de Partículas  
Propriedades (Limit Velocity Over  
Lifetime):  
Determina como a velocidade das partículas é  
reduzida durante o seu tempo de vida.  
Speed: limite de velocidade (constante, curva,  
aleatório);  
Dampen: fração de redução da velocidade ao  
exceder o limite;  
Aplicação: resistência do ar, fogos de artifícios.  
Sistema de Partículas  
Propriedades (Inherit Velocity):  
Determina como a velocidade das partículas é  
adaptada.  
Mode: determina como a velocidade é herdada  
(current ou initial);  
Percentage: porcentagem da velocidade do  
emissor que deve ser herdada;  
Aplicação: fumaça de um carro (deve ser  
inicializada em relação a velocidade do carro).  
Sistema de Partículas  
Propriedades (Force Over Lifetime):  
Determina forças de aceleração a serem  
aplicadas nas partículas durante o seu tempo  
de vida.  
X, Y e Z: força aplicada nas partículas nos eixos  
X, Y e Z;  
Space: espaço local ou global;  
Sistema de Partículas  
Propriedades (Color Over Lifetime):  
Especifica a variação de cor e transparência das  
partículas ao longo do seu tempo de vida.  
Color: cor/gradiente das partículas;  
Sistema de Partículas  
Propriedades (Color By Speed):  
Especifica a variação de cor e transparência das  
partículas de acordo com as suas velocidades.  
Color: cor/gradiente das partículas;  
Speed Range: intervalo de velocidade;  
Sistema de Partículas  
Propriedades (Size over Lifetime):  
Especifica a variação no tamanho das partículas  
ao longo do seu tempo de vida.  
Size: curva que termina a variação no tamanho  
das partículas ao logo do tempo;  
Sistema de Partículas  
Propriedades (Size by Speed):  
Especifica a variação no tamanho das partículas  
de acordo com as suas velocidades.  
Size: curva que termina a variação no tamanho  
das partículas de acordo com a velocidade;  
Speed Range: intervalo de velocidade;  
Sistema de Partículas  
Propriedades (Rotation over Lifetime):  
Especifica a variação na rotação das partículas  
ao longo do seu tempo de vida.  
Angular Velocity: velocidade angular de  
rotação das partículas;  
Aplicação: folhas caindo.  
Sistema de Partículas  
Propriedades (Rotation by Speed):  
Especifica a variação na rotação das partículas  
de acordo com as suas velocidades.  
Angular Velocity: velocidade angular de  
rotação das partículas;  
Speed Range: intervalo de velocidade;  
Aplicação: pedras rolando no chão.  
Sistema de Partículas  
Propriedades (Collision):  
Determina como as partículas colidem com  
objetos do cenário.  
Sistema de Partículas  
Propriedades (Triggers):  
Permite que as partículas acionem triggers.  
Sistema de Partículas  
Propriedades (Sub Emitters):  
Permite que as partículas acionem outros  
emissores de partículas.  
Sistema de Partículas  
Propriedades (Texture Sheet Animation):  
Permite que as partículas sejam representadas  
por um conjunto de imagens.  
Sistema de Partículas  
Propriedades (Render):  
Determina como as partículas são renderizadas.  
Render Mode: Billboard, Stretched Billboard,  
Horizontal Billboard, Vertical Billboard ou Mesh  
Sistema de Partículas  
Propriedades (Render):  
Material: material utilizado para renderizar a  
partícula;  
Sort Mode: ordem na qual as partículas são  
renderizadas;  
Cast Shadows: habilita/desabilita sombras;  
Receive Shadows: habilita/desabilita a receber  
sombras de outros objetos;  
Min Particle Size: tamanho mínimo das  
partículas;  
Outras Propriedades: http://docs.unity3d.com/Manual/PartSysRendererModule.html  
Exercício 09  
Continue a implementação da fortaleza criada nos exercícios  
anteriores adicionando a ela os seguintes elementos:  
a) Um sistema de partículas para simular chuva no ambiente.  
b) Um sistema de partículas para simular fogo nas tochas da  
entrada da fortaleza.