Godot é uma game engine de código aberto voltada para a criação de jogos 2D e 3D multiplataformas.
Se você tem pesquisado sobre como criar jogos, com certeza já percebeu a grande quantidade de ferramentas disponíveis. Neste artigo eu vou te apresentar à Godot Game Engine, uma ferramenta que tem crescido rapidamente em popularidade.
A Godot Engine é 100% gratuita, tem código aberto e uma licença MIT bem permissiva, ou seja, não são cobrados royalties e todos os direitos sobre o jogo são do desenvolvedor.
Ao longo deste curso, você aprenderá as principais funcionalidades deste programa, criando 5 jogos:
Freeway : Clássico game da Atari onde duas galinhas precisam atravessar a rua, o primeiro jogador que fizer 10 pontos ganha.
Find the Six : Game que mescla a ação de inimigos perseguidores de The Legend of Zelda, com a mecânica de bombas do clássico Bomberman, neste game você precisa encontrar 6 tesouros enquanto enfrenta amebas azuis que lhe atacarão.
First Bird :E se você pudesse jogar Flappybird de um outro ângulo? Neste game, você é o Flappbyird e vê o mundo através dos olhos dele, cuidado com os canos!.
3 Minutes : Você está em um enorme labirinto e tem exatamente 3 minutos para encontrar uma caixa com a chave para sair, sempre que uma delas é gerada, ela tem um tempo de vida de 10 segundos, corra!.
Lunar FPS: Neste game de tiro em primeira pessoa, você é uma astronauta e está em uma base lunar, durante a sua viagem será possível se deparar com alguns aliens que irão persegui-lo e atacá-lo, mate-os com a sua sniper e continue a sua missão de explorãção.
Na Godot, praticamente tudo é um Node (nó). Um node pode representar um sprite, uma animação, um som ou praticamente qualquer outra coisa no seu projeto.
Todos os Nodes tem algumas coisas em comum:
Name: Cada node tem um nome para que possa ser chamado;
Properties: todo node tem um conjunto de propriedades que define como ele se comporta, sua aparência, etc;
Callback: cada node tem uma função de callback can pode ser processada a cada frame;
Extandable: fazendo uso de código, qualquer node pode ganhar propriedades e funcionalidades adicionais;
Uma outra propriedade fundamental dos Nodes é que eles podem ser associados a outros nodes como “filhos” (“Children”), criando uma estrutura de árvore:
Numa estrutura de árvore como da imagem acima, cada node pode ter apenas um “pai” (“parent”) e um número qualquer de filhos. Um node pode herdar propriedades de seu node-pai, permitindo que você organize-os em uma ordem lógica.
Um grupo de nodes organizados como uma árvore recebe o nome de Scene (“cena”). Na Godot, scenes podem ser salvas, carregadas, duplicadas e podem até mesmo dar origem a outras cenas.
Nesse contexto, rodar o jogo significa rodar a cena. Todo seu trabalho no editor da Godot será criando e organizando cenas.
Linguagens de programação e Visual Scripting
Algumas versões anteriores da engine foram baseadas em linguagens como Lua, Python e Squirrel, mas não se mostraram muito eficientes. Para resolver alguns problemas, a Godot passou a ter uma linguagem de script personalizada, conhecida como GDScript .