Commit Graph

386 Commits

Author SHA1 Message Date
Michael Stefaniuc 89941842af d3dx9: Pass a struct d3dx_effect to get_annotation_from_object().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-05 20:41:40 +01:00
Michael Stefaniuc 1dd9104724 d3dx9: Merge the d3dx_effect_GetAnnotationByName() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-05 20:41:27 +01:00
Michael Stefaniuc 7a1df2b006 d3dx9: Merge the d3dx_effect_GetAnnotation() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-05 20:41:17 +01:00
Michael Stefaniuc 45e7e2f2d5 d3dx9: Remove an unneeded forward declaration.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 20:17:11 +01:00
Michael Stefaniuc 58b87b0f3e d3dx9: Move parameter_count out of struct d3dx9_base_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 20:17:07 +01:00
Michael Stefaniuc 3899e79fc4 d3dx9: Merge the d3dx_effect_GetParameterElement() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 20:17:03 +01:00
Michael Stefaniuc 04c838fa60 d3dx9: Merge the d3dx_effect_GetParameterBySemantic() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 20:16:57 +01:00
Michael Stefaniuc 2f1ba910d1 d3dx9: Merge the d3dx_effect_GetParameter() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 20:16:40 +01:00
Michael Stefaniuc 78e067b0d0 d3dx9: Merge the d3dx_effect_GetParameterByName() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 19:58:14 +01:00
Michael Stefaniuc d265afcd8f d3dx9: Pass a struct d3dx_effect to the d3dx_parse helpers.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 19:58:11 +01:00
Matteo Bruni d18fb86134 d3dx9: Get rid of the ID3DXEffectImpl #define.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Michael Stefaniuc 4b85165cdc d3dx9: Merge the d3dx9_effect_GetDesc() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-28 21:37:30 +01:00
Michael Stefaniuc 715b932768 d3dx9: Merge the stub ID3DXBaseEffect methods.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-28 21:37:30 +01:00
Michael Stefaniuc 612196b64c d3dx9: Rename the ID3DXEffect object and methods.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-28 21:37:30 +01:00
Matteo Bruni 4a9fe7a8a0 d3dx9: Simplify get_parameter_by_name().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-20 19:14:45 +01:00
Michael Stefaniuc be30aab1e2 d3dx9: Remove redundant "not NULL" checks (coccinellery).
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-20 18:42:45 +01:00
Paul Gofman f72204abd6 d3dx9: Use parameter data for the first constant only in d3dx_set_shader_const_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>
2019-02-15 15:07:52 +01:00
Paul Gofman b3e91c3408 d3dx9: Handle short parameter in d3dx_set_shader_const_state().
The issue is spotted in https://bugs.winehq.org/show_bug.cgi?id=46553,
while fixing it alone is reported not to affect the bug.

Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-15 15:07:40 +01:00
Valentin Gabriel Mitrea 970009fed7 d3dx9: Fix D3DCompile() call.
When using D3DCompile() with an fx profile, the entry point
parameter is not used. So, it should be set to NULL.

Signed-off-by: Valentin Gabriel Mitrea <mitrea.valentin@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-24 18:15:09 +02:00
Matteo Bruni f956200775 d3dx9: Allow passes argument to Begin() to be NULL.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-18 21:26:00 +02:00
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 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 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 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 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 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
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
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
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 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 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 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
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 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 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 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 174ea70bf3 d3dx9: Use pass update version for detecting updated FXLC 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-05-22 13:45:48 +02:00
Paul Gofman 454a2c5c21 d3dx9: Match native out of bounds array selector index handling.
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-05-18 19:56:39 +02:00
Paul Gofman a179584844 d3dx9: Use versioned parameter updates instead of 'dirty' flags.
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-05-18 19:47:26 +02:00
Józef Kucia 1bef693767 d3dx9: Fix compilation on systems that don't support nameless unions.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-11 10:17:50 -05:00
Paul Gofman d1ac3b8e72 d3dx9: Support setting strings 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-05-07 16:19:31 -05:00
Paul Gofman a79da9689d d3dx9: Do not set active pass if BeginPass() 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-05-07 16:19:27 -05:00
Paul Gofman b7198efd42 d3dx9: Return shader functions 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-05-05 00:19:45 +02:00
Paul Gofman 1817f63a51 d3dx9: Don't call get_parameter_by_name() from get_valid_parameter() if D3DXFX_LARGEADDRESSAWARE flag is set.
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-05-03 22:58:00 +02:00
Paul Gofman a52a2d1aab d3dx9: Store effect creation flags in struct d3dx_base_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-05-03 22:58:00 +02:00
Paul Gofman 0750e758cc d3dx9: Downgrade unknown DWORD FIXMEs() to WARN() messages.
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-04-28 09:15:02 +02:00
Paul Gofman f0e9dea59c d3dx9: Remove unused parameter 'effect' from d3dx9_get_param_value_ptr().
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-04-28 09:15:00 +02:00
Paul Gofman 6f99cf01e1 d3dx9: Support parameters sharing 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-04-26 20:33:58 +02:00
Paul Gofman 9043ff030e d3dx9: Reference effect pool implementation in d3dx9_base_effect structure.
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-04-26 20:33:51 +02:00
Paul Gofman bb52c5983d d3dx9: Factor out free_parameter_data() 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-04-25 20:53:07 +02:00
Paul Gofman 1bd3cc24af d3dx9: Fix IsParameterUsed() for the case when state references child 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-04-25 20:53:06 +02:00
Paul Gofman 2be74048d6 d3dx9: Reference top level parameter instead of dirty flag.
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-04-25 20:53:06 +02:00
Paul Gofman c30b91d382 d3dx9: Compare parameter definition instead of parameter handle in IsParameterUsed().
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-04-19 09:09:35 +02:00
Paul Gofman 5029c2c0fd d3dx9: Use magic number instead of parameter tables for parameter handles.
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-04-19 09:09:33 +02:00
Paul Gofman 2b18cd4321 d3dx9: Preserve states regardless of state manager presence.
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-04-10 22:12:45 +02:00
Paul Gofman d6ab655a09 d3dx9: Support effect state manager.
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-04-10 22:12:44 +02:00
Paul Gofman a844ce7dc4 d3dx9: Don't apply unmodified states in CommitChanges().
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-03-21 20:52:38 +01:00
Matteo Bruni f68de78d9e d3dx9: Override d3dx9_get_param_value_ptr() return value only on array overflow.
Incidentally this exposes a few test failures (due to not supporting
relative addressing in preshaders) previously masked by the broad
override.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-21 20:52:38 +01:00
Paul Gofman af4e4a9af5 d3dx9: Set dirty flag on parameter change.
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-03-16 10:05:24 +01:00
Matteo Bruni 901c96ef9c d3dx9: Avoid overflowing debug channel buffer when tracing ASCII effect errors.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-03 10:54:18 +09:00
Andrey Gusev d8641197c0 d3dx9_36: Fix typos in comments.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 23:31:03 +09:00
Paul Gofman fe1a89d14f d3dx9: Implement IsParameterUsed function 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>
2016-05-31 11:31:26 +09:00
Paul Gofman dca016d7dc d3dx9: Add is_param_type_sampler() helper 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>
2016-05-27 00:14:41 +09:00
Paul Gofman 453d9f7bce d3dx9: Implement setting named shader constants 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>
2016-04-19 23:29:25 +09:00
Matteo Bruni 9d725b1778 d3dx9: Free old object data when reusing effect object.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-19 13:44:51 +09:00
Matteo Bruni e7021c6a03 d3dx9: Don't complain when overwriting effect object id 0.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-18 15:07:10 +09:00
Paul Gofman 4620bb80b0 d3dx9: Implement array selectors 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>
2016-04-18 15:05:30 +09:00
Paul Gofman 43208b6348 d3dx9: Implement fxlc constants (expressions) 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>
2016-04-18 15:05:15 +09:00
Paul Gofman 8eeeb4d1e1 d3dx9: Introduce preshaders 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>
2016-03-29 10:36:47 +09:00
Francois Gouget f030fbe0a2 d3dx9_36: Make d3dx_set_shader_const_state() static.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-23 11:28:55 +09:00
Matteo Bruni 4d1192ad89 d3dx9: Cleanup header includes.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-15 14:12:29 +09:00
Henri Verbeet 20f7abf667 d3dx9: "param" should never be NULL in free_parameter().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-13 15:41:41 +09:00
Paul Gofman 1da5af9364 d3dx9: Support setting texture through SetValue 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>
2016-03-09 18:40:34 +09:00
Matteo Bruni 9bfacd24d2 d3dx9: Trace the parameter passed to IsParameterUsed().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-08 11:13:16 +09:00
Paul Gofman ea13805e83 d3dx9: IsParameterUsed stub should return TRUE.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-08 11:13:10 +09:00
Paul Gofman afcb6dc891 d3dx9: Implement CommitChanges 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>
2016-03-04 11:35:36 +09:00
Paul Gofman c1487eee3e d3dx9: Implement state save and restore 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>
2016-03-04 11:35:33 +09:00
Paul Gofman 3aa22f47a8 d3dx9: Implement sampler and texture effect states application.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-04 11:35:31 +09:00
Paul Gofman ec6124f15d d3dx9: Implement shader constants effect states application.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-04 11:35:28 +09:00
Paul Gofman 6df87a6647 d3dx9: Implement light and material effect states application.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-04 11:35:25 +09:00
Paul Gofman 91c5f11537 d3dx9: Implement simple effect states application.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-04 11:35:22 +09:00
Andrey Gusev d3177504b1 Assorted spelling and typos fixes. 2015-08-31 20:18:46 +09:00
Matteo Bruni b3c5d2ccda d3dx9: Skip the AddRef/Release calls if the new texture is the same as the old one. 2014-04-17 19:06:08 +02:00
Matteo Bruni 96b0b91752 d3dx9: Copy the entire vector at once if there is no need of type conversions. 2014-04-17 13:53:06 +02:00
Matteo Bruni 5cfca92c53 d3dx9: Copy the entire matrix at once if there is no need of type conversions. 2014-03-18 11:39:40 +01:00
Matteo Bruni 1e2fbcc99b d3dx9: Split out set_matrix_transpose from set_matrix. 2014-03-18 11:39:37 +01:00
Matteo Bruni babf0dca03 d3dx9: Parse "usage 2" effect resources. 2014-03-18 11:39:34 +01:00
Matteo Bruni 0e0b613192 d3dx9: Store pointers to referenced parameters for "usage 1" resources. 2014-03-18 11:39:31 +01:00
Matteo Bruni aef52a1d13 d3dx9: Create shaders and strings. 2014-03-18 11:39:26 +01:00
Matteo Bruni 7617951dfd d3dx9: Correctly handle empty parameter data. 2014-03-13 20:22:19 +01:00
Matteo Bruni db4bf1e1d4 d3dx9: Fix a WARN. 2014-03-13 20:22:14 +01:00
Matteo Bruni 83c3f8c9ed d3dx9: Free string data. 2014-03-05 19:18:20 +01:00
Matteo Bruni 7788161c91 d3dx9: Introduce a handle table for parameters to make lookup faster. 2014-03-05 19:18:11 +01:00
Matteo Bruni db8e1df742 d3dx9: Fix an error trace. 2014-03-05 19:17:12 +01:00
Matteo Bruni 9008971bde d3dx9: Improve a number of WARN messages. 2014-03-03 17:53:50 +01:00
Matteo Bruni c6fefc20a6 d3dx9: Turn D3DXCreateEffectEx FIXME into a TRACE, improve it a bit. 2014-03-03 17:53:34 +01:00
Matteo Bruni 244100f01c d3dx9: Remove Begin/End stub fixmes. 2014-02-25 14:17:59 -06:00
Matteo Bruni 62288d02be d3dx9: Call D3DCompile() for ASCII effects. 2014-02-25 14:17:45 -06:00
Matteo Bruni b86b3dfa40 d3dx9: Calling CommitChanges with no active pass silently returns. 2014-02-25 14:17:35 -06:00
Stefan Dösinger e1a845c213 d3dx9_36: Cast D3DPARAMETER_TYPE * to DWORD *. 2014-01-06 20:46:45 +01:00
Rico Schüller bc1d6e5098 d3dx9: Don't allocate the state parameter. 2013-10-07 14:44:35 +02:00
Rico Schüller f7ba8e1472 d3dx9: Use struct d3dx_object for objects. 2013-09-25 13:33:25 +02:00
Henri Verbeet 49a3dbc453 d3dx9: Avoid CONST. 2013-09-20 11:27:49 +02:00
Henri Verbeet 871967d0fb d3dx9: Avoid LPVOID. 2013-09-04 11:37:06 +02:00
Henri Verbeet 76e35a2939 d3dx9: Avoid LPCVOID. 2013-09-03 16:58:18 +02:00
Henri Verbeet 77ee90b59f d3dx9: Avoid LPSTR. 2013-09-03 16:58:17 +02:00
Henri Verbeet 75511e351c d3dx9: Avoid LPCSTR. 2013-09-02 18:02:48 +02:00
Henri Verbeet 2a24b11af5 d3dx9: Avoid LPWSTR. 2013-09-02 18:02:46 +02:00
Henri Verbeet 34c7024790 d3dx9: Simplify D3DXCreateEffectCompilerFromResourceW(). 2013-08-26 10:50:51 +02:00
Henri Verbeet 1be05ff731 d3dx9: Simplify D3DXCreateEffectCompilerFromResourceA(). 2013-08-26 10:50:49 +02:00
Henri Verbeet 37d67eb629 d3dx9: Simplify D3DXCreateEffectFromResourceExW(). 2013-08-23 10:41:40 +02:00
Henri Verbeet f60b28138e d3dx9: Simplify D3DXCreateEffectFromResourceExA(). 2013-08-23 10:41:38 +02:00
Henri Verbeet c2eabf9e68 d3dx9: Get rid of some unused vtbl forward declarations. 2013-08-22 10:26:51 +02:00
Henri Verbeet 1cb70eb07a d3dx9: ID3DXBaseEffectImpl doesn't need to be a COM implementation. 2013-08-21 12:13:56 +02:00
Rico Schüller e5a9dcf945 d3dx9: Introduce a helper function for the annotations. 2013-08-16 11:55:24 +02:00
Rico Schüller fab44cbbfb d3dx9: Use d3dx_parameter instead of D3DXHANDLE. 2013-08-02 11:38:35 +02:00
Rico Schüller d3b4dc92d9 d3dx9: Warn when submitting invalid flags to ID3DXEffect::Begin(). 2013-08-02 11:37:25 +02:00
Rico Schüller 3ff2255a83 d3dx9: Track ID3DXEffect::Begin/End(). 2013-08-02 11:37:18 +02:00
Rico Schüller cb47245585 d3dx9: Use d3dx_pass instead of D3DXHANDLE. 2013-07-27 11:46:38 -05:00
Rico Schüller 695921564b d3dx9: Use d3dx_technique instead of D3DXHANDLE. 2013-07-27 11:46:35 -05:00
Rico Schüller 55a4be12f8 d3dx9: Fix initialization of D3DXPC_OBJECTs. 2013-07-27 11:46:29 -05:00
Christian Costa 61bf3d45dc d3dx9_36: Show object number in traces. 2013-07-22 17:16:03 +02:00
Christian Costa fcb72f399d d3dx9_36: Set compilation_errors to NULL when no error encountered + tests. 2013-06-13 17:14:06 +02:00
Christian Costa 539d28a112 d3dx9_36: Fix typo. 2013-06-04 10:13:56 +02:00
Christian Costa bdc5c3211c d3dx9_36: Add stub for DisassembleEffect. 2013-05-06 15:55:23 +02:00
Marcus Meissner 563f3cbc92 d3dx9_36: Use correct loop index (Coverity). 2013-04-30 11:48:50 +02:00
Christian Costa 9d18b3de14 d3dx9_36: Use more appropriate function names. 2013-04-26 16:28:02 +02:00
Michael Stefaniuc 938b62079c d3dx9_36: Remove left over "stub" from a TRACE calls. 2013-04-19 16:16:16 +02:00
Michael Stefaniuc 20f1016bc8 d3dx9_36: Remove ERR() on HeapAlloc failure for small sizes known at compile time. 2013-02-07 15:48:26 +01:00
Henri Verbeet 36ac98df73 d3dx9: Avoid LPD3DXBUFFER. 2012-12-03 12:37:26 +01:00
Henri Verbeet c109249445 d3dx9: Avoid LPD3DXEFFECTSTATEMANAGER. 2012-11-30 11:42:37 +01:00
Henri Verbeet 8678e890e6 d3dx9: Avoid LPD3DXEFFECTPOOL. 2012-11-30 11:42:32 +01:00
Henri Verbeet 69eeb35e51 d3dx9: Avoid LPD3DXINCLUDE. 2012-11-26 11:50:15 +01:00
Henri Verbeet 63acbcbf8a d3dx9: Avoid LPD3DXCONSTANTTABLE. 2012-11-23 14:40:24 +01:00
Henri Verbeet 4ba6974345 d3dx9: Avoid LPDIRECT3DDEVICE9. 2012-10-29 10:47:03 +01:00
Henri Verbeet c4f7bcc653 d3dx9: Avoid LPDIRECT3DBASETEXTURE9. 2012-10-25 22:27:29 +02:00
Henri Verbeet 0c84de4455 d3dx9: Avoid LPDIRECT3DVERTEXSHADER9. 2012-10-24 11:24:28 +02:00
Henri Verbeet 4704e78337 d3dx9: Avoid LPDIRECT3DPIXELSHADER9. 2012-10-23 12:11:30 +02:00
Rico Schüller 8fb16c955b d3dx9: Move transpose matrix into get_matrix(). 2012-09-14 11:52:02 +02:00
Rico Schüller 5b06a2d113 d3dx9: Move transpose matrix into set_matrix(). 2012-09-14 11:51:58 +02:00
Rico Schüller 26914eb337 d3dx9: Use set_number instead of get_bool/int/float. 2012-09-14 11:51:55 +02:00
Rico Schüller 823d1fbc38 d3dx9: Move bool cropping into helper function. 2012-09-06 15:45:14 +02:00
Rico Schüller 65c651e376 d3dx9: Move D3DXPARAMETER_TYPE conversion helpers to util. 2012-09-06 15:44:39 +02:00
Rico Schüller bfec155345 d3dx9: Improve traces in set_number(). 2012-08-29 11:43:39 +02:00