【问题标题】:How to prevent Qt3D window from self-updating?如何防止 Qt3D 窗口自更新?
【发布时间】:2018-01-05 21:17:52
【问题描述】:

我需要渲染许多(数百个)具有不同变换的类似球体和圆柱体。目前这是通过创建数百个相同的QEntity 对象来实现的。结果是应用不断消耗 20..70% 的 CPU —— 即使场景静止。

小部件是否有默认的更新事件源?如果有,我可以关闭它或降低它的频率吗?除了 Qt3D 小部件之外,似乎没有其他 CPU 负载来源。

【问题讨论】:

    标签: qt qt3d


    【解决方案1】:

    你看过QRenderSettings类的enum吗?看来您可以将渲染策略设置为 OnDemand,这会导致 Qt 仅在发生变化时渲染场景。

    或者,如果您不需要与场景交互,您可以查看我对offline renderer 的实现。每当您设置根实体时,底层QAspectEngine 就会启动和停止。您可以设置根实体,捕获帧并取消设置根实体,从而导致图形循环停止,这会导致 CPU 负载减少。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-05
      • 1970-01-01
      • 1970-01-01
      • 2015-05-05
      • 2023-04-07
      • 2011-07-05
      • 2011-09-30
      相关资源
      最近更新 更多