Nikolay Sivov
ddb433d552
vkd3d-shader/fx: Explicitly check all known state assignment types for fx_2_0.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-16 16:04:52 +02:00
Nikolay Sivov
590ea03255
vkd3d-shader/fx: Remove the unused fx_4_fxlc_argument type.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-16 16:04:34 +02:00
Nikolay Sivov
1913f5e6f9
vkd3d-shader/fx: Parse array selector expressions for fx_2_0.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-11 20:09:05 +02:00
Nikolay Sivov
90032acbcf
vkd3d-shader/fx: Rename the constant argument helper to be version-neutral.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-11 20:08:59 +02:00
Nikolay Sivov
d403705de9
vkd3d-shader/fx: Add a helper to print literals.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-11 20:07:38 +02:00
Nikolay Sivov
b098af3ef8
vkd3d-shader/fx: Use more generic names for the literal constant array.
...
It's going to be reused for 64-bit floats too.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-11 20:07:25 +02:00
Nikolay Sivov
f525399545
vkd3d-shader/fx: Read instruction arguments in full before printing them.
...
The binary format stores destination argument after sources. Each
argument takes either 3 tokens or 5 tokens, when indexed. For simplicity
read them all first, and print destination first.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-11 20:04:27 +02:00
Nikolay Sivov
d6a4084321
vkd3d-shader/fx: Use a version-neutral name for the opcode table.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-11 18:25:42 +02:00
Nikolay Sivov
47b9316a86
vkd3d-shader/fx: Give fxlvm-specific constants a version-neutral name.
...
Those are reusable for fx_2_0 preshaders.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-11 18:21:30 +02:00
Nikolay Sivov
fcb5650dbf
vkd3d-shader/fx: Use a separate table for sampler states in fx_2_0.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-10 17:39:30 +02:00
Nikolay Sivov
b22ebe73bc
vkd3d-shader/fx: Do not print padding bytes of fx_2_0 strings.
2025-06-10 17:39:18 +02:00
Nikolay Sivov
8aacee8eae
vkd3d-shader/fx: Add a few missing fxlc opcode names.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-10 17:34:41 +02:00
Nikolay Sivov
b6ef417e71
vkd3d-shader/fx: Handle bool types when parsing fx_2_0 assignment values.
2025-06-02 20:51:38 +02:00
Nikolay Sivov
c895f63a1c
vkd3d-shader/fx: Fix a crash in fx -> d3d-asm when named values are not defined.
2025-06-02 20:51:38 +02:00
Nikolay Sivov
108f4fe47e
vkd3d-shader/fx: Fix reading the assignment value base type when parsing fx_2_0.
2025-06-02 20:51:33 +02:00
Nikolay Sivov
4e2fefdfdf
vkd3d-shader/fx: Use correct array sizes for the fx_2_0 states.
2025-06-02 20:43:44 +02:00
Nikolay Sivov
4ef4baa6bf
vkd3d-shader/fx: Fix some typos in fx_2_0 state names.
2025-06-02 20:43:44 +02:00
Nikolay Sivov
68386f5180
vkd3d-shader/fx: Print packoffset() modifiers in fx -> d3d-asm output.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-02 20:43:44 +02:00
Nikolay Sivov
6b2800fa99
vkd3d-shader/fx: Print explicit buffer bind points in fx -> d3d-asm output.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-02 20:43:27 +02:00
Nikolay Sivov
e33189546a
vkd3d-shader/fx: Use variable unpacked size when setting buffer sizes.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-02 20:41:37 +02:00
Nikolay Sivov
87ec2d9897
vkd3d-shader/fx: Fix writing fx_2_0 structure parameters.
...
Currently structure type descriptions get interleaved with variable
length string data. The solution is to write all fixed length fields
first, then append strings.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-05-27 20:24:24 +02:00
Nikolay Sivov
c4c7f10d99
vkd3d-shader/fx: Fix the total buffer size calculation in write_fx_4_buffer().
...
The total size should take variable alignment/padding into account.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-05-24 21:32:22 +02:00
Nikolay Sivov
2e40154801
vkd3d-shader/fx: Use the correct field indices when writing structure default values.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-05-24 21:27:01 +02:00
Nikolay Sivov
a06ecb6867
vkd3d-shader/fx: Use the correct value range for bool initializers.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-05-24 21:24:59 +02:00
Nikolay Sivov
11d4fcff46
vkd3d-shader/fx: Handle nameless structure types.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-05-24 21:19:42 +02:00