Sobre el proyecto
Pebble es un framework de aplicaciones y gráficos de bajo nivel para Rust, diseñado para proporcionar primitivas esenciales sin imponer un modelo específico de renderizado o simulación. Está construido sobre hecs (ECS), wgpu (GPU API) y winit (windowing).
Las características clave incluyen:
- **Arquitectura ECS**: Utiliza un enfoque basado en sistemas con etapas definidas (Startup, Ready, Update, Render, etc.) y gestión de recursos para valores singleton.
- **Sistema de Plugins**: La aplicación se compone encadenando plugins, lo que permite la adición modular de windowing, backends de GPU y lógica de juego.
- **Pipeline de Assets Flexible**: Un modelo de assets unificado de CPU/GPU que gestiona cargas asíncronas y gestión de dependencias. Soporta mallas genéricas (vía bytemuck::Pod), texturas y shaders WGSL puros para materiales y pases de cómputo.
- **Builders de Recursos de GPU**: Proporciona builders para Textures, Meshes, Materials y pipelines de Compute, permitiendo a los usuarios definir sus propios layouts de vértices y formas de bind-group.
- **Integración Async**: Utiliza un patrón Promise/Fulfiller para operaciones de GPU no bloqueantes, como readbacks de buffers y adquisición de backend.
- **Multiplataforma**: Soporta tanto la ejecución nativa como wasm32-unknown-unknown para despliegue web.
A diferencia de los motores de alto nivel, Pebble excluye deliberadamente la animación esquelética integrada, cargadores de modelos o sistemas de colisión, dejando la implementación de estos sistemas específicos del juego al desarrollador.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.