Skip to content

csharpbrasil/pong-godot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

🏓 Pong — Godot 4 + C#

Godot CSharp Platform


✨ Sobre o projeto

Este projeto demonstra como construir um jogo arcade clássico do zero usando Godot 4.6 e C#, aproveitando ao máximo a API de desenho imediato (_Draw) e a geração de áudio procedural (AudioStreamGenerator).

Todo o jogo vive em um único script — Node2d.cs — sem dependências de assets externos.

Destaques técnicos

Recurso Abordagem
Gráficos _Draw() com DrawRect / DrawString — zero sprites
Áudio 8-bit AudioStreamGenerator + síntese de onda quadrada em tempo real
Física da bola Cálculo vetorial manual com aceleração progressiva
IA do CPU Perseguição proporcional com limitação de velocidade
Renderer GL Compatibility (roda em qualquer máquina)

🕹️ Modos de jogo

Modo Descrição
1 Jogador Você (J1) vs CPU
2 Jogadores Dois jogadores no mesmo teclado

Primeiro a marcar 7 pontos vence.


⌨️ Controles

Ação Tecla
J1 — mover para cima W
J1 — mover para baixo S
J2 — mover para cima
J2 — mover para baixo
Escolher 1 Jogador 1 (na tela inicial)
Escolher 2 Jogadores 2 (na tela inicial)
Iniciar / Reiniciar Clique do mouse ou Espaço
Sair ESC

🚀 Como rodar

Pré-requisitos

Passos

# 1. Clone o repositório
git clone https://github.com/csharpbrasil/pong-godot.git

# 2. Abra o projeto no Godot
#    File → Open Project → selecione a pasta src/

# 3. Pressione F5 para rodar

Dica: na primeira abertura, o Godot irá compilar o projeto C# automaticamente.


📁 Estrutura

pong-godot/
├── src/
│   ├── Node2d.cs          # Todo o código do jogo
│   ├── Main.tscn          # Cena principal (só referencia o script)
│   ├── project.godot      # Configurações do projeto
│   ├── Exemplo Godot.sln  # Solução .NET
│   └── Exemplo Godot.csproj
└── README.md

📄 Licença

MIT — use, modifique e compartilhe à vontade.