Sobre o projeto
Brileta é um motor de jogo e sandbox desenvolvido internamente, projetado para experimentar mecânicas de jogo, gráficos e geração procedural. Desenvolvido utilizando Python e C com WGPU para acesso à GPU, ele evita frameworks externos para implementar seus próprios sistemas de renderização, entrada, áudio, iluminação e IA.
As principais características técnicas incluem:
- Iluminação Baseada em Shaders: Utiliza fragment shaders do WGPU para iluminação por tile, suportando múltiplas luzes pontuais com cintilação dinâmica, sombras de terreno via ray-marching para um sol direcional e blending de bordas para limites de terreno orgânicos.
- Geração de Mundo Componível: Emprega um pipeline de camadas de geração usando campos de ruído para criar paisagens naturais e infraestrutura de assentamentos, tudo determinístico a partir de uma única seed.
- Sprites Procedurais: Gera sprites exclusivos, pixel a pixel, para atores e objetos (como árvores e rochas) baseados em seeds determinísticas, integrados via um atlas de sprites dinâmico com bin-packing de skyline.
- Utility AI: Implementa um sistema de pontuação baseado em objetivos para o comportamento de NPCs, onde ações e objetivos de múltiplos turnos competem com base no contexto e bônus de persistência.
- Sistema de Ações Declarativo: Usa um pipeline unificado para ações de jogadores e NPCs, apresentando sequências declarativas e pathfinding hierárquico entre regiões.
- Otimização de Performance: Utiliza extensões em C para tarefas computacionalmente intensivas, incluindo pathfinding A*, FOV de shadowcasting simétrico, rasterização de sprites e geração de ruído.
- Efeitos de Apresentação: Inclui um sistema de partículas sub-tile, decals de chão para respingos de sangue e áudio posicional com atenuação baseada na distância.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.