Commit Graph

103 Commits

Author SHA1 Message Date
Nikolay Sivov 955071291c d3d10/effect: Handle NULL initializer for SamplerState.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 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 d11195067f d3d10/effect: Fix handling samplers array binding.
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:11 +02:00
Nikolay Sivov c716aa4802 d3d10/effect: Go through both local and shared variables when looking for shader resources.
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-30 21:25:09 +02:00
Nikolay Sivov 7fe8e49f33 d3d10/effect: Go through both local and shared buffers when looking for shader resources.
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-30 21:25:06 +02:00
Nikolay Sivov 5227259043 d3d10/tests: Regenerate state group test effect with newer compiler.
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 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 f3f2fec52d d3d10/effect: Forward to pool effect in GetConstantBufferByName().
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-23 18:21:06 +02:00
Nikolay Sivov fab2d7d8a3 d3d10/effect: Forward to pool effect in GetConstantBufferByIndex().
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-23 18:21:04 +02:00
Nikolay Sivov 19517f8685 d3d10/effect: Forward to pool effect in GetVariableBySemantic().
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-23 18:21:01 +02:00
Nikolay Sivov d3b18bea30 d3d10/effect: Forward to pool effect in GetVariableByIndex().
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-23 18:20:59 +02:00
Nikolay Sivov 23c6e537c2 d3d10/effect: Forward to pool effect in GetVariableByName().
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-23 18:20:56 +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 de49664d06 d3d10/effect: Validate flags vs pool instance when creating child effects.
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:03 +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 4a3e038022 d3d10/tests: Add a test for default numeric variable values.
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-15 19:34:22 +02:00
Nikolay Sivov 20952bcd3d d3d10/tests: Add some tests for effect pools.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-15 19:34:22 +02:00
Nikolay Sivov c00d42f4ba d3d10/effect: Release passes names on Optimize().
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-15 19:34:22 +02:00
Nikolay Sivov eb1f76caa6 d3d10/effect: Release technique names on Optimize().
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-15 19:34:22 +02:00
Nikolay Sivov d2d161d507 d3d10/effect: Handle object type D3D10_SVT_TEXTURE.
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-15 19:34:22 +02:00
Nikolay Sivov a57fd101b8 d3d10/effect: Fix d3d object creation for arrays of state 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-09-10 22:13:01 +02:00
Nikolay Sivov 0fe9cba341 d3d10/effect: Handle special $SKIP semantic in stream output declaration.
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-10 22:12:59 +02:00
Nikolay Sivov bf1d4b5697 d3d10/effect: Handle rgba masks in stream output declarations.
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-10 22:12:57 +02:00
Nikolay Sivov 78f4ce0b11 d3d10/effect: Use same field to return ExplicitBindPoint for all variable 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-09-10 22:12:54 +02:00
Nikolay Sivov 86194bff11 d3d10/effect: Set corresponding variable flag when explicit bind point is specified for a constant buffer.
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-10 22:12:52 +02:00
Nikolay Sivov e5e6000654 d3d10/tests: Test SystemValueType 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-09-10 22:12:49 +02:00
Nikolay Sivov e8843de0f9 d3d10/effect: Use case-insensitive comparison in GetMemberBySemantic().
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-08 17:27:33 +02:00
Nikolay Sivov af20f75f7c d3d10/effect: Use case-insensitive comparison in GetMemberTypeBySemantic().
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-08 17:27:33 +02:00
Nikolay Sivov a32a495012 d3d10/effect: Use case-insensitive comparison in GetVariableBySemantic().
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-08 17:27:33 +02:00
Nikolay Sivov 3b074fa3be d3d10/effect: Fix indexing in GetGeometryShader().
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-08 17:27:33 +02:00
Nikolay Sivov 288428cc73 d3d10/effect: Fix indexing in GetPixelShader().
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-08 17:27:33 +02:00
Nikolay Sivov 293484af60 d3d10/effect: Fix indexing in GetVertexShader().
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 a3a2ae7d97 d3d10/effect: Store stream output declaration for inline shaders too.
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 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 a81c645c65 d3d10/tests: Add a test for inline geometry shader with stream output declaration.
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:27 +02:00
Nikolay Sivov 87ac914e82 d3d10/effect: Discard some of the shader metadata when optimizing an 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-08-31 15:50:15 +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 2b83832fdf d3d10/effect: Add a semi-stub for 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-08-31 15:50:01 +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 ce6cb0de2f d3d10/effect: Use shader reflection to return input 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:50 +02:00
Nikolay Sivov b312369224 d3d10/effect: Fix indexing in GetOutputSignatureElementDesc().
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:48 +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 455239e379 d3d10/effect: Handle SetResource() called on null variable instance.
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:10 +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
Nikolay Sivov 671eabdf4f d3d10/effect: Return full pass description from ID3D10EffectPass::GetDesc().
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-17 23:09:05 +02:00
Nikolay Sivov f63ecaedc7 d3d10/effect: Partially implement ID3D10Effect::GetDesc().
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-10 23:01:52 +02:00
Nikolay Sivov 14ec330052 d3d10/effect: Implement GetString().
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-10 23:01:49 +02:00
Nikolay Sivov b73ed1977c d3d10/effect: Store string annotation values.
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-10 23:01:46 +02:00