d3drm: Set vertices data of the created mesh.

This commit is contained in:
Christian Costa 2012-05-22 22:05:07 +02:00 committed by Alexandre Julliard
parent e9eab7bbfc
commit 63f39c9196
1 changed files with 20 additions and 2 deletions

View File

@ -1856,10 +1856,28 @@ static HRESULT WINAPI IDirect3DRMMeshBuilder3Impl_CreateMesh(IDirect3DRMMeshBuil
}
hr = IDirect3DRMMesh_AddGroup(*mesh, This->nb_vertices, This->nb_faces, 0, face_data, &group);
HeapFree(GetProcessHeap(), 0, face_data);
if (SUCCEEDED(hr))
{
D3DRMVERTEX* vertices;
vertices = HeapAlloc(GetProcessHeap(), 0, This->nb_vertices * sizeof(D3DRMVERTEX));
if (vertices)
{
for (i = 0; i < This->nb_vertices; i++)
{
vertices[i].position = This->pVertices[i];
}
hr = IDirect3DRMMesh_SetVertices(*mesh, 0, 0, This->nb_vertices, vertices);
HeapFree(GetProcessHeap(), 0, vertices);
}
else
{
hr = E_OUTOFMEMORY;
}
}
if (FAILED(hr))
IDirect3DRMMesh_Release(*mesh);
HeapFree(GetProcessHeap(), 0, face_data);
}
return hr;