I am currently evaluating Blender for use as the scene construction tool in a system for simulating a real-world aircraft radar. (This is real
rocket science!) I have to model the aircraft at a high level of detail (1mm) yet the distances between aircraft can be 100's of km. Blender uses C float
internally for coordinates, which allows a factor of at most 10^7 between the smallest and largest features of a scene, so it doesn't pass muster.
But I haven't given up on it, because in all other respects, Blender tops the list. So my question is this: how much effort would be needed to implement a compile-time option to use C double
internally for coordinates? I know it would cause file format incompatibility between the float and double variants, but that is not a concern for my project.
I have made a cursory inspection of the source code and it looks to me like the C float
declaration for coordinates is scattered throughout the code, not centralised in a single place with a typedef, but perhaps someone can give me an idea of how deeply the C float
decision is embedded in the architecture.
Many thanks in advance,
You might have better luck convincing your compiler that all floats are doubles rather than try to find all instances of the coords.
Since you're not interested in compatability, maybe write a script to do a global substitution of "double" for "float" throughout the source.