Ferramentas

Godot Engine - Guia do Iniciante [2018]

Godot Engine - Guia do Iniciante [2018]

Coloque seu nome e email para receber meus melhores conteúdos:

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.

Para quem está iniciando no mundo dos games e procura uma opção mais simples que engines elaboradas como Unity e Unreal, a Godot aparece como uma das principais opções juntamente com Game Maker, Construct, entre outras.

A Godot Engine é 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.

Neste artigo eu vou te falar tudo que precisa saber antes de escolher a Godot Engine para seus projetos, combinado?

Continue lendo este artigo para saber mais sobre:

Começando a utilizar a Godot Engine (passo a passo)

Como começar a usar a Godot Engine

O primeiro passo para começar a usar a Godot Engine é acessar o site https://godotengine.org/ e baixar a ferramenta gratuitamente.

Antes de fazer o download da Godot, verifique se seu computador tem os requisitos listados abaixo.

Requisitos mínimos:

  • Windows 7, Mac OS X, X11 (Linux, *BSD);
  • Placa de vídeo: OpenGL 3.3+

Requisitos da versão Godot 3:

  • Hardware compatível com OpenGL ES 3.0.
  • Para a versão Mono (suporte a C#), é necessário o Mono SDK 5.4.x (outras versões não funcionam).

Escolha o seu sistema operacional e baixe a opção desejada. Quando baixar o arquivo, descompacte execute o programa normalmente.

Ao abrir o programa você verá o gerenciador de projetos no qual você poderá criar, remover, importar ou reproduzir projetos dos seus jogos.

Interface da Godot

Explorando esta tela inicial, você pode alterar o idioma no canto superior direito e clicar na opção ‘Templates’ para utilizar alguns modelos disponibilizados na engine começar a se familiarizar com os recursos oferecidos por ela.

Interface de template da Godot

Ao lado da aba ‘Templates’, temos a aba ‘Project List’. Para criar um novo projeto é bem simples, basta clicar ‘New Project’, definir um nome para o projeto e escolher a pasta na qual deseja salvá-lo.

Quando abrir o projeto você verá a interface 3D ativa. Para mudar para a interface 2D ou Script, basta selecionar a opção desejada no menu central.

Interface 3D

Você pode alterar os ambientes de trabalho utilizando atalhos no teclado:

  • F1 para acessar o ambiente 2D e criar suas interfaces;
  • F2 para acessar o ambiente 3D e trabalhar com malhas, luzes e níveis de design para jogos 3D;
  • F3 para acessar o script;
  • F4 para pesquisar no script.

Note que juntos dos ambientes 2D, 3D e Script temos também a biblioteca AssetLib na qual poderá acessar complementos, scripts e recursos gratuitos para usar em seus projetos.

Abaixo, confira como está organizada a interface do editor:

Como interfaces são organizadas

Por fim, dois aspectos interessantes para notar sobre a Godot Engine são:

  • Tem a opção de clicar e arrastar os elementos da interface para redimensioná-los, verticalmente e horizontalmente;
  • Os modos 2D e 3D são separados, diferente de outras engines que são modos misturados.

Não deixe também de conferir a comunidade oficial da Godot e visitar o GitHub da game engine.

Vamos agora entender um pouco melhor como a Godot funciona.

Entendendo a Godot: o sistema de Scenes e Nodes

O sistema de Scenes e Nodes da Godot

Godot é uma engine de código aberto voltada para a criação de jogos 2D e 3D multiplataformas.

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:

Estrutura de árvore de nodes e scenes

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

Linguagens de programação e visual scripting na Godot engine

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 (veja documentação oficial da GDScript aqui).

Essa linguagem foi projetada para que você possa criar seus jogos sem complicações, conta com um editor integrado e seu script visual é baseado em blocos e conexões.

Apesar de ter um script próprio, a engine proporciona bastante liberdade ao desenvolvedor, já que fornece suporte completo ao C# 7, por meio do Mono, além de suporte total a C ++ sem precisar recompilar.

A documentação do GDScript também é integrada, ou seja, você pode navegar e pesquisar toda a API offline, sem sair do editor.

As linguagens oficialmente suportadas para Godot são GDScript, Visual Scripting, C# e C ++. O suporte a C# e Visual Scripting é recente e o suporte para novos idiomas pode ser adicionado por terceiros usando os recursos GDNative / NativeScript / PluginScript.

Mas por quê a engine usa script? O conceito da engine é editar scenes e nodes. Cada node tem uma funcionalidade. Existe node de imagens, de som, de modelos 3D, entre outros.

Um script é responsável por adicionar comportamento a um node. Ele é usado para controlar como o node funciona e como ele interage com outros nodes. Então, o script herda as funções fornecidas por esse node.

Exemplos de jogos feitos na Godot Engine

Exemplos de jogos feitos na Godot

Existem muitos jogos feitos no godot, como o Tanks of Freedom, um jogo de estratégia por turnos, desenvolvido pela P1X – Indie Game Developement Studio. Você pode fazer o download desse game no link http://tof.p1x.in/.

Tanks of Freedom foi feito com a Godot

Outro jogo feito a partir dessa engine é o The Interactive Adventures of Dog Mendonça & Pizzaboy®, da OKAM Studio. Uma curiosidade sobre esse studio é que ele criou a Godot Engine para desenvolver seus games. Esse jogo é de aventura e baseado na premiada série The Incredible Adventures of Dog Mendonça & Pizzaboy.

Outros jogos feitos em Godot são:

1) Get Out, do Lucas Coelho (@lucascrabbit )

Jogo Get Out utilizando a Godot engine

Jogue aqui: https://lcrabbit.itch.io/get-out

2) Tamagoshii, do William Tumeo (@williamd1k0)

Jogo Tagamoshii feito na Godot

Jogue aqui: https://tumeo.itch.io/tamagoshii

3) Juan Saga, do Pig Dev Studio (@pigdevstudio)

Jogue aqui: https://pigdev.itch.io/

4) Rush Car, do EBanana (@virtualbolao)

Jogo Rush car

Jogue aqui:https://play.google.com/store/apps/details?id=org.godotengine.cartest

5) Tap Notap Tatap, do RaidenxzOFC (@RaidenxzOFC )

Jogo desenvolvido na Godot, o Tap Notap Tatap

Jogue aqui: https://play.google.com/store/apps/details?id=org.godotengine.tapnotaptatap

6) What is Art: Things that can be Stolen, do Ricardo Machado (@DrZanuff)

What is Art foi criado na Godot engine

Jogue aqui: https://drzanuff.itch.io/what-is-art-things

Vantagens e desvantagens: comparando a Godot com ferramentas similares

Comparação da Godot com outras game engines

Uma grande vantagem da Godot Engine é ser open source e permitir a criação de jogos 2D e 3D, além de contar com recursos integrados, como editor de partículas e editor de animação bones e kinematic.

A Stencyl Engine e o Scratch, por exemplo, só permitem a criação de jogos 2D, mas por outro lado possuem o recurso de arrastar e soltar blocos, o que permite uma prototipagem mais ágil.

Em comparação à Unity, por exemplo, tem a vantagem de separar os objetos em várias cenas, assim cada membro da equipe pode trabalhar seus objetos sem que ocorram conflitos no repositório.

Outra vantagem é que todo objeto é armazenado como texto em um formato legível e amigável. Enquanto na Unity um objeto pode ter vários scripts, na Godot Engine cada node possui apenas um script.

Na Unity incorporamos todos os recursos necessários em uma cena e os vinculamos, definindo componentes e scripts para eles. Já a Godot, que trabalha com ‘nós’, permite que cada nó tenha vários filhos, formando sub-cenas da cena principal. Isso permite que você componha uma cena inteira com cenas diferentes, armazenadas em arquivos diferentes.

Como o jogo é executado em um processo separado, o editor da Godot Engine é bem estável. O processo de executar e fechar o jogo também é mais rápido nessa engine do que na Unity, onde é necessário salvar, executar o projeto, fechar o projeto e recarregar o estado anterior

Essas são as plataformas para as quais você pode exportar seus jogos produzidos na Godot:

  • Desktop: Windows, macOS, X11
  • Mobile: Android, iOS
  • Web: WebAssembly
  • VR: Oculus Rift, SteamVR
  • Console: empresas terceirizadas oferecem serviços de portabilidade e publicação de jogos feitos no Godot para consoles. A Lone Wolf Technology, por exemplo, faz a portabilidade e publicação de jogos para Switch, PS4 e XBox One.

Aprenda a escolher a melhor Game Engine pro seu jogo

Escolhendo a melhor game engine pro seu jogo

Escolher a game engine mais adequada para você e seu projeto é uma grande decisão.

Como já falado, além da Godot existem diversas outras opções e nem sempre as mais populares serão as melhores para você e seus jogos.

E se você também quer começar a desenvolver jogos, eu sempre recomendo começar dos mais simples para ir ganhando experiência.

Eu criei um ebook com uma seleção de 16 jogos simples para você ter como uma referência sobre o tipo de jogo que eu acredito ser ideal para quem está começando.

Além disso, também incluí a quantidade de cópias vendidas de cada um desses jogos (dados reais vazados da Steam).

Baixe o ebook gratuitamente no botão abaixo:

Opa,

qual foi a maior sacada que você teve? Conte nos comentários.