You can do what Dreamora says (I even would say you shuld), but also it's a very very good idea to derive all base objects from a base class, as Regular K says.
It's also a very good practicle to avoid cross referencing, I mean, if your 3D engine points to an instance of the camera object, don't make the camera object point to the base engine. This will keep everything clean to the garbage collector.
It's also a very good practicle to avoid cross referencing, I mean, if your 3D engine points to an instance of the camera object, don't make the camera object point to the base engine. This will keep everything clean to the garbage collector.