在一个朋友和我正在做的 3D CAD 程序中,添加 QWebEngineView 会减慢 QGraphicsScene。
我们逐层创建 3D 模型,我们在每一层中放置 2D 点(这些点由 QGraphicsScene 绘制),然后使用 QWebEngineView,我们使用 WebGL 以 3D 显示模型(所以基本上,我们将 2D 3D 球体中的点)。
在创建 QWebEngineView 之前,我们可以在 QGraphicsScene 中围绕屏幕平滑移动一组点,但是在创建之后,它会变慢并且不再平滑(慢 2 到 3 倍)。
首先我们认为它来自 webGL,我们将页面的 URL 切换到 Google。它和以前一样慢。
然后,我们尝试在返回 QGraphicsScene 并再次移动点之前删除 QWebEngineView。它和以前一样慢,即使 QGraphicsScene 不再存在。
问题是,如果 QWebEngingeView 被破坏,为什么 QGraphicsScene 没有像创建 QWebEngineView 之前那样快?你知道如何让两者顺利运行吗?或者至少像创建 QWebEngineView 之前一样快地获得 QGraphicsScene ?
注意:我们在 Linux Mint、C++、Qt 5.6 上编码