> 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?
It's slow, but not *that* slow in my experience. When testing with an about three years old DX8 game on an Athlon Tb 1,33 Ghz & Geforce 4400 Ti I get about 15-20 fps when using drawStridedSlow and about 40-45 fps when using drawStridedFast. Curiously, changing graphics settings doesn't seem to have much of an effect on performance. On the subject of drawStridedSlow / color fixups, something I was wondering about is how feasible it would be to use vertex shaders to fix the colors. I guess it would require reimplementing pretty much the entire fixed function pipeline as shaders. I also don't know what the impact would be on performance, but I seem to remember reading somewhere that modern gfx cards don't have a real fixed function pipeline anymore and that the drivers use the programmable pipeline to implement much of that functionality anyway. I've got no idea how reliable that claim is though.