Sobre o projeto
Pebble é um framework de aplicações e gráficos de baixo nível para Rust, projetado para fornecer primitivas essenciais sem impor um modelo específico de renderização ou simulação. Ele é construído sobre hecs (ECS), wgpu (GPU API) e winit (windowing).
Os principais recursos incluem:
- **Arquitetura ECS**: Utiliza uma abordagem baseada em sistemas com estágios definidos (Startup, Ready, Update, Render, etc.) e gerenciamento de recursos para valores singleton.
- **Sistema de Plugins**: A aplicação é composta pelo encadeamento de plugins, permitindo a adição modular de windowing, backends de GPU e lógica de jogo.
- **Pipeline de Assets Flexível**: Um modelo de asset unificado de CPU/GPU que lida com uploads assíncronos e gerenciamento de dependências. Suporta meshes genéricas (via bytemuck::Pod), texturas e shaders WGSL brutos para materiais e passes de computação.
- **Builders de Recursos de GPU**: Fornece builders para Textures, Meshes, Materials e pipelines de Compute, permitindo que os usuários definam seus próprios layouts de vértice e formas de bind-group.
- **Integração Async**: Utiliza um padrão Promise/Fulfiller para operações de GPU não bloqueantes, como readbacks de buffer e aquisição de backend.
- **Multiplataforma**: Suporta execução nativa e wasm32-unknown-unknown para implantação na web.
Ao contrário de engines de alto nível, o Pebble exclui deliberadamente animação esquelética integrada, carregadores de modelos ou sistemas de colisão, deixando a implementação desses sistemas específicos de jogo para o desenvolvedor.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.