regression in !8152
Since 15f478fe from !8152 (merged) landed, we no longer render correctly in Neverball. The ball gets z-sorted incorrectly, clipping into the ground-plane.
Here's a screenshot of what it looks like for me:
This makes the problem go away, but is 100% not the right solution, just a pointer at what the issue might be:
diff --git a/src/gallium/drivers/zink/zink_program.c b/src/gallium/drivers/zink/zink_program.c
index 55a428e56d5..5e8245d7f2d 100644
--- a/src/gallium/drivers/zink/zink_program.c
+++ b/src/gallium/drivers/zink/zink_program.c
@@ -303,7 +303,7 @@ update_shader_modules(struct zink_context *ctx, struct zink_shader *stages[ZINK_
enum pipe_shader_type type = pipe_shader_type_from_mesa(i);
if (dirty[i]) {
struct zink_shader_module *zm;
- dirty[i]->has_geometry_shader = dirty[MESA_SHADER_GEOMETRY] || stages[PIPE_SHADER_GEOMETRY];
+ dirty[i]->has_geometry_shader = true;
dirty[i]->has_tess_shader = dirty[MESA_SHADER_TESS_EVAL] || stages[PIPE_SHADER_TESS_EVAL];
zm = get_shader_module_for_stage(ctx, dirty[i], prog);
zink_shader_module_reference(zink_screen(ctx->base.screen), &prog->modules[type], zm);