慢慢滚动Qt QGraphicsView

时间:2015-03-02 08:13:40

标签: android qt game-engine qgraphicsview qgraphicsscene

我在Qt中制作了一个简单的2D游戏并将其部署到Android设备上。游戏的主屏幕基本上是QGraphicsView。游戏世界由QGraphicsScene代表,它比主屏幕大。

我使用QGraphicsView :: ensureVisible(QGraphicsItem,int,int)滚动游戏世界,并在玩家试图摆脱它时将玩家保持在屏幕上。现在我的游戏在相机静止时工作正常,但是当它试图跟随播放器时,性能变得非常慢。我认为当我有一个带有透明区域的大型QGraphicsPixmapItem时,它会特别慢。

我应该使用哪些优化选项来加速我的应用?

其他一些信息:

  • 包括玩家在内的所有游戏对象都由 QGraphicsPixmapItems从具有透明区域的* .png加载。
  • 播放器的图片也是动画的。它加载不同的pixmap 10次 每秒。
  • 我每秒调用QGraphicsView :: ensureVisible(QGraphicsItem,int,int)30次。
  • 我不会手动设置任何渲染提示或优化选项。
  • 我也没有重写我的QGraphicsPixmaps的paint()和boundingRect()函数。
  • 在PC上我没有遇到这个问题。

0 个答案:

没有答案