bevy/crates/bevy_pbr/src/render
JMS55 4f20faaa43
Meshlet rendering (initial feature) (#10164)
# Objective
- Implements a more efficient, GPU-driven
(https://github.com/bevyengine/bevy/issues/1342) rendering pipeline
based on meshlets.
- Meshes are split into small clusters of triangles called meshlets,
each of which acts as a mini index buffer into the larger mesh data.
Meshlets can be compressed, streamed, culled, and batched much more
efficiently than monolithic meshes.


![image](https://github.com/bevyengine/bevy/assets/47158642/cb2aaad0-7a9a-4e14-93b0-15d4e895b26a)

![image](https://github.com/bevyengine/bevy/assets/47158642/7534035b-1eb7-4278-9b99-5322e4401715)

# Misc
* Future work: https://github.com/bevyengine/bevy/issues/11518
* Nanite reference:
https://advances.realtimerendering.com/s2021/Karis_Nanite_SIGGRAPH_Advances_2021_final.pdf
Two pass occlusion culling explained very well:
https://medium.com/@mil_kru/two-pass-occlusion-culling-4100edcad501

---------

Co-authored-by: Ricky Taylor <rickytaylor26@gmail.com>
Co-authored-by: vero <email@atlasdostal.com>
Co-authored-by: François <mockersf@gmail.com>
Co-authored-by: atlas dostal <rodol@rivalrebels.com>
2024-03-25 19:08:27 +00:00
..
clustered_forward.wgsl Add random shader utils, fix cluster_debug_visualization (#11956) 2024-02-26 15:59:44 +00:00
fog.rs Migrate from LegacyColor to bevy_color::Color (#12163) 2024-02-29 19:35:12 +00:00
fog.wgsl update shader imports (#10180) 2023-10-21 11:51:58 +00:00
forward_io.wgsl Implement lightmaps. (#10231) 2024-01-02 20:38:47 +00:00
light.rs Add pipeline statistics (#9135) 2024-03-17 20:29:35 +00:00
mesh.rs Intern mesh vertex buffer layouts so that we don't have to compare them over and over. (#12216) 2024-03-01 20:56:21 +00:00
mesh.wgsl Update to wgpu 0.19 and raw-window-handle 0.6 (#11280) 2024-01-26 18:14:21 +00:00
mesh_bindings.rs Implement lightmaps. (#10231) 2024-01-02 20:38:47 +00:00
mesh_bindings.wgsl Swap material and mesh bind groups (#10485) 2023-11-28 22:26:22 +00:00
mesh_functions.wgsl Add support for KHR_texture_transform (#11904) 2024-02-21 01:11:28 +00:00
mesh_types.wgsl Add support for KHR_texture_transform (#11904) 2024-02-21 01:11:28 +00:00
mesh_view_bindings.rs Check cfg during CI and fix feature typos (#12103) 2024-02-25 15:19:27 +00:00
mesh_view_bindings.wgsl FIX: iOS Simulator not rendering due to missing CUBE_ARRAY_TEXTURES (#12052) 2024-02-23 01:24:59 +00:00
mesh_view_types.wgsl Implement irradiance volumes. (#10268) 2024-02-06 23:23:20 +00:00
mod.rs Variable MeshPipeline View Bind Group Layout (#10156) 2023-10-21 11:19:44 +00:00
morph.rs try_insert NoAutomaticBatching (#12396) 2024-03-10 02:14:33 +00:00
morph.wgsl Swap material and mesh bind groups (#10485) 2023-11-28 22:26:22 +00:00
parallax_mapping.wgsl update shader imports (#10180) 2023-10-21 11:51:58 +00:00
pbr.wgsl Meshlet rendering (initial feature) (#10164) 2024-03-25 19:08:27 +00:00
pbr_ambient.wgsl Use “specular occlusion” term to consistently extinguish fresnel on Ambient and Environment Map lights (#10182) 2023-10-23 03:26:20 +00:00
pbr_bindings.wgsl Swap material and mesh bind groups (#10485) 2023-11-28 22:26:22 +00:00
pbr_fragment.wgsl Meshlet rendering (initial feature) (#10164) 2024-03-25 19:08:27 +00:00
pbr_functions.wgsl Meshlet rendering (initial feature) (#10164) 2024-03-25 19:08:27 +00:00
pbr_lighting.wgsl update shader imports (#10180) 2023-10-21 11:51:58 +00:00
pbr_prepass.wgsl Meshlet rendering (initial feature) (#10164) 2024-03-25 19:08:27 +00:00
pbr_prepass_functions.wgsl Fix WebGL not rendering StandardMaterial (#12110) 2024-02-25 22:42:28 +00:00
pbr_transmission.wgsl Exposure settings (adopted) (#11347) 2024-01-16 14:53:21 +00:00
pbr_types.wgsl Fix WebGL not rendering StandardMaterial (#12110) 2024-02-25 22:42:28 +00:00
rgb9e5.wgsl Deferred Renderer (#9258) 2023-10-12 22:10:38 +00:00
shadow_sampling.wgsl StandardMaterial Light Transmission (#8015) 2023-10-31 20:59:02 +00:00
shadows.wgsl FIX: iOS Simulator not rendering due to missing CUBE_ARRAY_TEXTURES (#12052) 2024-02-23 01:24:59 +00:00
skin.rs try_insert NoAutomaticBatching (#12396) 2024-03-10 02:14:33 +00:00
skinning.wgsl Swap material and mesh bind groups (#10485) 2023-11-28 22:26:22 +00:00
utils.wgsl Add random shader utils, fix cluster_debug_visualization (#11956) 2024-02-26 15:59:44 +00:00
view_transformations.wgsl View Transformations (#9726) 2023-10-24 21:26:19 +00:00
wireframe.wgsl Swap material and mesh bind groups (#10485) 2023-11-28 22:26:22 +00:00