Makers Brasil
Bem Vindos a Maker´s Brasil (um forum para criação de servidores 2D e 3D)Nos desejamos boa sorte no seu projeto!

[GB]ADICIONANDO INTELIGÊNCIA ARTIFICIAL (IA)

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

[GB]ADICIONANDO INTELIGÊNCIA ARTIFICIAL (IA)

Mensagem por spectrus em Qua Maio 11, 2011 11:10 am

TUTORIAL 14 - ADICIONANDO INTELIGÊNCIA ARTIFICIAL (IA)

Neste tutorial aprenderemos como criar
um ator inteligente no 3D Game Builder. Primeiramente crie um novo
projeto ou utilize um dos criados anteriormente, crie também um cenário e
adicione a este cenário um Ator MD2, este pode ser o ator padrão do 3D
Game Builder. No cenário eu utilizei um Heightmap para o terreno e
utilizei a textura criada para ele usando a ferramenta “T2 Texture
Creation”, mas se você preferir pode utilizar um cenário mais simples.









Agora vamos tornar o nosso ator
inteligente, selecione o Ator MD2 criado, vá até a aba “Eventos” e
clique em “OnLoop”, o editor de scripts será exibido, o evento “OnLoop”
ocorre repetidamente dês do momento em que o objeto for criado até o
momento que ele for destruído. Em seguida adicione o seguinte script ao
evento:
Código:
[b]if[/b] GetObjectDistance('Objeto1','Player') < 1 [b]then[/b]
                      [b]begin[/b]
  [b]if[/b] GetObjectAnimation('Objeto1') <> '08flip0' [b]then[/b]
    SetObjectAnimation('Objeto1', '08flip0');
  PointObjectTo('Objeto1', 'Player');
[b]end [/b]
[b]else[/b] [b]if[/b] GetObjectDistance('Objeto1','Player')<10 [b]then[/b]
[b]begin[/b]
  [b]if[/b] GetObjectAnimation('Objeto1') <> '02run0' [b]then[/b]
    SetObjectAnimation('Objeto1', '02run0');
  PointObjectTo('Objeto1', 'Player');
  ApplyForce('Objeto1', 3000, 0, 0);
[b]end [/b]
[b]else if[/b] GetObjectAnimation('Objeto1')<>'01stand0' [b]then[/b]
  SetObjectAnimation('Objeto1',  '01stand0');               

Lembre-se que “Objeto1” é o nome do meu Ator MD2, caso o seu
possua outro nome, altere o “Objeto1” para o nome do seu Ator MD2, ou
então altere o nome do seu objeto no mapa para “Objeto1”.



Este script é responsável por fazer todo o controle do ator, o
comando “GetObjectDistance” retorna distancia entre dois objetos, no
caso é verificado a distancia entre o próprio ator (“Objeto1”) e o
objeto “Player”, o objeto “Player” esta pré-definido em todos os
projetos e é a representação da posição do ator principal. O outro
comando importante neste script é o “PointObjectTo”, ele é responsável
por fazer o ator virar na direção do ator principal. O comando
“ApplyForce” é responsável por movimentar o ator, ele recebe como
parâmetro o objeto onde será aplicado a força, e a quantidade de força
aplicada nos eixo X, Y e Z. E os comandos “GetObjectAnimation” e
“SetObjectAnimation” são responsáveis por controlar as animações do
ator.



Salve o script e o mapa e execute o jogo, você perceberá que ao
aproximar-se do Ator MD2 ele correra em sua direção, e quando ele chegar
bem próximo ele levantara as mãos.






Como você pode notar adicionar
inteligência artificial a um objeto é extremamente fácil, este foi um
exemplo simples de inteligência artificial, porém outros algoritmos mais
complexos também podem ser implementados utilizando a linguagem script.
Nos próximos tutoriais aprenderemos a fazer outras coisas utilizando a
linguagem scripts.


Divulgue nosso Forum!
[Você precisa estar registrado e conectado para ver este link.]
Código:
[url=http://makersbrasil.forumeiros.com/]
src="http://img841.imageshack.us/img841/9522/92324935.png"
border="0">[/url]



E meu fan? entao use:

Código:
[img]http://www.baixa.la/arquivos/3908525_imagem.gif[/img]

Sign:
Spoiler:




spectrus
Administrador
Administrador

Mensagens : 299
Estrelas Makers : 1466
Creditos : 49
Data de inscrição : 01/01/2011
Idade : 23
Localização : V.da conquista bahia

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum