bevy/crates/bevy_pbr/src/render
Kurt Kühnert 9e450f2827 Compute Pipeline Specialization (#3979)
# Objective

- Fixes #3970
- To support Bevy's shader abstraction(shader defs, shader imports and hot shader reloading) for compute shaders, I have followed carts advice and change the `PipelinenCache` to accommodate both compute and render pipelines.

## Solution

- renamed `RenderPipelineCache` to `PipelineCache`
- Cached Pipelines are now represented by an enum (render, compute)
- split the `SpecializedPipelines` into `SpecializedRenderPipelines` and `SpecializedComputePipelines`
- updated the game of life example

## Open Questions

- should `SpecializedRenderPipelines` and `SpecializedComputePipelines` be merged and how would we do that?
- should the `get_render_pipeline` and `get_compute_pipeline` methods be merged?
- is pipeline specialization for different entry points a good pattern




Co-authored-by: Kurt Kühnert <51823519+Ku95@users.noreply.github.com>
Co-authored-by: Carter Anderson <mcanders1@gmail.com>
2022-03-23 00:27:26 +00:00
..
depth.wgsl Update wgpu to 0.12 and naga to 0.8 (#3375) 2021-12-19 03:03:06 +00:00
light.rs Compute Pipeline Specialization (#3979) 2022-03-23 00:27:26 +00:00
mesh_struct.wgsl Move import_path definitions into shader source (#3976) 2022-02-18 21:54:03 +00:00
mesh_view_bind_group.wgsl Move import_path definitions into shader source (#3976) 2022-02-18 21:54:03 +00:00
mesh.rs yeet unsound lifetime annotations on Query methods (#4243) 2022-03-22 02:49:41 +00:00
mesh.wgsl Replace old renderer with new renderer (#3312) 2021-12-14 03:58:23 +00:00
mod.rs Materials and MaterialPlugin (#3428) 2021-12-25 21:45:43 +00:00
pbr.wgsl KTX2/DDS/.basis compressed texture support (#3884) 2022-03-15 22:26:46 +00:00
wireframe.wgsl Replace old renderer with new renderer (#3312) 2021-12-14 03:58:23 +00:00