版本:Unity 6 (6000.0)
语言英语
  • C#

Keyframe.outWeight

建议更改

成功!

感谢您帮助我们提升 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实会阅读用户建议的每一项更改内容,并在适用时进行更新。

关闭

提交失败

由于某种原因,无法提交您建议的更改内容。请在几分钟后 重试。感谢您抽出宝贵时间帮助我们提升 Unity 文档的质量。

关闭

取消

public float outWeight;

描述

为此键设置传出权重。传出权重会影响从该键到下一键的曲线斜率。

权重介于 0 到 1 之间。将 weightedMode 设置为 WeightedMode.OutWeightedMode.Both 以在计算传出曲线的斜率时包含权重。

其他资源:inWeight

using UnityEngine;

public class KeyFrameWeightExample : MonoBehaviour { AnimationCurve animCurve = null;

void Start() { Keyframe[] ks = new Keyframe[3];

ks[0] = new Keyframe(0, 0); ks[0].weightedMode = WeightedMode.Out; ks[0].outWeight = 0.5f;

ks[1] = new Keyframe(4, 0); ks[1].weightedMode = WeightedMode.Out; ks[1].outWeight = 0f; // Zero weight. The segment will be linear if next keyframe inWeight is also zero.

ks[2] = new Keyframe(6, 0); ks[2].weightedMode = WeightedMode.Out; ks[2].outWeight = 1f / 3f; // 1/3 is the default weight in WeightedMode.None weightedMode.

animCurve = new AnimationCurve(ks); }

void Update() { if (animCurve != null) transform.position = new Vector3(Time.time, animCurve.Evaluate(Time.time), 0); } }