[wineD3D] HW Vertex Buffer

Ann and Jason Edmeades us at the-edmeades.demon.co.uk
Thu Oct 21 09:34:44 CDT 2004


Hiya,

Re your new patch...

-#define IWineD3DDevice_CreateVertexBuffer(p,a,b,c,d,e,f)
(p)->lpVtbl->CreateVertexBuffer(p,a,b,c,d,e,f)
+#define IWineD3DDevice_SetFVF(p,a)
(p)->lpVtbl->SetFVF(p,a)
+#define IWineD3DDevice_GetFVF(p,a)
(p)->lpVtbl->GetFVF(p,a)
+#define IWineD3DDevice_CreateVertexDeclaration(p,a,r)
(p)->lpVtbl->CreateVertexDeclaration(p,a,r)
+#define IWineD3DDevice_SetVertexDeclaration(p,a)
(p)->lpVtbl->SetVertexDeclaration(p,a)
+#define IWineD3DDevice_GetVertexDeclaration(p,a)
(p)->lpVtbl->GetVertexDeclaration(p,a)
+#define IWineD3DDevice_CreateVertexShader(p,a,r)
(p)->lpVtbl->CreateVertexShader(p,a,r)
+#define IWineD3DDevice_SetVertexShader(p,a)
(p)->lpVtbl->SetVertexShader(p,a)
+#define IWineD3DDevice_GetVertexShader(p,a)
(p)->lpVtbl->GetVertexShader(p,a)
+#define IWineD3DDevice_CreatePixelShader(p,a,r)
(p)->lpVtbl->CreatePixelShader(p,a,r)
+#define IWineD3DDevice_SetPixelShader(p,a)
(p)->lpVtbl->SetPixelShader(p,a)
+#define IWineD3DDevice_GetPixelShader(p,a)
(p)->lpVtbl->GetPixelShader(p,a)
+#define IWineD3DDevice_CreateVertexBuffer(p,a,b,c,d,e,f)
(p)->lpVtbl->CreateVertexBuffer(p,a,b,c,d,e,f)
+#define IWineD3DDevice_BindVertexBuffer(p,a)
(p)->lpVtbl->BindVertexBuffer(p,a)
+#define IWineD3DDevice_UnbindVertexBuffer(p,a)
(p)->lpVtbl->UnbindVertexBuffer(p,a)

Some of these are defining functions which dont exist yet in wined3d, which
will get confusing. Additionally, the functionality for the wined3d vertex
buffer is almost untested, because its just copying code and ensuring it
gets driven. The d3d9 -> wined3d support isnt enough to prove your changes
actually work, and I would rather we didnt put in untested code during the
migration phase.

I'm finding it hard to keep track of where I am on the migration from
d3d8 -> wined3d, so could I ask that you hold off this patch for a month or
so, until I can get enought support into the wined3d library so you can
prove the new code works. I could do with the d3d8, d3d9 and wined3d code
staying fixed as I try to shuffle it all around.

Once I get enough in wined3d to be able to prove parts of it work, and we
are using it from both d3d8 and d3d9 then by all means put in this change.
I'd also comment that this change is desperately needed as hardware buffer
support should speed up the d3d support too.

It seems odd to turn away new code, especially when hardly anyone else helps
on the d3d side!
Jason




More information about the wine-devel mailing list