vkd3d-shader/hlsl: Generate vsir registers from patch variable derefs.

This commit is contained in:
Shaun Ren
2025-01-29 19:10:59 -05:00
committed by Henri Verbeet
parent 3fb241d4d6
commit ec6b4ed4ff
Notes: Henri Verbeet 2025-02-03 16:40:17 +01:00
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Elizabeth Figura (@zfigura)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1362
5 changed files with 69 additions and 140 deletions

View File

@ -122,7 +122,7 @@ float4 main(InputPatch<data, 2> patch) : SV_TARGET
return 0;
}
[hull shader todo]
[hull shader]
struct data
{
float4 val : VAL;
@ -148,7 +148,7 @@ float4 main(InputPatch<data, 2> patch) : POSITION
return 0;
}
[hull shader todo]
[hull shader]
struct data
{
float4 val : VAL;
@ -242,7 +242,7 @@ float4 main(OutputPatch<data, 2> patch) : POSITION
return patch[0].val;
}
[hull shader todo]
[hull shader]
struct data
{
float4 val : VAL;
@ -273,7 +273,7 @@ out_data main()
return (out_data)0;
}
[domain shader todo]
[domain shader]
struct data
{
float4 val : VAL;
@ -304,7 +304,7 @@ void main(OutputPatch<data, 2> patch, inout PointStream<data> vout)
% Patch parameters can't have more than 32 control points.
[hull shader todo]
[hull shader]
struct data
{
float4 val : VAL;
@ -356,7 +356,7 @@ float4 main(InputPatch<data, 33> patch) : POSITION
return 0;
}
[domain shader todo]
[domain shader]
struct data
{
float4 val : VAL;
@ -446,7 +446,7 @@ float4 main(OutputPatch<data, 2> patch, patch_constant_data input, OutputPatch<d
% InputPatch types must match between the main function and the patch constant function of a hull shader.
[hull shader fail todo]
[hull shader fail]
struct data
{
float4 val : VAL;
@ -477,7 +477,7 @@ float4 main(InputPatch<data, 2> patch) : POSITION
return 0;
}
[hull shader fail todo]
[hull shader fail]
struct data
{
float4 val : VAL;