Commit Graph

268 Commits

Author SHA1 Message Date
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
Rico Schüller 396af0dac3 d3dx9: Optimize set_matrix(). 2012-08-29 11:43:20 +02:00
Rico Schüller 77993a610e d3dx9: Avoid TRUE : FALSE conditional expression. 2012-08-21 17:32:11 +02:00
Rico Schüller becf83fd86 d3dx9: Remove not needed TRACE. 2012-08-21 17:32:02 +02:00
Rico Schüller 892308fdb6 d3dx9: Identify D3DTSS_CONSTANT and FVF states. 2012-08-21 17:31:58 +02:00
Rico Schüller f9a4a9db1b d3dx9: Don't double check the technique. 2012-08-21 17:31:54 +02:00
Rico Schüller c1193ab79b d3dx9: Move technique name handling to technique handle validation. 2012-08-20 14:58:39 +02:00
Rico Schüller 05818a3056 d3dx9: Use a separate function for the technique name. 2012-08-20 14:58:34 +02:00
Rico Schüller 9c1c964139 d3dx9: Silence missing function handling in the effect interface. 2012-08-20 14:58:30 +02:00
Rico Schüller 24ee16de09 d3dx9: Make annotation handling more generic for techniques and passes. 2012-08-20 14:58:22 +02:00
Rico Schüller 607c76a165 d3dx9: Improve check for empty braces for elements. 2012-08-20 14:58:10 +02:00
Rico Schüller 07ae14ad4c d3dx9: Return NULL if name is not given. 2012-08-20 14:58:05 +02:00
Rico Schüller 9428317336 d3dx9: Implement ID3DXBaseEffect::GetMatrixTransposePointerArray(). 2012-07-10 11:16:24 -05:00
Rico Schüller d0fd8f4d88 d3dx9: Implement ID3DXBaseEffect::GetMatrixPointerArray(). 2012-07-10 11:16:16 -05:00
Rico Schüller 929c669b4f d3dx9: Implement ID3DXBaseEffect::SetMatrixTransposePointerArray(). 2012-07-03 14:56:08 +02:00
Rico Schüller e5953b6b17 d3dx9: Implement ID3DXBaseEffect::SetMatrixPointerArray(). 2012-07-03 14:56:01 +02:00
Rico Schüller f658aabfd5 d3dx9: Crop the input in ID3DXBaseEffect::SetBool(). 2012-05-30 17:17:57 +02:00
Rico Schüller fcb5b6c32c d3dx9: Use param->bytes for copying the data in ID3DXBaseEffect::SetValue(). 2012-04-18 17:40:10 +02:00
Henri Verbeet 2b1da8c77f d3dx9: Don't return a pointer to the implementation in ID3DXBaseEffectImpl_QueryInterface(). 2012-04-13 10:48:56 +02:00