Expose GPU-accelerated rendering API
- Dominant language
- Rust
- Stars
- 32
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
This will probably have to wait until there is a battle-tested abstract graphics API that works across all platforms that we want to support. I'm interested in the `gfx-rs` HAL, but it seems like it's still early days for that. We could also expose an OpenGL context, assuming we can get that working on all platforms.
The `pxl` API would be to have a low-level render function that has access to the HAL context and does the current single-texture rendering by calling `Program::render`. Then, an author can replace this function if they want to do something that is impractical to do with the high-level rendering function.
There may also be interested intermediate steps that don't expose a full low-level rendering API, but still provide opportunities to take advantage of GPU-side rendering. For example, we could provide a simple API to allow the user to create and access textures on the GPU and perform blitting/blending operations with them.
Contributor guide
Assessment
This issue has not been assessed yet.