为什么QtGraphicalEffects会导致每帧渲染缓冲区的变化?

时间:2015-10-16 13:39:05

标签: performance qt qml

我使用ListView时出现了一些相当大的性能问题,其中所有delegate都使用RectangularGlow作为背景。看起来很不错: - )

唯一的问题是,它会大幅减慢FPS,我不明白为什么渲染缓冲区必须每帧都进行更改以便绘制它。

这是一个例子。

Rectangle背后有RectangularGlow的单位QSG_VISUALIZE=changesenter image description here

使用BorderImage查看同一场景: enter image description here

清楚地表明它正在每一帧发生。

这是否按预期工作?如果是这样,基本上任何形式的作弊(即使静态RectangularGlow看起来像QtGraphicalEffects)总是比cached: true更好的解决方案?

我甚至有Item { anchors.fill: parent RectangularGlow { id: outerGlow height: 400 width: 500 anchors.centerIn: parent cached: true glowRadius: 10 spread: 1 opacity: 1 color: "#20000000" cornerRadius: glowRadius } Rectangle { height: 400 width: 500 anchors.centerIn: parent } } 发光,但无济于事。

是什么给出了?

来源:

<key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict> 

0 个答案:

没有答案