[PATCH 5/5] d3drm: Implement IDirect3DRMMeshBuilderX_SetMaterial.
Christian Costa
titan.costa at gmail.com
Tue Jun 5 15:45:44 CDT 2012
---
dlls/d3drm/meshbuilder.c | 16 +++++++++++-----
1 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/dlls/d3drm/meshbuilder.c b/dlls/d3drm/meshbuilder.c
index e0a7d03..c4866ef 100644
--- a/dlls/d3drm/meshbuilder.c
+++ b/dlls/d3drm/meshbuilder.c
@@ -651,13 +651,13 @@ static HRESULT WINAPI IDirect3DRMMeshBuilder2Impl_SetTexture(IDirect3DRMMeshBuil
}
static HRESULT WINAPI IDirect3DRMMeshBuilder2Impl_SetMaterial(IDirect3DRMMeshBuilder2* iface,
- LPDIRECT3DRMMATERIAL pMaterial)
+ LPDIRECT3DRMMATERIAL material)
{
IDirect3DRMMeshBuilderImpl *This = impl_from_IDirect3DRMMeshBuilder2(iface);
- FIXME("(%p)->(%p): stub\n", This, pMaterial);
+ TRACE("(%p)->(%p)\n", This, material);
- return E_NOTIMPL;
+ return IDirect3DRMMeshBuilder3_SetMaterial(&This->IDirect3DRMMeshBuilder3_iface, (LPDIRECT3DRMMATERIAL2)material);
}
static HRESULT WINAPI IDirect3DRMMeshBuilder2Impl_SetTextureTopology(IDirect3DRMMeshBuilder2* iface,
@@ -1793,9 +1793,15 @@ static HRESULT WINAPI IDirect3DRMMeshBuilder3Impl_SetMaterial(IDirect3DRMMeshBui
{
IDirect3DRMMeshBuilderImpl *This = impl_from_IDirect3DRMMeshBuilder3(iface);
- FIXME("(%p)->(%p): stub\n", This, material);
+ TRACE("(%p)->(%p)\n", This, material);
- return E_NOTIMPL;
+ if (This->material)
+ IDirect3DRMTexture2_Release(This->material);
+ if (material)
+ IDirect3DRMTexture2_AddRef(material);
+ This->material = material;
+
+ return D3DRM_OK;
}
static HRESULT WINAPI IDirect3DRMMeshBuilder3Impl_SetTextureTopology(IDirect3DRMMeshBuilder3* iface,
More information about the wine-patches
mailing list