# Objective
- Defer creating `BindGroupLayout` by using a
`BindGroupLayoutDescriptor` and cache the results
- Unblocks `bevy_material` (render-less material definitions)
- Blocked by https://github.com/bevyengine/bevy/pull/21533
## Solution
- Reviewers, look at first commit for mechanism, and following for usage
## Testing
- CI
---------
Co-authored-by: atlas <email@atlasdostal.com>
# Objective
- Some shader examples are much more complicated than others. It can be
confusing for new users that simple example and advanced examples are
next to each other
## Solution
- Introduce a new "shader_advanced" example category
- I'm open to other names, but I named it like that so both folders are
next to each other
## Testing
N/A
## Notes
We should maybe consider a different name than "shader" because some of
them aren't that much about shaders. It could be advanced_rendering or
something like that.
I'm opened to moving more example to this. I just picked the one that
felt the most advanced to me.
I didn't move the compute_game_of_life example because, while it is
complex, the complexity is unavoidable if you want to run a compute
shader right now. I also plan on simplifying it a bit and introduce a
plugin to make it much easier but as it is today I think it's okay to
stay there.