I had been using the usual scale of 1 unit = 1 meter, but keep running into problems (difficult to adjust clipping planes in a workable manner, water plane flickers if it has to be scaled too large, etc). It works better to shrink everything down to a much smaller scale, but I suspect there will be problems with certain built-in things, to say nothing of issues such as switching to interior views. Does anyone have any advice?
1 unit = 1 meter. It won’t change if you change that. Because it’s relative. If you scale down to a small size you will just make the same problems on a small size unless you never need to move anything slowly.
Because what happens is you’re going to relatively lose precision regardless. But if you don’t mind that happening, then a smaller scale can really help out. If you need precision in your position/movement then it will not.
The clipping planes rule is: highest near and smallest far.
What version of Unity? since a lot of fighting issues are fixed with reversed depth in newer versions, which gives a heck of a lot more precision in the numerical range where it’s most useful.
My main problem is that large water planes (for the ocean) tend to be screwy at the normal scale - to stretch to the horizon they need to extend for quite a few miles but it’s difficult to set the far clipping plane far enough without causing problems for close geometry. They also tend to flicker at various points, and the editor causes them to often be clipped at a very close range (along with other geometry), which makes it difficult to edit the scene or take screenshots. It helps to have a large number of separate planes instead of just a few, but this creates more GOs.
I’m using 5.0.1f1
Your problem is solved then, in later versions, 5.6 for example.
If you’re not moving then I don’t know what else to advise as in newer versions, there’s dramatically improved numerical precision across the whole range of depth, which is to address these artefacts.
Moving to 5.6 would likely entail careful planning and a lot of fresh asset upgrade installs so I know it’s not simple.
Upgrading to 5.6 isn’t something I can really do at this point, not with the current project. I had previously tried upgrading to 5.3 or 5.4, but a lot of things were messed up.
I suppose I can always use the old fog trick to mask stuff in the far distance.
I just thought of something… my understanding is that if objects are being scaled by the same amount in all axes (e.g. 25,25,25) then there’s no reduction in framerate, correct? If so, then I could just scale the entire scene by whatever amount is needed for each mode - a miniature scale when moving across the landscape, and normal 1 unit = 1 meter scale when walking through interiors in first-person. Correct?
if you scale things with colliders attached it will lead to pretty bad framerates during the scale, as it means physx has to delete each collider and make it again (as far as I remember).
You can try it out, if it works well it works well! (golden rule, and fingers crossed)