• 3080阅读
  • 2回复

为什么CPU的利用率低但很卡 [复制链接]

上一主题 下一主题
离线autumn_wind
 

只看楼主 倒序阅读 楼主  发表于: 2017-06-22
我在用QT做一个2D游戏,主要用到了QGraphicsItem,QGraphicsScene和QGraphicsView这几个类。重写了QGraphicsScene的mousePressEvent,每单击一下鼠标左键,就往Scene里添加一个Item。重写了QGraphics的advance(),每个Item都在Scene上运动,同时还会调用scene()->itemAt()进行碰撞检测。在没有碰撞检测的时候,不管添加多少个Item,CPU利用率也只有0%到2%,Item的运动也很流畅,这没问题。 但是进行碰撞检测后,仅仅只是几个Item,CPU利用率也会达到10%左右。而且随着Item数目的增加,CPU利用率很快就达到30%。到了30%左右之后,不管再怎么添加Item,CPU的利用率都没法再上去,而Item的运动却变得越来越卡,电脑也越来越热。这是为什么呢? Item运动卡是因为CPU利用率低吗? 怎么让上百个Item在进行碰撞检测时还能运动流畅?(我的timer每15ms发射一次timeout信号)。
离线itviewer

只看该作者 1楼 发表于: 2017-06-22
做游戏要用qml+物理引擎,QGraphicsView不适合
离线autumn_wind

只看该作者 2楼 发表于: 2017-06-22
回 itviewer 的帖子
itviewer:做游戏要用qml+物理引擎,QGraphicsView不适合 (2017-06-22 15:51) 

我在做我们学校布置的C++大作业,用不了qml。
快速回复
限100 字节
 
上一个 下一个