bevy/crates/bevy_pbr/src/render
JMS55 9cc7e7c080
Meshlet screenspace-derived tangents (#15084)
* Save 16 bytes per vertex by calculating tangents in the shader at
runtime, rather than storing them in the vertex data.
* Based on https://jcgt.org/published/0009/03/04,
https://www.jeremyong.com/graphics/2023/12/16/surface-gradient-bump-mapping.
* Fixed visbuffer resolve to use the updated algorithm that flips ddy
correctly
* Added some more docs about meshlet material limitations, and some
TODOs about transforming UV coordinates for the future.


![image](https://github.com/user-attachments/assets/222d8192-8c82-4d77-945d-53670a503761)

For testing add a normal map to the bunnies with StandardMaterial like
below, and then test that on both main and this PR (make sure to
download the correct bunny for each). Results should be mostly
identical.

```rust
normal_map_texture: Some(asset_server.load_with_settings(
    "textures/BlueNoise-Normal.png",
    |settings: &mut ImageLoaderSettings| settings.is_srgb = false,
)),
```
2024-09-29 18:39:25 +00:00
..
clustered_forward.wgsl Fix incorrect function calls to hsv_to_rgb in render debug code. (#14260) 2024-07-22 18:25:54 +00:00
fog.rs Rename rendering components for improved consistency and clarity (#15035) 2024-09-10 01:11:46 +00:00
fog.wgsl update shader imports (#10180) 2023-10-21 11:51:58 +00:00
forward_io.wgsl Add UV channel selection to StandardMaterial (#13200) 2024-05-13 18:23:09 +00:00
gpu_preprocess.rs Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
light.rs Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
mesh.rs Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
mesh.wgsl Fix the example regressions from packed growable buffers. (#14375) 2024-07-22 18:55:51 +00:00
mesh_bindings.rs simplify std::mem references (#15315) 2024-09-19 21:28:16 +00:00
mesh_bindings.wgsl Swap material and mesh bind groups (#10485) 2023-11-28 22:26:22 +00:00
mesh_functions.wgsl Fix meshlet vertex attribute interpolation (#13775) 2024-06-10 20:18:43 +00:00
mesh_preprocess.wgsl Fix the example regressions from packed growable buffers. (#14375) 2024-07-22 18:55:51 +00:00
mesh_types.wgsl Fix the example regressions from packed growable buffers. (#14375) 2024-07-22 18:55:51 +00:00
mesh_view_bindings.rs Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
mesh_view_bindings.wgsl Implement percentage-closer soft shadows (PCSS). (#13497) 2024-09-18 18:07:17 +00:00
mesh_view_types.wgsl Implement percentage-closer soft shadows (PCSS). (#13497) 2024-09-18 18:07:17 +00:00
mod.rs Implement motion vectors and TAA for skinned meshes and meshes with morph targets. (#13572) 2024-05-31 17:02:28 +00:00
morph.rs Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
morph.wgsl Implement motion vectors and TAA for skinned meshes and meshes with morph targets. (#13572) 2024-05-31 17:02:28 +00:00
parallax_mapping.wgsl Fix a few "repeated word" typos (#13955) 2024-06-20 21:35:20 +00:00
pbr.wgsl Implement visibility ranges, also known as hierarchical levels of detail (HLODs). (#12916) 2024-05-03 00:11:35 +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 Added feature switch to default Standard Material's new anisotropy texture to off (#14048) 2024-07-02 18:02:05 +00:00
pbr_fragment.wgsl Meshlet screenspace-derived tangents (#15084) 2024-09-29 18:39:25 +00:00
pbr_functions.wgsl Meshlet screenspace-derived tangents (#15084) 2024-09-29 18:39:25 +00:00
pbr_lighting.wgsl Rename "point light" to "clusterable object" in cluster contexts. (#13654) 2024-06-04 11:01:13 +00:00
pbr_prepass.wgsl Meshlet screenspace-derived tangents (#15084) 2024-09-29 18:39:25 +00:00
pbr_prepass_functions.wgsl Normalise matrix naming (#13489) 2024-06-03 16:56:53 +00:00
pbr_transmission.wgsl Normalise matrix naming (#13489) 2024-06-03 16:56:53 +00:00
pbr_types.wgsl Revert "Make FOG_ENABLED a shader_def instead of material flag (#13783)" (#13803) 2024-06-10 23:25:16 +00:00
rgb9e5.wgsl Deferred Renderer (#9258) 2023-10-12 22:10:38 +00:00
shadow_sampling.wgsl Implement percentage-closer soft shadows (PCSS). (#13497) 2024-09-18 18:07:17 +00:00
shadows.wgsl Implement percentage-closer soft shadows (PCSS). (#13497) 2024-09-18 18:07:17 +00:00
skin.rs Add core and alloc over std Lints (#15281) 2024-09-27 00:59:59 +00:00
skinning.wgsl Normalise matrix naming (#13489) 2024-06-03 16:56:53 +00:00
utils.wgsl move wgsl color operations from bevy_pbr to bevy_render (#13209) 2024-05-04 10:30:23 +00:00
view_transformations.wgsl Normalise matrix naming (#13489) 2024-06-03 16:56:53 +00:00
wireframe.wgsl Swap material and mesh bind groups (#10485) 2023-11-28 22:26:22 +00:00