Why do you need a proxy IDirect3D8 implementation in dx8vb? Is there any difference between dx8vb and d3d8?
The interfaces in dx8vb are different interfaces, with different GUID and sometimes slightly different method definitions and behavior. I don't know why they did it that way, but I don't see another way than to have a wrapper for all of these. If there is an easier way, I'd love to hear it.
Regards, Fabian Maurer