# About Extended Interpolation

(Updated 10/13/2022)

This page describes the extended interpolation implemented in Cubism 4.0.

By using extended interpolation, natural motion can be expressed without texture shrinkage, such as with swaying objects.

### What is Extended Interpolation?

Extended interpolation is a function that interpolates between keyforms using curves instead of lines.

Normally, the interpolation between the key forms of the parameters is linear.

If you rotate a warp deformer or ArtMesh directly without using the rotate deformer,

the trajectory is interpolated in a straight line as shown in the figure below, so that the middle point moves as if it were contracted.

By setting up extended interpolation, interpolation calculation is performed at the timing when the parameter is manipulated, and

the movement will be in the form of a circular or curved trajectory.

### How to set up extended interpolation

1. Select the object for which you want to set SNS interpolation.

2. From the [Parameter], click [Palette Menu] -> [Extended Interpolation].

3. The [Extended Interpolation] dialog box appears.

Select either [Interpolation] or [SNS Interpolation] from [Interpolation Method].

Extended interpolation has been set as a parameter.

### Extended interpolation type

Cubism offers two types of calculation methods.

See “Interpolation Types” for the characteristics and settings of each method.

#### Elliptic interpolation

The key is automatically generated on the orbit and replaces linear interpolation.

The magnification and the number of key points can be adjusted, and the movement follows a circular orbit.

#### SNS Interpolation

Only the number of points on the orbit can be adjusted.

It can be easily used in areas where the track is not particular, for example.

### Precautions when setting up

#### During parameter operation

Extended interpolation performs interpolation calculation at the timing when the parameters are manipulated, automatically generates keys on the orbit, and emulates linear interpolation at runtime.

(because interpolation calculations at runtime can affect performance)

The more extension keys (points), the smoother the trajectory, but the drawing process in the editor becomes heavier because the number of points is **multiplied when the two parameters** are multiplied together.

Although the operation is lighter when the object is deselected, it is recommended that the extension key be less than 10 points when multiplying two parameters.

**Precautions**

When the number of points of extended interpolation is 20 (maximum), the key-to-key spacing should be at least 0.03, since anomalies may occur in files with key-to-key spacing less than 0.03.

#### When handling extended interpolation in the SDK

Extended Interpolation is a function that curvilinearly interpolates the linear interpolation of a parameter.

As an entity, it automatically generates a specified number of keyforms for extended interpolation between keyforms.

Therefore, when extended interpolation is set on an object with multiple parameters, the size of the model file increases proportionally because the key forms added by extended interpolation are multiplied with each other.

Please note that when dealing with extended interpolation in the SDK, there is little effect on performance during execution, but there is a slowdown when loading the model.