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.