View
104
Download
0
Category
Preview:
Citation preview
Finalização
1º Semestre 2010 > PUCPR > Pós Jogos
Bruno C. de PaulaBruno C. de Paula
SumárioComentar sobre detalhes de
desenvolvimento que não tiveram espaço neste curso;
Responder a dúvidas comuns e dar dicas em geral para seus projetos;
Fornecer material gratuito e fácil de usar para a prototipação rápida de seus jogos.
Lembre-se: O Diabo está nos detalhes! Ou seja, a diferença entre um bom e um mau jogo pode ser mínima!
1) Como trabalhar com som?Componente Audio Listener:
Funciona como microfone;Recebe o som de um ou mais
componenetes do tipo Audio Source;Associado, geralmente, à Main Camera.Cada cena só pode ter 1 audio listener;
Componente Audio Source:Toca um audio clip (3d ou não);Arquivos do tipo .aif, .wav, .mp3 e .ogg.
311/04/23
Propriedade Audio SourceAudio Clip: arquivo;Play On Awake: roda quando a cena
inicia;Volume;Pitch: velocidade;Max / Min Volume: volume mínimo e
máximo não importando a distância;Rolloff Factor: quanto maior, mas
perto tem que se estar para ouvir o sim;Loop: repete ao chegar no fim.
411/04/23
Scripts para somaudio.Play(): toca um som;audio.Stop(): interrompe;audio.isPlaying: verifica se está tocando
// Tocar som específico:var som : AudioClip;audio.clip = som;audio.Play();Dica:
ferramenta para criação de efeitos sonoros.
511/04/23
2) Multiplayer com o Unity?Sim, cliente-servidor construído em
Unity Ver:http://unity3d.com/support/resources/
example-projects/networking-exampleiPhone Multiplayer Tutorial;* Excelente tutorial ** .
611/04/23
Servidor não precisa ser escrito no UnityTambém pode usar outras
infraestruturas como servidor:SmartFox;
• Tutorial criação de ambientes multiusuário no Unity usando o SmartFox;
Raknet:• Interação com servidor C++;
Outros:• Photon, RedDwarf, NetDog, ...
711/04/23
Dicas para projeto MultiplayerDifícil de depurar, use duas instâncias
do Unity ou o Web Player;Se o Unity for o servidor, garanta que
ele rode em background (Edit > Project Settings > Player > Run in Background);
Pode usar NAT (Network Address Translation);
Projeto de jogo multiplayer não é simples!
811/04/23
Abordagens para jogos em redeAuthorative Server X Non-
Authorative ServerMaior processamento no servidor X
confiança no cliente;Client Side Prediction X Sem predição
911/04/23
Scripts para ConexãoNetwork.InitializeServer:
Cria o servidor;Pode ser uma máquina dedicada ou
que também está jogando.Network.Connect:
Conecta com um servidor existente;
Precisa do ip e da porta (senha opcional);
1011/04/23
Eventos de conexãoChamados automaticamente quando
acontece algo com a conexão;OnConnectedToServer,
OnDisconnectedFromServer, OnFailedToConnect, OnPlayerConnected, OnPlayerDisconnected...
1111/04/23
Componente Network ViewÚtil para sincronizar o estado de
componentes pela rede ou enviar mensagens;
State Synchronization indica o tipo de sincronização;
Controle fino usando o evento OnSerializeNetworkView;
1211/04/23
RPCRemote Procedure CallsPermitem que sejam chamadas
funções em máquinas remotas;
1311/04/23
@RPCfunction ExibirMsg (txt : String){ Debug.Log(txt);}
networkView.RPC ("ExibirMsg", RPCMode.All, "Oi");
3) Posso abrir mais de uma instância do Unity ao mesmo tempo?Sim!Cuidado! Evite abrir o mesmo projeto!
Crie um bat com: "C:\...\Unity.exe" –projectPath "C:\...\Projeto"
1411/04/23
4) Como fazer pathfinding?Ótima solução do Aron Granberg;Usa algoritmo A*;Navegação em um grid de nós;Outras sugestões de implementação:
Campos potenciais;Waypoints.
1511/04/23
5) E comportamentos emergentes / flocking?Fácil implementação ver
Programming GameAI By Example;Se quiser uma abordagem pronta, use a
Biblioteca UnitySteer (licença MIT);
1611/04/23
16
Separação:Evitar os vizinhos que estão muito próximos
Alinhamento: acompanhar a velocidade média do grupo
Coesão: acompanhar a posição média do grupo (centro de gravidade)
Evitar obstáculos: procurar desviar os obstáculos pelo caminho.
6) Quais os principais tutoriais / exemplos disponíveis no site do Unity?Os que podem ajudar na
criação de seus jogos:Plataforma de 3ª Pessoa
;Tiro de 3ª Pessoa;Plataforma em 2D;Jogo de carro (realista) ;FPS.
1711/04/23
7)Modelos, animações, gratuitos, baratos, fáceis de usar? A seguir, uma lista de ferramentas e
recursos fáceis de usar e rápidas de aprender!
TurboSquid:Mercado de modelos 3d.
1811/04/23
7)Modelos, animações, gratuitos, baratos, fáceis de usar?Mixamo:
Serviço on line para criação de animações em 3D;
Integração perfeita com Unity, download do FBX otimizado para o Unity;
1911/04/23
7)Modelos, animações, gratuitos, baratos, fáceis de usar?Você pode fazer o upload do
esqueleto, download da animação ou criação do personagem via Web.
Fiquem de olho (!):Pessoal da Stanford;Modelo de negócios inovador;Integração com OpenSim.
2011/04/23
7)Modelos, animações, gratuitos, baratos, fáceis de usar / construir?Make Human: modelagem de
humanóide;UniHuman: versão lowpoly do
MakeHuman, roda no Blender;
2111/04/23
7)Modelos, animações, gratuitos, baratos, fáceis de usar / construir?Spore (!) – Você pode exportar suas
criaturas / veículos e construções para o formato Collada (.dae).
2211/04/23
7)Modelos, animações, gratuitos, baratos, fáceis de usar / construir?Sculptris;Ferramenta de
escultura digital;Alternativa gratuita ao
Zbrush;Fácil de usar;Gera modelos hi poly
(necessitam de tratamento posterior para poder ser usado em um jogo;
2311/04/23
7)Modelos, animações, gratuitos, baratos, fáceis de usar / construir?ShapeShop:
Ferramenta de modelagem 3D com interface baseada em rascunhos;
Exporta Collada e obj.
2411/04/23
7)Modelos, animações, gratuitos, baratos, fáceis de usar / construir?Google Sketchup:
Possui um armazém 3D; Arquivo .kmz é um .zip com .dae
dentro...
2511/04/23
7)Modelos, animações, gratuitos, baratos, fáceis de usar / construir?Arquivos BVH (e similares) (Biovision
Hierarchy - mocap) gratuitos:2500 movimentos;Free Motion Capture Data;Mocaps CMU Open Source.
Ferramentas gratuitas para visualização / edição de mocap:Animeeple – integrado com Unity (ver),
importa do Evolver.BVHHacker;
2611/04/23
Recommended