casey / casey/pxl

Expose GPU-accelerated rendering API

Open
#35 0 comments 0 reactions 0 assignees View on GitHub
enhancement wishlist
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.