Shaun Ren
d8ea8894ab
vkd3d-shader/hlsl: Support SM1 non-floating point CMP expressions.
2025-09-04 13:58:57 +02:00
Shaun Ren
df5ccd3ff0
tests/hlsl: Test ternary operations with integral vector operands.
2025-09-04 13:57:48 +02:00
Victor Chiletto
f9f37e2973
tests/hlsl: Add a reflection test for SRV structured buffers.
2025-09-04 13:49:14 +02:00
Victor Chiletto
8698874628
vkd3d-shader/hlsl: Emit vsir structured loads.
2025-09-04 13:39:03 +02:00
Shaun Ren
1083b31dfd
vkd3d-shader/hlsl: Implement texCUBEbias().
2025-09-03 12:01:34 +02:00
Shaun Ren
b9545f7422
tests/hlsl: Add sample bias tests for cube textures.
2025-09-03 12:01:18 +02:00
Shaun Ren
d037b45718
tests/shader_runner: Allocate the d3d11/d3d12 resource_data arrays dynamically.
2025-09-03 11:58:42 +02:00
Shaun Ren
40789b32e7
tests/shader_runner: Correct the d3d11/d3d12 subresource indexing calculations.
...
See D3D11CalcSubresource()/D3D12CalcSubresource() for reference.
2025-09-03 11:57:53 +02:00
Shaun Ren
f6cebdb26d
tests/shader_runner: Correct the minification filter and mipmap mode calculations.
2025-09-03 11:55:36 +02:00
Henri Verbeet
b9b9920593
vkd3d-shader/glsl: Implement support for VKD3DSPR_SAMPLEMASK registers.
2025-09-01 15:15:32 +02:00
Henri Verbeet
05b58c9963
vkd3d-shader/glsl: Handle SV_INSTANCE_ID inputs.
2025-09-01 15:15:32 +02:00
Henri Verbeet
9b375b3dae
vkd3d-shader/glsl: Implement VSIR_OP_UREM.
2025-09-01 15:15:32 +02:00
Henri Verbeet
d30c992039
vkd3d-shader/glsl: Implement VSIR_OP_UDIV_SIMPLE.
2025-08-28 20:06:32 +02:00
Henri Verbeet
86656b7544
vkd3d-shader/glsl: Implement VSIR_OP_SIN.
2025-08-28 20:06:32 +02:00
Henri Verbeet
ed438c1350
vkd3d-shader/glsl: Implement VSIR_OP_COS.
2025-08-28 20:06:32 +02:00
Henri Verbeet
9609903770
vkd3d-shader/glsl: Implement VSIR_OP_DSX and VSIR_OP_DSY.
2025-08-28 20:06:32 +02:00
Henri Verbeet
4c91f4aa9e
vkd3d-shader/glsl: Implement support for static texel offsets in shader_glsl_ld().
2025-08-28 20:06:32 +02:00
Henri Verbeet
a1edfc4008
vkd3d-shader/msl: Implement compute shaders.
2025-08-28 20:05:53 +02:00
Henri Verbeet
305c2c0db4
tests/shader_runner_metal: Implement compute shader dispatch.
2025-08-28 20:05:53 +02:00
Henri Verbeet
e3001fcaa4
vkd3d-common: Introduce VKD3D_SHADER_API_VERSION_CURRENT.
2025-08-28 20:04:02 +02:00
Henri Verbeet
5bbd44c063
vkd3d-shader: Implement scanning compute shader thread group size information.
...
Metal doesn't allow the thread group size to be specified by shaders,
instead requiring it to be specified by the dispatch API.
2025-08-21 16:02:44 +02:00
Shaun Ren
320c3c9652
vkd3d-shader/hlsl: Fold some general conditional identities.
...
The following conditional identities are applied:
c ? x : x -> x
false ? x : y -> y; true ? x : y -> x
c ? true : false -> c; c ? false : true -> !c
!c ? x : y -> c ? y : x
Lastly, for expression chains x, y in a conditional expression
c ? x : y,
we evaluate all conditionals in the expression chains with the
condition c, assuming c is true (for x), or false (for y).
2025-08-21 16:00:51 +02:00
Shaun Ren
245430002a
vkd3d-shader/hlsl: Fold some general unary identities.
...
The following unary identities are applied:
||x|| -> |x|
|-x| -> |x|
~(~x) -> x
f(g(x)) -> g(x), where f(), g() are floor() or ceil() functions.
-(-x) -> x
!!x -> x
!(x == y) -> x != y, !(x < y) -> x >= y, etc (for integers).
2025-08-21 16:00:46 +02:00
Petrichor Park
d964d55b4a
vkd3d-shader/hlsl: Implement the frexp() intrinsic.
2025-08-21 15:29:27 +02:00
Petrichor Park
ea6104cf5e
tests/hlsl: Add some tests for the frexp() intrinsic.
2025-08-21 15:29:27 +02:00