【问题标题】:What's the default frame rate for a timeline?时间线的默认帧速率是多少?
【发布时间】:2014-02-14 12:15:18
【问题描述】:

时间线有一个constructor for setting a target frame rate,和一个空的(大概)使用一些默认值。

但是,文档似乎没有说明默认值是什么 - 它是什么?

【问题讨论】:

    标签: java animation javafx javafx-2 timeline


    【解决方案1】:

    我无法从文档中找到答案,但源代码中的默认 Timeline 构造函数直接委托给默认的 Animation constructor,它指定如下:

    this.targetFramerate = TickCalculation.TICKS_PER_SECOND / ToolkitAccessor.getMasterTimer().getDefaultResolution();
    

    目前,至少在 Windows 上的 7u51 上,TICKS_PER_SECOND 设置为 6000,ToolkitAccessor.getMasterTimer().getDefaultResolution(); 产生 100,默认帧率为 60。

    但应该注意的是,这只是从源中提取的,并且可能会发生变化 - 所以这应该只是作为一个粗略的指导,而不是依赖默认值始终为 60。

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 这可能意味着该值可能会根据应用程序运行的平台而有所不同。我同意这一点。
      • 是的,对不起,我应该指出我读了这篇文章,但实际上想知道它至少在我的特定系统上的默认值。
      • JavaFX 的当前实现以 60fps 的速度渲染脉冲为目标,因此动画不会尝试超过该速率是有道理的(额外的动画帧计算将毫无价值)。不过,相信未来的版本可能会提高这一速度。
      • 当然——对我来说,关键部分是利率只会在未来增加。对于我正在做的一个特别简单的动画(只是滚动一条通知),这会在没有支持 FX 的显卡的机器上占用相当多的 CPU,并且将其设置为 25 之类的东西不会产生很大的视觉差异,但占用的资源要少得多。当然,无论如何,JFX8 对显卡都有更好的支持,所以当它最终发布时,这可能不会成为问题!
      猜你喜欢
      • 2020-08-05
      • 2010-11-28
      • 1970-01-01
      • 1970-01-01
      • 2013-09-30
      • 2012-04-02
      • 2019-07-26
      • 2013-02-17
      • 1970-01-01
      相关资源
      最近更新 更多