Commit Graph

37 Commits

Author SHA1 Message Date
Jacek Caban 22970932d0 d3dx9: Use BitScanReverse in make_pow2.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-11 22:19:59 +02:00
Sven Baars 1b0ad92db1 d3dx9: Reimplement make_pow2() in d3dx9_private.h.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-25 23:43:18 +01:00
Matteo Bruni 376182062f d3dx9: Handle compressed surfaces in D3DXLoadSurfaceFromMemory.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=24983
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 21:04:39 +02:00
Matteo Bruni eadc7b3128 d3dx9: Get rid of unused unlock_surface() argument.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-05 21:22:47 +02:00
Paul Gofman 378204527e d3dx9: Pass rectangle to {lock|unlock}_surface().
This fixes regressions introduced by commits
65956ae50a, 092c14b9d8.
Surface source or destination rectangles were left behind.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47546
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-08-05 21:22:36 +02:00
Michael Stefaniuc baf4aaa359 d3dx9: Don't expose struct d3dx9_base_effect outside effect.c.
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-19 18:31:38 +01:00
Paul Gofman 4e44d74afb d3dx9: Use temporary surface in D3DXFillTexture() for unmappable textures.
Fixes a regression triggered by commit 949dbbd31f.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46453
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-01-23 16:31:31 +01:00
Michael Stefaniuc 962b31c80b include: Add a generic available ARRAY_SIZE().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-04 10:39:15 +02: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 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
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 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 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
Matteo Bruni 4569cbe8e9 d3dx9: Move set_number() into d3dx9_private.h.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-12 12:02:22 +02:00
Paul Gofman 730832d2d8 d3dx9: Merge constant setting for child parameters when possible.
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-01 09:37:07 +02:00
Paul Gofman 1816d8a9fa d3dx9: Precompute and store a constant direct copy 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-06-01 09:36:59 +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 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 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 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 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
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 84a290c12b d3dx9: Don't forbid supported format conversions.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-30 21:38:49 +01:00
Paul Gofman cd024a263f d3dx9: Improve performance and memory usage in preshader constants setting.
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-06-15 17:11:52 +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
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 9b3e942ffc d3dx9: Implement preshader parsing.
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-07 00:59:56 +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
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