Archive 17/01/2023.

Skybox problem

itisscan

In the scene i have node with SkyBox. When camera has big X,Y or Z values and is translated, then SkyBox has jitters.
As X,Y or Z values are increased, the jitters become faster.

I have captured it in Urho3d editor - https://youtu.be/1AENHxsgg-4

At value > 10000 you can notice jitters.

Maybe someone already faced with this problem and can explain why so occurs and how can fix it?

Thanks.

cadaver

The skybox positions itself to the camera position, and the camera position gets “subtracted” by the view matrix, bringing it back to origin, but with large numbers the math is not accurate.

This isn’t easily solvable without engine changes since the engine doesn’t expose a pure projection matrix, only combined viewProj.

Eugene

Since float have only 6 digits precision, at 10000 units you have only 0.01 unit precision.
If unit==meter, you will have ~5mm jittering of all your objects, not only skybox.

Eugene

Specifically your problem can be easily fixed in Skybox shader:

from

float3 worldPos = GetWorldPos(modelMatrix); oPos = GetClipPos(worldPos);
to