在场景后台,Maya 会将每个帧值转换为 32 位整数表示,称为标记。标记是 Maya 中最小的时间增量。每个标记表示 1/6000 秒。因此,Maya 以 24 帧/秒 [fps] 的速率计量 6000 标记/秒 [tps],即 250 标记/帧 [tpf]。
尽管所有场景都使用相同的 tps,但 tpf 数会因指定的播放速度而异。若要确定选定播放速度下的 tpf 数量,请将 tps (6000) 除以使用的播放速度。例如,对于 15 fps,tpf 数为 400 (6000/15)。
由于标记是整数,fps 也必须是整数。这就意味着在 Maya 中无法精确表示那些需要非整数标记值的分数帧值。尽管可以精确表示的时间取决于播放速度,但根据帧和标记之间的转换,所有播放速度都存在精度限制。
例如:播放速度为 24 fps 时,系统将限制为每 0.004 帧 1 个标记。如果以 24 fps 执行 currentTime 25.55,Maya 会将该值四舍五入为最接近的标记,即将当前时间设置为 25.552。(更多信息,请参见下文中的预测精确帧值。)
为了避免出现数字流问题,将标记强制限制在 32 位(带符号)整数范围内。这就将场景中表示的最小/最大帧数限制为 int32_min/tpf 和 int32_max/tpf。
例如,场景播放速度为 24 fps 时,tpf 会限制为 250,则有大约 8589934 正帧。这同样适用于负帧值,这意味着速率为 250 tpf 时,共有约 1600 万帧。如果尝试设置的帧超出最大/最小范围,时间会受限于这些限值:
currentTime 10e6; // Result: 8589934.588 //