Christian Costa : d3drm: Load transform matrix and aply it to the current frame.
Alexandre Julliard
julliard at winehq.org
Thu May 17 13:45:59 CDT 2012
Module: wine
Branch: master
Commit: 8b405d5dc93bb764d32627f78e476f7614918390
URL: http://source.winehq.org/git/wine.git/?a=commit;h=8b405d5dc93bb764d32627f78e476f7614918390
Author: Christian Costa <titan.costa at gmail.com>
Date: Thu May 17 10:09:31 2012 +0200
d3drm: Load transform matrix and aply it to the current frame.
---
dlls/d3drm/d3drm.c | 21 +++++++++++++++++++++
1 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/dlls/d3drm/d3drm.c b/dlls/d3drm/d3drm.c
index ba666dc..a96ff52 100644
--- a/dlls/d3drm/d3drm.c
+++ b/dlls/d3drm/d3drm.c
@@ -1423,6 +1423,27 @@ HRESULT load_data(IDirect3DRM3* iface, LPDIRECTXFILEDATA data_object, LPIID* GUI
FIXME("Processing material not supported yet\n");
}
}
+ else if (IsEqualGUID(guid, &TID_D3DRMFrameTransformMatrix))
+ {
+ TRACE("Found TID_D3DRMFrameTransformMatrix\n");
+
+ if (parent_frame)
+ {
+ D3DRMMATRIX4D matrix;
+ DWORD size;
+
+ TRACE("Load Frame Transform Matrix data\n");
+
+ size = sizeof(matrix);
+ hr = IDirectXFileData_GetData(data_object, NULL, &size, (void**)matrix);
+ if ((hr != DXFILE_OK) || (size != sizeof(matrix)))
+ goto end;
+
+ hr = IDirect3DRMFrame3_AddTransform(parent_frame, D3DRMCOMBINE_REPLACE, matrix);
+ if (FAILED(hr))
+ goto end;
+ }
+ }
else
{
FIXME("Found unknown TID %s\n", debugstr_guid(guid));
More information about the wine-cvs
mailing list