TUTORIAL 07 - EDITANDO O ATOR PRINCIPAL (MD3)

        No tutorial anterior criamos um novo ator principal no formato MD2, agora faremos o mesmo, porém para o formato MD3, que consiste na evolução do MD2 e foi utilizado inicialmente no jogo “Quake 3”, possui uma qualidade maior que o MD2 e possibilita a divisão do ator em 3 partes distintas. Primeiramente crie um novo projeto, desta vez vamos usar um projeto do tipo “Dynamic Camera Game”, este tipo de projeto é parecido com o “Static Camera Game” porem a câmera acompanha o ator principal de maneira dinâmica, como se ela flutua-se ao redor do ator principal. E também selecione MD3 para o formato do ator principal.

        Em seguida com o projeto já criado vá até o menu Projeto -> Ator Principal. A seguinte tela será exibida:

        Este é o editor do ator principal, note que agora existem outras opções para serem definidas alem das que já eram utilizadas no formato MD2. A seguir serão explicadas mais detalhadamente todas as propriedades que são possíveis definir.

      - Model Directory: Refere se ao diretório onde está o modelo 3D que será utilizado na representação física do ator principal, no formato MD2 é definido apenas com um arquivo do modelo 3D, porem no formato MD3 existem vários arquivos que compõem o modelo, assim sendo é necessário informar o diretório onde estes arquivos encontram-se para que estes sejam importados para dentro do projeto, é importante verificar se dentro do mesmo diretório não existam outros arquivos pois todos os arquivos serão copiados para o projeto, então antes de importar o modelo separe os arquivos que fazer parte dele em um diretório separado dos demais. Assim como o formato MD2 o MD3 também possui diversas ferramentas que podem ser utilizadas para a modelagem deste tipo de modelo, entre eles o Blender que é Open Source e o MilkShape 3D que é comercial.
      - Legs Animations: Definição das animações que serão utilizadas pela parte inferior do ator em reação a determinadas ações. Estas animações são carregadas diretamente do arquivo do modelo 3D, e deve ser editadas no próprio programa de modelagem 3D.
      - Walk: Define a animação utilizada pelas pernas do ator no momento que ele estiver andando pelo ambiente.
      - Run: Define a animação utilizada pelas pernas do ator no momento que ele estiver correndo pelo ambiente.
      - Stand: Define a animação utilizada pelas pernas do ator no momento em que nenhuma outra animação estiver sendo executada, ou em outras palavras quando ele estiver parado.
      - Jump: Define a animação utilizada pelas pernas do ator no momento que ele pular.
      - Turn: Define a animação utilizada pelas pernas do ator no momento que ele estiver virando-se.
      - Torso Animations: Definição das animações que serão utilizadas pela parte superior do ator em reação a determinadas ações. Estas animações são carregadas diretamente do arquivo do modelo 3D, e deve ser editadas no próprio programa de modelagem 3D.
      - Walk: Define a animação utilizada pelo torso do ator no momento que ele estiver andando pelo ambiente.
      - Run: Define a animação utilizada pelo torso do ator no momento que ele estiver correndo pelo ambiente.
      - Stand: Define a animação utilizada pelo torso do ator no momento em que nenhuma outra animação estiver sendo executada, ou em outras palavras quando ele estiver parado.
      - Jump: Define a animação utilizada pelo torso do ator no momento que ele pular.
      - Turn: Define a animação utilizada pelas pernas do ator no momento que ele estiver virando-se.
      - Legs Animations Speed: Definição a velocidade das animações utilizadas pela parte inferior do ator baseado no intervalo de repetição de cada frame, quanto maior o valor maior o intervalo entre os frames em conseqüência mais lenta a animação.
      - Walk: Define a velocidade da animação utilizada pelas pernas do ator no momento que ele estiver andando pelo ambiente.
      - Run: Define a velocidade da animação utilizada pelas pernas do ator no momento que ele estiver correndo pelo ambiente.
      - Stand: Define a velocidade da animação utilizada pelas pernas do ator no momento em que nenhuma outra animação estiver sendo executada, ou em outras palavras quando ele estiver parado.
      - Jump: Define a velocidade da animação utilizada pelas pernas do ator no momento que ele pular.
      - Turn: Define a velocidade da animação utilizada pelas pernas do ator no momento que ele estiver virando-se.
      - Torso Animations Speed: Definição a velocidade das animações utilizadas pela parte superior do ator baseado no intervalo de repetição de cada frame, quanto maior o valor maior o intervalo entre os frames em conseqüência mais lenta a animação.
      - Walk: Define a velocidade da animação utilizada pelo torso do ator no momento que ele estiver andando pelo ambiente.
      - Run: Define a velocidade da animação utilizada pelo torso do ator no momento que ele estiver correndo pelo ambiente.
      - Stand: Define a velocidade da animação utilizada pelo torso do ator no momento em que nenhuma outra animação estiver sendo executada, ou em outras palavras quando ele estiver parado.
      - Jump: Define a velocidade da animação utilizada pelo torso do ator no momento que ele pular.
      - Turn: Define a velocidade da animação utilizada pelo torso do ator no momento que ele estiver virando-se.
      - Force: Definição a força aplicada sobre o objeto em determinadas situações. O valor da força varia conforme o tamanho do objeto, objeto maiores necessitam de mais força para serem movimentados.
      - Walk: Define a força aplicada sobre o ator para que ele ande.
      - Run: Define a força aplicada sobre o ator para que ele corra.
      - Jump: Define a força aplicada sobre o ator para que ele pule.
      - Jump H: Define a altura do pulo do ator.
      - Jump S: Define o intervalo de tempo do pulo.
      - Turn: Define a força aplicada sobre o ator para que ele vire-se.
      - Position: É a posição interna do ator e é referente às coordenadas X, Y e Z. Esta posição é utilizada para corrigir a posição do modelo no seu próprio eixo caso ele não esteja centralizado nas coordenadas 0, 0, 0.
      - Scale: Define o tamanho visual do objeto e é referente às coordenadas X, Y e Z.
      - Collision Scale: Define o tamanho físico do objeto e é referente às coordenadas X, Y e Z. O Collision Scale é usado para determinar a colisão do ator com os objetos do ambiente.
      - Rotation: Definição da rotação do objeto.
      - PitchAngle: Define o ângulo de rotação no eixo Y do ator.
      - RollAngle: Define o ângulo de rotação no eixo Z do ator.
      - TurnAngle: Define o ângulo de rotação no eixo X do ator.

      Vamos alterar o modelo que estamos utilizando como personagem, para isso faça o download do modelo do seguinte endereço:

http://www.eternix.com.br/pt/3dgamebuilder/md3laracroft.rar

      Descompacte o arquivo, dentro dele você encontrará vários arquivos que compõem o modelo e suas texturas. Antes de importá-lo para dentro do nosso jogo vamos visualizá-lo, para isso, dentro do 3D Game Builder vá até o menu Ferramentas -> MD3 Viewer. Dentro do visualizador de modelos MD3 vá até o menu Arquivo -> Abrir e selecione a pasta onde o modelo foi descompactado, agora você poderá visualizar o modelo já com todas as suas texturas e todas as suas animações.

      Você poderá notar que a qualidade do modelo MD3 é muito superior ao MD2. agora que já vimos como o modelo é, vamos importá-lo para dentro do nosso jogo, feche o MD3 Viewer, ele serve somente para visualizar os modelos MD3 e as suas animações. Volte para o 3D Game Builder e vá novamente a edição de ator principal, Projeto -> Ator Principal. Na edição de ator principal clique em “Abrir” e selecione o diretório onde o modelo MD3 se encontra. Normalmente com as opções padrão o seu ator principal já estará pronto para ser usado, mas dependendo do cenário que você criou ele pode esta desproporcional ao tamanho dos objetos, caso isso ocorra você diminuir o seu tamanho alterando a propriedade “Scale”, no meu caso eu deixe o ator com um “Scale” X, Y e Z igual a 0,022 e um “Collision Scale” de 0,4 em X e Z e de 0,5 em Y, assim o ator ficou proporcional ao cenário. Se você desejar também pode alterar outras propriedades para deixar o ator da maneira que você preferir.

      Esta pronto o novo ator, agora salve, e retorne para a tela principal do 3D Game Builder. Para visualizarmos o ator em ação crie um pequeno cenário como mostrado nos tutoriais anteriores com uma base sólida no centro dele para podermos andar com o nosso ator por ele.

      Após concluir o cenário execute o projeto, “Projeto -> Run” ou simplesmente pressione F9. Você verá que o novo ator estará no jogo e poderá andar com ele pelo ambiente que você criou.

      Note que agora a câmera esta se movendo de maneira diferente das criadas nos projetos anteriores, isto porque definimos no inicio que este projeto seria do tipo “Dynamic Camera Game”, assim câmera se move dinamicamente ao redor do ator principal.

      No próximo tutorial aprenderemos como importar objetos criados em programas de modelagem para o 3D Game Builder.