I made an Earth material that rotates and shows day and night by combining different maps and masks (Similar to these set ups Unreal Engine Planet Shader Tutorial - YouTube AND UE4 Tutorial: Earth Material (with clouds and day/night cycle) - YouTube). The logic is fairly simple - Panner node for rotation + day and night textures + masks to cover each when needed during rotation. I can’t show the node map because it’s too large and I can’t upload images of that size on here, if I compress the image then the detail is so bad you can’t see what the nodes are.
However, I noticed this method to create night and day planets using the panner node with the material only works on the World’s X or Y axis. Unreal assumes Z is up, X is forward and back and Y is side to side. The way the game was coded assumes the set up is Y up and X side to side and Z forward and back. So the current issue is that with this rotating effect the Panner is spinning textures along the Worlds “X” axis, but because of the game’s set up we want it to spin around the Z axis. The Panner only allows movement around X and Y and I have noticed that even switching between those values incorrectly warps the textures as they move. If we simply try to rotate the object it does nothing because the Panner node within the material seems to always read and force the visible rotation according to the world’s X axis. I know the obvious answer is to remake the game to fix the right axis but it would require a total overhaul which the engineer is unwilling to do.
Is there anyway to manipulate the panner node or something else to get it so the materials will appear to rotate along the Z axis as we want instead of the X? And if not does anyone know of another way to produce day and night planets?