Geometry jitters when rotating at a very far distance from 0,0,0.

Hello everyone. Thanks for taking the time to read this.

I am in the middle of putting together an updated UE4 version of my solar system app I created a few years back. I have run into a few minor visual issues when dealing with my assets at a far distance from the centre of the map.
The solar system app I am creating deals with very small and very large assets that travel at very high speeds. For a number of reasons the planets orbits have to be fairly large (mainly due to near clipping issues when the planets are small)

The issue I am running into is more than likely due to the enormous distance I’m using for the outer planets such as Neptune. When you have the planet scaled up (roughly 2,500 times its original size) things don’t look too bad. However, when you have the planets at their realistic size and you zoom all the way in, you will see two main things.

  1. The animation of the planet appears to ‘jitter’ when you rotate the camera or run the app at any speed (speeding up the animation of the planets). It almost feels like the player can’t keep up with the planet.
  2. The second issue is a little bit harder to see due to the first issue. If you look at the default checkerboard texture on the planet, there is a slight ‘wobble’ to the update of the material. The closest I can describe it is the wavy heat distortion that hot roads give off.

To help make spotting this issue a LOT easier, I have provided a very stripped down version of my project. (It’s only about 5 megs)

Here is the link: https://dl.dropboxusercontent.com/u/80093308/TSS_EYB-4.7.2_Testing_Purposes.rar

Both issues slowly decrease as you focus on the planets closer to the center of the map. It’s not until you get to the third planet from the edge that the effects are greatly decreased, and by the fourth planet in the effects are basically gone.

Here is a very quick run through of the app and its functionality:

When you start it in the editor, you will fly into Earth. I have a simple ‘double click’ detection set up, so if you click on any planet twice, you will focus in on it (or reset if you’re already focused on it). On the upper left hand side you will see a toggle for scaling up the planets which you’ll need to use to make the planets large enough to select.
To control the speed of the planets orbit I have set up a simple button press from 1 to 9, 1 being the slowest, and 9 being the fastest.

The easiest way to reproduce this issue is simply to focus on the farthest planet, make the planet small again, zoom in, and take a look at it going any speed. As you move closer towards the sun the effect decreases.

I hope someone can help me out with this issue, It would be greatly appreciated! (And I hope the files help)

Hi C Albeluhn -

My apologies for taking some time to respond. I wanted to run some tests on your project before I got back in touch with you. This error is as you point out one of scale, but I am certain if you can increase the size of your Planet Surface mesh from 1x1x2 to 10x10x20 you would find that most of the shaking and jittering you are reporting is eliminated. What you are experiencing is a issue of trying to render a densely packed object, over 2000 verts in the space of 1cm, that is updated in position every frame. The reason you don’t see the amount of jitter in the inner planets is a matter of distance per tick, their orbits are smaller, so you do not get the amount of offset that the rendering engine has to keep up with every frame. The same is true when you scale the meshes upward, the distance per tick is not as drastic and therefore no jitter.

I hope that makes sense, but if you need me to explain further please let me know -

Thank You -

Eric Ketchum

Hey Eric,

Thanks for taking the time to look into this for me, and I’m glad that it’s a relatively simple solution. I have tweaked the scales of the planets when close up, and it does fix the issue. I will simply have to do a bit of math in the blueprint to make sure everything stays consistent, but this should be a good solution to my issue.

Thanks again for taking the time to look into this, and I’m glad it’s an issue with how I have my assets set up (a scaling issue) and not an issue with the engine. (I just wasn’t sure if it was or not, so I thought I’d play it safe and ask)

Anywhoo, Take care!