my projet require some one to be able to shoot a missle from world A and have it land on the face of someone on world B
Well you could do it using multiple worlds also
, by removing the rigid body corresponding to the missile from world A after it leaves the bounds of World A. Then initializing a rigid body within the bounds of world B in the appropriate direction and setting its velocity and speed. These can be set up specifically for each rigid body before a sim step.
What you want is some kind of level of detail solution:
One scene if you are traveling between planets
Other scenes per planet where the surface is approximated by a plane of sufficient size but no more than say 100x the dimension of the vehicle.
Yes I have begun working on a level of detail solution where meshes are loaded/unloaded based on camera position and meshes which are visible, have a lower resolution , the farther they are from the camera.
My main concern with using multiple worlds is the CPU usage.If I have just one process with 2 dynamics worlds to update within the time of a single frame, then it may hit the FPS.
Using the multithreaded solvers that Bullet provides may be a solution.
Also since the bases on 2 celestial bodies, say the Earth and the Moon are so far away, I think I can update each world in their own separate thread. So we have 2 threads and perhaps one main thread which runs the Orbiter simulation stuff. Each thread will have their own data so almost no dependence upon each other.