Anteworld - Outerra Game > Terrain & terrain data issues

Heisenbergs uncertainty principle valid for terrain interactions ?


I noticed a strange thing regarding interaction of vehicles/planes etc..with terrain: when the camera is far away from a vehicle/plane sitting on the ground..the vehicle occasionaly starts to randomly move/jump a little bit....Brownian motion ?
Quantum fluctuations ?  :o This also happens when inside a vehicle and zooming in to a far away location (for instance when using a telescopic gunsight) this case not only the vehicle but also the associated camera starts to bounce a little...again it seems that the terrain definition changes with distance from the camera field of view. I guess this is what allows outerra to represent large spaces without excessive computation load, and so probably is normal. However this causes a problem if it is to be used in a game..the terrain under vehicles should remain stable ! and not depend on camera view-distance..otherwise annoying things like those mentioned appear to happen and vehicles left alone in a distance will start moving around by themselfs randomly. Is there a workaround ?

Yes it's the (built-in) quantum uncertainty. Thing is, since you can't possibly load the whole world, and even less to have it globally procedurally refined down to the level of detail used for hi-def physics computations. In OT terrain only exists when there's an observer to see it. Also, it only exists in the resolution that the observer needs to see.

Of course, this causes a lot of issues for simulations that expect the world to be fully deterministic, but without handling the uncertainty the thing won't be really scalable much. When there's a vehicle travelling through the Sahara desert but there's no one to see it, it can be simulated using a much simpler statistical computation that may not even require a periodical computation at all. For example, position of aircraft flying by a schedule can be computed only on demand, without any systems simulation. Existence of an observer getting closer will engage further levels of simulation detail that are gradually more computation intensive.

The idea is that when you are looking at a vehicle from further away, it doesn't need to simulate the suspension in detail - you just see the vehicle moving on the terrain. Even further it may reduce the number of raycasts performed on the terrain, because you could not possibly see the difference.

However, since nobody is able to handle the varying level of simulation detail just yet, there are some compromises (and some bugs and unfinished parts).

For example, dynamic objects like vehicles are currently also observers, except that they are considered to be more remote or having a coarser resolution than the camera viewing the object closely. The unfinished part here is that vehicles still do not use a separate simpler level of sim detail for that case, and the bug is that the transition between switching the detail may currently introduce some extra force impulses affecting the vehicle.

A workaround for the old-style simulation is to enforce hi-def observers for all vehicles, which is currently possible by setting locklevel=2 in world.cfg. This may cause an extensive memory usage with a higher number of vehicles, and there can still be some transitional effects ...

Fascinating ! Thanks for the suggestion. Indeed  locklevel=2 in world.cfg helps to stabilize the abrams tank when I zoom my gunsight to a far away target location ...also my crashed Heinkels remain where they were when I move
away. Will test now if also my AI car that senses terrain material can now drive along roads "alone" without needing me to always keep an eye on it. Thanks once more. Long live outerra !  :)


[0] Message Index

Go to full version