Fix: GPU: Remove selectable variants for invalid overlay edit shaders

The Intel Windows driver generates an error when linking a vertex shader
and fragment shader where the vertex shader does not write to an output
used as an active input in the fragment shader.

This PR fixes failing "gpu" tests by removing the selectable shader
variants for overlay_edit_pointcloud, overlay_edit_lattice_wire and
overlay_edit_lattice_point.

Pull Request: https://projects.blender.org/blender/blender/pulls/147650
This commit is contained in:
Christoph Neuhauser
2025-10-09 09:18:25 +02:00
committed by Clément Foucault
parent fb035bfef6
commit ab01f7254b

View File

@@ -636,7 +636,7 @@ OVERLAY_INFO_CLIP_VARIATION(overlay_edit_curves_point)
/** \name Edit Lattice
* \{ */
GPU_SHADER_CREATE_INFO(overlay_edit_lattice_point_base)
GPU_SHADER_CREATE_INFO(overlay_edit_lattice_point)
VERTEX_IN(0, float3, pos)
VERTEX_IN(1, uint, data)
VERTEX_OUT(overlay_edit_flat_color_iface)
@@ -647,11 +647,12 @@ VERTEX_SOURCE("overlay_edit_lattice_point_vert.glsl")
FRAGMENT_SOURCE("overlay_point_varying_color_frag.glsl")
ADDITIONAL_INFO(draw_view)
ADDITIONAL_INFO(draw_globals)
ADDITIONAL_INFO(draw_modelmat)
GPU_SHADER_CREATE_END()
OVERLAY_INFO_VARIATIONS_MODELMAT(overlay_edit_lattice_point, overlay_edit_lattice_point_base)
OVERLAY_INFO_CLIP_VARIATION(overlay_edit_lattice_point)
GPU_SHADER_CREATE_INFO(overlay_edit_lattice_wire_base)
GPU_SHADER_CREATE_INFO(overlay_edit_lattice_wire)
VERTEX_IN(0, float3, pos)
VERTEX_IN(1, float, weight)
SAMPLER(0, sampler1D, weight_tx)
@@ -663,9 +664,10 @@ VERTEX_SOURCE("overlay_edit_lattice_wire_vert.glsl")
FRAGMENT_SOURCE("overlay_varying_color.glsl")
ADDITIONAL_INFO(draw_view)
ADDITIONAL_INFO(draw_globals)
ADDITIONAL_INFO(draw_modelmat)
GPU_SHADER_CREATE_END()
OVERLAY_INFO_VARIATIONS_MODELMAT(overlay_edit_lattice_wire, overlay_edit_lattice_wire_base)
OVERLAY_INFO_CLIP_VARIATION(overlay_edit_lattice_wire)
/** \} */
@@ -725,7 +727,7 @@ OVERLAY_INFO_CLIP_VARIATION(overlay_edit_particle_point)
/** \name Edit PointCloud
* \{ */
GPU_SHADER_CREATE_INFO(overlay_edit_pointcloud_base)
GPU_SHADER_CREATE_INFO(overlay_edit_pointcloud)
VERTEX_IN(0, float4, pos_rad)
VERTEX_OUT(overlay_edit_flat_color_iface)
DEFINE("LINE_OUTPUT")
@@ -735,9 +737,10 @@ VERTEX_SOURCE("overlay_edit_pointcloud_vert.glsl")
FRAGMENT_SOURCE("overlay_point_varying_color_frag.glsl")
ADDITIONAL_INFO(draw_view)
ADDITIONAL_INFO(draw_globals)
ADDITIONAL_INFO(draw_modelmat)
GPU_SHADER_CREATE_END()
OVERLAY_INFO_VARIATIONS_MODELMAT(overlay_edit_pointcloud, overlay_edit_pointcloud_base)
OVERLAY_INFO_CLIP_VARIATION(overlay_edit_pointcloud)
/** \} */