Blender Game Engine: Uma introdução

A Blender Game Engine é uma das engines mais populares para desenvolvimento de aplicações 3D interativas. Este artigo apresenta a engine e suas principais funcionalidades de uma maneira breve e possibilitando o desenvolvimento de jogos.

[ Hits: 33.918 ]

Por: Felipe Martins dos Santos em 19/08/2009 | Blog: https://felipemartinsss.vercel.app/


Exemplo usando Logic Bricks



Para utilizar a BGE é necessário ter o Blender instalado. Para o exemplo será utilizada a versão 2.49. Para acessar os Logic Bricks, acesse a ferramenta Logic na Buttons Windows (parte inferior) do Blender ou pressione F4. Com a ferramenta Logic sendo visualizada é possível adicionar sensores para objetos já criados e caracterizar objetos com propriedades físicas através do Bullet.

Ao abrir o Blender já existe criado na 3D View um cubo. Explicar como modelar outros objetos mais complexos foge do escopo do artigo, que é apresentar a BGE. Por isso, utilizaremos o cubo para explicar na prática como utilizar os sensores, controladores e atuadores.

Clique com o botão direito do mouse sobre o cubo e veja que é possível adicionar sensores, controladores e atuadores ao cubo na Buttons Window.

Adicionaremos primeiramente um sensor:

Observe que abaixo de 'Sensors' existe a palavra 'Cube', que é o nome do objeto selecionado, seguido da palavra 'Add'. Clique sobre 'Add' para adicionar um novo sensor ao cubo. O sensor adicionado é do tipo 'Always', aquele que gera pulsos a todo instante. Clique na seta ao lado de 'Always' e altere para 'Keyboard'. Isso fará o sensor gerar pulsos quando teclarmos a tecla especificada. Mas ainda falta especificar a tecla. Clique sobre o espaço vazio à direita de 'Key' e pressione a tecla para cima quando solicitado.

Adicione agora um controlador:

Abaixo da palavra 'Controllers' existe a palavra 'Cube' novamente, clique na palavra 'Add' do lado direito. O controlador adicionado é do tipo 'AND' e satisfaz nossas necessidades.

Adicione para finalizar um atuador:

Abaixo da palavra 'Actuators' existe novamente a palavra 'Cube', ao lado dela, clique em 'Add'. Agora foi adicionado um atuador do tipo Motion. Isso possibilita que o cubo se movimente.

Observe que nas propriedades do atuador existem duas linhas chamadas Loc e Rot. Loc possibilita que o objeto se locomova no(s) eixo(s) especificado(s). Cada uma dessas palavras é seguida de 3 números no formato ponto-flutuante. Esses números indicam a movimentação nos eixos x, y e z respectivamente. Aumente o valor de y na linha correspondente a Loc para 0.1.

Conectando sensor, controlador e atuador:

Agora que temos um sensor, um controlador e um atuador, basta conectá-los.

Para isso observe que do lado direito do sensor existe uma pequena esfera amarelada. Clique sobre ela e arraste-a até o espaço correspondente do lado esquerdo do controlador criado. Repita o procedimento do controlador para o atuador.

Agora os três itens devem estar conectados da seguinte maneira: Sensor => Controlador => Atuador.

Mude para a câmera 0 e clique em 'P' para visualizar o que acontece. Quando clicamos em 'P', adentramos no modo de teste do jogo. Teclando na seta para cima, podemos movimentar o cubo no eixo y até que ele desapareça. Clique em 'ESC' para sair do modo de teste do jogo.

Repita o procedimento para os outros movimentos:

Repita o procedimento adaptando teclas nos sensores e números nos atuadores para movimentar cubo em todas as direções.

Clique na url para baixar o primeiro exemplo: Exemplo1BlenderGameEngine.blend - 4shared.com

No exemplo incluí as movimentações no eixo x, y e rotação em torno do eixo z.

Para incluir rotação no seu exemplo, basta adicionar um sensor para a tecla de rotação (no meu exemplo utilizei 'R'). Um controlador AND e um atuador que possua o atributo Rot, alterado em sua última coluna para 1.0. Não se esqueça de linkar os blocos.

Pronto, esse é o primeiro exemplo, mas ainda tem mais...

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Exemplo usando Logic Bricks
   3. Exemplo usando Logic Bricks e física com a Bullet Engine
   4. Finalizando
Outros artigos deste autor

LaTex no Fedora 20 - Instalação via YUM

Reprodução de arquivos WAV com SDL_mixer e linguagem C

Compilador GNU Prolog

Leitura recomendada

Transforme seu Linux num Neo Geo

Como jogar poker no Full Tilt Poker pelo Linux

DOOM clássico rapidão

Brutal DOOM no Linux Mint (Ubuntu)

Tocando guitarra com Frets on Fire

  
Comentários
[1] Comentário enviado por felipemartinsss em 19/08/2009 - 12:22h

Bom dia pessoal,
houve um problema para exibir a tabela na página "Introdução", no tópico "Controladores". Para visualizarem corretamente a tabela acessem: http://sites.google.com/site/slackerbrasil/blender-html/blender.html?attredirects=0

Obrigado.

[2] Comentário enviado por acollucci em 21/08/2009 - 13:24h

cara muito bom o artigo, apesar de que eu nao entendo nada de blender... parabens!

[3] Comentário enviado por felipemartinsss em 21/08/2009 - 14:15h

Obrigado pelo comentário acollucci.
Eu também não conheço muito, comecei a estudar por causa da Game Engine.
Tente implementar, acho que você vai gostar.

Abraço.

[4] Comentário enviado por br4in5t0rm em 24/08/2009 - 10:18h

Mais um artigo excelente Felipe.
Parabéns pela qualidade e pela didática empregada no artigo sobre game engine do Blender.
\__/
(oo)
_||_
erick

[5] Comentário enviado por felipemartinsss em 24/08/2009 - 12:02h

Obrigado br4in5t0rm.
Estou me esforçando para ter conteúdo suficiente para outro texto em breve.

Abraço

[6] Comentário enviado por Cr4sh_Dump em 06/02/2013 - 15:05h

Primeiramente queria dar um parabens pelo artigo e pela dica de que se nos nao fizermos os jogos... quem os criara? mais tenho apenas uma pergunta sou programador c/c++ mais o pouco que sei de programaçao de jogos sempre foi sobre sobre allegro e qt 4 + opengl entao desculpe a minha ignorancia. Minha pergunta e a seguinte tive olhando para interface do blender e vi que se colocar varios blocos logicos numa mesma figura chega um momento que nao é possivel interligarlos pois nao cabem todos na tela do pc. Como se contorna isso?

[7] Comentário enviado por felipemartinsss em 19/09/2014 - 11:45h


[6] Comentário enviado por Cr4sh_Dump em 06/02/2013 - 15:05h:

Primeiramente queria dar um parabens pelo artigo e pela dica de que se nos nao fizermos os jogos... quem os criara? mais tenho apenas uma pergunta sou programador c/c++ mais o pouco que sei de programaçao de jogos sempre foi sobre sobre allegro e qt 4 + opengl entao desculpe a minha ignorancia. Minha pergunta e a seguinte tive olhando para interface do blender e vi que se colocar varios blocos logicos numa mesma figura chega um momento que nao é possivel interligarlos pois nao cabem todos na tela do pc. Como se contorna isso?


Cr4sh_Dump, peço desculpas porque não pude responder na época em que você fez a pergunta.
No momento não estou com um ambiente Blender configurado para fazer o teste, mas no Blender você pode deslocar a câmera e mover-se pelo cenário que
está criando. Então teoricamente, se você quer adicionar novos Logic Bricks, você pode expandir seu cenário e isso não seria problema.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts