我浏览了Qt5和Qt Quick的新功能,并没有真正理解它与图形视图框架(QGraphicsScene)功能的明显区别。它使用QML但旁边:
我正在进行塔防游戏,并且一直在使用QGraphicsScene,现在我想知道是否应该切换到Qt Quick。
答案 0 :(得分:7)
Qt5和Qt Quick 2应该提供良好的性能提升,这要归功于“场景图”,它是底层引擎,基本上是从Qt5的Qt Quick开始编写的,以充分利用OpenGL,并具有高帧率从一开始就作为设计目标。
除了性能之外,我认为它是一个很大的功能,您可以用更好的QML方式描述GUI,过渡,动画等等。有一些学习曲线,编写声明性GUI代码与编写更直接的C ++代码来完成类似的事情是完全不同的,但它是完全值得的。
在Qt4中,我认为QML不会给出任何性能优势,因为我认为(现在没有验证)它会写在顶级QGraphicsView上。
因此,总结一下:转到Qt5和Qt Quick2,学习QML来设计GUI。用C ++完成游戏逻辑以提高性能(塔式防御游戏可以在极端情况下发生相当多的事情)。
编辑:博客(旧的可能会在细节上略微过时)关于为什么然后创建场景图实现: http://blog.qt.io/blog/2011/05/31/qml-scene-graph-in-master/