# [name]

动画混合器是用于场景中特定对象的动画的播放器。当场景中的多个对象独立动画时，每个对象都可以使用同一个动画混合器。
在使用手册的“下一步”章节中，“动画系统”一文对three.js动画系统中的不同元素作出了概述

## 构造器

### [name]( [param:Object3D rootObject] )

[page:Object3D rootObject] - 混合器播放的动画所属的对象

## 属性

### [property:Number time]

全局的混合器时间(单位秒; 混合器创建的时刻记作0时刻)

### [property:Number timeScale]

全局时间([page:.time mixer time])的比例因子
说明: 将混合器的时间比例设为0, 稍后再设置为1，可以暂停/取消暂停由该混合器控制的所有动作。

## 方法

### [method:AnimationAction clipAction]([param:AnimationClip clip], [param:Object3D optionalRoot])

返回所传入的剪辑参数的[page:AnimationAction], 根对象参数可选，默认值为混合器的默认根对象。第一个参数可以是动画剪辑([page:AnimationClip])对象或者动画剪辑的名称。
如果不存在符合传入的剪辑和根对象这两个参数的动作, 该方法将会创建一个。传入相同的参数多次调用将会返回同一个剪辑实例。

### [method:AnimationAction existingAction]([param:AnimationClip clip], [param:Object3D optionalRoot])

返回传入剪辑的已有[page:AnimationAction], 根对象参数可选，默认值为混合器的默认根对象。
第一个参数可以是动画剪辑([page:AnimationClip])对象或者动画剪辑的名称。

### [method:Object3D getRoot]()

返回混合器的根对象

### [method:this stopAllAction]()

停用混合器上所有预定的动作

### [method:this update]([param:Number deltaTimeInSeconds])

推进混合器时间并更新动画
通常在渲染循环中完成, 传入按照混合器的时间比例([page:.timeScale timeScale])缩放过的[page:Clock.getDelta clock.getDelta]

### [method:this setTime]([param:Number timeInSeconds])

设置全局混合器到一个给定的时间，并相应地更新动画。
当你需要在一个动画里跳转到一个精确的时间，该函数将是十分有用的。输入的参数将会被混合器的[page:.timeScale timeScale]进行缩放。

### [method:undefined uncacheClip]([param:AnimationClip clip])

释放剪辑的所有内存资源

### [method:undefined uncacheRoot]([param:Object3D root])

释放根对象的所有内存资源

### [method:undefined uncacheAction]([param:AnimationClip clip], [param:Object3D optionalRoot])

释放动作的所有内存资源

## 源码

[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]