Stefan Dösinger : wined3d: D3D7 vertex buffers never change their declaration.
Alexandre Julliard
julliard at wine.codeweavers.com
Wed Jan 10 15:47:21 CST 2007
Module: wine
Branch: master
Commit: 70831d1d2dfcbe8353e597e57f0dc39b700534f1
URL: http://source.winehq.org/git/wine.git/?a=commit;h=70831d1d2dfcbe8353e597e57f0dc39b700534f1
Author: Stefan Dösinger <stefan at codeweavers.com>
Date: Wed Jan 10 11:43:27 2007 +0100
wined3d: D3D7 vertex buffers never change their declaration.
---
dlls/wined3d/vertexbuffer.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/dlls/wined3d/vertexbuffer.c b/dlls/wined3d/vertexbuffer.c
index 181c244..da22469 100644
--- a/dlls/wined3d/vertexbuffer.c
+++ b/dlls/wined3d/vertexbuffer.c
@@ -165,6 +165,13 @@ inline BOOL WINAPI IWineD3DVertexBufferI
WineDirect3DVertexStridedData strided;
IWineD3DDeviceImpl *device = This->resource.wineD3DDevice;
+ /* In d3d7 the vertex buffer declaration NEVER changes because it is stored in the d3d7 vertex buffer.
+ * Once we have our declaration there is no need to look it up again.
+ */
+ if(((IWineD3DImpl *)device->wineD3D)->dxVersion == 7 && This->Flags & VBFLAG_HASDESC) {
+ return FALSE;
+ }
+
memset(&strided, 0, sizeof(strided));
/* There are certain vertex data types that need to be fixed up. The Vertex Buffers FVF doesn't
* help finding them, only the vertex declaration or the device FVF can determine that at drawPrim
More information about the wine-cvs
mailing list