Buscar

Unity 4

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 327 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 327 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 327 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Apostila 
 
 
 
Unity 4 
 
 
 
 
Curso de Unity 4 
 
A indústria dos games vem crescendo a cada dia e o que era uma brincadeira 
de criança hoje virou coisa séria, já existem games que tem até indicação de 
idade. 
E essa indústria se tornou tão rica que até o cinema se rendeu a ela, há alguns 
anos era comum ver grandes filmes se tornarem jogos de vídeo game, hoje 
isso mudou. 
Temos grandes games que invadiram os cinemas, como Hitman, O Príncipe 
da Pérsia, Street Fighter,Mortal Kombat, entre outros 
E agregado ao crescimento dessa indústria está o desejo de vários jovens do 
mundo inteiro em fazer parte desse mercado milionário. 
O que parecia um sonho há cerca de cinco anos atrás, hoje é realidade. Temos 
hoje no Brasil pequenas empresas de games que estão faturando muito com 
essa indústria, principalmente os voltados para dispositivos móveis, porém, já 
temos também algumas empresas brasileiras apostando no mundo dos 
consoles. 
Devido ao fato dessa indústria estar em um momento de grande crescimento 
no Brasil, quem souber desenvolver algo novo e de qualidade certamente vai 
colher os ricos frutos desse segmento. 
Agora vamos conhecer um pouco mais a fundo sobre a origem de tudo isso, 
como e de onde vem o primeiro console, os primeiros jogos, os principais 
ícones desse mercado que vem crescendo numa velocidade incrível e ainda 
promete crescer ainda mais nos próximos anos. 
 
 
 
 
 
 
 
 
 
 
 
 
A história dos games 
Podemos dizer que a história dos games começou no ano de 1958, em um 
laboratório de pesquisas militares norte americano. 
O primeiro jogo criado tinha o nome de Tennis for two, a mecânica desse jogo 
era muito simples, o jogador precisava simular um jogo de Tênis na tela de um 
osciloscópio. 
Apesar desse jogo nunca ter saído de dentro do laboratório onde foi criado, isso 
não desabona em nada sua importância para o mundo dos jogos. 
Depois dele em 1961 surgiu mais um jogo criado nos Estados Unidos, dessa 
vez a criação foi mérito de estudantes da Universidade de Massachusetts. 
O jogo não tinha sido desenvolvido para fins comerciais, na verdade foi mais 
um desafio entre amigos. O principal desafiado em questão foi Steve Slug 
Russel, que foi responsável por grande parte do trabalho de desenvolvimento 
do jogo que futuramente ficaria conhecido como Spacewar. 
A idéia para esse jogo era simplesmente mostrar todo o potencial de uma 
máquina nova que usava transistores ao invés de válvulas. 
Apesar do desinteresse comercial por parte dos criadores do jogo, não faltaram 
pessoas interessadas em investir nessa nova idéia. 
E foi na década de 70, oito anos após a finalização do jogo Spacewar, que 
apareceram os primeiros investidores na área de games. 
Não podemos esquecer que falar de games é falar de um conjunto e não de um 
único produto, um jogo eletrônico precisa de um aparelho para poder executar 
suas rotinas de programação, então, a evolução dos softwares de games 
caminhou lado a lado com a evolução dos hardwares para rodar os games. 
E esse fato fica claro em meados de 1971 com o nascimento do Odyssey, um 
console capaz de se conectar a aparelhos de televisão. Esse console de 
propriedade da Magnavox, certamente abriu as portas para as inovações que 
estariam por vir. 
Como uma dessas inovações vai citar as conhecidas máquinas de fliperama, 
que resistem até os dias de hoje tornando aquela nossa visita ao Shopping 
Center muito mais divertida. 
Depois desse fenômeno chamado fliperama, era de se prever que surgissem 
empresas interessadas em investir nos games, uma dessas empresas foi 
a Atari que surgiu em 1976 inspirando outras empresas a investir em jogos e 
consoles cada vez mais avançados. 
Nem precisamos falar do sucesso que foi a empresa Atari, qualquer pessoa que 
conheça o mínimo sobre games sabe a febre que foi o console produzido por 
ela. 
E essa febre se alastrou de tal forma que outras empresas viram nesse novo 
segmento a oportunidade de gerar muito lucro em pouco tempo, uma dessas 
empresas foi a Mattel, que se tornou uma forte concorrente da Atari brigando 
não só na produção dos jogos, mas também na produção de consoles. 
Durante alguns anos os proprietários dessas duas empresas não enxergavam 
nada a não ser um ao outro, a Atari e a Mattel estavam literalmente numa 
guerra por mercado, e enquanto essa guerra se intensificava outros 
investidores resolveram aproveitar para lucrar investindo na produção de jogos 
para esses consoles, e assim foram surgindo empresas 
como Ubisoft, Rockstar, entre outras especialistas em criação de jogos. 
Afinal, com o mercado de console concentrado nas mãos de dois titãs, o que 
restava para os pequenos desenvolvedores era criar jogos para eles. E foi dessa 
forma que surgiu a primeira Softhouse da história dos games, a mundialmente 
conhecida Activision criadora de relíquias como Enduro e Pitfall. 
A história dos games 
Agora a história dos games ganhava uma nova página onde desenvolver jogos 
era tão lucrativo quanto desenvolver os consoles. 
Após a criação da Activision muitas outras empresas vieram e se foram de 
acordo com as necessidades do mercado, mas sem dúvida uma empresa que 
podemos citar como revolucionária desde a sua fundação é a Nintendo. 
A Nintendo famosa produtora de consoles e games japonesa, é a responsável 
por inúmeros sucessos tanto na parte de games quanto na de consoles. E Falar 
de Nintendo e não falar de Shigeru Miyamotoseria impossível. 
Shigeru foi responsável por títulos que faturam até os dias de hoje milhares de 
dólares, alguns deles são: Super Mario, A lenda de Zelda, Metroid, Star 
Fox, entre outros títulos de sucesso. 
Podemos dizer que a Nintendo é hoje o que foi a Atari nos anos 70, é obvio 
que a Nintendo enfrenta rivais muito mais poderosos do que a Atari, mas é 
essa rivalidade que mantém essa empresa viva e se renovando a cada dia. 
Podemos destacar como a primeira rival da Nintendo a poderosa Sony com 
seu console Playstation. 
O Playstation desde sua primeira versão chamou a atenção pelos belos 
gráficos e jogos não tão lúdicos (marca registrada da Nintendo). 
E com essas características mais voltadas para o público adulto não demorou 
muito para a Sony começar a conquistar jogadores que queriam bem mais que 
pular em tartarugas e quebrar tijolos com a cabeça. 
Com o Playstation 2 lançado em Março de 2000 a Sony conseguiu garantir de 
uma vez seu lugar no mundo dos games, mostrando ao mundo jogos incríveis 
como GTA e God of War. 
Hoje o Playstation está em sua terceira versão e mantém a mesma linha de 
desenvolvimento com muita realidade e qualidade. 
Por último, mais uma empresa de grande poder no mercado mundial resolveu 
também querer uma fatia desse mercado tão lucrativo, a Microsoft então 
lança seu próprio console, o Xbox. 
O Xbox surgiu com uma proposta bem parecida com a 
do Playstation da Sony, jogos voltados para um público mais velho, porém 
com uma diferença ou um destaque, o foco em jogos multiplayer. 
Hoje podemos dizer que o mundo dos games é controlado por essas três 
grandes empresas: Sony,Nintendo e Microsoft. Vale lembrar que com o 
surgimento dessas grandes empresas, aquelas primeiras que citamos no início 
dessa apostila como a Atari e a Mattel, foram perdendo força e espaço na 
produção de consoles para essas três grandes empresas que hoje dominam 
esse mercado. 
Mas a história não para por ai, novos consoles ainda estão surgindo como o 
ainda desconhecido Ouyaum console que promete executar na TV games feitos 
para a plataforma Android. E para completar essa abrangente área de jogos 
eletrônicos não dá para se esquecer de citar o mercado em plena ascensão dos 
jogos para mobile, telefones celulares e tablets que também competem e 
buscam seu espaço e sua "fatia" desse mercado incrivelmentelucrativo de 
games. 
Quais são os estilos de games mais jogados em cada plataforma? 
Essa é a pergunta que todo desenvolvedor de games seja ele experiente ou 
não, deveria se fazer antes de iniciar um projeto, um dos maiores erros dessa 
indústria é iniciar um projeto caro e demorado sem analisar se existe mercado 
para o mesmo. 
É preciso entender que games campeões em vendas para PC muitas vezes não 
vão vender tanto em um console e vise versa. 
Vamos analisar a fundo os principais aparelhos executores de games e analisar 
seu respectivo mercado. 
Hoje em dia temos os seguintes aparelhos: 
Console 
Os consoles são aparelhos eletrônicos dedicados a executar games, esses 
aparelhos precisam estar conectados a aparelhos transmissores de imagem e 
áudio (aparelhos de TV) para que possam ser utilizados da maneira que se 
deve. 
Se fizermos uma pesquisa, veremos que de 90% dos lares no mundo todo 
possui ao menos 1 aparelho de televisão. Isso é comum faz parte da nossa 
cultura, desde pequenos já somos acostumados a passar boa parte do nosso 
tempo assistindo TV. Seja na sala em sofá, ou no quarto deitados em uma 
cama, espalhado em um puff, ou até mesmo sentado ou deitado no chão, 
enfim, o assistir TV é um ato de relaxamento. E um game feito para consoles 
tenta seguir a mesma linha que os programas de TV, ou seja, é feito para 
relaxar, se descontrair, enfim, se divertir. 
Quando você senta em frente à TV você quer relaxar e acompanhar alguma 
história, nos identificarmos com alguns personagens, fantasiarmos outros, 
enfim, são por essas razões que gostamos tanto de filmes, novelas e seriados. 
E as empresas de games para console sabem disso, e produzem jogos com 
histórias onde você deixa de ser apenas um espectador e vira o personagem 
principal, jogar um game no console é deixar de ver o filme para entrar nele. 
Computadores 
Os computadores ao contrário dos consoles não têm como função primordial 
executar games, na verdade essa ação é apenas uma das várias tarefas de um 
computador. 
Agora vamos analisar em quais locais temos maior facilidade de encontrar 
computadores. Os computadores podem ser encontrados nas casas, salas e 
quartos, podem ser encontrados nas empresas, nos hospitais, nos comércios, e 
por ai vai. 
Essa diversidade de locais possíveis de se encontrar um computador identifica 
com facilidade seus usuários e em consequência os tipos de jogadores desses 
aparelhos. 
A seis ou sete anos atrás raramente você encontraria um jogador de 
computador em sua casa em sua maioria esse jogadores jogavam no trabalho e 
principalmente em Lan House e Cyber Café, porém com a evolução do 
hardware e o preço reduzido de máquinas mais potentes e internet banda larga 
ficou comum encontrar esses jogadores em suas casas ou em casas de amigos 
jogando em grupo. 
Celulares 
Os jogadores que usam esse aparelho são diferentes dos dois anteriores, pois 
pelo fato do celular ser um aparelho portátil ele pode se adequar a situação e 
ao local onde está. 
O jogador que usa um celular pode jogar em uma fila de espera, deitado em 
sua cama, no sofá da sala enquanto a mãe assiste TV, enfim é um aparelho 
que se adapta a qualquer lugar e situação, talvez por isso seja tão difícil definir 
um estilo de jogo para ele. 
Quando pensamos em celulares precisamos definir games levando em 
consideração as dimensões e potência do aparelho e não o local ou hora que o 
jogador vai usá-lo. 
Então para um aparelho que tem uma tela limitada é preciso desenvolver 
games que façam uso de imagens grandes e que não sobrecarreguem o 
sistema do celular que tem outras funções além de servir como reprodutor de 
games, nesse caso a otimização de imagens e códigos é imprescindível. 
Entre os games mais jogados para celulares estão o famoso Side Scroll ou 
"estilo Super Mário", Tetrise qualquer jogo que use uma única tela. 
É claro que dependendo do aparelho celular jogos mais potentes podem ser 
executados por ele, mas aqui estamos falando dos aparelhos em geral. 
Tablets 
As tablets se encaixam nas mesmas descrições dos celulares, exceto pelo 
tamanho da tela e potência do aparelho. 
Para desenvolver games para tablets algumas regras usadas no 
desenvolvimento para celulares precisam ser mantidas como a otimização de 
código e gráficos. 
Mas ao contrário dos celulares as tablets podem reproduzir games em 3D com 
qualidade superior aos reproduzidos por certos consoles como Playstation 
2 por exemplo. 
Então, logicamente games como Hitman e God of War para Playstation 
2 podem muito bem serem reproduzidos nesses aparelhos. 
Tipos de Games 
Muitas pessoas jogam jogos de estilos diferentes e acham que é tudo igual, não 
é bem assim, os games são diferentes entre si. 
Além do game para puro entretenimento que é o mais conhecido pelos 
jogadores de console, existem outros tipos de jogos que vamos listar a seguir. 
Advergames 
Os advergames se tornaram populares a partir do ano de 2000, a estratégia 
dos advergames é muito simples, ela se baseia em fundir uma propaganda com 
um jogo. Hoje é comum encontrarmos games que promovem produtos e até 
mesmo serviços. 
Essa é uma forma de fixar uma marca ou serviço na cabeça do jogador. 
Existem várias empresas que apostam nesse novo tipo de marketing, por 
exemplo, encontramos jogos de bolachas, de carros, de dinossauros que 
comem iogurte e por ai vai. 
 
Games educativos 
Essa modalidade de jogos também é muito popular entre os pais e professores. 
Existem escolas que pagam pequenas fortunas para adquirir jogos que possam 
ajudar a fixar na mente de seus alunos o conteúdo curricular, que podem 
abranger desde os primeiros anos escolares com jogos simples para a 
alfabetização, conhecer cores, animais, entre outras coisas, como também 
podem ser utilizados para criar jogos mais complexos e que mostrem na prática 
conteúdos que em uma sala de aula seriam extremamente difíceis de explicar. 
Esses jogos são em sua maioria muito simples para se desenvolver, sem muitos 
efeitos visuais ou complexas histórias, mas cumprem com excelência sua 
função, jogos como ligar pontinhos, colorir, quebra cabeça, são alguns dos 
games possíveis para essa categoria. 
 
Games corporativos 
Essa categoria de games também é nova no mercado e ela se destina a treinar 
trabalhadores que precisam executar funções complexas em ambientes de 
extremo risco. 
Assim como os educativos esses games não tem seu foco em qualidade gráfica, 
à única exigência do mesmo é a exata reprodução da realidade. 
Existem empresas petroquímicas que usam simuladores virtuais para 
treinamento de operadores de máquina, autoescolas que usam simuladores ao 
invés de veículos reais para testes de condutores. 
 
Games sociais 
Essa modalidade de games vem crescendo a cada dia, com comunidades 
como Orkut e Facebook o mercado para games sociais vem crescendo 
bastante. 
As pessoas não se contentam mais em apenas deixar mensagens nas redes 
sociais elas querem interagir umas com as outras através de um mundo virtual, 
um mundo dos games. 
O crescimento desse tipo de jogo foi tanto que em alguns games sociais 
podemos ver traços típicos de advergames. 
Isso é natural afinal um jogo onde várias pessoas interagem umas com as 
outras é sempre uma boa ferramenta para se anunciar produtos e serviços. 
Temos como um bom exemplo de game social o Cityville da Zynga um jogo 
muito parecido com o famoso Simcity. 
 
Games Indies 
O que é um desenvolvedor Indie? 
Podemos definir como um desenvolvedor de games indie uma pessoa ou 
pequeno grupo de pessoas que não estão inseridos no grande mercado de 
games, mas que produzem games comerciais mesmo assim. 
Uma das diferenças entre os desenvolvedores indie e os grandes 
desenvolvedores é a organização da equipe e claro seu capital. 
Enquanto grandes empresastêm verdadeiras linhas de produção para 
desenvolver seus produtos e um capital de giro expressivo para promover esses 
produtos, os indies precisam ser polivalentes e em sua maioria não tem capital 
inicial. 
Um produtor de games indie precisa muitas vezes saber programar, modelar, 
vender o produto, e tudo isso com o capital a zero. 
Como e onde publicar seus games Indies 
A indústria dos games é sem duvida uma indústria milionária mesmo em 
tempos de crise esse seguimento se mantém firme e estável. 
Esses fatores são mais que suficientes para atrair um número enorme de 
jovens querendo realizar dois sonhos, o de ganhar muito dinheiro e o de fazer 
aquilo que ama. 
Mas precisamos deixar claro para esses novos profissionais que a indústria dos 
games assim como qualquer outra exige muito de seus colaboradores, criar um 
game de qualidade é uma tarefa árdua que exige muito estudo e disciplina. 
Se você teve a iniciativa de adquirir esse curso já provou que tem essas 
qualidades então vamos seguir em frente. 
Quando você terminar seu game vai se deparar com uma questão, o "e 
agora"? 
Afinal você precisa fazer com que o maior número de pessoas possível jogue a 
sua criação, e acredite ninguém vai querer te passar os contatos para que você 
consiga fazer isso afinal você é um concorrente. 
Mas é por isso que nós da AprendaMais resolvemos ajudar nossos alunos não 
só ensinando como criar games de qualidade, mas também como publicá-los. 
Nos próximos tópicos vamos apresentar ótimas opções para publicar seus 
games aproveite essas oportunidades. 
Big Fish 
O Bigfish é uma excelente opção para publicação de games indie, a equipe é 
bem atenciosa e profissional, no site deles você pode ver o procedimento para 
envio de seus games, e o melhor eles trabalham com games 
para Pc, Mac, Android, Iphone e Ipad. 
Segue o link:http://www.bigfishgames.com.br/ 
 
 
 
 
Arcade Town 
O Arcade town é um site bem interessante você pode publicar seus games 
nesse site e colocando a logo marca deles no seu game é possível não só ser 
reconhecido como faturar algum. 
Veja o link: http://www.arcadetown.com/ 
Union 
A Union talvez seja uma das mais interessantes formas de publicar seus 
games, ela faz parte da Unity Tecnologies e a equipe da Unity te ajuda a 
vender seu game por uma pequena percentagem do seu lucro. 
Veja o link: http://unity3d.com/ 
Steam 
O que falar sobre a Steam? Ela é simplesmente o sonho de qualquer 
desenvolvedor, é o seu game anunciado para o mundo inteiro. 
Veja o link: http://store.steampowered.com/ 
Como documentar um projeto de game 
Um game como qualquer produto precisa ser bem documentado, existem 
etapas que precisam ser acrescentadas a rotina da equipe de desenvolvimento. 
Abaixo vamos listar as etapas de desenvolvimento dessa documentação: 
Fase inicial 
Nessa fase precisamos definir com riqueza de detalhes todas as informações 
referentes ao game, se ele é um game 2D ou se é 3D. 
A história de um game precisa ter começo meio e fim, os objetivos do jogador 
dentro dele precisam estar bem definidos para que no final todas essas 
informações possam servir para as próximas etapas. 
Documento de público 
Esse documento é de extrema importância para o desenvolvimento do projeto e 
é através dele que analisamos todas as informações do mercado de games para 
as principais plataformas e suas devidas categorias como: games de ação, 
games de aventura, etc. 
Nesse documento também é preciso definir com clareza todas as estratégias de 
marketing para promover o game de tal forma que o lucro de vendas supere o 
valor de investimento. 
 
 
Descrição técnica 
Essa fase é uma das mais curtas do desenvolvimento da documentação, talvez 
por ser uma etapa que necessite de objetividade no que é documentado. 
É na descrição técnica que documentamos algumas informações vitais ao 
funcionamento do game como, por exemplo, se o game é massivo qual 
linguagem de programação está sendo usada, em qual aparelho será 
executado. 
Documento de game designer 
Esse documento é responsável por coletar todos os documentos criados 
anteriormente a fim de produzir um game que respeite ao máximo as 
determinações já documentadas. A documentação de game designer não 
admite erros, uma decisão tomada sem o devido conhecimento nas 
documentações anteriores é capaz de destruir todo um projeto de game já que 
a função desse documento é garantir que todas as decisões anteriores sejam 
integralmente executadas. 
Protótipo 
Por fim o protótipo, fase onde documentamos todos os testes feitos em 
cenários, funções. Essa fase tem como principal meta garantir a mecânica de 
jogo. 
Além das documentações apresentadas anteriormente existem documentos que 
precisam ser feitos paralelamente para garantir o sucesso do projeto. 
Precisamos analisar quais são as expectativas dos jogadores ao jogar o seu 
game, se ele oferece ao jogador uma experiência social podendo ser jogado 
entre amigos e se ao mesmo tempo ele possibilita uma experiência mais 
individual para que o jogador possa usufruir do produto mesmo quando estiver 
sozinho. 
É preciso analisar até onde vai à coerência do game, não se podem adicionar 
itens coletáveis a um game que não tenha nenhuma função lógica. Dentro de 
um game todos os objetos que sejam dotados de ação com o jogador precisam 
ter funções agregadas a si, algumas funções mais importantes outras menos, 
mas definitivamente todas com alguma interação lógica e perceptível ao 
jogador. 
Os limites do mundo dos games também precisam ser bem definidos afinal o 
personagem precisa começar e terminar o game como herói ou como vilão 
evitando qualquer forma de mudança de lado durante a história do game, não 
devemos esquecer que um pecado mortal no mundo dos games é deixar o 
jogador confuso, essa sensação causa descontentamento e consequentemente 
desinteresse pelo jogo. 
Outro tema importante para se documentar é o fluxo ou andamento de game, 
um desenvolvedor de games em hipótese alguma pode deixar lacunas que 
venham a provocar o travamento "no sentido evolutivo da história do game". É 
preciso deixar pistas que mostrem para o jogador como ele pode prosseguir no 
jogo, ninguém gosta de chegar a uma fase e não encontrar pistas do que 
precisa ser feito para seguir adiante. 
Seguindo esses parâmetros seu game estará bem documentado e pronto para 
ser desenvolvido com o mínimo de erros possível, talvez você ache esse 
procedimento demorado e até um pouco chato, mas acredite é ele que vai te 
ajudar a obter sucesso. 
UNITY 3D 
Finalmente chegamos na parte do curso que muitos estavam esperando, a 
parte onde vamos conhecer a Game Engine Unity3d. 
 
Introdução 
A Unity3D como já foi mencionada, é uma Game Engine ou traduzindo, um 
motor de jogo. A função desse software é facilitar ao máximo o 
desenvolvimento de aplicações interativas 3D. 
A empresa criadora da Unity3d (Unity Tecnologies) foi responsável por uma 
verdadeira revolução no mundo dos games, afinal além de desenvolver uma 
ferramenta capaz de competir de igual para igual comGame 
Engines poderosas no mercado como UDK e CRY ENGINE, 
a Unity3D mostrou toda sua ousadia quando anunciou ao mundo que liberaria 
uma versão gratuita e comercial para desenvolvedoresIndie. 
Talvez essa atitude tenha sido apenas uma jogada de marketing já que 
em 2007 e 2008 para uma pessoa comum ter uma ferramenta desse porte era 
praticamente impossível. 
Seja o que for deu certo e em pouquíssimo tempo a Unity3D começou a ser 
a Game Engine mais usada no mundo, conseguindo um espaço até mesmo no 
fechado mundo dos consoles. 
Hoje a Unity Tecnologies não só oferece uma versão gratuita para que novos 
desenvolvedores possam ingressar no mercado, como também oferece 
ferramentas adicionais por um preço relativamente baixo em relaçãoàs 
concorrentes que podem ir turbinando sua versão free da Unity3D. 
 
 
Baixando e instalando a Unity3D 
Acesse a página da Unity3D: 
http://unity3d.com/unity/download/ 
Após acessar a página faça o download da versão mais atual a 4.x.x: 
 
Agora que já fizemos o download da Unity3D vamos instalar dando um clique 
duplo sobre o ícone do programa. Depois de clicar teremos a primeira tela de 
instalação da Unity3Dapresentada na imagem abaixo: 
 
Clique no botão Executar para iniciar a instalação da Unity3D. 
Será apresentada a seguinte tela: Clique em Next para dar prosseguimento à 
instalação. 
 
Veja que irá aparecer a seguinte tela: Clique em I Agree para concordar com 
os termos de licença e continuar com a instalação. 
 
 
Feito isso, será apresentada tela da imagem abaixo: Clique em Next para 
instalar todos os componentes da Unity3D. 
 
 
A próxima tela a ser apresentada será a seguinte: Aqui a Unity 3D mostra 
onde ela será instalada em seu computador, clique em Install para prosseguir. 
 
Feito isso teremos a tela de progresso: 
 
 
Essa tela apenas mostra o progresso da instalação da Unity3D. 
Por fim teremos a última tela do processo de instalação, clique em Finish para 
finalizar o processo e executar a Unity3D. 
 
Clicando em Finish a tela representada na imagem abaixo abrirá: Nessa tela 
você vai precisar licenciar sua cópia da Unity3D, escolha a segunda 
opção, Active the free version of Unitye clique em OK. 
 
Feito isso será apresentada a seguinte tela: Se for a primeira vez que você está 
instalando aUnity3D, aqui será necessário que você clique no botão Create 
Account para se registrar na Unity3D (esse serviço é totalmente gratuito). 
 
Clicando nesse botão teremos a tela de registro: Preencha seus dados como 
pedido no formulário e clique em OK. 
 
Após esse procedimento você receberá um e-mail para confirmar seu registro, 
confirme o mesmo e a seguinte tela será apresentada em seu navegador web: 
 
Pronto! Você está perto de poder usar a Unity3D só precisa seguir mais 
alguns passos, veja a imagem abaixo: Depois de se registrar você deverá voltar 
à tela da Unity3D e colocar seu e-mail e senha criados nos passos anteriores, 
e será direcionado à tela abaixo: 
 
 
Preencha a pesquisa feita pela Unity eles querem saber seu nível de 
conhecimento, seus interesses para com Unity3D, etc. Terminado esse 
preenchimento avance. 
 
Aparece a seguinte tela: 
 
Pronto! Agora é só produzir seus games. 
 
 
 
 
 
 
 
 
 
 
 
 
Interface 
Agora que já instalamos e conhecemos um pouco da história 
da Unity3D chegou a hora de conhecer sua interface. 
Primeiramente vamos conhecer as ferramentas e posteriormente detalharemos 
cada parte delas. 
 
Enfim essa é a cara da Unity3D, a princípio parece um pouco assustadora com 
todas essas janelas, mas acredite é só impressão. 
Barra de ferramentas: 
 
 
A barra de ferramentas da Unity3D é composta pelos itens: File, Edit, 
Assets, GameObject, Component, Terrain, Window e Help. 
Cada um desses botões de menu serão explorados mais adiante, no momento 
só precisamos saber que eles existem para facilitar nosso trabalho. 
 
 
Ferramentas de manipulação 3D 
 
 
Logo abaixo da barra de ferramentas temos as ferramentas de 
manipulação 3D com elas conseguimos fazer todo tipo de manipulação de 
objetos dentro de um mundo tridimensional. 
Vamos detalhar cada uma delas: 
 A ferramenta mão auxilia o desenvolvedor movimentando a tela da 
aba/janela Scene para qualquer direção. 
 
 A ferramenta cruz tem a função de mover qualquer objeto de game 
(GameObjects) nos eixos X,Y e Z. 
 
 
 
 
 A ferramenta de rotação tem a função de girar qualquer objeto de game 
(GameObjects) nos eixos X, Y e Z. 
 
 A ferramenta de escalonamento tem a função de aumentar ou diminuir o 
tamanho de qualquer objeto de game (GameObjects) nos eixos X, Y e Z. 
 
As ferramentas Center e Local tem funções bem interessantes, o primeiro 
botão "Center" quando clicado pode mudar sua situação atual 
de Center para Pivot alterando a movimentação e rotação de dois ou mais 
objetos de game (GameObjects). 
 
Abaixo um exemplo de movimentação de dois objetos com o botão "Center" 
selecionado. 
 
Abaixo um exemplo de movimentação de dois objetos com o botão "Pivot" 
selecionado. 
 
 
Já a ferramenta Local quando clicada muda para Global fazendo com que um 
objeto de game (GameObjects) seja rotacionado, movido ou escalado de 
acordo com os eixos X,Y e Z do objeto (Local) ou do mundo 3D (Global). 
O uso dessa ferramenta ficará mais claro com o decorrer do curso. 
Ferramentas de iniciação de game 
As ferramentas de iniciação de game, como o próprio nome diz tem a função de 
iniciar um teste do game, o primeiro botão o play inicia a execução do código 
de game. 
 
 
Já o botão do meio o pause paralisa a execução do código, fazendo com que 
toda a aplicação fique imóvel. O último botão o avançar funciona como uma 
câmera lenta ele avança a execução do game aos poucos. 
Abas ou janelas da Unity3D 
Veremos agora as principais abas/janelas. 
Aba/Janela de montagem de game (Scene) 
Essa é a aba ou janela responsável por oferecer ao desenvolvedor um 
ambiente 3D para montagem dos cenários. 
 
Ela pode ser manipulada em qualquer direção e a mesma apresenta alguns 
botões responsáveis por funções específicas que serão detalhadas adiante. 
Botões da aba/janela de montagem de game (Scene) 
 
Da esquerda para a direita vamos analisar cada botão e suas propriedades: 
 
 Textured que é responsável por apresentar ao desenvolvedor sua cena 
na forma texturizada (Default); 
 Wireframe é onde podemos ver apenas as linhas dos objetos 3D; 
 Textured Wire é possível ver os objetos texturizados e com as linhas 
de modelagem; 
 Render paths que são os chamados caminhos de renderização, é onde 
podemos ver de que forma cada objeto será renderizado; 
 Lightmap Resolution onde conseguimos ver as resoluções dos mapas 
de sombra estática. 
Abaixo temos uma imagem representando cada botão explicado acima. 
 
Prosseguindo, ao lado do botão Textured temos o botão RGB (que está com a 
opção Mipmapsselecionada) que significa Red, Green e Blue ou vermelho, 
verde e azul as cores primárias que juntas nos fornecem todas as faixas de 
cores reproduzidas pelos computadores. 
 
 RGB que mostra a cena com as cores normais de cada objeto. 
 Alpha que mostra as transparências das texturas; 
 Overdraw que renderiza as transparências de uma forma que facilita 
detectar objetos renderizados um sobre o outro; 
 Mipmaps, que mostra para o desenvolvedor se uma textura é grande 
demais para o objeto em que ela está sendo aplicada. 
Abaixo temos uma imagem representando cada botão explicado acima. 
 
Continuando um pouco mais a direita temos os seguintes botões: 
 
 
 
 
O pequeno sol: Tem a função de mostrar a cena com ou sem as luzes criadas 
em cena; 
O quadro: Tem a função de mostrar a cena sem as linhas de grade que guiam 
o desenvolvedor (As linhas quadriculadas que aparecem na aba/janela Scene); 
E por último temos o botão de iniciação de áudio ele tem a função de 
reproduzir os arquivos de áudio colocados na cena. 
À direita temos o botão Gizmos, esse botão lista todos os ícones 
da Unity3D permitindo alterar o tamanho de cada ícone e sua visibilidade. 
Segue abaixo a imagem do botão estendido com todas as suas opções. 
 
 
Por último no canto superior temos um campo de busca, nele podemos digitar o 
nome de qualquer objeto de game (GameObjects) que ele será destacado no 
meio de todas as modelagens e ícones presentes em tela.Veja um exemplo abaixo: 
 
A seta superior mostra o campo de busca com o nome do GameObject que no 
caso nomeamos como "caixa". E na seta inferior podemos ver 
o GameObject de nome "caixa" destacado dos demaisGameObjects em 
cena. 
Aba/janela de game (Game) 
A aba/ janela de Game tem a função de mostrar a execução do game sem a 
necessidade de uma compilação. 
 
Ao contrário de algumas ferramentas que compilam várias vezes um projeto 
para que seja possível visualizar o código em ação, a Unity3D mostra nessa 
aba/janela como seu game vai se comportar depois de ser compilado. 
Agora vamos entender qual a função dos botões que existem nessa aba/janela 
 
Veja que o primeiro botão mostra vários números, esses números são as suas 
opções de resolução de tela. 
Você pode escolher qualquer uma como resolução de seu game, e escolhendo 
verá que o tamanho da área de game será alterado. 
Veja um exemplo: Tela no modo de resolução em Free Aspect. 
 
Tela no modo de resolução em 5:4. 
 
Nessa mesma aba/janela perceba que existe um botão chamado Maximize on 
Play que tem a função de mostrar seu game executando em tela grande, e ao 
lado do botão Maximize on Play temos o botãoStats onde temos todos os 
dados de execução do game, desde número de triângulos até o número de 
frames por segundo. 
 
Ao lado do botão Stats temos o já apresentado botão Gizmos que apenas 
mostra a lista de ícones da Unity3D. 
Aba/janela de Hierarquia (Hierarchy) 
A aba/janela de hierarquia lista todos os objetos de game (GameObjects) em 
cena desde uma câmera até luzes e objetos 3D. 
 
Ela também tem a função de criar objetos de game (GameObjects) como 
cubos, luzes, câmeras, partículas, etc. 
Para isso basta clicarmos no botão Create que se encontra no canto superior 
esquerdo da aba/janela como mostra a figura abaixo: 
 
Note que aqui também temos um campo de busca que nos mostra onde está 
um objeto específico. 
Aba/janela projeto (Project) 
Na aba/janela projeto (Project) são listadas todas as pastas do game desde 
texturas, imagens, modelos estáticos, modelos animados, sons, shaders, enfim. 
 
Nela podemos criar pastas de game, códigos, animações entre outros 
elementos de game clicando no botão superior esquerdo Create. 
Veja na imagem abaixo como utilizar o botão Create: 
 
Primeiro clicamos em Create e no menu que aparece escolhemos a opção de 
acordo com o que iremos criar, um código, uma animação, enfim, será de 
acordo com o que queremos fazer. 
Note que ao lado voltamos a encontrar o campo de busca responsável por 
ajudar o desenvolvedor a encontrar elementos dentro da lista de elementos de 
game. 
 
Aba/janela inspeção (Inspector) 
A aba/janela de inspeção mostra para o desenvolvedor várias informações 
referentes aos objetos de game (GameObjects) e componentes de game (Game 
Components). 
 
Mostra por exemplo o nome do objeto de game (GameObject). 
 
Mostra a localização (Position), tamanho (Scale) e rotação (Rotation) desse 
objeto de game (GameObject) no mundo 3D. 
 
Podemos ver também algumas propriedades físicas como Is Trigger, Material, 
Centro de efeito físico (Center), Tamanho do corpo físico (Size). 
 
Outra opção muito eficiente que iremos mostrar agora é a renderização de 
malha onde temos as opções de lançar e receber sombras (Cast Shadows e 
Receive Shadows), material de textura (Material) empregado no objeto de 
game e uso de luzes (Use Light Probes). 
 
Nota: "Uma malha nada mais é do que um objeto 3D composto de uma malha 
de triângulos". 
Por último temos o material de textura aplicado ao objeto de game 
(GameObject), onde temos o nome do material, a cor predominante sobre esse 
material (Main Color), a textura usada (Base (RGB)) o valor 
de Tiling e Offset e no fim um botão para adicionar mais componentes (Add 
Component). 
 
 
 
 
 
 
Barra de ferramentas 
Como mencionamos anteriormente a Unity nos oferece uma barra de 
ferramentas bem parecida com as que existem nos programas comuns de 
computador como Word e Photoshop. 
Agora vamos detalhar cada item do menu e mostrar como cada um pode 
facilitar a vida do desenvolvedor de games. 
Menu File expandido: 
 
Perceba que os itens que aparecem até se assemelha a programas 
como Photoshop e Word. 
No menu File temos como primeiro botão o New Scene, clicando nesse botão 
iremos criar uma cena totalmente nova para nosso game (Lembre-se que uma 
cena equivale a uma fase do game). 
 
 
Logo abaixo temos o botão Open Scene, como você deve ter deduzido esse 
botão vai abrir uma cena dentre várias outras que seu game venha a ter. 
 
 
A seguir temos o botão Save Scene e Save Scene as, que como você 
também já deve ter deduzido é responsável por salvar as cenas (fases) do seu 
game. 
 
 
Na sequência temos três botões que são respectivamente: 
 New Project - sua função é a de criar um projeto de game; 
 Open Project – sua função é abrir um projeto de game existente; 
 Save Project – sua função é salvar um projeto de game. 
 
 
 
Os dois botões seguintes, Build Settings e Build & Run são responsáveis por 
compilar seu game para a plataforma desejada, seja ela Pc, Mac, Web, Android, 
etc. 
 
 
E por fim o botão Exit que nada mais é que uma saída do programa. 
 
 
 
 
 
 
 
 
 
 
 
Menu Edit expandido: 
 
No menu Edit temos a principio os botões Undo(...) e Redo(...), esses botões 
avançam e retornam uma ação. 
 
 
Logo abaixo temos três botões o Cut, Copy e Paste, que significam 
respectivamente, recortar, copiar e colar um objeto de game (Gameobject). 
 
 
 
 
A seguir temos os botões: 
Duplicate - tem como função duplicar um objeto de game (GameObjects) ou 
componente (Game Component). Delete – tem como função apagar/excluir um 
objeto de game (GameObjects) ou componente (Game Component). 
 
 
Em seguida temos Frame Selected, para o funcionamento desse botão se faz 
necessário que você tenha selecionado ao menos um objeto de game 
(GameObject), se essa condição for satisfeita ao apertar o botão Frame 
Selected à visão do objeto selecionado será ajustada para um ângulo de 
trabalho mais adequado. 
 
Antes de clicar em FrameSelected: 
 
Depois de clicar em FrameSelected: 
 
O próximo é o botão find, clicando nele, seremos direcionados para a aba de 
pesquisa de objetos de game (GameObjects) onde teremos condições de 
encontrar qualquer objeto dentro de nossa cena. 
 
 
Na sequência temos o botão Select All que irá selecionar todos os objetos de 
game (GameObjects) que existirem na cena. 
 
Nota: "Na versão 4.0.x essa opção é executada de maneira satisfatória usando 
as teclas de atalho Ctrl + A. 
A seguir temos o botão Preferences..., que tem a função de ajustar a 
aparência da Unity3D, trocando as cores de fundos das abas/janelas dentre 
outras pequenas modificações visuais. 
 
 
 
 
Mais abaixo temos na sequência os botões: 
 Play - responsável por executar o game; 
 Pause - responsável por pausar a execução do mesmo; 
 Step - responsável por executar frame a frame o projeto de game. 
 
 
 
Na sequência teremos: 
 
Load Selection - carrega a seleção de um objeto de game 
(GameObjects). Load Selection pode expandir até Load Selection 1, Load 
Selection 2… 
 
 
Save Selection - salva a seleção de um objeto de game (GameObjects). Save 
Selection pode expandir até Save Selection 1, Save Selection 2… 
 
 
Na sequência temos mais dois botões muito importantes o Project Settings e 
o Render Settings. 
O botão Project Settings é responsável por nos fornecer as configurações 
de inputs, áudio, física, qualidade de renderização entre outros. 
 
Já o botãoRender Settings nos fornece as configurações de renderização 
como a cor da luz ambiente, a cor do efeito de nevoa, entre outros efeitos. 
 
 
Continuando temos os botões: 
Network Emulation - que é responsável pelas configurações de rede como 
DSL, Dial Up, entre outras. 
 
Graphics Emulation - que nos oferece as opções de escolher qual tipo 
de shader queremos usar oShader Model 3, Shader Model 2, Shader Model 1, 
etc. 
 
E por último, temos o botão Snap Settings que nos fornece as configurações 
de grid (As linhas que servem de guia para posicionar os objetos em cena). 
 
 
 
Menu Assets expandido: 
 
No menu Assets começamos vendo o botão create que é responsável por criar 
pastas de game, códigos, animações, entre outros elementos de games. 
 
Na sequência teremos os seguintes botões: 
Show in Explorer - que nos mostra tudo que existe na pasta matriz do nosso 
projeto de game. 
 
Open e Delete - que são responsáveis por abrir ou deletar os elementos 
contidos nas pastas de game. 
 
 
Import New Asset - que tem a função de importar elementos de game como 
texturas e modelos 3D salvos em outros projetos. 
 
 
Import Package - que é responsável por importar pacotes de códigos, efeitos 
especiais, texturas e até modelos usados em outros projetos ou pacotes 
presentes na Engine. 
 
Agora podemos ver todos os pacotes que integram a Unity3D, e como primeira 
opção tem o botãoCustom Pachage que abrirá pacotes criados pelo 
desenvolvedor. Caso você clique em Custom Pachage a seguinte janela irá 
surgir: 
 
Mas se sua escolha for por um pacote padrão da Unity3D a seguinte janela irá 
surgir: 
 
Nota: "Temos a opção de escolher quais pacotes queremos apenas marcando 
ou desmarcando a caixa de seleção apresentada ao lado de cada item do 
pacote". 
Em ambas as opções depois de escolhido um pacote e clicado em Abrir (no caso 
de Custom Pachage) ou em Import (no caso dos pacotes padrão), teremos em 
nossa aba/janela Project a pasta correspondente ao pacote escolhido como 
mostra a imagem abaixo: 
 
Continuando na explicação do menu Assets expandido temos na sequência o 
botão Export Packageonde é possível exportar códigos e materiais para serem 
usados em projetos futuros. 
 
Para usar essa ferramenta selecione a pasta de game que você deseja 
exportar: 
 
Depois clique no botão Export Package e teremos a seguinte janela: 
 
Perceba que a pasta "fase" esta selecionada para exportação, clique 
em Export e a seguinte janela surgirá: 
 
Crie um nome qualquer para seu pacote e clique em Salvar. 
Pronto! Está salvo um pacote criado por você. 
A seguir veremos o botão Find References in Scene, esse botão só funciona 
se algum item de game (Texturas, Códigos, Áudio) estiver selecionado, dessa 
forma o botão ordenará uma busca para encontrar onde o item selecionado 
está sendo usado na cena, destacando o objeto de game (Gameobject) que o 
contém. 
 
Para ver essa ferramenta em ação, primeiro clique em um item qualquer 
contido em nossas pastas de game como demonstrado abaixo: 
 
Com o material "mat" selecionado, clique em Find References in Scene para 
obtermos a seguinte resposta: 
 
Está ai, o objeto de game (GameObjects) que contém o material de nome 
"mat" é o cubo destacado na cena.Continuando a explicação dos botões do 
menu Assets temos um botão chamado Select Dependencies, esse botão é 
usado para selecionar todos os elementos de game contidos em uma pasta. 
 
Para que essa ferramenta funcione, primeiro clique em uma pasta de game. 
Depois clique no botão Select Dependencies e pronto todos os itens de game 
que se encontram dentro da pasta serão selecionados. 
 
Agora na sequência temos três botões: 
Refresh - que atualiza as pastas de game. 
 
Reimport - que importa novamente algum pacote que foi perdido por alguma 
razão. 
 
Reimport All - que reimporta todos os pacotes de game importados 
anteriormente. 
 
E finalmente temos o último botão, o Sync MonoDevelop Project que faz uma 
sincronização da Unity com o programa responsável por escrever os códigos de 
game no caso o MonoDevelop (dificilmente você usara esse botão já que o 
MonoDevelop se tornou padrão na Unity3D). 
 
 
 
Menu Game Object expandido 
 
No menu Game Objects temos como primeiro botão o Create Empty, esse 
botão é responsável por criar um GameObject vazio na cena. 
 
Na sequência teremos os seguintes botões: 
Create Other - que quando expandido nos oferece um leque de objetos de 
game (GameObjects) para serem criados, veja abaixo a imagem expandida: 
 
Center On Children - que tem a função de centralizar um objeto "pai" entre 
os objetos "filhos".Antes de ver o resultado obtido clicando nesse botão vamos 
explicar o que é um objeto "pai". Um objeto "pai" é aquele objeto que recebe 
um ou mais objetos como "filhos", sendo que um objeto "filho" por sua vez 
precisa obedecer a seu "pai", se o "pai" se move o "filho" também vai se 
mover.O contrário já não acontece, se o objeto "filho" se mover o "pai" 
continua imóvel. 
Então baseado nessa explicação vamos ver o que acontece se clicarmos no 
botão Center On Childrenna presente situação: 
 
Veja que o cubo azul selecionado é o "pai" dos outros dois cubos. 
Agora vamos clicar em Center On Children e teremos o seguinte resultado: 
 
 
 
O cubo "pai" foi movido para uma posição entre os dois objetos filhos. 
Make Parent - esse botão tem a função de tornar um objeto "pai" de outro, 
para usá-lo primeiro precisamos clicar no objeto que queremos que seja o 
"filho", depois com a tecla Ctrl pressionada clicamos no objeto que será o 
"pai" e por fim clicamos no botão Make Parent. 
 
Clear Parent - esse botão tem como função quebrar um vínculo que tenha 
sido criado entre dois ou mais objetos de game pelo botão Make Parent. 
 
Para que esse botão funcione clique no objeto "filho" que se deseja excluir do 
parentesco e clique em Clear Parent. 
Apply Changes to Prefab - esse botão tem como função aplicar aos objetos 
pré-fabricados todas as alterações feitas no objeto de referência para a criação 
do pré-fabricado 
 
Break Prefab Instance - esse botão quebra a ligação entre o pré-fabricado e 
seu objeto de game (GameObjects) de origem. 
 
Move to View - tem como função mover qualquer objeto de game 
(GameObjects) selecionado para frente da área de visão da câmera do 
desenvolvedor. 
 
Align With View - tem a função de alinhar qualquer objeto de game 
(GameObjects) selecionado com a visão da câmera do desenvolvedor. 
 
E por fim temos o Align View to Selected que tem a função de alinhar a 
câmera de visão do desenvolvedor com o objeto de game (GameObjects) 
selecionado. 
 
O menu Game Object é um dos menus mais usados pelos desenvolvedores de 
games em Unity3D, é através desse menu que podemos adicionar a nossa 
cena uma infinidade de objetos de games (GameObject) que unidos darão o 
efeito visual tão esperado. 
Nesse tópico não nos aprofundaremos nesse menu para que seja possível 
apresentar todas as ferramentas contidas na Unity3D, mas, detalharemos o 
uso desse menu nas aulas em vídeo e no projeto que será desenvolvido no fim 
desse módulo. 
 
 
 
 
Menu Component expandido 
 
No menu Component temos como primeiro botão o Add, que têm como 
função adicionar componentes de game aos objetos em cena, é através dele 
que adicionamos por exemplo um código a um objeto. 
 
Na sequência veremos os seguintes botões: 
Mesh, Effects, Physics, Navigation, Audio, Rendering, Miscellaneous e 
Scripts que são justamente os tipos de componentes adicionados aos objetos 
de game (GameObject). 
Vamos agora detalhar cada um deles. 
 
 
 
 
Menu Terrain expandidoNo menu Terrain temos o botão Create Terrain que como o próprio nome diz 
tem a função de criar um terreno que poderá ser editado pelo desenvolvedor. 
 
Logo abaixo teremos as seguintes opções: 
Import Heightmap – Raw... - tem a função de carregar um mapa de terreno 
criado em algum projeto anterior. 
 
Export Heightmap-Raw... – com ele podemos exportar o terreno que criamos 
para usá-lo em qualquer outro projeto. 
 
Set Resolution... – aqui mesmo depois de um terreno criado podemos 
configurar suas propriedades de altura, largura e resolução. 
 
Mass Place Trees... - tem a função de controlar o número de árvores em 
cena. 
 
Flatten Heightmap... - como o próprio nome diz tem a função de achatar o 
terreno de acordo com a numeração determinada pelo desenvolvedor. 
 
Refresh Tree and Detail Prototypes - tem a função de atualizar os valores 
dos protótipos das árvores. 
 
Menu Window expandido 
 
 
 
No menu Window temos algumas limitações disponíveis apenas para a versão 
pro, então não vamos aprofundá-las. 
Aqui temos como primeiro botão o Next Window, seguido por Previous 
Window, esses botões têm respectivamente as funções de avançar e 
retroceder janelas dentro da Unity3D. 
 
 
Na sequência temos o botão: 
Layouts - que nos oferece vários layouts da Unity3D, deixando por conta do 
desenvolvedor escolher qual é a melhor opção. 
 
Agora detalharemos uma série de botões que dão acesso às janelas 
da Unity3D. São eles: Scene, Game, Inspector, Hierarchy, Project, Animation, 
Asset Store, Animator, Lightmapping e Console. 
Cada opção dessas tem uma função dentro da Unity3D. As cinco primeiras 
janelas já foram detalhadas na parte onde falamos da interface, as demais 
iremos explicar agora: 
Animation 
 
É através da janela Animation que criamos animações dentro da Unity3D, 
como por exemplo, a animação de abrir e fechar uma porta. 
Asset Store 
 
A janela Asset Store nos dá acesso à loja on-line da Unity3D, mostrando 
vários games e preços. 
Animator 
 
A janela Animator é uma novidade na Unity3D 4.x, e tem a função de ajudar 
os desenvolvedores a controlar animações 3D. 
Lightmapping 
 
A janela Lightmapping tem a função de auxiliar o desenvolvedor na criação de 
sombras estáticas. 
Console 
 
Por último temos a janela Console que mantém o desenvolvedor informado 
sobre possíveis erros de compilação do código de game. 
Menu Help expandido 
 
No menu Help temos botões não muito envolvidos com a produção de games, 
nele encontramos informações sobre a Unity3D, atualização da licença, acesso 
ao manual online da Unity3D, acesso ao fórum dentre outras informações. 
Criando projeto 
Agora que já conhecemos profundamente a Unity3D chegou a hora de 
trabalhar. Para isso clique duas vezes sobre o ícone da Unity3D para iniciá-la. 
 
Feito isso vá ao menu File e clique na opção New Project: 
 
Na janela que surgir, selecione a aba Create New Project e em Project 
Location escolha o local onde você irá salvar seu projeto e o nome do projeto 
como mostra a imagem abaixo: 
 
Nós escolhemos o local, C:\Curso_Unity\Projeto\, acrescentando ao final do 
local o nomeAula_01. 
Agora é só clicar em Create, e você terá um projeto vazio para trabalhar. 
 
 
Criando e salvando uma cena (fase) 
Quando criamos um projeto automaticamente criamos uma cena, então para 
concretizar isso é necessário salvar essa cena, para isso clique 
em File depois Save Scene ou Save Scene as... 
 
Teremos como resultado a janela abaixo, digite o nome da fase e clique 
em Salvar: 
 
Feito isso aparecerá automaticamente um ícone representando nossa cena na 
aba/janela Project como mostra a imagem abaixo: 
 
Criando uma cena 
Para criar uma nova cena é muito simples clique no menu File depois no 
botão New Scenecomo mostra a imagem abaixo: 
 
Pronto à cena foi criada, porém, é necessário salvá-la para que a mesma 
apareça na aba/janela Project. 
Então repita o procedimento de Save descrito acima para concretizar essa 
ação, salve a cena como Fase2. Assim teremos o seguinte resultado: 
 
Introdução ao gamecode 
A Unity3D trabalha com três linguagens de programação C#, 
Javascript e Boo, sendo as mais conhecidas, C# e Javascript. 
A estrutura da Unity3D funciona bem com ambas as linguagens, poupando ao 
desenvolvedor, preocupações de desempenho. 
Nesse curso nós da AprendaMais usaremos a linguagem mais popular 
(Javascript), facilitando assim seu aprendizado. 
Agora vamos escrever nosso primeiro código que exibirá na tela um "Olá 
Aluno". 
Mas antes de escrever nosso código vamos aprender como criá-lo dentro de 
uma pasta de nosso projeto de game. 
Primeiro vamos criar uma pasta para guardar os scripts, clique no 
botão Create na aba/janela Project e depois no botão Folder como mostra a 
imagem abaixo: 
 
Fazendo isso você estará criando uma pasta de game onde poderá salvar 
códigos, modelos, texturas, etc. 
Nesse caso criamos uma pasta chamada Scripts como mostra a imagem 
abaixo: 
 
 
Agora vamos criar nosso primeiro arquivo de código, com a 
pasta Scripts selecionada clique em Create novamente e escolha o 
botão Javascript. 
Feito isso vamos ter um ícone simbolizando o arquivo de código, que 
nomeamos comoOla_Aluno. 
 
Agora clique duas vezes sobre o ícone do script Ola_Aluno, para abrir o 
programa de edição de código como mostra a figura abaixo: 
 
Perceba que a Unity3D gera um código padrão com duas funções a Start e 
a Update, então agora vamos usá-las. 
Vamos digitar o seguinte código: 
 
 
Antes de qualquer coisa vamos entender o código, perceba que ele começa com 
duas funções distintas, a função Start e a função Update. 
A função Start será executada automaticamente uma única vez antes da 
função Update, através dela podemos iniciar variáveis. 
Já a função Update executa um looping a cada frame (quadro de 
renderização) é através dessa função que o jogo ganha vida. 
Tanto a função Start quanto a Update são funções padrão da Unity3D e dessa 
forma não devem ser alteradas. 
Dentro da função Update temos o código print("String"), esse código como 
já citado acima é padrão dentro da Unity3D e tem a função de escrever 
mensagens (Strings). 
Por essa razão se digitarmos print("Ola_Aluno") teremos como resultado a 
palavra digitada entreaspas, escrita no rodapé da aba/janela de game. 
Esse código foi colocado dentro da função Update, mas se fosse colocado 
em Start também funcionaria. 
Para executar um código na Unity3D é preciso vincular o código a algum 
objeto de game (GameObject) para que o mesmo possa ser executado. 
Então vamos criar um objeto de game (GameObject) vazio que terá apenas 
uma função receber nosso código. 
Primeiro clique em GameObject e depois no botão Create Empty como mostra 
a figura abaixo: 
 
Feito isso teremos a seguinte imagem: 
 
Perceba que na aba/janela Scene temos uma imagem que contém três flechas, 
isso significa que existe um objeto de game (GameObject) e as flechas só estão 
indicando a orientação desse objeto de game (GameObject) no mundo 3D, 
como mostra a figura abaixo: 
 
Essa figura representa os três eixos do mundo tridimensional, precisamos 
lembrar que mesmo no desenvolvimento de um game 2D o processo de 
montagem de cena e movimentação é totalmente 3D. 
Respeitando os seguintes eixos: 
 
No módulo destinado a games 3D detalharemos ao máximo o uso do eixo Z, 
por enquanto vamos nos preocupar apenas com 2 eixos o X e o Y. 
 
Sendo o eixo Y a altura do monitor e o eixo X a largura. 
 
Então continuando com nosso tópico vamos adicionar o código "Olá 
Aluno" ao GameObjectvazio que acabamos de criar simplesmente arrastando o 
ícone do código até o nome do GameObject.Feito isso perceba que na aba/janela Inspector é adicionado um componente 
ao menu, nele contém características do GameObject vazio, que nesse caso é o 
código "Ola Aluno", isso significa que ao executar nosso game o código 
também será executado, clique no botão Playpara executar: 
 
Observe que quando executamos nosso game a mensagem: "Olá 
Aluno" aparece no rodapé da tela, isso significa que o código funcionou. 
 
Criando luzes 
Agora que criamos nosso primeiro código, chegou a hora de fazer coisas mais 
avançadas, então lembre-se que mesmo sendo um game 2D o ambiente de 
desenvolvimento é 3D então precisamos adicionar luzes a cena, caso contrário 
não enxergaremos nada. 
Para criar uma luz primeiramente clique no botão GameObjects, depois 
em Create Other, e por fim escolha um dos quatro tipos de luzes que existem 
a nossa disposição: 
 
São elas: 
 
 
Directional light - que faz a simulação da luz do sol iluminando todos os 
objetos que estão na sua reta como mostra a imagem abaixo: 
Point light – que é uma luz que brilha em todas as direções a partir do centro 
iluminando tudo que esteja dentro de sua faixa de atuação como mostra a 
imagem abaixo: 
 
Spot light - que é uma luz em formato de cone que ilumina apenas os objetos 
que se encontram dentro dos limites desse cone como mostra a imagem 
abaixo: 
 
E por fim: Area light - que é uma luz que ilumina tudo em uma área 
retangular (Essa luz só pode ser usada na versão Pro). 
Perceba que todas as luzes têm alguns parâmetros para serem alterados de 
acordo com as preferências do desenvolvedor, observe na imagem abaixo: 
 
Nesse caso o tipo de luz é a Spot light, mas para todas as outras luzes os 
parâmetros se repetem com pequenas exceções como, por exemplo, a ausência 
de ângulo e alcance. 
Veja que é permitido ao desenvolvedor alterar o tipo de luz mesmo sem 
precisar criar outra fonte de luz, basta clicar no botão Type e mudar o tipo de 
luz como apresentado na imagem abaixo: 
 
 
Perceba que também podemos mudar a cor da luz. 
 
 
Alterar a sua intensidade. 
 
Podemos ligar ou desligar sombras. 
 
Podemos desenhar ou não um Halo (Círculo luminoso que se forma envolta de 
fontes de luz) 
 
Dentre outras configurações que veremos detalhadamente nas vídeo aulas. 
Movimentos via código 
Agora que aprendemos a adicionar luzes em nossa cena vamos incrementa-la 
um pouco mais, vamos adicionar GameObjects e movê-los via código. 
Primeiro clique no botão GameObject, depois vá até Create Other, abrirá 
uma lista, nela clique em Plane: 
 
Fazendo isso criaremos uma plane em nossa cena como mostra a imagem 
abaixo: 
 
 
Agora criaremos um cubo que irá executar os movimentos que ordenaremos 
via código. 
Para isso clique novamente em GameObject, depois em Create Other, na 
lista que surgirá clique em Cube: 
 
Feito isso teremos a imagem abaixo: 
 
Caso você tenha criado a luz Spot light proposta no exercicio anterior, exclua-
a clicando com o botão direito do mouse sobre seu nome na guia Hierarchy e 
escolha a opção Delete. 
 
 
 
 
 
Movimento de deslocamento lateral 
Nessa etapa, criaremos um script que ordene ao cubo que se desloque para a 
direita. 
Para criar esse script primeiro vá até a aba/janela Project e deixe selecionada 
a pastaScripts que já criamos anteriormente, depois clique em Create e em 
seguida em Javascript. Renomeie o arquivo criado para Movimenta. 
Pronto, agora dê um duplo clique sobre ele para abrir o Editor de códigos. 
Com o Editor de códigos aberto digite o seguinte: 
 
Pronto agora salve o código clicando no menu File opção Save do Editor de 
códigos: 
 
Na Unity3D arraste esse Script até o cubo que está na cena ou até o nome 
do cubo que está na aba/janela Hierarchy. 
De ambas formas o código vai funcionar, agora aperte o botão Executar e veja 
o código em ação. 
 
 
 
 
Movimento de rotação 
Agora vamos alterar o código de translação para rotacional, use o mesmo 
código do exemplo anterior fazendo apenas algumas alterações. 
Primeiro comente a linha de código que move o cubo. 
 
Depois escreva o seguinte código: 
 
A função Rotate é semelhante à função Translate, porém com a diferença do 
tipo de movimento, no caso da função Rotate movimentaremos 
um Gameobject em ângulos. 
Seu código aceita como parâmetros um Vector3(X,Y,Z) e um Space da 
mesma forma que a funçãoTranslate. 
 
Rotaciona o cubo nos eixos X,Y e Z (Global). 
E: 
 
Rotacionam o cubo nos eixos X,Y e Z (Local). 
Ao executar o game você verá que agora o cubo gira em todas as direções 
na velocidade 5, que é o valor de vel. 
 
 
Menu 2D 
Agora que já brincamos um pouco com algumas transformações de objetos 
dentro daUnity3D chegou a hora de criar um Menu 2D para nos auxiliar nas 
transformações do cubo. 
E porque não ir um pouco além criando um menu interativo onde 
possamos controlar as três transformações que acabamos de ver? 
Vamos lá, abaixo veremos a imagem da aplicação que iremos desenvolver: 
 
O intuito é quando clicarmos em cada botão a ação descrita no mesmo ser 
executada. 
Vamos ver o código da aplicação por inteiro e depois entenderemos aos poucos 
cada trecho de código. 
 
 
Muito bem, vamos explicar esse código, para começar declaramos as seguintes 
variáveis: 
A variável vel controla a velocidade em que as transformações vão acontecer o 
nome da variável pode ser alterado para o nome que você quiser velocidade, 
vel2, veloci, enfim. 
 
A variável liberaM é responsável por ligar e desligar o botão 
de movimento do cubo, essa variável pode ter seu nome alterado sem 
problema algum, desde que o seu tipo seja mantido int (integer). 
 
A variável liberaR é responsável por ligar e desligar o botão 
de rotação do cubo essa variável pode ter seu nome alterado sem problema 
algum, desde que o seu tipo seja mantido int (integer). 
 
A variável liberaS é responsável por ligar e desligar o botão 
de escala do cubo essa variável também pode ter seu nome alterado sem 
problema algum, desde que o seu tipo seja mantido int (integer). 
 
Agora na função Start é preciso inicializar essas variáveis com algum valor. Por 
exemplo: 
A variável vel será iniciada com o valor de 5, que como já vimos adiciona 
ao cubo uma velocidade aceitável. 
 
As variáveis liberaM, liberaR e liberaS sempre iniciarão com o valor de -1. 
 
A seguir temos a função Update com os seguintes códigos: 
 
Os três códigos acima tem uma função específica, verificar se a condição de 
liberação desencadeada pelos botões é satisfatória, se sim, a transformação de 
cada botão sobre o cubo é liberada. 
Por exemplo: 
Se a condição liberaM for satisfeita o cubo irá se mover. 
Por último vamos a função que é responsável por criar nosso Menu 2D que é a 
função OnGUI(). 
A função OnGUI da mesma forma que a função Start e Update é padrão 
dentro da Unity3D e desta forma não deve ser modificada, ela é executada 
desde o momento que se inicia o código até o final. 
Mas devemos lembrar que suas ações devem ser executadas dentro da 
função Update. 
Essa função leva o nome de OnGUI porque a definição de GUI é: Interface 
Gráfica do Usuário. Ou seja,GUI trabalha com a parte dos programas que 
interagem diretamente com os usuários, como os botões, área de textos, etc. 
Essa função também está no manual online da Unity3D citado anteriormente. 
Além de botões podemos criar dentro dessa função, labels, Grafical Box, 
textfields, entre outros elementos para interagir com o usuário do game. 
Vamos analisar nosso código: 
 
Primeiramente criamos uma label com o nome de Menu 2D, uma label é um 
rótulo ou etiqueta que serve para descrever alguma coisa, no nosso casoalertar o jogador que ali existe um menu. 
Esse código funciona da seguinte forma: 
 
O código GUI.Label cria uma label que respeita dois parâmetros, um 
de posição largura e altura, e outro para imagem ou nome da label. 
O primeiro parâmetro é adicionado através do 
código Rect(X,Y,Width,Height), esse código fornece para a GUI.Label a 
posição X e Y de onde deve ser desenhada a label com a largura e altura da 
mesma. 
O segundo parâmetro é um texto (String) colocado entre aspas ou a 
referência de uma textura(Image). 
Depois temos os código de criação e ação dos botões do nosso menu: 
 
Esse código cria botões que da mesma forma que a label tem seu 
posicionamento e tamanho determinados de forma 
retangular Rect(X,Y,Width,Height), tendo sua posição definida 
por X e Ydepois sua largura e altura, e por fim um texto de identificação ou 
uma imagem. 
Perceba que dentro dessa condição colocamos nossa variável liberaM sendo 
multiplicada pelo valor -1, isso foi feito para ligar e desligar o efeito de 
movimento sobre o cubo. 
Afinal essa condição significa que cada vez que clicarmos no botão Mover a 
variável liberaM vai mudar seu valor de -1 para 1 e depois de 1 para -1, que 
matematicamente é a operação de (1 x -1). 
Input settings 
Muito bem, aprendemos a movimentar objetos via código e a criar menus que 
controlem ações dentro do game. 
Chegou a hora de aprender a mover objetos dentro do game usando o teclado, 
o mouse e o joystick. 
Mas para que isso possa ser feito precisamos conhecer as configurações 
de input da Unity3D. 
Para isso vá até o botão Edit, depois clique em Project Settings e na lista que 
surgirá clique em Input: 
 
No canto direito da tela na aba/janela Inspector irá surgir a seguinte lista 
de inputs: 
 
Clicando em qualquer um desses botões teremos uma lista descritiva com o 
nome de cada input e qual as teclas que o mesmo representa. 
Abaixo temos a opção Horizontal com suas opções que mostram que o 
eixo horizontalpode ser acessado pelos botões seta esquerda, seta direita e 
botões A e D. 
 
Agora chegou a hora de colocar tudo isso pra funcionar. 
Teclado 
Agora vamos usar as teclas do nosso teclado para mover objetos dentro do 
game. 
Mas antes de iniciarmos precisamos fazer alguns ajustes no nosso projeto 
anterior. 
Primeiro clique no cubo que usamos para os outros exemplos, feito isso na 
janela Inspector irá aparecer todas as propriedades do cubo inclusive os 
códigos que estão contidos nele. Observe na imagem abaixo: 
 
Agora vá até Movimenta (Script) logo acima do botão Add Componet e clique 
no botão com o desenho de uma catraca como mostra a imagem abaixo, feito 
isso aparecerá na tela um menu suspenso nesse menu clique em Remove 
Component para retirar o código anterior do cubo e pronto, se executarmos o 
game nada acontecerá. 
Agora vamos criar um novo script, vamos chamá-lo de InputMove. 
Primeiro selecione nossa pasta de game Scripts, depois clique em Create na 
aba/janelaProject, e escolha a opção Javascript, para o arquivo digite o nome 
de InputMove. 
Está criado o arquivo de código, no novo script digite o seguinte código: 
 
Mouse 
Agora que já movimentamos o cubo com o teclado vamos usar o mouse para 
reproduzir novamente esse movimento, mas antes vamos verificar o input 
settings do mouse. Observe a imagem abaixo: 
 
Novamente em nossa aba/janela Inspector vamos analisar as configurações 
do mouse no eixo X. 
Aqui o que nos interessa é o nome de acesso do eixo X do mouse. 
Agora que sabemos que o nome de acesso desse eixo é Mouse X, vamos 
programar. 
Mantenha seu código de movimento via teclado como está apenas altere as 
seguintes linhas de código na função Update: 
 
A primeira linha de código cria uma variável "x" onde atribuímos o valor da 
multiplicação da variável vel pelo valor do movimento do mouse no eixo X. 
A segunda linha apenas usa o valor obtido nessa variável para mover 
o cubo para a direita e para a esquerda. 
Controle 
A movimentação com controle é muito simples na verdade não muda quase 
nada do que já foi apresentado, para usar o controle / joystick primeiro é 
necessário fazer algumas mudanças no input settings. 
Adicione no InputMananger o número necessário para criação dos botões 
do joystick. Observe a imagem abaixo: 
 
 
Depois ajuste o nome do eixo ou botão criado como mostra à imagem abaixo: 
 
E pronto, agora é só usar a referência "quadrado" em nossos códigos. 
 
Perceba que esse código é um pouco diferente dos anteriores, nele primeiro 
criamos uma condição que analisa se botão "0" do controle foi pressionado, se 
foi movemos o GameObject. 
Note que o número do botão do controle pode ser editado pelo desenvolvedor. 
 
Execute o código, utilizando primeiro o mouse depois o teclado, para testar 
com o joystick precisaríamos de um conectado ao computador: 
 
Qualidade de renderização 
Agora vamos falar de um tema muito discutido e estudado pelos games 
designers, a qualidade da renderização (Criação da cena). 
Afinal já foi o tempo de jogar um game todo serrilhado com uma qualidade 
gráfica péssima que nunca chegaria nem perto da realidade. 
Então a Unity3D como uma Game Engine de primeira linha que é, resolveu 
disponibilizar aos seus usuários, meios de configurar o visual do game para que 
o mesmo seja único. 
Para acessar essas configurações clique em Edit, depois em Render Settings: 
 
Teremos como resultado a seguinte imagem na aba/janela Inspector: 
 
 
No menu Render Settings existem várias opções para deixar seu game ainda 
mais profissional, podemos ajustar por exemplo se o game terá ou não o efeito 
de nevoa (Fog) que surge sobre os objetos conforme a distância da câmera e 
do objeto aumenta. 
Podemos definir uma cor para essa nevoa (Fog Color), como ela irá atuar 
sobre os objetos do game, atuando como linear ou exponencial (Fog Mode). 
Podemos definir também uma textura de céu (Skybox Material), cor da luz 
ambiente (Ambient Light), entre outras configurações. 
Além dessas configurações podemos manipular a maneira que nosso game será 
renderizado ajustando algumas outras ferramentas como, por exemplo, a 
emulação de gráficos ou Graphics Emulation. 
Veremos então um pouco disso na prática! 
Clique em Edit, depois em Graphics Emulation: Agora é só escolher qual 
opção você quer para emular seu game nenhum shader, shader model 3, 2, 1, 
ou directX 7. 
 
 
Se você quer fazer um jogo com qualidade comercial aconselho o Shader 
Model 3. 
 
Além dessas opções existe mais uma ferramenta para melhorar a qualidade dos 
nossos games, essa ferramenta é o Quality. 
Para acessá-lo clique em Edit, depois em Project Settings, e por fim 
em Quality: 
 
 
 
Teremos na aba/janela Inspector algumas configurações de qualidade: 
 
Perceba em Quality Settings podemos escolher a qualidade do nosso game 
indo de Fastest(Execução rápida com qualidade visual baixa) 
até Fantastic (Execução mais lenta com qualidade impecável). 
Perceba que na imagem acima a opção Good foi escolhida e logo abaixo vemos 
as configurações dessa escolha, com Pixel light = 2, Qualidade de textura 
= Full Res, etc. 
Nota: "Todos os dados apresentados em Quality Settings podem ser ajustados 
de acordo com as necessidades do desenvolvedor." 
 
Game Objects 
Vamos entender o que seria um Game Object, se levarmos a tradução ao pé 
da letra um game object não passa de um objeto de jogo. 
Isso é muito vago afinal no processo de desenvolvimento de game existem 
vários objetos ou elementos para fazer com que o jogo seja produzido. 
A Unity3D tem uma definição bem específica sobre isso, um Game Object é 
todo elemento de cena que recebe ao menos um component o transform. 
Mas o quê seria esse taltransform? 
Simples, um transform é um componente, que manipula ações em um 
mundo 3D como deslocamento, rotação, escala. 
Components 
Como falar de Game Object e não falar de componentes, os components dão 
vida ao game. 
Um código é considerado um componente, afinal ele é adicionado 
ao GameObject lhe atribuindo modificações não é? 
Efeitos de partículas também são considerados components, a física adicionada 
aos games, o áudio. 
Layers 
Em relação aos Layers, essas são mais usadas por câmeras ou por luzes. 
No caso do uso de Layers com luzes podemos escolher o que deve ou não ser 
iluminado. 
Para criar uma Layer basta clicar no botão ao lado de Layer na 
aba/janela Inspector, depois clique em Add Layer e digite seu nome "heroi". 
Agora o Layer está pronto para ser usado. 
 
 
Introdução a arte 2D 
Agora vamos falar um pouco sobre arte 2D e como devemos proceder para 
criar mídias 2Dde qualidade para uso em games. 
Antes de qualquer coisa precisamos ter conhecimento dos tipos de imagem, 
quanto "pesam" em uma aplicação complexa como um game e qual a sua 
qualidade visual. 
Falando de games existem 3 tipos de texturas que os games aceitam bem 
inclusive os games feitos emUnity3D que são: JPG, PNG e BMP. 
Vamos explicar cada formato de textura: 
BMP 
O tipo de imagem BMP tem uma boa qualidade visual dependendo do número 
de pixels da imagem, porém o seu peso é inviável para aplicações que venham 
a ser executadas em aparelhos com capacidade de processamento limitada. 
JPG 
O tipo de imagem JPG tem uma característica excelente, que é a de ser muito 
leve. Isso explica sua popularidade, que fez com que fosse adotada como 
padrão de fotos de máquinas digitais, porém existe um problema quanto a 
qualidade uma imagem JPG quando manipulada perde com facilidade sua 
qualidade. 
PNG 
As imagens nesse formato são sem dúvida a melhor opção para os 
desenvolvedores de games, além de trabalhar com transparência a qualidade 
das imagens é ótima e não sofre perda de qualidade com a manipulação 
(compressão, por exemplo). 
É claro que existem desenvolvedores que preferem trabalhar 
mesclando PNG e JPG para games 2D eBMP, PNG e JPG para texturas de 
modelos 3D, mas isso não é uma regra, cada desenvolvedor precisa testar cada 
tipo de arquivo até chegar a uma conclusão do que é melhor em cada projeto. 
Pintura digital (Photoshop/Gimp) 
Muito bem vamos explicar agora de maneira resumida como funciona a pintura 
digital em programas como Photoshop e Gimp. 
Vamos usar o Photoshop por ser o programa mais popular, porém no Gimp o 
processo produtivo é o mesmo mudando apenas nomes e o local de poucas 
ferramentas. Em nossa próxima vídeo aula vamos ensinar como passar de um 
desenho preto e branco para um colorido. 
 
Veja as seguintes imagens: 
 
 
 
 
 
Sprites 
Em relação à sprites precisamos deixar claro alguns pontos, a Unity3D é uma 
game engine3D e não 2D então para criação de sprites com ela é necessário 
fazer isso de maneira fake(não habitual) 
Precisamos pegar uma textura e adicionar em um plane como mostra a figura 
abaixo: 
 
Dessa forma podemos fazer uma simulação de sprites. 
Materials 
Agora que falamos sobre imagens e sprites vamos falar sobre materials. 
Os materials são responsáveis por aplicar textura em todos 
os GameObjects em cena, é através desses materials que podemos adicionar 
não só uma textura, mas também um shaders aosGameObjects. 
Nota: "Em Unity3D damos o nome de texturas para as imagens" 
Antes de criar um material vamos criar uma pasta para guardar os materiais 
criados: Selecione a pasta Assets, clique em Create na aba/janela Project e 
escolha a opção Folder, digite para esta pasta o nome "Material". 
Agora para criar um material é muito simples, primeiro você seleciona a 
pasta Material, clica em Create na aba/janela Project, escolhe a 
opção Material e digita um nome para o material "Teste". 
Ao se criar um material é exibido na aba/janela Inspector informações sobre 
esse material veja na imagem que segue: 
 
Esse material é o básico criado pela Unity3D ele simplesmente aceita 
uma textura difusa (a textura visível no modelo) e aplica ao GameObject, é 
claro que como tudo na Unity3D essematerial pode ser customizado até 
atingir um alto grau de qualidade, mas nesse módulo não vamos focar nessa 
parte por ser um assunto um tanto quanto complexo para quem está iniciando. 
Vamos criar uma pasta chamada Texturas para importamos as imagens de 
textura para esta pasta. 
Selecione a pasta Assets, clique na aba Create e escolha a opção Folder, 
digite o nome deTexturas para esta pasta: 
Agora clique com o botão direito do mouse sobre a pasta Texturas, no 
menu suspenso que aparece, escolha a opção Import New Assets, procure 
pelo arquivo de imagem chamado cenagame.jpg que se encontra na 
pasta \\arquivos-cursos\unity\, selecione este arquivo e clique no 
botão Import. 
Vamos adicionar a textura cenagame ao material criado anteriormente: 
Selecione a pasta Material e clique sobre o material Teste, agora clique no 
quadrado onde está escrito None Texture, na janela Select Texture escolha 
uma textura para o material, nós vamos escolher a 
imagem cenagame importada anteriormente. 
Pronto nosso material já tem uma textura e está pronto para ser usado em 
cena. 
Podemos aplicar esse material em uma plane ou um cube arrastando o ícone 
do material para o GameObject como já vimos. 
Introdução à animação 
A palavra animação sugere movimento, alegria, é o que dá dinâmica ao jogo. 
Em games não é muito diferente, a animação é o ato de proporcionar 
movimentos a personagens ou objetos deixando nosso game com mais "vida" e 
empolgante. 
Afinal que graça teria um jogo onde todos os personagens estão 
estáticos? Nenhuma não é mesmo. 
Nos games existem dois tipos de animação, a animação 2D e a 3D, nesse 
módulo nosso foco é o 2D, sendo assim, vamos explicar detalhadamente como 
ela funciona. 
Criação de texturas comuns e animadas 
A criação de uma textura comum não tem segredo um prédio é uma textura 
estática, você não precisa manipular essa textura via código para que exista 
uma animação, o natural dela é ficar estática mesmo. 
 
 
Como exemplo, vamos criar uma textura de montanhas. 
 
Veja a imagem abaixo: 
 
Perceba que só foi preciso usar as técnicas de sombreamento ensinadas na 
vídeo aula do tópico pintura digital. 
Agora uma textura com animação de personagens ou objetos 2D que não 
sejam estáticos em games, é muito parecida com a animação feita para criar 
desenhos como Ben 10 e Bob Esponja por exemplo. 
Em desenhos animados é preciso desenhar um personagem várias vezes em 
posições diferentes, depois empilhar os desenhos e ir passando imagem por 
imagem bem rápido para termos uma ilusão de movimento. 
Em games 2D a única diferença é que nós podemos desenhar o personagem 
em várias posições e agrupar essas imagens uma ao lado da outra e pedir para 
que a Unity3D faça o papel de passar as imagens rapidamente. 
Para entender melhor veja a imagem abaixo: 
 
Perceba que desenhamos o nosso personagem de forma idêntica apenas 
alterando a posição do corpo, isso vai nos proporcionar uma ilusão de que o 
personagem está caminhando. 
Veja que nossa imagem nada mais é que uma imagem grande contendo 4 
imagens menores com largura e altura iguais, isso é importante na hora de 
criar a animação para que a Unity3D saiba em que quadrante exato está o 
personagem, e desta forma possa mover o offset de maneira satisfatória. 
Mas agora você deve estar se perguntando o que é Offset? 
O Offset é capaz de controlar as coordenadas X e Y (Altura e Largura) das 
imagens podendo mover uma imagem na horizontal e na vertical. 
Veja um exemplo de offset em X: 
 
A imagem se desloca em

Continue navegando