Gigs is a plugin for the Bevy game engine that aims to provide a simple abstraction for "graphics jobs", units of rendering work that only need to be done sporadically, on-demand. For example, a terrain generation compute shader would only need to be run once for each chunk of terrain. In many cases, this crate will allow you to skip most or all of the manual extraction and resource prep boilerplate that comes along with this, and focus on writing shaders.
This library is still under development. main
is very unstable, and may be broken
frequently. It's not feature-complete yet, and there will be churn as features like
job dependencies are added, and the code refactored.
- First, add
gigs
to your Cargo dependencies:cargo add gigs
- Add
GraphicsJobsPlugin
to yourApp
- Implement
GraphicsJob
for your job component - Call
init_graphics_job
onApp
to initialize your custom job - To run the job, simply spawn an entity with your job component!
Bevy | Gigs |
---|---|
0.15 | 0.1 |
Gigs may be licensed under either the MIT or Apache 2.0 licenses, at your option:
- MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT)
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)