unity AnimationState和animationclip的区别
要了解Unity中AnimationState和AnimationClip的区别,我们首先需要分别认识这两个概念,之后它们之间的差异就会一目了然。
AnimationClip
AnimationClip是Unity 3D中用于播放动画的最基本对象。通过FBX文件导入到Unity中的各个动画对象,本质上就是一个个AnimationClip。
从技术角度来看,AnimationClip以关键帧的形式,精确记录了骨骼关节在各个时间节点上的位置和旋转信息。在播放动画时,它会根据设定的帧频率(frameRate),结合播放模式(wrapMode),运用插值计算的方法,最终播放出连续流畅的骨骼动画。
AnimationState
每个AnimationState都包含了一个AnimationClip,它实际上是对AnimationClip的一层包装,主要用于记录该动画片段的一些播放控制属性。
其中,比较重要的参数包括layer、weight、enabled、speed和blendMode等。这些参数的具体含义将在自定义混合动画控制中详细解释。不过,在进行简单的动画控制时,通常不需要直接对AnimationState进行操作。
两者的区别
综上所述,Unity中AnimationState和AnimationClip的核心区别在于它们之间存在包含与被包含的关系。AnimationState是对AnimationClip的进一步封装,为其提供了更多的播放控制功能。