layers: Validate Clip/Cull array size - #13002
Conversation
|
CI Vulkan-ValidationLayers build queued with queue ID 105783. |
| } | ||
|
|
||
| // ClipDistance/CullDistance can show up as both a top-level array variable and a member of a Block-decorated struct | ||
| // Geo/Tess might be wrapped in an extra array (ex. gl_in[] / gl_out[]) which is already stripped out |
There was a problem hiding this comment.
decided if CTS passes with validation, that is all I care about for Geo/Tess at this point
|
CI Vulkan-ValidationLayers build # 24349 running. |
149a819 to
a6afa0d
Compare
|
CI Vulkan-ValidationLayers build queued with queue ID 106004. |
|
CI Vulkan-ValidationLayers build # 24350 running. |
|
CI Vulkan-ValidationLayers build # 24350 failed. |
a6afa0d to
b07571f
Compare
|
CI Vulkan-ValidationLayers build queued with queue ID 106736. |
|
CI Vulkan-ValidationLayers build # 24353 running. |
|
CI Vulkan-ValidationLayers build # 24353 passed. |
| const uint32_t array_size = max_clip_distances + 1; | ||
|
|
||
| // layout(location = 0) out vec4 uFragColor; | ||
| // in float gl_ClipDistance[]; // array_size elements |
There was a problem hiding this comment.
I remember used gl_ClipDistance to render quake 3 maps, good memories. It was long time ago, but it's better later than never, thanks for the fix!
|
currently waiting on https://gitlab.khronos.org/vulkan/vulkan/-/work_items/4965 - seems might need to adjust this logic with the WG results |
closes #6801
6 years ago I tried #1950 and knew nothing, now I am WAY to deep into the SPIR-V code... this check still sucks, but having all the tools/helpers in place to do still feels like a "win" to me... time to call it a week 🙃