Godot version
4.0.dev.mono (1e71cab)
System information
Arch Linux, AMDGPU, Vulkan Mobile (Project Renderer)
Issue description
When you add shader material to a mesh, you are able to use instance uniform, so every instance can be with different value.
It works fine, until you add more than 1 of that mesh to a scene. Or something like that, I can't debug it exactly.
Now when you reload the editor and open that scene, I get somewhere like 3000 errors per second and you don't see the meshes. You can stop it by going to the original mesh scene and open it. Once opened you no longer get errors, even in the main scene.
This doesn't really affect the game, but it's really annoying since I have to open that scene every time I open my editor, or I get flooded by errors, and Godot crashes.

Error messages follow this pattern:
Uniforms supplied for set (3):
Set: 3 Binding: 0 Type: UniformBuffer Length: 112
Set: 3 Binding: 1 Type: Texture Length: 1
Set: 3 Binding: 2 Type: Texture Length: 1
Set: 3 Binding: 3 Type: Texture Length: 1
are not the same format as required by the pipeline shader. Pipeline shader requires the following bindings:
Set: 0 Binding: 1 Type: Sampler Length: 12
Set: 0 Binding: 2 Type: Sampler Length: 1
Set: 0 Binding: 3 Type: Sampler Length: 1
Set: 0 Binding: 4 Type: Sampler Length: 1
Set: 0 Binding: 5 Type: StorageBuffer Length: 0
Set: 0 Binding: 6 Type: StorageBuffer Length: 0
Set: 0 Binding: 7 Type: StorageBuffer Length: 0
Set: 0 Binding: 8 Type: UniformBuffer Length: 4224
Set: 0 Binding: 9 Type: StorageBuffer Length: 0
Set: 0 Binding: 10 Type: StorageBuffer Length: 0
Set: 0 Binding: 11 Type: Texture Length: 1
Set: 0 Binding: 12 Type: Texture Length: 1
Set: 0 Binding: 13 Type: StorageBuffer Length: 0
Set: 0 Binding: 14 Type: StorageBuffer Length: 0
Set: 1 Binding: 0 Type: UniformBuffer Length: 2784
Set: 1 Binding: 2 Type: Texture Length: 1
Set: 1 Binding: 3 Type: Texture Length: 1
Set: 1 Binding: 4 Type: Texture Length: 1
Set: 1 Binding: 5 Type: Texture Length: 1
Set: 1 Binding: 6 Type: Texture Length: 2
Set: 1 Binding: 9 Type: Texture Length: 1
Set: 1 Binding: 10 Type: Texture Length: 1
Set: 2 Binding: 0 Type: StorageBuffer Length: 0
Set: 3 Binding: 0 Type: UniformBuffer Length: 16
Set: 3 Binding: 1 Type: Texture Length: 1
Steps to reproduce
- Open minimal reproduction project
- When you open Scene.tscn, you should get many errors, and you shouldn't be able to see the Spheres.
- Open Sphere.tscn
- Open Scene.tscn and the Spheres should display properly, without errors.
This only affects the Editor, no errors are shown in the actual game.
Minimal reproduction project
ShaderInstanceError.zip
Godot version
4.0.dev.mono (1e71cab)
System information
Arch Linux, AMDGPU, Vulkan Mobile (Project Renderer)
Issue description
When you add shader material to a mesh, you are able to use
instance uniform, so every instance can be with different value.It works fine, until you add more than 1 of that mesh to a scene. Or something like that, I can't debug it exactly.
Now when you reload the editor and open that scene, I get somewhere like 3000 errors per second and you don't see the meshes. You can stop it by going to the original mesh scene and open it. Once opened you no longer get errors, even in the main scene.
This doesn't really affect the game, but it's really annoying since I have to open that scene every time I open my editor, or I get flooded by errors, and Godot crashes.
Error messages follow this pattern:
Steps to reproduce
This only affects the Editor, no errors are shown in the actual game.
Minimal reproduction project
ShaderInstanceError.zip