mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-04-13 05:43:18 -07:00
vkd3d-shader/glsl: Invert gl_FragCoord w.
This commit is contained in:
parent
4b9c23272a
commit
33cd10581e
Notes:
Henri Verbeet
2025-04-02 19:44:16 +02:00
Approved-by: Henri Verbeet (@hverbeet) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1441
@ -200,6 +200,7 @@ vkd3d_shader_tests = \
|
||||
tests/hlsl/object-parameters.shader_test \
|
||||
tests/hlsl/object-references.shader_test \
|
||||
tests/hlsl/patch-syntax.shader_test \
|
||||
tests/hlsl/pixel-position.shader_test \
|
||||
tests/hlsl/point-sprite.shader_test \
|
||||
tests/hlsl/pointer-cast.shader_test \
|
||||
tests/hlsl/pow.shader_test \
|
||||
|
@ -1296,7 +1296,7 @@ static void shader_glsl_print_sysval_name(struct vkd3d_string_buffer *buffer, st
|
||||
vkd3d_glsl_compiler_error(gen, VKD3D_SHADER_ERROR_GLSL_INTERNAL,
|
||||
"Internal compiler error: Unhandled SV_POSITION index %u.", idx);
|
||||
if (version->type == VKD3D_SHADER_TYPE_PIXEL)
|
||||
vkd3d_string_buffer_printf(buffer, "gl_FragCoord");
|
||||
vkd3d_string_buffer_printf(buffer, "vec4(gl_FragCoord.xyz, 1.0 / gl_FragCoord.w)");
|
||||
else
|
||||
vkd3d_string_buffer_printf(buffer, "gl_Position");
|
||||
break;
|
||||
|
32
tests/hlsl/pixel-position.shader_test
Normal file
32
tests/hlsl/pixel-position.shader_test
Normal file
@ -0,0 +1,32 @@
|
||||
[vb 0]
|
||||
-1.0 -1.0 0.1 1.2
|
||||
-1.0 1.0 0.1 2.0
|
||||
1.0 -1.0 0.7 1.2
|
||||
1.0 1.0 0.7 2.0
|
||||
|
||||
[input layout]
|
||||
0 r32g32b32a32-float POSITION
|
||||
|
||||
[vertex shader]
|
||||
float4 main(float4 pos : POSITION) : sv_position
|
||||
{
|
||||
return pos;
|
||||
}
|
||||
|
||||
[pixel shader fail(sm<4) todo(sm<4)]
|
||||
float4 main(float4 pos : sv_position) : sv_target
|
||||
{
|
||||
return pos;
|
||||
}
|
||||
|
||||
[test]
|
||||
clear rtv 0 0.0 0.0 0.0 0.0
|
||||
todo(msl) draw triangle strip 4
|
||||
probe ( 80, 140) rgba( 0.0, 0.0, 0.0, 0.0)
|
||||
probe ( 80, 420) rgba( 80.5, 420.5, 0.100678146, 1.229981) 192
|
||||
probe (180, 140) rgba(180.5, 140.5, 0.077760354, 1.918082) 192
|
||||
probe (180, 420) rgba(180.5, 420.5, 0.194427669, 1.229981) 192
|
||||
probe (460, 140) rgba(460.5, 140.5, 0.340260297, 1.918082) 192
|
||||
probe (460, 420) rgba(460.5, 420.5, 0.456926346, 1.229981) 192
|
||||
probe (560, 140) rgba( 0.0, 0.0, 0.0, 0.0)
|
||||
probe (560, 420) rgba(560.5, 420.5, 0.550675929, 1.229981) 192
|
Loading…
x
Reference in New Issue
Block a user