Create animations by calling
活动动画来源于 glTF 资产. 活动动画是
目前正在播放或由于下列原因预定播放的动画
被添加到一个型号的 ModelAnimationCollection#add. Do not call the constructor directly.
ModelAnimationCollection . 活动动画
是动画的一个实例;例如,可以有多个活动
动画为相同的glTF动画,每个动画的起始时间不同.
Members
animationTime : ModelAnimation.AnimationTimeCallback
如果定义了, 将用来计算本地动画时间
而不是场景的时间.
-
Default Value:
undefined
The delay, in seconds, from
ModelAnimation#startTime to start playing.
-
Default Value:
undefined
readonly loop : ModelAnimationLoop
确定动画是否和如何循环.
-
Default Value:
ModelAnimationLoop.NONE
大于 NT 0 1.0 NT 1 的值提高动画播放的相对速度
到场景时钟速度; 数值小于 NT 0 1.0 NT 1 降低速度. 价值
NT#0 1.0 NT#1 在映射到现场的glTF动画中以速度播放动画
时钟速度. 例如,如果现场在 2x 实时播放, 将播放两秒钟的 glTF 动画
将会在一秒内出场,即使 NT 0 乘数 NT 1 是 NT 2 1.0 NT 3 .
-
Default Value:
1.0
在模型中识别此动画的名称,如果存在的话.
当 NT 0 real NT 1 时,动画停止播放后会被删除.
这样做效率略高一些,不能去除,但如果,例如,
时间倒转,动画不再播放 .
-
Default Value:
false
当 NT 0 real NT 1 时,动画以反向播放.
-
Default Value:
false
start : Event
当这部动画开始时,该事件被发射. 这个可以用来,用于
例如,在动画开始时播放声音或启动粒子系统.
此事件在拍摄场景后在框架的尽头开火.
-
Default Value:
new Event()
Example:
animation.start.addEventListener(function(model, animation) {
console.log(`Animation started: ${animation.name}`);
});
readonly startTime : JulianDate
开始播放这部动画的场景时间. 当这是 NT 0 未定义 NT 1 ,
动画从下一个框架开始.
-
Default Value:
undefined
stop : Event
此动画停播后事件即开火. 这个可以用来,用于
例如,当动画停止时,播放声音或启动粒子系统.
此事件在拍摄场景后在框架的尽头开火.
-
Default Value:
new Event()
Example:
animation.stop.addEventListener(function(model, animation) {
console.log(`Animation stopped: ${animation.name}`);
});
readonly stopTime : JulianDate
现场时间停止播放这部动画. 当这是 NT 0 未定义 NT 1 ,
动画全程播放,也许会根据
ModelAnimation#loop.
-
Default Value:
undefined
update : Event
当这个动画更新时,每个帧上的事件都开火. 那个
目前动画的时间,相对于glTF动画的时间跨度,是
传递到事件上, 例如允许在 a
相对于游戏动画的特定时间.
此事件在拍摄场景后在框架的尽头开火.
-
Default Value:
new Event()
Example:
animation.update.addEventListener(function(model, animation, time) {
console.log(`Animation updated: ${animation.name}. glTF animation time: ${time}`);
});
Type Definitions
用于计算模拟动画的局部动画时间的函数.
| Name | Type | Description |
|---|---|---|
duration |
number | 该动画的最初持续时间以秒计. |
seconds |
number | 动画开始后的几秒钟,在现场时间. |
Returns:
返回本地动画时间 .
Examples:
// Use real time for model animation (assuming animateWhilePaused was set to true)
function animationTime(duration) {
return Date.now() / 1000 / duration;
}
// Offset the phase of the animation, so it starts halfway through its cycle.
function animationTime(duration, seconds) {
return seconds / duration + 0.5;
}