I want my static functions to be accessed globally, then if something is breaking I can stick a breakpoints in my method and see when and why they are being accessed.
Quote:
But your class exposes all its implementation details in a most horrific way.
How so? You mean the fact that RenderDevice can always be initialised from where ever? Which was something I did think about... obviously this is just an idea that I haven't implemented yet which is why I'm asking what you think.
The idea was given to me by the guy who programmed the graphics for Viva Pinata on the PC. He splits his code into 3 main areas, game code, engine code and API specific code. None of his engine references any of the DX stuff. Everything obviously uses some sort of 'RenderDevice', everything uses vectors and matrices, uses shaders and needs to draw polygons so in theory it works.
It's where I got the idea for my RenderDevice but obviously he can't show me any of the code :(. He uses a RenderDevice class in a similar way, I'm just trying to figure it out!