Commit graph

358 commits

Author SHA1 Message Date
Frédéric Delanoy
8ec82dfaae d3drm: Fix a leak (coverity). 2012-12-24 13:33:06 +01:00
Christian Costa
f0dd310018 d3drm: Fix return error code. 2012-12-17 20:31:24 +01:00
Christian Costa
871aa9d14d d3drm: Check params in IDirect3DRMMeshBuilder2Impl_GetVertices + tests. 2012-12-17 20:31:23 +01:00
Christian Costa
ec51c5f737 d3drm: Face data size is in number of DWORD. 2012-12-14 11:56:53 +01:00
Christian Costa
53e37121a4 d3drm: Handle texture load proc when loading mesh data. 2012-12-14 11:56:48 +01:00
Christian Costa
7a5b12c8ef d3drm: Handle all materials in material list and create corresponding mesh groups + tests. 2012-12-13 20:18:05 +01:00
Christian Costa
6595cdd41f d3drm: Load object only if it is top level and requested or if it is part of another object. 2012-12-12 20:18:13 +01:00
Henri Verbeet
4904156946 d3drm: Avoid LPDIRECT3DDEVICE. 2012-11-21 13:25:50 +01:00
Henri Verbeet
55ee76431c d3drm: Avoid LPDIRECT3DDEVICE2. 2012-11-21 13:25:45 +01:00
Henri Verbeet
0ac2b823b5 d3drm: Avoid LPDIRECT3DVIEWPORT. 2012-11-21 13:25:38 +01:00
Henri Verbeet
0a7e2accc4 d3drm: Avoid LPDIRECTDRAWCLIPPER. 2012-11-20 11:44:16 +01:00
Henri Verbeet
34dd6ff2e4 d3drm: Avoid LPDIRECTDRAWSURFACE. 2012-11-20 11:44:11 +01:00
Christian Costa
1b2aacc97b d3drm: Implement texture SetAppData and GetAppData. 2012-11-13 18:10:21 +01:00
Frédéric Delanoy
1ae9acb0df d3drm: Fix a leak (coverity). 2012-11-08 15:37:53 +01:00
Christian Costa
de690b8dae d3drm: Move mesh builder data cleaning code into a separate function. 2012-10-31 18:13:05 +01:00
Christian Costa
43d3ba36a1 d3drm: Init vertices before creating group. 2012-10-31 18:09:19 +01:00
Christian Costa
2978dbea0b d3drm: When creating a mesh, if all faces have the same number of vertex, set vertex_per_face and don't put nb indices in face data. 2012-10-25 16:51:59 +02:00
Christian Costa
cb131bf030 d3drm: Fix normals computation and add according tests. 2012-10-22 12:06:21 +02:00
Christian Costa
466c244d18 d3drm: Enum all materials even if only the first one is handled. 2012-10-22 12:05:53 +02:00
Christian Costa
5e1d854ee5 d3drm: Fix child leak. 2012-10-22 12:05:48 +02:00
Christian Costa
ff0e82502f d3drm: Fix wrong condition. 2012-10-22 12:05:44 +02:00
André Hentschel
2a42410e7c d3drm: Fix memcpy arguments for matrix transformations (coverity). 2012-10-19 11:16:16 +02:00
André Hentschel
c10d95b64a d3drm: Add SceneBackground handling. 2012-08-13 17:01:43 +02:00
Michael Stefaniuc
9e183990f2 d3drm: Make IDirect3DRMx_CreateFrame() more forgiving about the parent frame. 2012-07-02 10:54:49 +02:00
Michael Stefaniuc
4754a3d605 d3drm: Get rid of unsafe_impl_from_IDirect3DRMFrame2(). 2012-06-27 11:36:41 +02:00
André Hentschel
6f3c571a05 d3drm/tests: Destroy window after use. 2012-06-19 11:10:23 +02:00
André Hentschel
4dc0ee57f6 d3drm: Implement IDirect3DRMViewportX_GetClassName. 2012-06-18 11:59:40 +02:00
André Hentschel
d9ec2b6dfd d3drm: Implement IDirect3DRMWinDevice_GetClassName. 2012-06-18 11:59:40 +02:00
André Hentschel
069e93f715 d3drm: Implement IDirect3DRMDeviceX_GetClassName. 2012-06-18 11:59:40 +02:00
André Hentschel
e5de199289 d3drm: Implement IDirect3DRMTextureX_GetClassName. 2012-06-18 11:59:40 +02:00
André Hentschel
b2de41308e d3drm: Fix initial specular value of the Material2 interface. 2012-06-18 11:59:40 +02:00
André Hentschel
d71bf7fdb7 d3drm: Implement IDirect3DRMX_CreateTexture. 2012-06-18 11:59:40 +02:00
André Hentschel
029318107b d3drm: Implement IDirect3DRMMaterial2_GetClassName. 2012-06-18 11:59:40 +02:00
André Hentschel
00773feafd d3drm: Implement IDirect3DRMMesh_GetClassName. 2012-06-18 11:59:40 +02:00
André Hentschel
ac5b932363 d3drm: Implement IDirect3DRMX_CreateMesh. 2012-06-18 11:59:40 +02:00
André Hentschel
afe616b588 d3drm: Implement IDirect3DRMMeshBuilderX_GetClassName. 2012-06-15 10:31:53 +02:00
André Hentschel
546a3dcffc d3drm: Implement IDirect3DRMLight_GetClassName. 2012-06-15 10:31:49 +02:00
André Hentschel
9014211796 d3drm: Implement IDirect3DRMFrameX_GetClassName. 2012-06-15 10:31:33 +02:00
André Hentschel
0a0fe20988 d3drm/tests: Add GetClassName tests. 2012-06-13 21:35:42 +02:00
Francois Gouget
04f19989d0 d3drm: Make Direct3DRM{Frame,Light,Visual}Array_create() static. 2012-06-12 11:10:22 +02:00
Francois Gouget
86a2fcf614 d3drm: Move up the IDirect3DRM{Frame,Light,Visual}Array implementations to avoid forward declarations. 2012-06-12 11:10:17 +02:00
Christian Costa
f1cd213931 d3drm: Implement IDirect3DRMMeshImpl_SetGroupColorRGB. 2012-06-11 11:25:18 +02:00
Christian Costa
85f4fda840 d3drm: Free all mesh resources when releasing mesh object. 2012-06-11 11:25:08 +02:00
Christian Costa
a77fd778c2 d3drm: Free texture object when releasing mesh builder object. 2012-06-11 11:25:03 +02:00
Christian Costa
0023ddf117 d3drm: Handle texture associated with the material when loading a mesh. 2012-06-11 11:24:58 +02:00
Christian Costa
422d57e7d2 d3drm: Fix vertex index test and print a warning when it is out of range. 2012-06-11 11:24:40 +02:00
André Hentschel
89d43a3dd7 d3drm: Improve IDirect3DRMWinDevice_HandlePaint stub. 2012-06-07 16:07:20 +02:00
André Hentschel
95bedf4c11 d3drm: Improve IDirect3DRMDeviceX_Update stub. 2012-06-07 16:07:20 +02:00
André Hentschel
2c6f238281 d3drm: Improve IDirect3DRMViewportX_Render stub. 2012-06-07 16:07:19 +02:00
André Hentschel
8558a948a9 d3drm: Improve IDirect3DRMViewportX_Clear stub. 2012-06-07 16:07:19 +02:00
André Hentschel
7e001ae60e d3drm: Implement IDirect3DRMViewportX_[Get|Set]Projection. 2012-06-07 16:07:19 +02:00
André Hentschel
9a8b788dc5 d3drm: Implement IDirect3DRMViewportX_[Get|Set]Field. 2012-06-07 16:07:18 +02:00
André Hentschel
48b0666d7f d3drm: Implement IDirect3DRMViewportX_[Get|Set]Front. 2012-06-07 16:07:17 +02:00
André Hentschel
ece2ca78ea d3drm: Implement IDirect3DRMViewportX_[Get|Set]Back. 2012-06-07 16:07:17 +02:00
André Hentschel
6e9cbf1b2e d3drm: Implement IDirect3DRMLight_[Get|Set]Penumbra. 2012-06-07 16:07:16 +02:00
André Hentschel
e89d2f4d34 d3drm: Implement IDirect3DRMLight_[Get|Set]Umbra. 2012-06-07 16:07:16 +02:00
André Hentschel
5fc563b0f0 d3drm: Implement IDirect3DRMLight_[Get|Set]QuadraticAttenuation. 2012-06-07 16:07:15 +02:00
André Hentschel
b04eceed45 d3drm: Implement IDirect3DRMLight_[Get|Set]LinearAttenuation. 2012-06-07 16:07:14 +02:00
André Hentschel
2f5608877d d3drm: Implement IDirect3DRMLight_[Get|Set]ConstantAttenuation. 2012-06-07 16:07:14 +02:00
Michael Stefaniuc
8e4d76bf2c d3drm/tests: Remove stray backslashes at end of lines. 2012-06-07 10:33:10 +02:00
Christian Costa
6aa77edfb3 d3drm: Implement IDirect3DRMMeshBuilderX_SetMaterial. 2012-06-06 12:44:29 +02:00
Christian Costa
8080528fc4 d3drm: Pass texture of mesh builder to newly created mesh. 2012-06-06 12:41:26 +02:00
Christian Costa
db6b10e22d d3drm: Implement IDirect3DRMMesh_SetGroupTexture. 2012-06-06 12:40:42 +02:00
Christian Costa
23db9d8bed d3drm: Pass mesh builder color to newly created mesh. 2012-06-05 19:58:12 +02:00
Christian Costa
b7a74b0204 d3drm: Implement IDirect3DRMMeshImpl_SetGroupColor. 2012-06-05 19:58:12 +02:00
Christian Costa
ab08e5938a d3drm: Load mesh color to mesh builder. 2012-06-05 19:58:11 +02:00
Christian Costa
ab8619e920 d3drm: Implement IDirect3DRMMesh_GetGroupColor. 2012-06-05 19:58:11 +02:00
Christian Costa
08cfdc1191 d3drm: Implement IDirect3DRMMeshBuilderX_SetColor and IDirect3DRMMeshBuilderX_SetColorRGB. 2012-06-05 19:58:11 +02:00
Francois Gouget
1f6d078e1b Assorted spelling fixes. 2012-06-04 12:17:54 +02:00
Christian Costa
38ba9bacd0 d3drm: Implement IDirect3DRMMeshImpl_SetGroupMaterial and forward material from mesh builder to created mesh. 2012-06-01 13:24:20 +02:00
Christian Costa
84f2e0e9ac d3drm: Handle material list in mesh. 2012-06-01 13:24:17 +02:00
Christian Costa
8d9d97be0f d3drm: Generate normals automatically when there are not present in the x file. 2012-05-30 17:17:56 +02:00
Christian Costa
3fbe4914bd d3drm: Implement IDirect3DRMMeshImpl_GetGroupMaterial. 2012-05-30 17:17:55 +02:00
Christian Costa
b340501a93 d3drm: Implement IDirect3DRMMesh_GetGroupTexture. 2012-05-30 17:17:55 +02:00
Christian Costa
6e15d91927 d3drm: Implement IDirect3DRMFrameXImpl_GetLights and IDirect3DRMLightArray interface. 2012-05-30 17:17:53 +02:00
André Hentschel
d04d994093 d3drm: Implement IDirect3DRMLight_[Get|Set]Range. 2012-05-29 10:55:40 +02:00
André Hentschel
d2a52d1e17 d3drm: Implement IDirect3DRMLight_[Get|Set]Color and IDirect3DRMLight_SetColorRGB. 2012-05-29 10:55:34 +02:00
André Hentschel
8fa6a0b4fd d3drm: Implement IDirect3DRMLight_[Get|Set]Type. 2012-05-29 10:55:19 +02:00
André Hentschel
fde35902a7 d3drm: Improve stub for IDirect3DRMWinDevice_HandleActivate. 2012-05-29 10:54:58 +02:00
André Hentschel
5ab7b75ceb d3drm: Implement width and height handling in device interfaces. 2012-05-29 10:54:47 +02:00
André Hentschel
2ab69db4c3 d3drm: Implement IDirect3DRMDeviceX_[Get|Set]RenderMode. 2012-05-29 10:54:33 +02:00
André Hentschel
66262eea55 d3drm: Implement IDirect3DRMDeviceX_[Get|Set]Quality. 2012-05-29 10:54:27 +02:00
André Hentschel
2268f8c7f1 d3drm: Implement IDirect3DRMDeviceX_[Get|Set]Dither. 2012-05-29 10:54:15 +02:00
Christian Costa
a33037abd1 d3drm: Add support for D3DRMLOAD_FROMFILE in IDirect3DRMMeshBuilder3_Load. 2012-05-25 13:44:19 +02:00
Christian Costa
b8a504729f d3drm: Add stub interface for IDirectTextureX. 2012-05-24 20:08:44 +02:00
Christian Costa
2d09fb800b d3drm: Add some tests for mesh default material and texture. 2012-05-24 20:08:44 +02:00
Christian Costa
8f86a0bbdd d3drm: Material object is taken into account when a mesh references it. 2012-05-23 17:49:59 +02:00
Christian Costa
a442fcc9c6 d3drm: Implement IDirect3DRMXImpl_CreateMaterial. 2012-05-23 17:49:59 +02:00
Christian Costa
5b11bd8bac d3drm: Implement IDirect3DRMMaterial2 interface. 2012-05-23 17:49:57 +02:00
Christian Costa
bbbe6d3e71 d3drm: Fix method name Material to CreateMaterial. 2012-05-23 17:41:19 +02:00
Christian Costa
63f39c9196 d3drm: Set vertices data of the created mesh. 2012-05-23 17:41:14 +02:00
Christian Costa
24817de04e d3drm: Implement IDirect3DRMMesh_GetVertices. 2012-05-22 18:06:13 +02:00
Christian Costa
b068615ef3 d3drm: Implement IDirect3DRMMesh_SetVertices. 2012-05-22 18:06:11 +02:00
Christian Costa
f0d3f207ab d3drm: Implement IDirect3DRMMesh_GetGroup. 2012-05-22 18:06:04 +02:00
Christian Costa
5a979deeb3 d3drm: Implement IDirect3DRMMesh_GetGroupCount. 2012-05-21 20:21:56 +02:00
Christian Costa
8bba7cd226 d3drm: Improve IDirect3DRMMeshBuilder3_CreateMesh and forward IDirect3DRMMeshBuilder2_CreateMesh to it. 2012-05-21 20:21:51 +02:00
Christian Costa
43fed89d04 d3drm: Implement IDirect3DRMMesh_AddGroup. 2012-05-21 20:21:46 +02:00
Christian Costa
e07f824241 d3drm: Implement IDirect3DRMMeshBuilderX_Scale method. 2012-05-21 20:21:32 +02:00
Francois Gouget
2b89bc528c d3drm: Make load_data() static. 2012-05-21 11:34:36 +02:00
Christian Costa
795bea989d d3drm: IDirect3DRM3_Load implementation is correct now. 2012-05-18 18:12:54 +02:00
Christian Costa
22856e9c96 d3drm: Hande parent when creating a new frame. 2012-05-17 17:21:15 +02:00
Christian Costa
8aba0e2ec3 d3drm: Improve traces of AddRef and Release of IDirect3DRMLight. 2012-05-17 17:21:07 +02:00
Christian Costa
2dbbecbb9e d3drm: Display new ref in trace for AddRef and Release for IDirect3DRMMesh. 2012-05-17 17:20:57 +02:00
Christian Costa
9e44f89d6b d3drm: Implement IDirect3DRMFrameX_AddTransform. 2012-05-17 17:20:51 +02:00
Christian Costa
8b405d5dc9 d3drm: Load transform matrix and aply it to the current frame. 2012-05-17 17:20:43 +02:00
Christian Costa
20bf183726 d3drm: Free visual and light resources when releasing frame. 2012-05-16 20:27:28 +02:00
Christian Costa
3447f17230 d3drm: Attach mesh to the parent frame if any. 2012-05-16 20:27:27 +02:00
Christian Costa
6d47694bdf d3drm: Load all sub-objects when a frame is found. 2012-05-16 20:27:26 +02:00
Christian Costa
37c427f54a d3drm: Implement IDirect3DRMFrame2Impl_GetVisuals and IDirect3DRMVisualArray interface. 2012-05-16 20:27:25 +02:00
Christian Costa
0013fc1ca7 d3drm: Move loading code from IDirect3DRM3Impl_Load to a separate function so it can be called recursively. 2012-05-16 20:27:24 +02:00
Christian Costa
c436887483 d3drm: Retrieve mesh name at loading time. Implement GetName and SetName. 2012-05-15 17:02:04 +02:00
Christian Costa
4a53e89c11 d3drm: Move some unsafe_impl_from_* call to where variables are declared. 2012-05-10 08:41:15 +02:00
Christian Costa
3e24242618 d3drm/tests: Fix error message. 2012-05-10 08:31:13 +02:00
Christian Costa
43c4c4b1c5 d3drm: Implement IDirect3DRMFrameX_GetTransform. 2012-05-09 11:55:42 +02:00
Christian Costa
df36fca97f d3drm: Implement IDirect3DRMFrameX_GetChildren method and IDirect3DRMFrameArray interface. 2012-05-07 17:11:27 +02:00
Christian Costa
722efadc8d d3drm: Implement IDirect3DRMFrameX_GetParent and update tests. 2012-05-07 17:09:35 +02:00
André Hentschel
9c19ba63a8 d3drm/tests: Add tests for handling lights. 2012-05-02 20:21:04 +02:00
André Hentschel
2944d233b8 d3drm: Implement IDirect3DRMFrameX_DeleteLight. 2012-05-02 20:20:48 +02:00
André Hentschel
cfa297e253 d3drm: Implement IDirect3DRMFrameX_AddLight. 2012-05-02 20:20:39 +02:00
André Hentschel
107b3d2c19 d3drm: Add IDirect3DRMLight interface. 2012-05-02 20:20:34 +02:00
André Hentschel
782c543abb d3drm/tests: Add tests for handling Visuals. 2012-05-01 14:45:15 +02:00
André Hentschel
154c1658d3 d3drm: Implement IDirect3DRMFrameX_DeleteVisual. 2012-05-01 14:45:11 +02:00
André Hentschel
acfb249af6 d3drm: Implement IDirect3DRMFrameX_AddVisual. 2012-05-01 14:45:03 +02:00
Francois Gouget
118ea982f1 d3drm/tests: Make object_load_callback() static. 2012-04-20 12:00:06 +02:00
Christian Costa
4001e60e34 d3drm: Implement IDirect3DRMFrameX_DeleteChild. 2012-04-17 20:09:05 +02:00
Christian Costa
470468c72e d3drm: Implement IDirect3DRMFrameX_AddChild. 2012-04-17 20:08:25 +02:00
Christian Costa
efba6cd03b d3drm: Pass the first requested interface when notifying the application. 2012-04-16 18:56:16 +02:00
Michael Stefaniuc
72d7ce28f0 d3drm: Remove leftover return statement (Smatch). 2012-04-16 11:51:20 +02:00
Christian Costa
cde9a571c9 d3drm: Display filename when loading data from a file. 2012-04-11 18:15:16 +02:00
Christian Costa
bd484dca06 d3drm: Implement CreateMesh method and stubbed IDirect3DRMMesh interface. 2012-04-02 18:34:48 +02:00
Christian Costa
4d53115cb9 d3drm: Add support for frame with fake data in IDirect3DRMX:Load methods + tests. 2012-04-02 18:33:43 +02:00
Christian Costa
5763eb1641 d3drm: Make IDirect3DRMMeshBuilderX stub return D3DRM_OK. 2012-04-02 18:33:35 +02:00
Christian Costa
756f29641b d3drm: Partial implementation of IDirec3DRM:Load method + tests. 2012-03-29 20:49:34 +02:00
Christian Costa
db0ad52b49 d3drm: Move mesh loading code into a separate function so it can be shared. 2012-03-29 20:49:34 +02:00
Francois Gouget
d2244057a6 d3drm/tests: Fix compilation on systems that don't support nameless unions. 2012-03-26 12:41:26 +02:00
Christian Costa
7a320e5ca4 d3drm: Implement SetTextureCoordinates. 2012-03-16 15:37:29 +01:00
Christian Costa
b89c32b2a1 d3drm: If there is no texture coordinates in loaded mesh, generate default texture coordinates for each vertex. 2012-03-16 15:37:19 +01:00
Christian Costa
ea532f633c d3drm: Add refcount info to AddRef and Release traces. 2012-03-16 15:36:58 +01:00
Christian Costa
549f8796dd d3drm: Texture callback cannot be passed directly. Texture object argument is different so disable it for now. 2012-03-16 15:36:30 +01:00
Christian Costa
c6ce077f41 d3drm: Remove "partial stub" mention of forwarded methods. 2012-03-16 15:36:25 +01:00
Christian Costa
7294b417e3 d3drm: Complete Load method by adding normals indices and terminating null DWORD to faces data + tests. 2012-03-14 17:53:59 +01:00
Christian Costa
5b1cc4682b d3drm: Get data from the right objects (sub-objects). 2012-03-14 17:53:43 +01:00
Christian Costa
0233344799 d3drm: Fix some tests conditions. 2012-03-14 17:52:53 +01:00
Christian Costa
fe339ba25b d3drm: Fix leakage of pData2 on error. 2012-03-13 17:44:33 +01:00
Christian Costa
ccb38b2d9f d3drm: Fix leakage of This->pCoords2d when releasing object. 2012-03-13 17:44:32 +01:00
Christian Costa
28745b6f98 d3drm: Turn some FIXME into TRACE. 2012-03-13 17:44:32 +01:00
André Hentschel
748bb3e2e7 d3drm/tests: Add GetParent NULL pointer test. 2012-03-13 10:54:03 +01:00
André Hentschel
f5dfa21115 d3drm/tests: Add tests for IDirect3DRMFrameArray_GetElement. 2012-03-13 10:54:03 +01:00
André Hentschel
8eae13fd4c d3drm/tests: Add more tests. 2012-01-23 16:06:53 +01:00
André Hentschel
dc700123cb d3drm: Forward all IUnknown methods from IDirect3DRMFrame3. 2012-01-23 16:06:53 +01:00