Proxy DLL update (See previous entry for what this is about). I've been doing what NVPerfHUD does to see what affects the frame rate (measured by PIX):Forcing Z-culling has no effect. So I'm not pixel shader or fillrate bound.
Forcing a 1x1 scissor rect also has no effect.
Forcing 2x2 dummy textures has no effect. Not texture bandwidth bound
Not calling any DrawPrimitive() calls causes my FPS to go up from 1.9-2.0 FPS to > 100 FPS.
So, it looks like I'm vertex shader bound, which is bad, since it should be using the fastest vertex processing possible [sad], and I don't think there's anything I can do about it really [sad]
I've yet to try my cached vertex buffers idea, that requires deriving from IDirect3DVertexBuffer9, and I'm all derived-out after deriving from IDirect3DDevice9 and it's hundred-odd functions...