![](https://upload.wikimedia.org/wikipedia/commons/thumb/5/5a/Godot_logo.svg/1200px-Godot_logo.svg.png)
######
screenshoot by Kmitt 91 and Wojtek Pe
Aula para a engine Godot 3.2.2
Hoje veremos a primeira aula de Desenvolvimento de jogo, vocês verão sobre a Motores De jogos Godot, primeiramente veremos por que precisamos de uma Motores De jogos.
Antigamente para se desenvolver um Jogo nos Anos 90 não se havia o conceito de Motores de Jogos, Por hábito desenvolvedores tinham que criar seus jogos do zero, naquela época não se havia muitas outras opções, porém se a um sério custo em fazer tudo do zero por conta própria, se a um custo de tempo, e pior de tudo quando alguém queria um porte para outra plataforma os desenvolvedores geralmente não tinha ideia de como fazer isso, pois a maioria só usava Sistemas Operacionais como DOS ou Windows.
Para solucionar esse problema se foi criado os Motores de Jogos, o Motores de Jogos e como as engrenagens de uma máquina ou motor de um carro que faz o jogo rodar. ele permite o jogo ser desenvolvido uma única vez e exportado para várias plataformas diferentes.
No mundo do Software, se há
A Godot e o Motor de Jogos de Uso geral e Código Aberto mais usada no ecossistema de desenvolvimento de jogos. antes da godot ter sido lançada para o público em 2014, engines proprietárias como source, Unity, Cry Engine, Unreal, Construct e GameMaker eram as únicas opções de desenvolvedores. cada uma requer um pagamento de licença ou royalties de qualquer trabalho derivado do Motor, além de não possibilitar a edição do código do Motor.
O Godot é completamente gratuito, Código aberto, Extremamente leve pesando menos de 100 mega bytes, não requer instalação, pode rodar jogos 2D ou 3D e suporta criação de jogos de online multijogadores, por causa de todos os recursos que a Godot oferece e baixo preço, a godot e o melhor Motor de Jogos para iniciantes que querem entrar no mercado.
Criando sua primeira aplicação no Godot:
Primeiro iremos fazer download do Programa Godot do website oficial godotengine.com, faça download da versão mais atual e descomprima o arquivo do download para a Área de trabalho ou uma pasta da sua escolha.
![](https://i.imgur.com/uvLXsF7.jpg)
![](https://i.imgur.com/jrLAvrj.png)
![](https://i.imgur.com/SIJ9xuW.png)
![](https://i.imgur.com/8aUH8lE.png)
![](https://i.imgur.com/Ddl6jlB.png)
![](https://i.imgur.com/jerKHuc.png)
![](https://i.imgur.com/U3xCYNc.png)
![](https://i.imgur.com/AogZBEE.png)
![](https://i.imgur.com/mBQw9NP.png)
![](https://i.imgur.com/f4G2FIn.png)
Agora que temos uma cena aberta no Godot, crie um Node2D, um Node ou Nó e um objeto dentro da cena que fica em uma hierquia como um Nó em uma Corda, o Node pode ser o personagem do jogador, um Inimigo, um objeto no cenário ou ate mesmo o seu em um jogo, e adicionei ele com o um script, um script e uma pedaço de código que pode se adicionado por cima de um Node para adicionar novas funcionalidades a ele, nos usaremos o GDscript por ser o método mais fácil de se usar para programar jogos na Godot.
![](https://i.imgur.com/0njRxht.png)
![](https://i.imgur.com/PoVqHPB.png)
![](https://i.imgur.com/1omUNBd.png)
Agora que você tem uma Cena dentro do Godot, insira o seguinte código nele, e execute Godot. ele irar escrever na janela de saída de texto.
```
extends Node2D
func _ready():
print("ola mundo!!!")
```
![](https://i.imgur.com/oRwEkMc.png)
![](https://i.imgur.com/CLmKqi6.png)
Agora podemos fazer um Script um pouco mais avançado, que irar escrever na janela de saída de texto toda vez que uma tecla for pressionada nesse caso a teclas "Spaço" e "Enter":
```
extends Node2D
func _input(event):
if Input.is_action_just_pressed("ui_accept"):
print("ola mundo!!!")
```
![](https://i.imgur.com/wNV1Pvo.png)
Como podemos ver, "olá mundo!!!" e impresso toda vez que se clica o botão.
Funções:
Em linguagem de programação, possuem funções, funções são pedações de código que serão executados em certos momentos do programa, por exemplo.
`func _ready():` _ready e uma função que será executado uma única vez quando o programar iniciar.
`func _input(event):` _input e uma função que será executada, toda vez que uma tecla do teclado, joystick ou mouse for pressionada.
`print()` Print e uma função que irar imprimir na janela de saída de texto o conteúdo entre as parênteses.
`Input.is_action_just_pressed()` e uma função que pode detectar se a um 'Input' e correspondente ao Input desejado, podendo ser utilizado para detectar o Input do jogador e mover o personagem.
Classes:
'extends Node2D' estende a funcionalidade da "Classe" Node2D, Na programação, para evitar escrever o mesmo código varias vezes, se usado as "Classes", Scripts podem herdar propriedades das "Classes", como Motos, Aviões, Helicópteros e Carros são tipos de veículos, eles herda as propriedades da "Classe" Veiculo, porem se diferenciam com atributos próprios.
![](https://images.financialexpress.com/2020/12/fuel-efficiency.jpg)
######
Tipos de veiculos comparivel aos tipos de classes
Na próxima aula veremos os tipos de classes! Isso permitirá que seus jogos realmente tomem corpo