Qt Quick WebGL 用浏览器来运行你的QtQuick程序

一、用法

1. 启动程序

$ ./your-qt-quick-application -platform webgl:port=8998

其中端口自己定义
或者
使用一种跨平台的方式(讲究)来实现,在main.cpp中使用qputenv()方法

// ...
qputenv("QT_QPA_PLATFORM", "webgl:port=8998"); 
QGuiApplication app(argc, argv);

2. 浏览器中输入

127.0.0.1:8998

其中127.0.0.1 是your-qt-quick-application运行的主机地址,如果是本机,可以用127.0.0.1来代替

3. 效果

在这里插入图片描述

二、缺点

  • 虽然WebGL steaming在本地网络中表现良好,但通过互联网使用它会导致显著的延迟; 即只适用于本地网络
  • 连接未加密,因此不安全;
  • 目前,一次只支持一个连接(也就是说只有一个用户),浏览器中一个page打开就相当于一个用户了

三、特性

  • 应用程序本身不在 Web浏览器中运行。Web浏览器仅渲染其GUI;
  • 它既不是视频流,也不是镜像。它是在Web浏览器中显示的“解耦”的应用程序的GUI;
  • 由于它仅适用于OpenGL(ES),因此WebGL流不适用于Widgets或任何其他非OpenGL内容。
  • WebGL streaming 的“零安装”概念 —— 您不必在客户端(台式机/平板电脑/智能手机/等)上安装/部署任何东西,因为唯一需要的只是一个Web浏览器

四、概念

WebGL steaming是一个QPA插件,它通过网络发送Qt Quick应用程序的OpenGL调用(“流式”),然后将这些调用转换为WebGL格式的调用,从而可以在HTML5 Canvas中渲染。这就让您可以在远程主机上运行应用程序,并在本地Web浏览器中呈现其GUI。

在这里插入图片描述

适用场景

1. 低端的嵌入式设备上或没有显示功能

2. 设备”实际上是一个非常强大的服务器,您可以在常规电脑上的Web浏览器中使用GUI时在服务器上执行一些繁重的计算

3. 反盗版措施。假设您希望保护您的软件不被“破解”或“盗版”。显然,如果客户端上没有运行,那么没有什么可以破解,因为您的用户只在其浏览器中呈现GUI,并且应用程序本身正在您的服务器上运行。

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值