本文整理汇总了C#中UnityEngine.Quaternion.ToVector4方法的典型用法代码示例。如果您正苦于以下问题:C# Quaternion.ToVector4方法的具体用法?C# Quaternion.ToVector4怎么用?C# Quaternion.ToVector4使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UnityEngine.Quaternion
的用法示例。
在下文中一共展示了Quaternion.ToVector4方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SpringRotation
Quaternion SpringRotation(Quaternion current, Quaternion target)
{
var v_current = current.ToVector4();
var v_target = target.ToVector4();
_vrotation = ETween.Step(_vrotation, Vector4.zero, 1 + _rotationSpeed * 0.5f);
_vrotation += (v_target - v_current) * (_rotationSpeed * 0.1f);
return (v_current + _vrotation * Time.deltaTime).ToNormalizedQuaternion();
}
示例2: Step
public static Quaternion Step(
Quaternion current, Quaternion target,
ref Vector4 velocity, float omega)
{
var vcurrent = current.ToVector4();
var vtarget = target.ToVector4();
// We can use either of vtarget/-vtarget. Use closer one.
if (Vector4.Dot(vcurrent, vtarget) < 0) vtarget = -vtarget;
var dt = Time.deltaTime;
var n1 = velocity - (vcurrent - vtarget) * (omega * omega * dt);
var n2 = 1 + omega * dt;
velocity = n1 / (n2 * n2);
return (vcurrent + velocity * dt).ToNormalizedQuaternion();
}