Commit Graph

525 Commits

Author SHA1 Message Date
Dylan Smith
6c9cff2e3f d3dx9: Add support for loading mesh normals from X files. 2011-05-24 18:31:01 +02:00
Dylan Smith
a9ac91054e d3dx9: Add support for loading basic meshes. 2011-05-24 18:30:24 +02:00
Dylan Smith
bf0979f557 d3dx9: Implement D3DXLoadMeshHierarchy for only loading frames. 2011-05-24 18:29:27 +02:00
Rico Schüller
0858dee303 d3dx9: Parse effect samplers. 2011-05-20 12:44:05 +02:00
Dylan Smith
f272fb2921 d3dx9/tests: Correct ok messages to be consistent with their test. 2011-05-20 12:36:17 +02:00
Dylan Smith
c3201a4678 d3dx9: Implement D3DXFrameDestroy. 2011-05-20 12:35:46 +02:00
Dylan Smith
147e120049 d3dx9/tests: Fix a normal comparison for triangles with zero area. 2011-05-20 10:34:46 +02:00
Dylan Smith
bf202cfdfd d3dx9: Implement ID3DXMesh::Optimize using OptimizeInplace. 2011-05-18 10:59:47 +02:00
Rico Schüller
e9c4e501f4 d3dx9: Fix copy and paste mistake in ID3DXBaseEffect::GetPassDesc(). 2011-05-17 12:04:12 +02:00
Rico Schüller
b7b9db00e3 d3dx9: Remove some checks for defines argument in D3DXCreateEffect* functions. 2011-05-17 12:04:11 +02:00
Marcus Meissner
e550c537f3 d3dx9_36: Mark internal symbols as hidden. 2011-05-16 16:35:34 +02:00
Rico Schüller
041a651431 d3dx9: Implement ID3DXBaseEffect::GetTexture(). 2011-05-13 17:57:12 +02:00
Rico Schüller
ca5b8e11cc d3dx9: Parse effect textures. 2011-05-13 17:57:05 +02:00
Rico Schüller
ae2c6a164f d3dx9: Improve get_parameter_by_name(). 2011-05-13 17:57:02 +02:00
Rico Schüller
1ac8f4d472 d3dx9/tests: Add ID3DXEffect::Get/SetStateManager() test. 2011-05-11 18:02:27 +02:00
Rico Schüller
72d3ee3ab6 d3dx9: Implement ID3DXEffect::GetStateManager(). 2011-05-11 18:02:22 +02:00
Rico Schüller
cd121b10d6 d3dx9: Implement ID3DXEffect::SetStateManager(). 2011-05-11 18:02:18 +02:00
Dylan Smith
f203aa1746 d3dx9: Implement D3DXMESHOPT_ATTRSORT|D3DXMESHOPT_IGNOREVERTS. 2011-05-11 17:51:21 +02:00
Dylan Smith
4ed3930e27 d3dx9: Create compact_mesh helper function for OptimizeInplace. 2011-05-11 17:50:38 +02:00
Dylan Smith
61ba38635b d3dx9: Implement D3DXMESHOPT_COMPACT for ID3DXMesh::OptimizeInplace. 2011-05-10 19:17:51 +02:00
Dylan Smith
e62a4276ed d3dx9: Implement ID3DXMesh::CloneMesh without vertex buffer conversion. 2011-05-10 19:16:52 +02:00
Francois Gouget
5920de5ffb Assorted spelling and case fixes. 2011-05-09 12:09:27 +02:00
Rico Schüller
3ef0a28faf d3dx9: Implement ID3DXBaseEffect::GetFloat(). 2011-05-06 15:18:20 +02:00
Rico Schüller
033439908d d3dx9: Implement ID3DXBaseEffect::GetInt(). 2011-05-06 15:18:19 +02:00
Rico Schüller
7f3ce799de d3dx9: Implement ID3DXBaseEffect::GetBool(). 2011-05-06 15:18:19 +02:00
Rico Schüller
18e4876245 d3dx9: Implement ID3DXBaseEffect::GetDesc() partially. 2011-05-06 15:18:19 +02:00
Rico Schüller
1ffad65698 d3dx9: Implement ID3DXBaseEffect::GetAnnotationByName(). 2011-05-05 11:46:45 +02:00
Rico Schüller
7858a6f8e6 d3dx9: Implement ID3DXBaseEffect::GetAnnotation(). 2011-05-05 11:46:41 +02:00
Rico Schüller
f0da0f8066 d3dx9: Implement ID3DXBaseEffect::GetParameterBySemantic(). 2011-05-05 11:46:36 +02:00
Rico Schüller
35bff043f2 d3dx9: Implement ID3DXBaseEffect::GetVertexShader(). 2011-05-04 20:42:33 +02:00
Rico Schüller
59abf094cf d3dx9: Implement ID3DXBaseEffect::GetPixelShader(). 2011-05-04 20:42:33 +02:00
Rico Schüller
f3f59d2cf8 d3dx9: Implement ID3DXBaseEffect::GetString(). 2011-05-03 19:34:29 +02:00
Rico Schüller
46b3727df3 d3dx9: Implement ID3DXBaseEffect::GetValue(). 2011-05-03 19:34:29 +02:00
Alexandre Julliard
f9c75812e4 d3dx9_36: Specify arguments for stub entry points. 2011-05-03 19:34:24 +02:00
Dylan Smith
417534fdb7 d3dx9: Implement ID3DXMesh::DrawSubset. 2011-04-28 11:10:22 +02:00
Dylan Smith
e2d7fdf1f9 d3dx9: Implement GetAttributeTable and SetAttributeTable. 2011-04-28 11:10:18 +02:00
Dylan Smith
8baf96bb22 d3dx9: Implement LockAttributeBuffer & UnlockAttributeBuffer. 2011-04-28 11:10:13 +02:00
Dylan Smith
b2dac1df27 d3dx9: Implement GetNumBytesPerVertex using the vertex declaration.
If a declaration without a corresponding FVF is used to create the mesh,
then its declaration must be used to get the vertex size.
2011-04-28 11:10:00 +02:00
Dylan Smith
96d5d06f2b d3dx9: D3DXCreateMesh rejects declarations with non-zero streams. 2011-04-28 11:09:23 +02:00
Dylan Smith
46a96b139e d3dx9/tests: Added tests for ID3DXMesh::GenerateAdjacency. 2011-04-27 11:49:36 +02:00
Dylan Smith
c8a8bc3a62 d3dx9: Implement ID3DXMesh::GenerateAdjacency. 2011-04-27 11:49:15 +02:00
Dylan Smith
e4fd5d0a60 d3dx9: Support the option flags for D3DXCreateMesh. 2011-04-27 11:49:08 +02:00
Matteo Bruni
e1ac6078b5 d3dx9: Remove some redundant and compiler-unfriendly pixel format checking code.
Spotted by Gerald Pfeifer and Nicolas Le Cam.
2011-04-26 16:18:08 +02:00
Matteo Bruni
b17fd2a3af d3dx9: Print a FIXME when encountering an unknown surface format. 2011-04-26 16:18:03 +02:00
Rico Schüller
a5fbbbe4a9 d3dx9: Fix flags for annotation structures. 2011-04-26 15:31:28 +02:00
Rico Schüller
03204e99b7 d3dx9: Improve get_parameter_by_name(). 2011-04-26 15:31:27 +02:00
Rico Schüller
dbfc4dfc8d d3dx9: Improve ID3DXBaseEffect::GetParameter(). 2011-04-26 15:31:27 +02:00
Francois Gouget
b383111574 d3dx9_36: Make some is_valid_xxx() functions static. 2011-04-22 10:45:05 +02:00
Rico Schüller
f296fe68ff d3dx9: Implement ID3DXBaseEffect::GetParameterElement(). 2011-04-21 16:53:41 +02:00
Rico Schüller
1ae414bc64 d3dx9: Implement ID3DXBaseEffect::GetParameterDesc(). 2011-04-21 16:53:40 +02:00
Rico Schüller
b483ab8200 d3dx9: Implement ID3DXBaseEffect::GetParameterByName(). 2011-04-21 16:53:27 +02:00
Rico Schüller
0a23fc7b29 d3dx9: Implement ID3DXBaseEffect::GetPassByName(). 2011-04-20 16:32:10 +02:00
Rico Schüller
2e2b3c775b d3dx9: Implement ID3DXBaseEffect::GetPass(). 2011-04-20 16:32:06 +02:00
Rico Schüller
f284dc77f2 d3dx9: Implement ID3DXBaseEffect::GetPassDesc(). 2011-04-20 16:32:02 +02:00
Rico Schüller
8afc8dc0c7 d3dx9: Fix ID3DXEffect*::GetVectorArray() forward. 2011-04-20 16:31:58 +02:00
Rico Schüller
fa608e247a d3dx9: Implement ID3DXBaseEffect::GetTechniqueByName(). 2011-04-18 17:01:00 +02:00
Rico Schüller
6f824e171c d3dx9: Implement ID3DXBaseEffect::GetTechnique(). 2011-04-18 17:00:52 +02:00
Rico Schüller
e798d0016b d3dx9: Implement ID3DXBaseEffect::GetParameter(). 2011-04-18 17:00:44 +02:00
Rico Schüller
d64eb4699f d3dx9: Implement ID3DXBaseEffect::GetTechniqueDesc(). 2011-04-18 17:00:37 +02:00
Rico Schüller
4482ca41d0 d3dx9: Fix d3dx9_parse_effect_typedef for D3DXPC_STRUCT. 2011-04-18 16:59:40 +02:00
Rico Schüller
8ec21524ec d3dx9: Parse effect pass and technique. 2011-04-13 14:13:53 +02:00
Rico Schüller
4dcb3ea325 d3dx9: Make some functions inline. 2011-04-13 14:13:53 +02:00
Rico Schüller
0f10e1b344 d3dx9: Parse value data. 2011-04-12 12:50:19 +02:00
Rico Schüller
53d0a02c20 d3dx9: Parse name and semantics. 2011-04-12 12:50:15 +02:00
Rico Schüller
e4a0ef69f5 d3dx9: Parse effect type D3DXPC_STRUCT. 2011-04-12 12:50:10 +02:00
Rico Schüller
20dc97296b d3dx9: Parse effect parameter type definition. 2011-04-12 12:50:06 +02:00
Francois Gouget
18e0e8c4c7 d3dx9_36: Make get_parameter_{handle,struct}() static. 2011-04-11 12:07:11 +02:00
Rico Schüller
9a7720fc1d d3dx9: Start effect parameter parsing. 2011-04-07 13:50:56 +02:00
Rico Schüller
651e044590 d3dx9: Fix return values. 2011-04-07 13:50:48 +02:00
Rico Schüller
670f0efe5c d3dx9: Add ID3DXBuffer test. 2011-04-04 13:43:15 +02:00
Rico Schüller
1fcce55894 d3dx9: Add argument check to D3DXCreateBuffer(). 2011-04-04 13:43:09 +02:00
Rico Schüller
22abfd6edc d3dx9: Use init function for ID3DXBuffer. 2011-03-30 14:56:49 +02:00
Rico Schüller
87f6f86ce9 d3dx9: Add a some TRACEs to ID3DXBufferImpl. 2011-03-30 14:56:46 +02:00
Rico Schüller
404de72fe0 d3dx9: Rename some variables. 2011-03-30 14:56:43 +02:00
Rico Schüller
62c1fb0941 d3dx9: Remove typedef from ID3DXBufferImpl. 2011-03-30 14:56:40 +02:00
Rico Schüller
98001ca8c8 d3dx9: Use variable instead of type in HeapAlloc. 2011-03-30 14:56:36 +02:00
Rico Schüller
41e34d77c5 d3dx9: Don't zero memory when it will be overridden. 2011-03-30 14:56:33 +02:00
Rico Schüller
9ea9a053b9 d3dx9/tests: Add ID3DXEffectCompiler test. 2011-03-29 18:05:57 +02:00
Rico Schüller
f1bfecd616 d3dx9/tests: Add ID3DXEffect::GetPool() and ID3DXEffect::GetDevice() tests. 2011-03-29 18:05:53 +02:00
Rico Schüller
dccbfe32ad d3dx9: ID3DXEffect::QueryInterface() does not support IID_ID3DXBaseEffect. 2011-03-29 18:05:47 +02:00
Rico Schüller
adbfae9b2a d3dx9: Implement ID3DXEffect::GetDevice(). 2011-03-29 18:05:42 +02:00
Rico Schüller
96192306a0 d3dx9: Implement ID3DXEffect::GetPool(). 2011-03-29 18:05:38 +02:00
Rico Schüller
27209e6097 d3dx9: Fix some style issues. 2011-03-29 18:05:34 +02:00
Rico Schüller
2f3e9673a1 d3dx9: Add ID3DXEffectCompiler interface. 2011-03-29 18:05:29 +02:00
Rico Schüller
0dff8dd3ce d3dx9: Forward ID3DXEffect to ID3DXBaseEffect. 2011-03-29 18:05:18 +02:00
Rico Schüller
aaa06cfba4 d3dx9: Add ID3DXBaseEffect interface. 2011-03-29 18:02:03 +02:00
Rico Schüller
68f11dabd7 d3dx9/tests: Add refcount test for the device. 2011-03-29 17:48:42 +02:00
Rico Schüller
eb1faf6155 d3dx9: Handle pool and device in ID3DXEffect. 2011-03-29 17:48:37 +02:00
Rico Schüller
bb88fada4b d3dx9: Use size of variable instead of type. 2011-03-29 17:48:19 +02:00
Rico Schüller
be43a5c414 d3dx9: Fix HeapAlloc size in D3DXCreateEffectPool. 2011-03-29 17:48:10 +02:00
Francois Gouget
cb5e480faf d3dx9_36/tests: Replace a malloc() with HeapAlloc()+HeapFree(). 2011-03-16 14:14:25 +01:00
Rico Schüller
0dc91c4975 d3dx9_36: Start effect parsing. 2011-03-15 17:14:07 +01:00
Dylan Smith
ed3ce3c91b d3dx9/tests: Partially test front and back faces for D3DXCreateText. 2011-03-10 16:30:16 +01:00
Dylan Smith
b06a6c84ac d3dx9/tests: Added outline comparison tests for D3DXCreateText. 2011-03-10 16:30:15 +01:00
Dylan Smith
eec288a4c5 d3dx9/tests: Add basic tests for D3DXCreateText. 2011-03-10 16:30:15 +01:00
Dylan Smith
8245b46e60 d3dx9: Support triangulation of complex glyphs in D3DXCreateText. 2011-03-10 16:30:15 +01:00
Dylan Smith
3eee5b7476 d3dx9: D3DXCreateText implementation for simple glyphs. 2011-03-10 16:30:15 +01:00
Francois Gouget
41663974ad d3dx9_36/tests: Add a trailing '\n' to ok() calls. 2011-03-07 11:08:56 +01:00
David Adam
68da568f16 d3dx9_36: Implement ID3DXMesh_GetNumBytesPerVertex. 2011-03-04 16:26:01 +01:00
David Adam
23faba7eb1 d3dx9_36: Add a test for D3DXCreateBox. 2011-03-04 16:26:01 +01:00
Alexandre Julliard
45ead7fe85 d3dx9_36: Cleanup the fixme_once handling. 2011-02-24 12:20:25 +01:00
Matteo Bruni
85a578f782 d3dx9: Fix memory access for images with less than 4 bytes per pixel (Valgrind). 2011-02-23 19:38:26 +01:00
Dylan Smith
5fe7522ba1 d3dx9: Add stubs for D3DXCreateText. 2011-02-21 16:25:58 +01:00
Matteo Bruni
ffe65c2721 d3dx9/tests: Remove spurious assignment (LLVM/Clang). 2011-02-21 12:44:36 +01:00
Matteo Bruni
6505aed598 d3dx9: Remove an unnecessary initialization (LLVM/Clang). 2011-02-21 12:44:31 +01:00
Matteo Bruni
ed1b396b66 d3dx9: Remove a couple of spurious assignments (LLVM/Clang). 2011-02-21 12:44:27 +01:00
Austin English
e8a2fa28ea d3dx9_36/tests: Free memory after use (Valgrind). 2011-02-17 17:27:30 +01:00
David Adam
e57bbaab91 d3dx9_36: Add a few tests for D3DXCreateBox. 2011-02-15 17:11:50 +01:00
Austin English
517f6aa526 d3dx9_36: Make sure return values are used (LLVM/Clang). 2011-02-09 14:24:52 -06:00
Austin English
f9facad235 d3dx9_36/tests: Remove unused variable assignments (LLVM/Clang). 2011-02-07 10:13:46 -06:00
Michael Stefaniuc
c2bf9a6b79 d3dx9_36: COM cleanup for the ID3DXSprite iface. 2011-01-27 14:15:22 +01:00
Michael Stefaniuc
697a9a1ac5 d3dx9_36: COM cleanup for the ID3DXMesh iface. 2011-01-27 14:15:17 +01:00
Michael Stefaniuc
a9065082da d3dx9_36: COM cleanup for the ID3DXMatrixStack iface. 2011-01-27 14:15:13 +01:00
Michael Stefaniuc
7342f34ef7 d3dx9_36: COM cleanup for the ID3DXFont iface. 2011-01-27 14:15:08 +01:00
Michael Stefaniuc
7660526337 d3dx9_36: COM cleanup for the ID3DXBuffer iface. 2011-01-27 14:15:04 +01:00
Michael Stefaniuc
c84b8dbd3e d3dx9_36: COM cleanup for the ID3DXInclude iface. 2011-01-27 14:14:59 +01:00
Michael Stefaniuc
b88e09e221 d3dx9_36: COM cleanup for the ID3DXEffectPool iface. 2011-01-27 14:14:55 +01:00
Michael Stefaniuc
03321ad0fb d3dx9_36: COM cleanup for the ID3DXEffect iface. 2011-01-27 14:14:51 +01:00
Michael Stefaniuc
134cb5bfef d3dx9_36/tests: COM cleanup for the ID3DXInclude iface. 2011-01-26 15:00:13 +01:00
Michael Stefaniuc
303f84c409 d3dx9_36: Use an iface instead of an vtbl pointer in ID3DXConstantTableImpl. 2010-12-21 15:49:30 +01:00
Michael Stefaniuc
cdf56820a0 d3dx9_36: Use an iface instead of an vtbl pointer in ID3DXLineImpl. 2010-12-21 00:20:02 +01:00
Travis Athougies
d2055e6ea9 d3dx9_36/tests: Extended ID3DXConstantTable tests. 2010-12-02 12:47:42 +01:00
Travis Athougies
ca7405a9a1 d3dx9_36: Improved constant table parsing. 2010-12-02 12:47:42 +01:00
Matteo Bruni
9867c39133 d3dx9/tests: Fix a D3DXCheckTextureRequirements test failing on Windows. 2010-11-24 18:27:31 +01:00
Matteo Bruni
9517305c03 d3dx9/tests: Fix some tests to take into account POW2 texture capability flags. 2010-11-24 17:59:59 +01:00
Michael Stefaniuc
b6a1951925 d3dx9_36: Move 'static' to the beginning of the declaration. 2010-11-23 16:01:09 +01:00
Matteo Bruni
8c0a8ac514 d3dx9/tests: Remove a D3DXPlaneNormalize test. 2010-11-23 14:16:22 +01:00
Matteo Bruni
892502479c d3dx9: Implement D3DXFillVolumeTexture function. 2010-11-18 14:08:56 +01:00
Matteo Bruni
8f6cf460be d3dx9: Implement D3DXFillCubeTexture function. 2010-11-18 14:08:53 +01:00
Matteo Bruni
bffbf3460b d3dx9: Implement D3DXFillTexture function. 2010-11-18 14:08:50 +01:00
Matteo Bruni
0b4969f841 d3dx9: Add color key support to D3DXLoadSurfaceFromMemory. 2010-11-15 14:51:47 +01:00
Louis Lenders
aa75d068a4 d3dx9_36: Quiet a noisy fixme. 2010-11-12 15:43:08 +01:00
Matteo Bruni
b4a90b0fe8 d3dx9: Implement D3DXCreateVolumeTexture. 2010-11-09 17:08:21 +01:00
Matteo Bruni
c1843c8779 d3dx9: Implement D3DXCheckVolumeTextureRequirements. 2010-11-09 17:08:21 +01:00
Matteo Bruni
363d180a54 d3dx9: Skip D3DXCheckCubeTextureRequirement test if not supported. 2010-11-09 17:08:21 +01:00
Vincent Povirk
1d0f126d91 d3dx9_36: Fix an error path in D3DXLoadSurfaceFromFileInMemory.
If GetFrame fails, bitmapframe was not created and should not be released.
2010-11-09 11:44:39 +01:00
Vincent Povirk
31682b3dbe d3dx9_36: Don't check the image format in D3DXLoadSurfaceFromFileInMemory.
If the format is not supported, D3DXGetImageInfoFromFileInMemory will fail.
2010-11-09 11:44:32 +01:00
Matteo Bruni
390ba2c338 d3dx9: Implement D3DXCreateCubeTexture. 2010-11-04 16:29:59 +01:00
Matteo Bruni
6933766531 d3dx9: Implement D3DXCheckCubeTextureRequirements. 2010-11-04 16:29:57 +01:00
Matteo Bruni
a875f38301 d3dx9: Implement D3DXFilterTexture for cube textures. 2010-11-04 16:29:52 +01:00
Vincent Povirk
a2e5321b01 d3dx9_36: Check for the TGA container format. 2010-10-22 12:01:55 +02:00
Matteo Bruni
d32a07a04b d3dx9: Initialize a variable in ID3DXSpriteImpl_Flush. 2010-10-19 17:05:13 +02:00
Matteo Bruni
454dce9162 d3dx9: Report usage of unsupported sprite flags. 2010-10-18 11:45:42 +02:00
Matteo Bruni
40d57b70ed d3dx9: Store transform matrix per-sprite. 2010-10-18 11:45:32 +02:00
Matteo Bruni
550abd41a2 d3dx9: Fix D3DXFilterTexture return value. 2010-10-18 11:45:26 +02:00
Matteo Bruni
ebbf519b78 d3dx9: Search for a compatible pixel format in D3DXCheckTextureRequirements. 2010-10-18 11:45:21 +02:00
Christian Costa
128cf64371 d3dx9: Constant table parsing foundations. 2010-10-13 12:03:05 +02:00
Matteo Bruni
b4736bd767 d3dx9/tests: Fix a shader test failure. 2010-10-13 12:01:03 +02:00
Misha Koshelev
09af2a2bf9 d3dx9_36: Implement D3DXCreateCylinder. 2010-09-28 17:33:17 +02:00
Misha Koshelev
63dbf6ee3f d3dx9_36/tests: Add tests for D3DXCreateCylinder. 2010-09-27 14:10:46 +02:00