Matteo Bruni
01e278a309
d3dx9: Fix FindNextValidTechnique() when no previous technique is specified.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-28 23:05:04 +02:00
Matteo Bruni
afef57f872
d3dx9: Disentangle ID3DXEffectCompiler implementation from struct d3dx9_base_effect.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-22 22:06:00 +01:00
Matteo Bruni
74a02a850c
d3dx9/tests: Add a test for FindNextValidTechnique().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-22 22:05:58 +01:00
Matteo Bruni
c3342644e4
d3dx9: Implement FindNextValidTechnique().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-22 22:05:56 +01:00
Matteo Bruni
ed746aeed4
d3dx9/tests: Add a test for D3DXCreateEffectFromFileExW().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-22 22:05:54 +01:00
Matteo Bruni
f5b888a708
d3dx9: Fix handling of includes in D3DXCreateEffectFromFileExW().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-22 22:05:52 +01:00
Matteo Bruni
f57d316cd3
d3dx9/tests: Add a test for texture refcounts and OnLostDevice().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:14:13 +01:00
Matteo Bruni
1bba7c5705
d3dx9: Implement ID3DXEffect::OnLostDevice().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:14:11 +01:00
Matteo Bruni
633ad47b29
d3dx9: Add a comment about a specific preshader parsing failure mode.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:14:10 +01:00
Matteo Bruni
50453644f6
d3dx9/tests: Improve a few ok() messages.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:14:08 +01:00
Matteo Bruni
f335932a81
d3dx9: Introduce a parameter rbtree to speed up get_parameter_by_name().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:14:06 +01:00
Sebastian Lackner
1c8c9308e7
d3dx9: Adjust ID3DXEffect interface based on DLL version.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-14 22:39:13 +01:00
Matteo Bruni
912a1009c9
d3dx9/tests: Cleanup test_createtext() a bit.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-14 22:38:53 +01:00
Matteo Bruni
6dc78d5c27
d3dx9: Cleanup D3DXVec3Unproject() implementation a bit.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-14 22:38:50 +01:00
Matteo Bruni
972dc565ed
d3dx9: Skip AddRef + Release if SetValue is called with the old texture.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-14 22:38:46 +01:00
David Adam
32ffef3333
d3dx9: Improve vertices computation in D3DXCreatePolygon().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-14 22:38:43 +01:00
Matteo Bruni
ae519aff95
d3dx9/tests: Add a few missing surface Release() calls.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 20:58:09 +01:00
Matteo Bruni
9682095a3b
d3dx9/tests: Fix checking for D3DUSAGE_AUTOGENMIPMAP support.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 20:58:09 +01:00
Matteo Bruni
e8bef37c57
d3dx9/tests: Disable a test crashing on Win10.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 20:58:09 +01:00
Zebediah Figura
7dbcbed704
d3dx9: Add stub for D3DXComputeNormalMap.
...
Based on a patch by Christian Costa.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 20:58:08 +01:00
Nikolay Sivov
c3f92419e8
d3dx9: Improve argument validation in CloneEffect().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-05 06:58:45 -06:00
Michael Stefaniuc
f46c96332b
d3dx9: Use the available ARRAY_SIZE() macro.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-21 15:31:29 +01:00
Alex Henrie
00a352a376
d3dx9: Correctly round constants in D3DXSHMultiply3 implementation.
...
The correct constants are given to approximately 64-bit precision in
"Code Generation and Factoring for Fast Evaluation of Low-order
Spherical Harmonic Products and Squares" (2006) by John Snyder.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-13 20:23:26 +01:00
Alistair Leslie-Hughes
5db63eb3ca
d3dx9: Stub D3DXCreateKeyframedAnimationSet().
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-31 09:58:20 +01:00
Alex Henrie
07f7022fcc
d3dx9/tests: Use true spherical light values and relax expectations.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-03 23:26:36 +01:00
Michael Stefaniuc
c5dfe1b139
d3dx9/tests: Use the available ARRAY_SIZE() macro.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-29 19:58:18 +01:00
Matteo Bruni
72f3227d71
d3dx9/tests: Add a test for D3DXGetShader{Input|Output}Semantics().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 10:16:58 +01:00
Matteo Bruni
50734ad54f
d3dx9: Implement D3DXGetShader{Input|Output}Semantics().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 10:16:58 +01:00
Matteo Bruni
3a5688a795
d3dx9: Use the D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY flag when compiling ASCII effects.
...
Some manual testing shows that the behavior changed with d3dx9_37.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 10:16:57 +01:00
Matteo Bruni
6697de156e
d3dx9: Merge "main" source files.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 10:16:57 +01:00
Józef Kucia
5831e884f5
d3dx9: Avoid passing FALSE as D3DRS_CLIPPLANEENABLE bitmask.
...
D3DRS_CLIPPLANEENABLE is mask, not a boolean value.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-04 11:52:15 +01:00
Alex Henrie
eaf9a28741
d3dx9/tests: Use a helper function to set matrix values in math tests.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-10 23:55:16 +01:00
Paul Gofman
dc96079784
d3dx9: Zero constantinfo_reserved on error in get_constants_desc().
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-10 23:54:49 +01:00
Alex Henrie
f6fdcc848d
d3dx9/tests: Relax D3DXQuaternionToAxisAngle test stringency a bit.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-10 23:54:42 +01:00
Alex Henrie
79b6035441
d3dx9/tests: Provide 8 significant digits in matrix reference values.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-09 23:35:38 +01:00
Alex Henrie
4aef54759c
d3dx9/tests: Correct Fresnel reference term.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 21:13:19 +01:00
Nikolay Sivov
6bae0a003e
d3dx9: Implement D3DXFrameFind().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 20:38:07 +01:00
Paul Gofman
0778f1c294
d3dx9: Fix zero object_id handling in d3dx9_base_effect_get_pass_desc().
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-08 07:56:19 +02:00
Paul Gofman
07cc9acc9f
d3dx9: Return E_FAIL from ValidateTechnique() for techniques with unsupported shaders.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-08 07:56:15 +02:00
Paul Gofman
120a83dc03
d3dx9/tests: Add test for null shaders in effect.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-08 07:56:13 +02:00
Paul Gofman
6c7c511a27
d3dx9: Do not fail effect creation if a shader cannot be created.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-01 07:34:15 +02:00
Paul Gofman
c3677ecfc8
d3dx9/tests: Add test for effect with unsupported shader.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-01 07:34:13 +02:00
Paul Gofman
e06b7693d6
d3dx9: Use bitmask instead of BOOL array for light_updated.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-31 20:15:32 +02:00
Paul Gofman
c48658dbb8
d3dx9: Dump bytecode if parameter evaluator creation failed.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-31 20:15:32 +02:00
Paul Gofman
14fab72269
d3dx9: Do not support preshader instructions which output multiple registers.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-31 20:15:32 +02:00
Paul Gofman
72b9265680
d3dx9: Get rid of constants modification bitmasks.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-30 08:17:39 +02:00
Paul Gofman
c579a81a63
d3dx9: Factor out set_constants_device() function.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-29 15:51:28 +02:00
Paul Gofman
d6f36ca18f
d3dx9: Avoid an extra indirection in is_const_tab_input_dirty().
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-04 09:28:41 +02:00
Paul Gofman
847f772fe1
d3dx9: Use distinct structure for top level parameters.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-04 09:28:37 +02:00
Paul Gofman
3a10679b7a
d3dx9: Move referenced_param definition from d3dx_parameter to d3dx_state.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-04 09:28:32 +02:00