Commit Graph

121 Commits

Author SHA1 Message Date
Nikolay Sivov 2c665f79a7 d3d10/effect: Store state variables references in their own arrays.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-20 18:16:13 +01:00
Nikolay Sivov a6f027fe2c d3d10/effect: Add arrays for all state variables.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-20 18:16:08 +01:00
Nikolay Sivov 62b367fb65 d3d10/effect: Add a structure to keep shader variables references.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-20 18:15:59 +01:00
Nikolay Sivov 0f95263086 d3d10/effect: Parse through value expressions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:13 +01:00
Nikolay Sivov 15a3da17a7 d3d10/effect: Implement numeric pass properties updates.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-02 21:53:30 +01:00
Nikolay Sivov 3d5f8b9869 d3d10/effect: Reduce duplication when releasing shader objects.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-29 21:22:46 +02:00
Nikolay Sivov 84eeeec433 d3d10/effect: Do not use internal value types.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-15 20:56:20 +02:00
Nikolay Sivov ab5b335c13 d3d10/effect: Use separate structure for annotations array.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-13 21:57:11 +02:00
Nikolay Sivov 63ee26f298 d3d10/effect: Use shader variable directly from pass structure on Apply().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-13 21:57:11 +02:00
Nikolay Sivov 47350f363a d3d10/effect: Explicitly store blend state variable.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-07 21:22:29 +02:00
Nikolay Sivov e42720a6d8 d3d10/effect: Explicitly store depth stencil state variable.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-07 21:22:27 +02:00
Nikolay Sivov 0c5c8fd84d d3d10/effect: Explicitly store rasterizer state variable.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-07 21:22:24 +02:00
Nikolay Sivov a3942ae20e d3d10/effect: Use effect variable pointers to store per-pass shader objects.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-07 21:22:15 +02:00
Nikolay Sivov 42a6c1f705 d3d10/effect: Extend sampler backing store with a texture field.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-05 11:31:47 +02:00
Nikolay Sivov 9b88064a18 d3d10/effect: Access pool effect structure directly.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-05 11:31:47 +02:00
Nikolay Sivov 0182f1f848 d3d10/effect: Make it clear which assignment types are supported in state groups.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-02 00:41:25 +02:00
Nikolay Sivov 8a04f2eb15 d3d10/effect: Reduce duplication in state and shader object release helpers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-02 00:41:20 +02:00
Nikolay Sivov cf05d89262 d3d10/effect: Remove unused field from pass structure.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-02 00:41:17 +02:00
Nikolay Sivov ea24e203da d3d10/effect: Set corresponding flag for pooled variables.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-02 00:41:14 +02:00
Nikolay Sivov 2cc6b3092d d3d10/effect: Implement IsOptimized().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-27 17:40:14 +02:00
Nikolay Sivov 099aa57f23 d3d10/effect: Validate shared constant buffer types against the pool.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-27 17:40:14 +02:00
Nikolay Sivov 3d1e7b0ed8 d3d10/effect: Validate shared object types against the pool.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-27 17:40:14 +02:00
Nikolay Sivov 5e5a97cf7f d3d10/effect: Reference pool in the child effect.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-20 11:11:06 +02:00
Nikolay Sivov cec812d861 d3d10/effect: Partially implement D3D10CreateEffectPoolFromMemory().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-20 11:10:56 +02:00
Nikolay Sivov ff32b78e78 d3d10/effect: Set IsInline in GetShaderDesc().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-02 21:57:39 +02:00
Nikolay Sivov 87f099b7dc d3d10/effect: Store bytecode blob for every shader.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-31 15:50:13 +02:00
Nikolay Sivov 6cd12a9a43 d3d10/effect: Store explicit bind point value for constant buffers and object variables.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-27 18:06:30 +02:00
Nikolay Sivov ad9c2b8beb d3d10/effect: Store input signature as a blob part.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 21:05:53 +02:00
Nikolay Sivov 4d135986a3 d3d10/effect: Use shader reflection to return output signature description.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 21:05:45 +02:00
Nikolay Sivov 6385d93e54 d3d10/effect: Handle geometry shader variables declared with stream output.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-20 21:59:05 +02:00
Connor McAdams 1db43d5f55 d3d10: Implement ShaderResource effect variable set method.
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Connor McAdams f8086a3e7e d3d10: Get resources used by effect shaders.
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 19:43:38 +01:00
Connor McAdams 00861d10ec d3d10: Implement matrix effect variable set methods.
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 19:43:38 +01:00
Connor McAdams 490bc0f19b d3d10: Introduce an effect buffer variable structure.
Signed-off-by: Connor McAdams <conmanx360@gmail.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
Connor McAdams 981403e50f d3dcompiler: Move d3d10 reflection stubs into d3dcompiler.
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-06 16:03:31 +01:00
Connor McAdams 79aaabeb7f d3d10: Move debug_d3d10_device_state_types() to stateblock.c.
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-31 00:33:46 +01:00
Connor McAdams ae1cc9c742 d3d10: Move debug_d3d10_driver_type() to d3d10_main.c.
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-31 00:33:46 +01:00
Connor McAdams b44d6c25b2 d3d10: Move private effect functions to effect.c.
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-31 00:33:46 +01:00
Alexandre Julliard 4caf450aa7 d3d10: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-30 15:04:06 +02:00
Henri Verbeet fc055fc0ef d3d10: Use the global memory allocation helpers.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-01 22:24:52 +01:00
Jacek Caban acc0bb0521 rbtree.h: Pass compare function instead of wine_rb_functions to wine_rb_init.
Also change return type to void since the function can no longer fail.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-02 23:30:29 +09:00
Andrey Gusev 0cd12e294e d3d10: Fix a typo in depthstencilstate_count variable name.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 00:10:51 +09:00
Henri Verbeet 775c7edbc3 d3d10: Introduce a helper function to allocate arrays (AFL).
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-26 10:44:32 +09:00
Henri Verbeet 22d52ed59d d3d10: Validate offsets and sizes in shader_parse_signature() (AFL).
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-25 15:43:55 +09:00
Henri Verbeet 994c5618b1 d3d10: Validate offsets and sizes in parse_dxbc() (AFL).
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-25 15:43:38 +09:00
Matteo Bruni fcc8553d8b d3d10core: Add feature level support.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 21:59:42 +09:00
Henri Verbeet 7cea4645c5 d3d10: Implement d3d10_effect_sampler_variable_GetSampler(). 2012-10-09 09:59:33 +02:00
Henri Verbeet eda5c39335 d3d10: Handle blend state in d3d10_effect_object_apply(). 2012-10-09 09:59:29 +02:00
Henri Verbeet b2228834c7 d3d10: Handle depth stencil state in d3d10_effect_object_apply(). 2012-10-08 11:28:27 +02:00
Henri Verbeet 16c6e4e332 d3d10: Handle rasterizer state in d3d10_effect_object_apply(). 2012-10-08 11:28:21 +02:00