Pbr Shader Validation error on Android Emulators (Android Studio,BlueStacks,LDPlayer9)
- Dominant language
- Rust
- Stars
- 48.2k
- Forks
- 4.8k
- Avg merge
- 3d 16h
- Merged PRs (30d)
- 171
Description
## Bevy version
Bevy 0.16.1
## \[Optional\] Relevant system information
Android Emulators: Android Studio,BlueStacks,LDPlayer9
## What you did
I suppose this might occur when any bevy application using pbr rendering
## What went wrong
here' s the log:
'06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipefailed to create shader module: Validation Error
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipeCaused by:
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe In Device::create_shader_module
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipeShader validation error: Function [63] 'pbr_input_from_standard_materialX_naga_oil_mod_XMJSXM6K7OBRHEOR2OBRHEX3GOJQWO3LFNZ2AX' is invalid
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe ┌─ :1:1
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe │
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe1 │
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe │
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe │
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe │ naga::Expression [88]
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe │ naga::Function [63]
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe │
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe = Expression [88] is invalid
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe = Shader requires capability Capabilities(SAMPLED_TEXTURE_AND_STORAGE_BUFFER_ARRAY_NON_UNIFORM_INDEXING)
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe Function [63] 'pbr_input_from_standard_materialX_naga_oil_mod_XMJSXM6K7OBRHEOR2OBRHEX3GOJQWO3LFNZ2AX' is invalid
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe Expression [88] is invalid
06-05 20:18:21.773 3288 3325 E event ..\bevy-0.16.1\crates\bevy_render\src\render_resource\pipe Shader requires capability Capabilities(SAMPLED_TEXTURE_AND_STORAGE_BUFFER_ARRAY_NON_UNIFORM_INDEXING)
## Additional information
this does neither occur on Real Device (tested on Redmi Note 10S) , nor ont the emulators host computer
Contributor guide
Research direction
Reproduce a Bevy 0.16.1 PBR application on the Android Studio, BlueStacks, and LDPlayer9 emulators, then inspect the shader validation failure reported under crates/bevy_render/src/render_resource/pipe. Compare the emulator capability requirements with the successful Redmi Note 10S and host runs; done means PBR shaders validate and render on the affected emulators without breaking the working platforms.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, rust
- Domain
- computer-graphics, mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100