Module: wine Branch: master Commit: 361cf636cc6d2a4cb7c382f70887ff62aa9337b2 URL: http://source.winehq.org/git/wine.git/?a=commit;h=361cf636cc6d2a4cb7c382f708...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Tue Nov 27 22:10:56 2012 +0100
d3dx9: Avoid LPD3DXSKININFO.
---
dlls/d3dx9_36/skin.c | 8 ++++---- dlls/d3dx9_36/tests/mesh.c | 6 +++--- include/d3dx9anim.h | 10 +++++----- include/d3dx9mesh.h | 10 ++++++---- 4 files changed, 18 insertions(+), 16 deletions(-)
diff --git a/dlls/d3dx9_36/skin.c b/dlls/d3dx9_36/skin.c index 8ef7fbe..2c4ab60 100644 --- a/dlls/d3dx9_36/skin.c +++ b/dlls/d3dx9_36/skin.c @@ -297,7 +297,7 @@ static LPD3DXMATRIX WINAPI ID3DXSkinInfoImpl_GetBoneOffsetMatrix(ID3DXSkinInfo * return &This->bones[bone_num].transform; }
-static HRESULT WINAPI ID3DXSkinInfoImpl_Clone(ID3DXSkinInfo *iface, LPD3DXSKININFO *skin_info) +static HRESULT WINAPI ID3DXSkinInfoImpl_Clone(ID3DXSkinInfo *iface, ID3DXSkinInfo **skin_info) { ID3DXSkinInfoImpl *This = impl_from_ID3DXSkinInfo(iface);
@@ -449,8 +449,8 @@ static const struct ID3DXSkinInfoVtbl ID3DXSkinInfoImpl_Vtbl = ID3DXSkinInfoImpl_ConvertToIndexedBlendedMesh };
-HRESULT WINAPI D3DXCreateSkinInfo(DWORD num_vertices, CONST D3DVERTEXELEMENT9 *declaration, - DWORD num_bones, LPD3DXSKININFO *skin_info) +HRESULT WINAPI D3DXCreateSkinInfo(DWORD num_vertices, const D3DVERTEXELEMENT9 *declaration, + DWORD num_bones, ID3DXSkinInfo **skin_info) { HRESULT hr; ID3DXSkinInfoImpl *object = NULL; @@ -490,7 +490,7 @@ error: return hr; }
-HRESULT WINAPI D3DXCreateSkinInfoFVF(DWORD num_vertices, DWORD fvf, DWORD num_bones, LPD3DXSKININFO *skin_info) +HRESULT WINAPI D3DXCreateSkinInfoFVF(DWORD num_vertices, DWORD fvf, DWORD num_bones, ID3DXSkinInfo **skin_info) { HRESULT hr; D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]; diff --git a/dlls/d3dx9_36/tests/mesh.c b/dlls/d3dx9_36/tests/mesh.c index 97d7e2d..35e38e4 100644 --- a/dlls/d3dx9_36/tests/mesh.c +++ b/dlls/d3dx9_36/tests/mesh.c @@ -1859,9 +1859,9 @@ static CALLBACK HRESULT ID3DXAllocateHierarchyImpl_DestroyMeshContainer(ID3DXAll }
static CALLBACK HRESULT ID3DXAllocateHierarchyImpl_CreateMeshContainer(ID3DXAllocateHierarchy *iface, - LPCSTR name, CONST D3DXMESHDATA *mesh_data, CONST D3DXMATERIAL *materials, - CONST D3DXEFFECTINSTANCE *effects, DWORD num_materials, CONST DWORD *adjacency, - LPD3DXSKININFO skin_info, LPD3DXMESHCONTAINER *new_mesh_container) + const char *name, const D3DXMESHDATA *mesh_data, const D3DXMATERIAL *materials, + const D3DXEFFECTINSTANCE *effects, DWORD num_materials, const DWORD *adjacency, + ID3DXSkinInfo *skin_info, D3DXMESHCONTAINER **new_mesh_container) { LPD3DXMESHCONTAINER mesh_container = NULL; int i; diff --git a/include/d3dx9anim.h b/include/d3dx9anim.h index 62fa6c0..71a18f0 100644 --- a/include/d3dx9anim.h +++ b/include/d3dx9anim.h @@ -98,7 +98,7 @@ typedef struct _D3DXMESHCONTAINER LPD3DXEFFECTINSTANCE pEffects; DWORD NumMaterials; DWORD *pAdjacency; - LPD3DXSKININFO pSkinInfo; + ID3DXSkinInfo *pSkinInfo; struct _D3DXMESHCONTAINER *pNextMeshContainer; } D3DXMESHCONTAINER, *LPD3DXMESHCONTAINER;
@@ -171,10 +171,10 @@ typedef interface ID3DXAnimationController *LPD3DXANIMATIONCONTROLLER; DECLARE_INTERFACE(ID3DXAllocateHierarchy) { STDMETHOD(CreateFrame)(THIS_ LPCSTR Name, LPD3DXFRAME *new_frame) PURE; - STDMETHOD(CreateMeshContainer)(THIS_ LPCSTR Name, CONST D3DXMESHDATA *mesh_data, - CONST D3DXMATERIAL *materials, CONST D3DXEFFECTINSTANCE *effect_instances, - DWORD num_materials, CONST DWORD *adjacency, LPD3DXSKININFO skin_info, - LPD3DXMESHCONTAINER *new_mesh_container) PURE; + STDMETHOD(CreateMeshContainer)(THIS_ const char *name, const D3DXMESHDATA *mesh_data, + const D3DXMATERIAL *materials, const D3DXEFFECTINSTANCE *effect_instances, + DWORD num_materials, const DWORD *adjacency, ID3DXSkinInfo *skin_info, + D3DXMESHCONTAINER **new_mesh_container) PURE; STDMETHOD(DestroyFrame)(THIS_ LPD3DXFRAME frame) PURE; STDMETHOD(DestroyMeshContainer)(THIS_ LPD3DXMESHCONTAINER mesh_container) PURE; }; diff --git a/include/d3dx9mesh.h b/include/d3dx9mesh.h index 3a26b54..5545568 100644 --- a/include/d3dx9mesh.h +++ b/include/d3dx9mesh.h @@ -529,7 +529,7 @@ DECLARE_INTERFACE_(ID3DXSkinInfo, IUnknown) STDMETHOD_(LPCSTR, GetBoneName)(THIS_ DWORD bone) PURE; STDMETHOD(SetBoneOffsetMatrix)(THIS_ DWORD bone, CONST D3DXMATRIX* bone_transform) PURE; STDMETHOD_(LPD3DXMATRIX, GetBoneOffsetMatrix)(THIS_ DWORD bone) PURE; - STDMETHOD(Clone)(THIS_ LPD3DXSKININFO* skin_info) PURE; + STDMETHOD(Clone)(THIS_ ID3DXSkinInfo **skin_info) PURE; STDMETHOD(Remap)(THIS_ DWORD num_vertices, DWORD* vertex_remap) PURE; STDMETHOD(SetFVF)(THIS_ DWORD FVF) PURE; STDMETHOD(SetDeclaration)(THIS_ CONST D3DVERTEXELEMENT9* declaration) PURE; @@ -700,9 +700,11 @@ HRESULT WINAPI D3DXCreateSPMesh(LPD3DXMESH, CONST DWORD *, CONST D3DXATTRIBUTEWE HRESULT WINAPI D3DXCreatePMeshFromStream(struct IStream *stream, DWORD flags, struct IDirect3DDevice9 *device, struct ID3DXBuffer **materials, struct ID3DXBuffer **effect_instances, DWORD *material_count, struct ID3DXPMesh **mesh); -HRESULT WINAPI D3DXCreateSkinInfo(DWORD, CONST D3DVERTEXELEMENT9 *, DWORD, LPD3DXSKININFO *); -HRESULT WINAPI D3DXCreateSkinInfoFVF(DWORD, DWORD, DWORD, LPD3DXSKININFO *); -HRESULT WINAPI D3DXCreateSkinInfoFromBlendedMesh(LPD3DXBASEMESH, DWORD, CONST D3DXBONECOMBINATION *, LPD3DXSKININFO *); +HRESULT WINAPI D3DXCreateSkinInfo(DWORD vertex_count, const D3DVERTEXELEMENT9 *declaration, + DWORD bone_count, ID3DXSkinInfo **skin_info); +HRESULT WINAPI D3DXCreateSkinInfoFVF(DWORD vertex_count, DWORD fvf, DWORD bone_count, ID3DXSkinInfo **skin_info); +HRESULT WINAPI D3DXCreateSkinInfoFromBlendedMesh(ID3DXBaseMesh *mesh, DWORD bone_count, + const D3DXBONECOMBINATION *bone_combination_table, ID3DXSkinInfo **skin_info); HRESULT WINAPI D3DXCreatePatchMesh(const D3DXPATCHINFO *patch_info, DWORD patch_count, DWORD vertex_count, DWORD flags, const D3DVERTEXELEMENT9 *declaration, struct IDirect3DDevice9 *device, struct ID3DXPatchMesh **mesh);