Done it. This is an acceptable level of playability and realism.
All model information is stored as doubles rather than ints, so
no accuracy is lost until rendering.