FrameRateMonitor

new Cesium.FrameRateMonitor(options)

监控 Scene 中的帧率(每秒帧数),如果帧率低于阈值则触发事件。 稍后,如果帧率恢复到所需水平,则会触发单独的事件。 为避免为单个 Scene 创建多个 FrameRateMonitor,请使用 FrameRateMonitor.fromScene 而不是显式构造实例。
Name Type Description
options object optional 包含以下属性的对象:
Name Type Default Description
scene Scene 要监控性能的 Scene 实例。
samplingWindow number 5.0 optional 用于计算平均帧率的滑动窗口长度,以秒为单位。
quietPeriod number 2.0 optional 在启动时以及每次页面变为可见时(即当用户 切换回标签页时)在开始测量性能之前等待的时间长度,以秒为单位。
warmupPeriod number 5.0 optional 预热期的长度,以秒为单位。在预热期间,需要单独的 (通常较低)帧率。
minimumFrameRateDuringWarmup number 4 optional 预热期间可接受性能所需的最低每秒帧数。 如果在预热期间的任何 samplingWindow 中平均帧率低于此值, 将触发 lowFrameRate 事件,并且页面将重定向到 redirectOnLowFrameRateUrl(如果有)。
minimumFrameRateAfterWarmup number 8 optional 预热期结束后可接受性能所需的最低每秒帧数。 如果在预热期后的任何 samplingWindow 中平均帧率低于此值, 将触发 lowFrameRate 事件,并且页面将重定向到 redirectOnLowFrameRateUrl(如果有)。

Members

static Cesium.FrameRateMonitor.defaultSettings : object

默认帧率监控设置。当 FrameRateMonitor.fromScene 需要创建新的帧率监控器时,以及对于未传递给 FrameRateMonitor 构造函数的任何设置,将使用这些设置。

lastFramesPerSecond : number

获取最近计算的在上一个 samplingWindow 内的平均每秒帧数。 如果尚未计算帧率,则该属性可能为 undefined。
获取检测到低帧率时触发的事件。函数将被传递 Scene 实例作为第一个参数,以及采样窗口内的平均每秒帧数 作为第二个参数。

minimumFrameRateAfterWarmup : number

获取或设置预热期结束后可接受性能所需的最低每秒帧数。 如果在 warmupPeriod 之后的任何 samplingWindow 中平均帧率低于此值, 将触发 lowFrameRate 事件,并且页面将重定向到 redirectOnLowFrameRateUrl(如果有)。

minimumFrameRateDuringWarmup : number

获取或设置预热期间可接受性能所需的最低每秒帧数。 如果在 warmupPeriod 期间的任何 samplingWindow 中平均帧率低于此值, 将触发 lowFrameRate 事件,并且页面将重定向到 redirectOnLowFrameRateUrl(如果有)。
获取帧率在低帧率后恢复到正常水平时触发的事件。 函数将被传递 Scene 实例作为第一个参数,以及采样窗口内的平均 每秒帧数作为第二个参数。
获取或设置在启动时以及每次页面变为可见时(即当用户 切换回标签页时)在开始测量性能之前等待的时间长度,以秒为单位。
获取或设置用于计算平均帧率的滑动窗口长度,以秒为单位。
获取要监控性能的 Scene 实例。
获取或设置预热期的长度,以秒为单位。在预热期间,需要单独的 (通常较低)帧率。

Methods

static Cesium.FrameRateMonitor.fromScene(scene)FrameRateMonitor

获取给定场景的 FrameRateMonitor。如果场景还没有 FrameRateMonitor,则会使用 FrameRateMonitor.defaultSettings 创建一个。
Name Type Description
scene Scene 要获取其 FrameRateMonitor 的场景。
Returns:
场景的 FrameRateMonitor
取消订阅此实例正在监听的所有事件。 一旦对象被销毁,就不应使用它;调用除 isDestroyed 之外的任何函数都将导致 DeveloperError 异常。因此, 如示例中所示,将返回值(undefined)赋给该对象。
Throws:
See:
如果此对象已被销毁则返回 true;否则返回 false。

如果此对象已被销毁,则不应使用它;调用除 isDestroyed 之外的任何函数都将导致 DeveloperError 异常。
Returns:
如果此对象已被销毁则为 true;否则为 false。
See:
暂停帧率监控。要恢复监控,必须为每次调用此函数 调用一次 FrameRateMonitor#unpause
恢复帧率监控。如果调用了多次 FrameRateMonitor#pause, 则必须调用相同次数的此函数才能真正恢复监控。
Need help? The fastest way to get answers is from the community and team on the Cesium Forum.