Module: wine Branch: master Commit: 60aaed781c0c7dc5ce39aaf846bc1c3bb7d5e8a0 URL: http://source.winehq.org/git/wine.git/?a=commit;h=60aaed781c0c7dc5ce39aaf846...
Author: André Hentschel nerv@dawncrow.de Date: Sun May 12 23:54:04 2013 +0200
d3drm: Implement IDirect3DRMMeshBuilder3_GetNormals.
---
dlls/d3drm/meshbuilder.c | 12 +++++++++--- 1 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/dlls/d3drm/meshbuilder.c b/dlls/d3drm/meshbuilder.c index 549a5dd..eecf629 100644 --- a/dlls/d3drm/meshbuilder.c +++ b/dlls/d3drm/meshbuilder.c @@ -2379,13 +2379,19 @@ static HRESULT WINAPI IDirect3DRMMeshBuilder3Impl_SetNormals(IDirect3DRMMeshBuil }
static HRESULT WINAPI IDirect3DRMMeshBuilder3Impl_GetNormals(IDirect3DRMMeshBuilder3 *iface, - DWORD IndexFirst, DWORD *count, D3DVECTOR *vector) + DWORD IndexFirst, DWORD *ncount, D3DVECTOR *normals) { IDirect3DRMMeshBuilderImpl *This = impl_from_IDirect3DRMMeshBuilder3(iface); + DWORD count = This->nb_normals - IndexFirst;
- FIXME("(%p)->(%u,%p,%p): stub\n", This, IndexFirst, count, vector); + TRACE("(%p)->(%u,%p,%p)\n", This, IndexFirst, ncount, normals);
- return E_NOTIMPL; + if (ncount) + *ncount = count; + if (normals && This->nb_normals) + memcpy(normals, This->pNormals + IndexFirst, count * sizeof(D3DVECTOR)); + + return D3DRM_OK; }
static int WINAPI IDirect3DRMMeshBuilder3Impl_GetNormalCount(IDirect3DRMMeshBuilder3* iface)