Hi,
During the improvements I'm doing on my engine, I've encountered a 'struggle'.
Here's my situation.
1. D3D renderer class, has a pointer to a 3d scene (of the d3dscene class) and pointer to camera class object
Also one of it's members is a single object of my renderqueue class
2. d3dscene class, having vectors with meshes, renderables, light etc.
3. Renderqueue class, keeping track of indices/ rendering order, vectors with visible renderables, enabled lights etc.
In my D3D renderer class render function, I call my D3D renderer class member function: update renderqueue.
Here's where my struggle is.
Would you cull objects, transform objects etc. in a member function of the d3dscene class (passing a pointer to the renderqueue and camera?) or would you keep this all in member functions of the d3d renderer class? (which I have now)
The reason why I ask is that I want to prevent doing a lot of not 'core renderer' things in member functions of my d3d renderer class.