Escolar Documentos
Profissional Documentos
Cultura Documentos
Tutorial 05
Tutorial 05
Tutorials
Introduo ao Unity
Jay Clei Garcia dos Santos
Unity Technologies
Resumo
Este tutorial tem como objetivo demonstrar a facilidade criao de um
nvel de um jogo de primeira pessoa (First Person Shooter) desde o zero.
Introduo
A Unity uma ferramenta de desenvolvimento de jogos 2D / 3D
multiplataforma que tem como principais caractersticas a facilidade de uso,
rpida prototipagem e integrao com ferramentas externas como Maya, 3D
Studio, Photoshop, Blender, entre outras.
O objetivo da empresa democratizer o desenvolvimento de jogos. Sua
facilidade de uso e preo acessvel fizeram com que a Unity atingisse mais de
50% de penetrao no mercado de desenvolvimento mobile mundial.
Hoje a Unity conta com 1,5 milhes de usurios registrados no mundo,
desde desenvolvedores amadores fazendo um jogo em seu tempo livre, at
grandes empresas como Electronic Arts, BigPoint e Nintendo.
Conceitos bsicos
OBS.: Todos os materiais e contedos utilizados neste
tutorial podem ser baixado no site.
OBS. 2: Na parte de animao do rob (8. Criando um
inimigo) utilizado o sistema de animao Mecanim, presente
na nova verso 4.0 do Unity. Todo o resto do tutorial pode ser
feito na verso 3.x
1. Criando o Projeto
Caso voc ainda no tenha o Unity instalado em sua mquina, voc pode
baix-lo em http://unity3d.com/unity/download/
Ao iniciar o Unity clique em File -> New Project defina onde seu projeto
vai ser salvo e na janela Import the following packages selecione Character
48
Tutorials
49
Tutorials
50
Tutorials
51
Tutorials
52
Tutorials
53
Tutorials
54
Tutorials
55
Tutorials
56
Tutorials
57
Tutorials
58
Tutorials
59
Tutorials
60
Tutorials
61
Tutorials
62
Tutorials
63
Tutorials
64
Tutorials
65
Tutorials
66
Tutorials
67
Tutorials
68
Tutorials
69
Tutorials
70
Tutorials
71
Tutorials
72
Tutorials
73
Tutorials
74
Tutorials
void Update ()
{
if(Input.GetButtonDown("Fire1"))
{
Rigidbody bullet = Instantiate(myBulletPrefab,
transform.position, transform.rotation) as Rigidbody;
bullet.velocity =
transform.TransformDirection(new Vector3
(0,0,shootForce));
audio.PlayOneShot(shootClip);
gun.animation.Play ("shoot");
gun.animation.PlayQueued ("idle");
}
}
- bullet.velocity
-
= transform.TransformDirection(new
Vector3 (0,0,shootForce)); - Defino a velocidade do
prefab instanciado para X = 0, Y = 0 e Z = shootForce.
audio.PlayOneShot(shootClip); - Comeo a tocar o audio
gun.animation.Play ("shoot"); - Comeo a tocar a
animao shoot
- gun.animation.PlayQueued ("idle"); - Assim que
animao atual terminar, comeo a tocar a animao idle
Rigidbody myBulletPrefab;
int shootForce = 20;
AudioClip shootClip;
GameObject gun;
75
Tutorials
disparada
- GameObject gun: A arma, precisamos saber qual a arma para
poder tocar as animaes shoot e idle
Como demonstramos quando criamos a bala, como essas variveis so
publicas elas podem ser alteradas dentro do editor:
- Varivel myBulletPrefab: Arraste o prefab Cube da janela
Project para o campo My Bullet Prefab da seo Bullet Shooter
(Script)
- Varivel shootForce: Mantenha o valor 20
- Varivel shootClip: Arraste o arquivo bang.wav para a janela
Project e depois arraste o objeto bang da janela Project para
o campo Shoot Clip da seo Bullet Shooter (Script)
- Varivel Gun: Arraste o objeto bazooka da janela Hierarchy
para o campo Gun Clip da seo Bullet Shooter (Script)
Sua configurao deve estar igual a Fig. 29.
76
Tutorials
depois clique em Component -> Audio -> Audio Source. Clique Play e agora
o udio deve estar funcionando corretamente.
8. Criando um inimigo
Agora vamos criar um rob que ser o nosso alvo. Clique em Assets ->
Import Package -> Custom Package e selecione o arquivo robot.unitypackage,
clique em Import no pop-up. Selecione o prefab Robot_Animated e arrasteo para a janela Hierarchy, depois posicione o rob em frente a cmera (Fig.
30).
77
Tutorials
78
Tutorials
79
Tutorials
80
Tutorials
81
Tutorials
82
Tutorials
83