vkd3d-shader/hlsl: Generate vsir instructions for indexed output streams in geometry shaders.

This commit is contained in:
Shaun Ren
2025-05-26 21:34:06 -04:00
committed by Henri Verbeet
parent 7da7ccaf45
commit d368d18527
Notes: Henri Verbeet 2025-06-02 21:00:38 +02:00
Approved-by: Elizabeth Figura (@zfigura)
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1518
3 changed files with 27 additions and 10 deletions

View File

@@ -541,7 +541,7 @@ gs_data main(point gs_data vin[1], inout TriangleStream<gs_data> vout)
}
% Output streams with nonzero stream indices are only allowed with point streams, and with SM >= 5.
[geometry shader fail(sm<5) todo(sm>=5)]
[geometry shader fail(sm<5)]
struct gs_data
{
float4 pos : SV_POSITION;
@@ -610,7 +610,7 @@ void main(point gs_data vin[1], inout PointStream<gs_data> vout1, inout Triangle
vout1.RestartStrip();
}
[geometry shader fail(sm<5) todo(sm>=5)]
[geometry shader fail(sm<5)]
struct gs_data
{
float4 pos : SV_POSITION;
@@ -623,7 +623,7 @@ void main(point gs_data vin[1], inout PointStream<gs_data> vout1, inout Triangle
}
% A maximum of 4 streams are allowed.
[geometry shader fail(sm<5) todo(sm>=5)]
[geometry shader fail(sm<5)]
struct gs_data
{
float4 pos : SV_POSITION;