vkd3d/tests/hlsl/technique-fx_2.shader_test
Nikolay Sivov dbcc4c4e40 vkd3d-shader/hlsl: Parse empty technique declarations.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-11-02 18:23:07 +01:00

142 lines
1.5 KiB
Plaintext

[require]
shader model < 3.0
[pixel shader fail]
float4 main() : sv_target
{
float4 teChnique = {0, 0, 0, 0};
return teChnique;
}
[pixel shader fail]
float4 main() : sv_target
{
float4 technique10 = {0, 0, 0, 0};
return technique10;
}
[pixel shader fail]
float4 main() : sv_target
{
float4 technique11 = {0, 0, 0, 0};
return technique11;
}
[pixel shader fail]
typedef float4 technique10;
float4 main() : sv_target
{
return float4(0, 0, 0, 0);
}
[pixel shader fail]
typedef float4 Technique;
float4 main() : sv_target
{
return float4(0, 0, 0, 0);
}
[pixel shader]
typedef float4 Technique10;
typedef float4 Technique11;
float4 main() : sv_target
{
return float4(0, 0, 0, 0);
}
[pixel shader]
float4 main() : sv_target
{
float4 teChnique10 = {0, 0, 0, 0};
float4 teChnique11 = {0, 0, 0, 0};
return teChnique10 + teChnique11;
}
[pixel shader]
float4 main() : sv_target
{
float4 teChnique11 = {0, 0, 0, 0};
return teChnique11;
}
[effect todo]
technique
{
}
technique10
{
}
% Effects without techniques are not allowed for fx_2_0
[effect fail]
float4 f;
% fx_5_0 keyword fails with fx_2_0 profile
[effect fail todo]
technique
{
}
technique11
{
}
[effect fail todo]
technique
{
}
tEchnique10
{
}
[effect fail todo]
technique
{
}
tEchnique11
{
}
% Regular shaders with technique blocks
[vertex shader todo]
float4 main() : sv_position
{
return 0;
}
technique
{
}
technique10
{
}
technique11
{
}
[pixel shader todo]
float4 main() : sv_target
{
return 0;
}
tEchnique
{
}
technique10
{
}
technique11
{
}