More trouble in polder town!
Within POLDERS, I've disabled the depth buffer for some time now. After the 0.12 -> 0.16 migration, I haven't been able to get it to work again. I'm unsure if there is a particular custom shader which leads to trouble, or some other setting complicating matters.
After enabling the depth prepass in the camera, I get a:
wgpu error: Validation Error
Caused by:
In RenderPass::end
In a draw command, kind: Draw
The BindGroupLayout with 'mesh_view_layout_multisampled_depth' label of current set BindGroup with 'mesh_view_bind_group' label at index 0 is not compatible with the corresponding BindGroupLayout with 'mesh_view_layout' label of RenderPipeline with 'opaque_mesh_pipeline' label
Assigned entry with binding 28 not found in expected bind group layout
Some AI told me the following, but not sure if that is actually true
// NOTE: Bevy 0.16 has a compatibility issue where MSAA + DepthPrepass causes
// bind group layout mismatches (mesh_view_layout_multisampled_depth vs mesh_view_layout).
// When depth prepass is enabled with MSAA, Bevy creates view bind groups with the
// multisampled_depth layout, but main pass pipelines expect the regular layout.
// Disable MSAA when depth prepass is enabled to work around this.
// FXAA is enabled below as an alternative anti-aliasing method.
#[cfg(feature = "depth_prepass")
Afterwards I get this:
Caused by:
In Device::create_render_pipeline, label = 'prepass_pipeline'
Error matching ShaderStages(VERTEX) shader requirements against the pipeline
Location[1] Float32x2 interpolated as Some(Perspective) with sampling Some(Center) is not provided by the previous stage outputs
Input type is not compatible with the provided Float32
Anyone who worked on the prepass pipeline knows what this could be about? I want my water foamlines back π