Animating from Space
Earth Studio requires us to deal with massive changes in scale. Predictably, this raises some issues in the context of animation. We counteract these issues with a feature called Logarithmic Adaptation.
Overview
A camera, moving at a constant speed towards Earth, will seem to move much faster the closer it gets to Earth. This is an issue of human perception – our points of reference on the Earth seem to scale much more dramatically as we near the surface. Our brains take this to assume we're moving faster.
In most animations, that's an issue.
Earth Studio offers an experimental feature called Logarithmic Adaptation to counteract the speeding-up effect. When enabled, logarithmic adaptation will move the camera faster out in space and slower as it approaches the Earth. It's called logarithmic because Earth Studio uses a near-logarithmic formula to calculate these changes.
The resulting motion compensates for our perceptual deficiencies and appears perfectly linear/constant.
For simple moves, Logarithmic Adaptation is highly effective. More advanced usage reveals a few shortcomings and considerations, which will be covered below.
Enabling Logarithmic Adaptation
In Quick Start projects, Earth Studio automatically detects when Logarithmic Adaptation is needed and enables it accordingly. For other projects, you'll have to manually enable it in the Animation > Advanced menu.
As explained above, Logarithmic Adaptation is a necessity when animating over massive changes in altitude. When planning such a move, be sure to enable Logarithmic Adaptation before you start animating. This way, it's easier to understand how attributes are being affected so you can adjust accordingly.
Accounting for Latitude/Longitude
Unfortunately, altitude isn't the only factor when creating perceptually smooth large-scale animations. A visually "linear" descent to Earth reveals the magnitude of any lateral changes (longitude and latitude).
Imagine moving thousands of kilometres a second over the Earth. In space, that doesn't feel too fast. But just a few hundred metres from the ground? Not a pleasant sensation.
This is why the position attributes are linked in Earth Studio – they're entirely codependent. When Logarithmic Adaptation is applied, Earth Studio finds the difference in altitude values pre- and post-adaptation and uses this to adjust the latitude and longitude curves.
Adjustments are handled on a segment-by-segment basis. While altitude is always being adjusted as long as Logarithmic Adaptation is enabled, latitude and longitude might not be affected. This becomes important when dealing with the curve editor, or with multi-keyframe animations.
The Curve Editor
The goal of Logarithmic Adaptation is to achieve perceptually linear motion, but the position values required to do this result in non-linear curves. If these curves were displayed as-is in the editor, it would be impossible to make easing adjustments like you would in a standard move.
To keep the Curve Editor usable, Earth Studio changes how position curves are displayed and adjusted in the curve editor when Logarithmic Adaptation is applied.
Altitude
Altitude is the most drastically adjusted attribute – enough so that it must be displayed on a logarithmic graph scale in the Curve Editor. This visually counteracts the logarithmic adjustments to the altitude values.
In a logarithmically scaled graph, a pixel near the top of the graph accounts for more distance than a pixel at the bottom of the graph. This is reflected in the measurements on the left side of the graph.
A linear curve in this view represents an animation that "feels" linear. You can add and adjust easing handles as you would normally, and the animation will appear to accurately reflect the curve.
Latitude and Longitude
Latitude and longitude curves are displayed with standard graph scaling, but they're a bit trickier to work with when Logarithmic Adaptation is on.
When you view either attribute in the curve editor, you'll notice that some segments are displayed as a dashed line. This represents a segment that is being affected by Logarithmic Adaptation.
Affected segments are accurate to the graph – any point on the curve will reflect the actual value at the point in the animation, after being adjusted. But because adaptation is applied on top of existing curves, easing handles are effectively "broken". They'll influence the shape of the graph, but they won't affect the graph one-to-one like they would in a normal move.
In two-keyframe animations, this doesn't cause any noticeable issues. In animations with three or more keyframes, you might encounter problems.
Handling Multi-Keyframe Animations
Logarithmic Adaptation can cause issues when used in animations with more than two keyframes, such as a swoop from space that transitions into an orbit around a building. In these cases, you might notice an unwanted stop or bump in your animation path.
If you run into issues, the best course of action is to zoom into problem areas in the Curve Editor and try adjusting the easing handles until the curve appears smooth. Any bumps in the curve, like when a curve enters a keyframe at a different angle than it exits, will cause a hiccup in your animation.
We're exploring ways to improve how keyframing large-scale animations are handled to make this feature more reliable over time.