Entities that are "planted" on bodies of water are floating.
This does away with the "floating" mode.
To mark that entities should by default be floating when placed in
water the boolean property "floats" has been added.
If an entity is in mode "planted" we should check for any existing
planted entities below it, to see if we should add it on top of them, or
on top of the terrain.
These are useful when you want to represent concave shapes with more
fidelity (since they otherwise would be represented by a convex hull
when on "free" mode).
We do this by using the GImpact shapes. These work, but are resource
intensive. So make sure you don't use too many of these in free mode.
This isn't thouroughly researched though. It might be worth looking into
btCollisionHull, or to alter some of the parameters to fine tune the
simulation.
For now we only allow this for static geometry.
All code is provisional; we should move parsing to the Geometry
property and make it reuse scaled meshes.