Dear All,
I've got a problem with the jiggles, and it isn't because I've been drinking too much coffee.
I'm doing a 3D space RTS, and I want the user to be able to scroll all the way in to an individual ship, and all the way out to see the whole galaxy. This involves changing the camera range a few times, but works well.
The problem is when I zoom in to my ship, it jiggles if it moves, and its component parts jiggle relative to each other (they are limbs added in code). My code sets the camera position to the ship and then moves the camera back, so it is always pointing at the object, so it shouldn't jiggle, and its component parts shouldn't jiggle.
I have a strong suspicion that I have hit up against DBPRo precision limit for object positions. My ship object is 0.05 DB units in size, and I guess the jiggles I guess related to motions of 0.001 DB units or less. My world covers 30000.0 DBPro units. So we are up to 7 digits, which I guess is DBPro's floating point precision.
My question is, how does the engine decide on the range of precision, does it look at all existing object positions and set the number of significant figures from that? I've tried resetting the camera range to 0.0001 to 30.0 when I get close to my object, but the jiggles continue.
Of course, the simple solution is to move all my objects and scale when I get close to them. Expanding part of my game world so precision is no longer an issue, but I am interested in knowing the answer so I can choose the optimum zoom to rescale.
Best,
Mr Grumpy
GrumpyOne - the natural state of the programmer