Introdução
O que o Awesome Engine inclui, o que você pode estudar no código e como interpretar o estado de cada sistema.
Nesta página
Um motor 2D que você pode explorar por dentro
Awesome Engine é um motor de jogos escrito em C++20, construído sobre o SFML. O núcleo conecta cenas a serviços de renderização, recursos, entrada, áudio, interfaces e persistência. Os jogos do repositório mostram como usar esses serviços a partir de código C++.
A documentação usa como referência o commit 5a6dfac. Ela descreve o conteúdo dessa revisão; as alterações observadas apenas na árvore de trabalho local são identificadas como em desenvolvimento.
O que você encontrará
- Sete cenas de jogo: Bounce, Clicker, MemoryCard, TicTacToe, MineSweeper, Runner e Tetris.
- Renderização 2D: objetos desenháveis do SFML, texturas intermediárias e pós-processamento Bloom e Monitor.
- Entrada por ações: teclado, mouse e controles, com várias associações para uma mesma ação.
- Serviços compartilhados: recursos, tempo, áudio, partículas, salvamento em JSON e capturas PNG.
- Interface TGUI: widgets e sobreposição de pausa integrados aos eventos da janela.
Esses sistemas se conectam por meio de EngineContext. Cada jogo implementa a interface Scene e mantém seus próprios objetos e regras. A revisão documentada não tem arquitetura ECS nem editor visual.
Percurso recomendado
- Instale e compile o projeto.
- Revise a configuração de execução.
- Acompanhe o ciclo do motor e suas dependências.
- Consulte o contrato das cenas.
- Explore renderização, recursos e entrada e áudio.
Como interpretar os estados
| Estado | Significado neste site |
|---|---|
| Implementada | Há código concreto na revisão de referência. Isso não equivale a uma certificação de todas as plataformas ou situações. |
| Em desenvolvimento | Há implementação ou alterações na árvore de trabalho local que ainda não fazem parte do commit de referência. |
| Experimental | O código existe, mas sua integração está desativada ou não participa do fluxo normal descrito. |
| Planejada | Exige uma intenção documentada pelo projeto. Nenhum recurso recebe esse estado sem essa evidência. |
AudioGroup, SpriteAnimator, SweptAabb e o relógio compartilhado de cooldowns foram observados como trabalho local. Não espere encontrar essas APIs ao clonar a revisão de referência.
Abrangência de plataformas
O repositório inclui configuração de trabalho para Windows com MinGW, Ninja e GDB. A auditoria não comprova compilação ou execução em Linux, macOS, dispositivos móveis ou navegadores. As bibliotecas utilizadas não bastam, por si só, para afirmar compatibilidade completa do motor.
O código do motor está sob a licença MIT. Os nomes das entradas do histórico correspondem a commits reais, não a versões de lançamento inventadas.