Projeto de jogos RAD: Inteligência Artificial
Parte 2
Augusto Bülow
Unity3D : IA
- Utilizando modelos animados com IA:- Mesmo esquema geral IA- Necessidade de código = controle animas- Criar regras para animações
- Automáticas: - baseadas em estados, velocidade, etc.- Precisam ser auto-controladas = IA
-
Unity3D : IA
- Podemos substituir nosso “cubo inimigo” por um modelo animado
- Importar modelo Soldier*- Importar animações: walk, idle,- Importar e re-colocar textura- Inserir collder (CharacterController)- Inserir código- = funcionalidade básica (igual ao cubo)
Unity3D : IA
- Códigos para ativar animações
- EX: regra básica por velocidade- // CONTROLE DE ANIMACAO
- if (Mathf.Abs(velocidade.z) > 0) {
- animation.CrossFade("walk");
- }
else {
animation.CrossFade("idle");
}
* animation["Walk"].wrapMode = WrapMode.Loop;
Unity3D : IA
- Outra forma de controle: animações por estados ( var animação)
- var animacao = 0;- if (estado == 1) {
- .....
- animacao = 1;
- }
- //controle unificado de animações- if (animacao == 0) {
animation.CrossFade("idle");
}- if (animacao == 1) {
animation.CrossFade(“walk");
}
...
Unity3D : IA
- Necessidade de criação de regras que funcionem de forma automática = IA- Regras diferentes por comportamento
esperado / por jogo- Dicas (exemplos):
- Baseadas em estados- Eventos podem iniciar estado = inicia animação
- Baseadas em forças e velocidadesForças = animações condizentes com movimento real
Unity3D : IA
- Re-utilização = Prefabs- Facilidade de duplicação
- (mantendo elementos e códigos, modelos...)
- Permite Instâncias em tempo real- Forma correta
- Criar novo Prefab- Puxar modelo desenvolvido para o prefab
- Pode se colocar em cena várias cópias- (pode se criá-las em tempo real: Instantiate)
Top Related