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
Paul Gofman
f09bf52d5d
d3dx9: Return NULL for child parameter's annotation in get_parameter_by_name().
...
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:29 +02:00
Paul Gofman
ec199c9e0e
d3dx9: Remove case for annotation in get_parameter_element_by_name().
...
Elements or struct members can't have annotations.
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:25 +02:00
Matteo Bruni
88abcf3a1d
d3dx9: Get rid of a forward declaration.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:34 +02:00
Paul Gofman
315e87e172
d3dx9: Fix potential memory leak on HeapReAlloc() failure 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-07-18 20:43:34 +02:00
Paul Gofman
d8723657d2
d3dx9/tests: Add more tests for skip_constants effect parameter.
...
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-07-18 20:43:34 +02:00
Paul Gofman
4b11a99108
d3dx9: Support skip_constants parameter for 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-07-18 20:43:34 +02:00
Paul Gofman
6498a03a8e
d3dx9: Introduce d3dx_shader_get_ctab_constant() function and use it instead of ID3DXConstantTableImpl_GetConstantDesc().
...
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-07-18 20:43:34 +02:00
Paul Gofman
518b2f27cf
d3dx9: Fail effect creation when parameter evaluator creation fails.
...
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-07-18 20:43:34 +02:00
Paul Gofman
35f82ba444
d3dx9: Get rid of init_set_constants() 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-07-10 22:41:04 +02:00
Paul Gofman
9fc4e4a1a9
d3dx9: Simplify init and cleanup 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-07-10 22:41:01 +02:00
Paul Gofman
57de7e9919
d3dx9: Factor out is_parameter_used() 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-07-10 22:40:58 +02:00
Paul Gofman
ec7e766635
d3dx9/tests: Add test for skip_constants effect parameter.
...
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-07-10 22:40:55 +02:00
Michael Stefaniuc
041a0ff1c0
d3dx9/tests: Use string concatenation for a multiline string.
...
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-07-10 22:40:39 +02:00
Paul Gofman
4e2c044412
d3dx9/tests: Add tests for array of samplers.
...
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-07-05 20:26:29 +02:00
Paul Gofman
8f9bbdf9ad
d3dx9: Support arrays of samplers.
...
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-07-05 20:26:27 +02:00
Paul Gofman
a7ea12c943
d3dx9: Check type and register count for sampler constants.
...
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-07-05 20:26:25 +02:00
Paul Gofman
08df007e80
d3dx9: Move transpose 'if' outside of the inner loop in set_constants().
...
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-06-27 23:46:23 +02:00
Paul Gofman
0029128464
d3dx9: Get rid of constant's length checking for matrix in set_constants().
...
When count in const_upload_info is calculated precisely (considering actual
constant set length), boolean matrix setting fall in direct copy path, unless
transpose is required. The case of incomplete last row for matrix should be
handled in set_constants() for transposed boolean constant only.
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-06-27 23:46:20 +02:00
Paul Gofman
ed7e27ad8d
d3dx9: Remove redundant parameter size check in set_constants().
...
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-06-27 23:46:18 +02:00
Paul Gofman
5cbc84e51e
d3dx9/tests: Modify transpose boolean matrix test to reproduce the case of incomplete last row.
...
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-06-21 23:21:17 +02:00
Matteo Bruni
bd7a12b23c
d3dx9: Make the assert() in regstore_set_values() a bit more strict.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-21 23:21:16 +02:00
Paul Gofman
95a49bdce6
d3dx9: Add scalar and vector setting path to set_constants().
...
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-06-16 18:10:45 +02:00
Paul Gofman
f48d38e5ac
d3dx9: Avoid casting each value separately in set_constants().
...
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-06-16 18:10:42 +02:00
Paul Gofman
607ae76ada
d3dx9: Add const qualifier to regstore_set_values() input data.
...
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-06-14 08:17:25 +02:00
Paul Gofman
45b0add678
d3dx9: Introduce get_reg_components() helper function and use it instead of get_offset_reg() when appropriate.
...
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-06-14 08:17:23 +02:00
Matteo Bruni
df07533a80
d3dx9/tests: Avoid SIZE_T in traces.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-12 12:02:52 +02:00