D3D7 -> WineD3D, 2nd attempt

Stefan Dösinger stefandoesinger at gmx.at
Fri Oct 28 16:34:28 CDT 2005

I think I got the DrawIndexedPrimitiveVB going now(my tracing suggests this), 
and now I've hit ProcessVertices(). As someone mentioned allready, this is a 
complex call, and it isn't implemented in DX7, DX8 or WineD3D.

This call does some Vertex Transformation, and depending on the App's 
requests, Lightning and other things. This is some math thing that is done in 
Software(According to msdn). On DX8 and DX9 this call is slightly different, 
and it looks like vertex shaders come into play.

Does anyone know any free library which implements something like this, or any 
internet sources on the math behind this? I haven't found anything useable 
with google. If I can't find anything, I'll have a look in my university's 

One other Question: How slow is DrawStridedSlow? WineD3D uses it because of 
the diffuse ans specular colors. Currently I get only one useable vertex into 
DrawIndexedPrimitiveVB from ProcessVertices, the other 5 to draw have their 
values zeroed. Without drawing anything I get 70 fps(screen refresh rate, 
expected), with the 6 Vertices I get 1.5 fps. Is this normal for 
DrawStridedSlow()? Might this be because of drawing 2 triangles with useless 
vertices? Or might something else be wrong?


More information about the wine-devel mailing list