Commit graph

1770 commits

Author SHA1 Message Date
Matteo Bruni
3149d84502 d3dx9/tests: Use test contexts in test_effect_commitchanges().
And do some mandatory cleanup while at it.
2023-07-04 20:46:07 +02:00
Matteo Bruni
4acb858fc6 d3dx9/tests: Use test contexts in test_effect_preshader_ops(). 2023-07-04 20:46:06 +02:00
Matteo Bruni
e39e904392 d3dx9/tests: Get rid of unnecessary checks in test_effect_states(). 2023-07-04 20:46:06 +02:00
Matteo Bruni
f529c5db4d d3dx9/tests: Use test contexts in test_effect_parameter_value().
And give a good clean up to the test and all its helpers.
2023-07-04 20:46:05 +02:00
Matteo Bruni
321efd4441 d3dx9/tests: Use test contexts in test_D3DXCreateRenderToEnvMap(). 2023-07-04 20:46:05 +02:00
Matteo Bruni
f504db74a9 d3dx9/tests: Get rid of unnecessary checks in test_D3DXCreateRenderToEnvMap(). 2023-07-04 20:46:05 +02:00
Matteo Bruni
06eede965a d3dx9/tests: Use test message contexts in test_ID3DXFont(). 2023-07-04 20:46:05 +02:00
Matteo Bruni
64d9bc872b d3dx9/tests: Get rid of unnecessary checks. 2023-07-04 20:46:05 +02:00
Eric Pouech
8031d00fed d3dx9/tests: Clean up some ok() messages. 2023-07-04 20:46:05 +02:00
Matteo Bruni
a3ad4a5066 d3dx9/tests: Increase tolerance for a D3DXSHMultiply3 test.
Otherwise it fails for me on 32-bit Linux with my current compiler.
2023-07-04 20:46:03 +02:00
Paul Gofman
0b9620266f d3dx9: Fix dst pitch for compressed format in D3DXLoadSurfaceFromMemory().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54901
2023-05-02 22:21:30 +02:00
Stefan Dösinger
6d41756ce1 d3dx9: Load D3DAssemble via GetProcAddress.
This allows linking our d3dx9.dll to Microsoft's d3dcompiler.lib implib.
2023-04-27 20:22:45 +02:00
Stefan Dösinger
9e99c6f66d d3dx9/tests: Use __VA_ARGS__ instead of GCCs named variadics. 2023-04-18 21:33:17 +02:00
Stefan Dösinger
54890fe3c4 d3dx9: Use __VA_ARGS__ instead of GCCs named variadics.
MSVC doesn't support "name...".
2023-04-18 21:33:17 +02:00
Nikolay Sivov
94da4fc44e d3dx9: Partially implement D3DXFillCubeTextureTX().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-01-27 13:39:48 +01:00
Nikolay Sivov
1908d0b385 d3dx9: Fix ARGB texture fills with negative component values.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-01-27 13:39:48 +01:00
Nikolay Sivov
809618e4cd d3dx9/tests: Add a helper to compare filled cube textures.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-01-27 13:39:48 +01:00
Nikolay Sivov
86bc7dd10a d3dx9: Partially implement D3DXFillTextureTX().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-01-27 13:39:48 +01:00
Nikolay Sivov
bd2a787df0 d3dx9: Create parameter evaluator for texture shaders.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-01-27 13:39:47 +01:00
Nikolay Sivov
a0ed743461 d3dx9/preshader: Set input table size for texture shaders.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-01-27 13:39:45 +01:00
Eric Pouech
c868941478 d3dx9/tests: Avoid a GCC warning (-Wsizeof-array-div).
Follow GCC recommendations for getting rid of it.

MingW/GCC (11.3, 12.x) complains with:
/home/eric/work/wine/dlls/d3dx9_36/tests/effect.c: In function 'test_effect_parameter_value':
/home/eric/work/wine/dlls/d3dx9_36/tests/effect.c:1838:71: warning: expression does not compute the number of elements in this array; element type is 'DWORD' {aka 'long unsigned int'}, not 'D3DXMATRIX' {aka 'struct _D3DMATRIX'} [-Wsizeof-array-div]
 1838 |             const D3DXMATRIX *matrix_pointer_array[sizeof(input_value)/sizeof(D3DXMATRIX)];
      |                                                                       ^
/home/eric/work/wine/dlls/d3dx9_36/tests/effect.c:1838:71: note: add parentheses around the second 'sizeof' to silence this warning
/home/eric/work/wine/dlls/d3dx9_36/tests/effect.c:1835:19: note: array 'input_value' declared here
 1835 |             DWORD input_value[EFFECT_PARAMETER_VALUE_ARRAY_SIZE];
      |                   ^~~~~~~~~~~

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-12-12 23:12:42 +01:00
Eric Pouech
4eaadda479 d3dx9_36/tests: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-12-09 17:52:24 +01:00
Nikolay Sivov
95bbaa6210 d3dx9/effect: Split parameters data from effect object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-12-01 20:36:05 +01:00
Nikolay Sivov
26e1293db6 d3dx9/preshader: Handle input register table. 2022-12-01 20:36:05 +01:00
Eric Pouech
c85141bcae d3dx9_36/tests: Use correct integral type.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-11-16 21:24:19 +01:00
Eric Pouech
8c7ffd677e d3dx9_36/tests: Introduce union to help passing float values in DWORD.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-11-16 21:24:19 +01:00
Alex Henrie
0587b71773 d3dx9/tests: Use standard C functions for memory allocation in mesh.c. 2022-11-16 14:22:28 +01:00
Nikolay Sivov
f63f0d3b2b d3dx9: Add missing path conversion call in D3DXLoadVolumeFromFileA(). 2022-11-15 21:21:27 +01:00
Matteo Bruni
24a4b8caf1 d3dx9: Build without -DWINE_NO_LONG_TYPES.
Based on a patch by Eric Pouech.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-20 16:51:02 +02:00
Matteo Bruni
29a84c9c33 d3dx9/xfile: Don't unnecessarily use long integer type.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-20 16:51:00 +02:00
Matteo Bruni
90b0ef658c d3dx9/shader: Use more proper integer types.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-17 11:43:37 +02:00
Matteo Bruni
b6b6561aa3 d3dx9/mesh: Split skin header and weights parse functions.
They don't really share any code in common.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-17 11:43:34 +02:00
Matteo Bruni
8537db0239 d3dx9/mesh: Make use of more proper types.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-17 11:43:32 +02:00
Matteo Bruni
0c7090a1da d3dx9/tests: Test D3DXAssembleShader() with both terminated and not terminated include data.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-17 11:43:26 +02:00
Eric Pouech
fc67b16803 d3dx9: Use correct integral type.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-27 11:55:27 +02:00
Matteo Bruni
71091ed5d9 d3dx9/effect: Return a uint32_t from the bytecode read helper.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-27 11:55:20 +02:00
Eric Pouech
5fe1c2db00 d3dx9/effect: Return the read value from read_dword().
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-27 11:55:10 +02:00
Matteo Bruni
9cb65cb025 d3dx9/tests: Increase tolerance in a quaternion test.
It currently fails for me on 32-bit Linux.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-28 22:21:47 +02:00
Matteo Bruni
9400874e3c d3dcompiler: Always use vkd3d-shader's preprocessor.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-28 22:21:47 +02:00
Matteo Bruni
8956862e0a d3dx9/tests: Fix tests broken by using the HLSL compiler from vkd3d-shader.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52721
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-28 22:21:47 +02:00
Matteo Bruni
67f6073b9e d3dx9: Handle D3DXCONSTTABLE_LARGEADDRESSAWARE flag.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-18 22:10:47 +01:00
Matteo Bruni
514bac00cc d3dx9: Build with nameless unions.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-18 22:10:47 +01:00
Matteo Bruni
6cf61d4239 d3dx9/tests: Get rid of unnecessary ifs.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-18 22:10:47 +01:00
Matteo Bruni
e1463532be d3dx9/tests: Initialize an input variable.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-18 22:10:47 +01:00
Matteo Bruni
dbfd33e501 d3dx9/tests: Fix initialization of texture levels > 0 in test_D3DXSHProjectCubeMap().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52561
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-18 22:10:47 +01:00
Zebediah Figura
cfb1d2058f d3dx9: Implement ID3DXEffect::CloneEffect().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=44635
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-14 21:47:00 +01:00
Zebediah Figura
aff66846dd d3dx9/tests: Add more tests for ID3DXEffect::CloneEffect().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-14 21:46:52 +01:00
Zebediah Figura
f170677724 d3dx9: Separate out d3dx9_effect_init_from_dxbc().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-14 21:46:49 +01:00
Zebediah Figura
8c40c413b9 d3dx9: Do not use d3dx_effect_cleanup() in D3DXCreateEffectEx().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-14 21:46:46 +01:00
Zebediah Figura
ffc4d9b84c d3dx9/tests: Test setting annotation values.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 18:37:33 +01:00