public void nlerp(Quaternion q2, float blend) {
        float dot = dot(q2);
        float blendI = 1.0f - blend;
        if (dot < 0.0f) {
            x = blendI * x - blend * q2.x;
            y = blendI * y - blend * q2.y;
            z = blendI * z - blend * q2.z;
            w = blendI * w - blend * q2.w;
        } else {
            x = blendI * x + blend * q2.x;
            y = blendI * y + blend * q2.y;
            z = blendI * z + blend * q2.z;
            w = blendI * w + blend * q2.w;
        }
        normalizeLocal();
    }
Interpolates quickly between the current instance and {@code q2} using
nlerp, and stores the result in the current instance.

<p>This method is often faster than
{@link #slerp(com.jme3.math.Quaternion, float)}, but less accurate.

@param q2 the desired value when blend=1 (not null, unaffected)
@param blend the fractional change amount
jme3-core/src/main/java/com/jme3/math/Quaternion.java