In the past, I've used classes for a Direct3D object to handle all necessary D3D calls, but now that I'm moving away from that, I'm curious...
During initialization, the IDirect3D9 variable is necessary in order to create the IDirect3DDevice9 device. However, following that, it becomes rather un-necessary (as far as my experiences go).
So, is there any real problem with just making the IDirect3D9 a local variable of a function, to be discarded once the IDirect3DDevice9 is created and initialized? It seems to me that the IDirect3DDevice9 is the only one I actually care about...
However, I have always read that I should de-allocate these object in the order I allocate them...
I.e. Make the IDirect3D9, followed by IDirect3DDevice9 means that the IDirect3DDevice9 should be released before the IDirect3D9. I guess, in simplest form, my question is, should I really have to follow this suggestion? (Or is it more than just a suggestion in this case?)
Thanks