[PATCH 3/5] d3dx9: Avoid LPD3DXPATCHMESH.

Henri Verbeet hverbeet at codeweavers.com
Mon Nov 26 15:52:39 CST 2012


---
 include/d3dx9anim.h |    2 +-
 include/d3dx9mesh.h |    5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/include/d3dx9anim.h b/include/d3dx9anim.h
index 975f1df..62fa6c0 100644
--- a/include/d3dx9anim.h
+++ b/include/d3dx9anim.h
@@ -86,7 +86,7 @@ typedef struct _D3DXMESHDATA
     {
         LPD3DXMESH pMesh;
         LPD3DXPMESH pPMesh;
-        LPD3DXPATCHMESH pPatchMesh;
+        ID3DXPatchMesh *pPatchMesh;
     } DUMMYUNIONNAME;
 } D3DXMESHDATA, *LPD3DXMESHDATA;
 
diff --git a/include/d3dx9mesh.h b/include/d3dx9mesh.h
index 2283f4e..3a26b54 100644
--- a/include/d3dx9mesh.h
+++ b/include/d3dx9mesh.h
@@ -492,7 +492,7 @@ DECLARE_INTERFACE_(ID3DXPatchMesh, IUnknown)
     STDMETHOD(UnlockAttributeBuffer)(THIS) PURE;
     STDMETHOD(GetTessSize)(THIS_ FLOAT tess_level, DWORD adaptive, DWORD* num_triangles, DWORD* num_vertices) PURE;
     STDMETHOD(GenerateAdjacency)(THIS_ FLOAT tolerance) PURE;
-    STDMETHOD(CloneMesh)(THIS_ DWORD options, CONST D3DVERTEXELEMENT9* declaration, LPD3DXPATCHMESH *clone_mesh) PURE;
+    STDMETHOD(CloneMesh)(THIS_ DWORD options, const D3DVERTEXELEMENT9 *declaration, ID3DXPatchMesh **clone_mesh) PURE;
     STDMETHOD(Optimize)(THIS_ DWORD flags) PURE;
     STDMETHOD(SetDisplaceParam)(THIS_ struct IDirect3DBaseTexture9 *texture, D3DTEXTUREFILTERTYPE min_filter,
             D3DTEXTUREFILTERTYPE mag_filter, D3DTEXTUREFILTERTYPE mip_filter, D3DTEXTUREADDRESS wrap,
@@ -801,7 +801,8 @@ HRESULT WINAPI D3DXUVAtlasCreate(LPD3DXMESH, UINT, FLOAT, UINT, UINT, FLOAT, DWO
 HRESULT WINAPI D3DXUVAtlasPack(ID3DXMesh *, UINT, UINT, FLOAT, DWORD, CONST DWORD *, LPD3DXUVATLASCB, FLOAT, LPVOID, DWORD, LPD3DXBUFFER);
 HRESULT WINAPI D3DXUVAtlasPartition(LPD3DXMESH, UINT, FLOAT, DWORD, CONST DWORD *, CONST DWORD *, CONST FLOAT *, LPD3DXUVATLASCB, FLOAT, LPVOID, DWORD, LPD3DXMESH *, LPD3DXBUFFER *, LPD3DXBUFFER *, LPD3DXBUFFER *, FLOAT *, UINT *);
 HRESULT WINAPI D3DXValidMesh(LPD3DXMESH, CONST DWORD *, LPD3DXBUFFER *);
-HRESULT WINAPI D3DXValidPatchMesh(LPD3DXPATCHMESH, DWORD *, DWORD *, LPD3DXBUFFER *);
+HRESULT WINAPI D3DXValidPatchMesh(ID3DXPatchMesh *mesh, DWORD *degenerate_vertex_count,
+        DWORD *degenerate_patch_count, ID3DXBuffer **errors);
 HRESULT WINAPI D3DXWeldVertices(LPD3DXMESH, DWORD, CONST D3DXWELDEPSILONS *, CONST DWORD *, DWORD *, DWORD *, LPD3DXBUFFER *);
 
 #ifdef __cplusplus
-- 
1.7.8.6




More information about the wine-patches mailing list