Implementação do clássico Breakout feita em Odin usando raylib (distribuída com o próprio Odin).
Este projeto foi desenvolvido com foco em aprendizado prático: entender o básico de renderização 2D, áudio, colisões e loop de jogo com raylib.
Gameplay inspirado no Breakout clássico:
- Controle de paddle por teclado
- Bola com colisão em paredes, paddle e blocos
- Sistema de pontuação por cor de bloco
- Reinício após game over
- Odin
- raylib via
vendor:raylib(já incluída no ecossistema Odin)
- Odin instalado e disponível no
PATH
Com just:
just runOu diretamente com Odin:
odin run .Com just:
just buildOu diretamente:
odin build .←/→: mover paddleSPACE: iniciar partidaSPACE(após game over): reiniciar
.
├── breakout.odin # Código principal do jogo
├── justfile # Comandos utilitários (run/build)
├── README.md
└── resources/
├── ball.png
├── paddle.png
├── hit_block.wav
├── hit_paddle.wav
└── game_over.wav
Este repositório existe como estudo de fundamentos de desenvolvimento de jogos 2D com Odin + raylib, incluindo:
- Estado do jogo (
start,game over,score) - Física simples de movimento/reflexão
- Detecção de colisão com
CheckCollisionCircleRec - Renderização de sprites, blocos e texto
- Efeitos sonoros para feedback de gameplay
Projeto desenvolvido com base no vídeo tutorial:
- Karl Zylinski — Making Breakout in Odin and raylib
- Link: https://www.youtube.com/watch?v=vfgZOEvO0kM
Todos os créditos do conteúdo-base e da didática do tutorial ao criador Karl Zylinski.