QWebEngineView加载Cesium报WebGL错

具体错误:

js: Error constructing CesiumWidget.

Visit <a href="http://get.webgl.org">http://get.webgl.org</a> to verify that your web browser and hardware support WebGL. Consider trying a different web browser or updating your video drivers. Detailed error information is below:

RuntimeError: The browser supports WebGL, but initialization failed.

解决办法:

首先查看QWebEngineView是否启用了WebGL

m_pEngineView->load(QUrl(QStringLiteral("chrome://gpu/")));

然后查看reset notification strategy

如果是0x8252则支持WebGL,如果是0x0000则不支持WebGL。

 

我的显示是0x0000,下一步则开启WebGL。

在main函数QApplication或QCoreApplication创建之前添加Qt::AA_ShareOpenGLContexts属性

 QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts);
 QApplication a(argc, argv);
 MainWindow w;
......

然后reset notification strategy变为0x8261,说明已经支持WebGL了

再次加载Cesium即可。

m_pEngineView->load(QUrl(QStringLiteral("http://localhost:8082/CesiumEarth/")));

  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
CesiumWebGL是两个与智慧城市建设密切相关的技术。 首先,Cesium是一个基于WebGL技术的开源地理信息系统(GIS)库。它可以在网页上实现高性能的三维地球可视化,并提供丰富的地理空间数据展示和交互功能。在智慧城市中,Cesium可以用于创建真实感的三维城市模型,展示城市的地理信息,包括建筑物、街道、公园、河流等等,为城市规划、交通管理、环境监测等提供强大的可视化工具。通过结合CesiumGIS功能和智慧城市的数据,可以实现更加直观和细致的城市信息呈现,提供更好的决策支持和公众参与。 另一方面,WebGL是一种基于JavaScript编程接口的图形渲染技术,可以在网页上实现高性能的3D图形渲染。在智慧城市中,WebGL可以用于创建交互式的虚拟现实(VR)或增强现实(AR)场景,提供更加沉浸式的体验。例如,通过WebGL技术可以实现虚拟漫游,让人们在网页上亲身体验智慧城市的场景,参观建筑物、观赏景点等等。这样的体验可以帮助市民更好地了解和参与城市的发展,促进城市与居民之间的互动与合作。 综上所述,CesiumWebGL技术在智慧城市中具有重要作用。它们可以为城市规划、交通管理、环境监测等方面提供高性能的可视化工具,并提供更加沉浸式的体验,帮助人们更好地了解和参与智慧城市的建设。随着技术的不断发展,CesiumWebGL有望在智慧城市建设中发挥更大的作用,为人们带来更好的城市生活质量。
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值