KhronosGroup / glslang

Khronos-reference front end for GLSL/ESSL, partial front end for HLSL, and a SPIR-V generator.
Other
2.9k stars 816 forks source link

Keep vec1.x l-value in HLSL #3577

Closed Svenny closed 2 months ago

Svenny commented 2 months ago

Allows assignments like float1 v1; v1.x = ... to compile.

I couldn't simply do the same with mutliple selectors (EOpVectorSwizzle) - this fails assert in SpvBuilder trying to emit aggregate access into float type.

Changes in hlsl.shapeConv.frag are just renumbering, duplicated load (80) has disappeared for whatever reason.