Some more edits

parent 825801d6
One of the Qt 5.12 new features is <b>Qt Quick WebGL</b> platform plugin (<a href="http://doc.qt.io/qt-5/qpa.html)">QPA</a>). It was actually available as a technology preview from Qt 5.10 already, but starting with Qt 5.12 it a released feature.
One of the Qt 5.12 new features is <b>Qt Quick WebGL</b> platform plugin. It was actually available as a technology preview from Qt 5.10 already, but starting with Qt 5.12 it a released feature.
<ul style="margin-bottom:0px;">
<li><a href="#tldr">TLDR</a></li>
......@@ -12,7 +12,7 @@ One of the Qt 5.12 new features is <b>Qt Quick WebGL</b> platform plugin (<a hre
</ul>
<li><a href="#use-cases">Use cases</a></li>
<ul style="margin-bottom:0px;">
<li><a href="#webgl-vs-actual-web">WebGL vs actual web</a></li>
<li><a href="#webgl-streaming-vs-actual-web">WebGL streaming vs actual web</a></li>
</ul>
<li><a href="#licensing-pricing">Licensing</a></li>
<li><a href="#conclusion">Conclusion</a></li>
......@@ -40,9 +40,9 @@ This post is intended to be a kind of an "unboxing" experience from the perspect
<a name="what-is-it"><h3>What is it</h3></a>
But first a short description of the feature. If you read past blog-posts, you can just skip this section. I would at least recommend to read the <a href="http://doc.qt.io/qt-5/webgl.html">documentation</a>, though.
But first a short description of the feature. If you read past blog-posts, you can just skip this section. I would however recommend to read the <a href="http://doc.qt.io/qt-5/webgl.html">documentation</a> at least.
"WebGL streaming" is a QPA plugin that sends ("streams") OpenGL calls of your Qt Quick application over the network and in turn those can be translated into <a href="https://en.wikipedia.org/wiki/WebGL">WebGL</a> calls and thus rendered in <a href="https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API)">HTML5 Canvas</a>. What it means in practice is that you can have an application running on a remote host and render its GUI in a local web-browser.
WebGL streaming is a <a href="http://doc.qt.io/qt-5/qpa.html)">QPA plugin</a> that sends ("streams") OpenGL calls of your Qt Quick application over the network and in turn those are translated into <a href="https://en.wikipedia.org/wiki/WebGL">WebGL</a> calls and thus can be rendered at <a href="https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API)">HTML5 Canvas</a>. What it means in practice is that you can have an application running on a remote host and render its GUI in a local web-browser.
Here's a picture to visualize such an interaction:
......@@ -50,7 +50,7 @@ Here's a picture to visualize such an interaction:
And a <a href="https://youtu.be/X1iDlE06xdA">video</a> from KDE Akademy with a more detailed explanation by <a href="http://blog.qt.io/blog/author/jesusfernandez/">Jesus Fernandez</a>.
But since I'm a simple Qt "user", I don't really or care about any of that (<i>and all of that is hidden from me anyway</i>), so to me everything looks like this:
But since I'm a simple Qt "user", I don't really or care about any of that (<i>and it's all hidden from me anyway</i>), so to me everything looks like this:
<img class="aligncenter" src="/img/how-it-works-simplified.png" title="Qt WebGL, how it works, simplified"/>
......@@ -156,7 +156,7 @@ The idea is to control the camera (its pan and tilt) with a Qt-based application
Here's a list of the required hardware for such a setup:
* <a href="https://thepihut.com/products/pan-tilt-hat">Pan-Tilt HAT</a>;
* <a href="https://thepihut.com/products/raspberry-pi-3-model-b-plus">Raspberry Pi 3 Model B+</a>. It actually would be more impressive if I chose RPi Zero, but Pan-Tilt HAT looks better on a "full-sized" RPi;
* <a href="https://thepihut.com/products/raspberry-pi-3-model-b-plus">Raspberry Pi 3 Model B+</a>. I could choose RPi Zero as well, but this <a href="https://www.raspberrypi.org/blog/introducing-raspberry-pi-hats/">HAT</a> fits better on a "full-sized" RPi;
* <a href="https://thepihut.com/products/pibow-3b-coupe-raspberry-pi-3-3b">Pibow 3B+ Coupe Royale</a>;
* <a href="https://thepihut.com/products/raspberry-pi-camera-module">Raspberry Pi Camera Module V2</a>.
......@@ -260,7 +260,7 @@ Overall, supporting only one connection fairly reduces the number of possible us
Another noticeable aspect is so-called "zero install" concept - you don't have to install/deploy anything on clients (<i>desktops/tablets/smartphones/etc</i>), the only thing needed is a web-browser.
<a name="webgl-vs-actual-web"><h4>WebGL vs actual web</h4></a>
<a name="webgl-streaming-vs-actual-web"><h4>WebGL streaming vs actual web</h4></a>
Some of you might ask, what is the point of relying on WebGL streaming in the first place? Since it's all about web-browser, then one can just take a regular web-server and create a web-application - result will be almost the same: backend is hosted on the remote device and HTML-based GUI is rendered in the web-browser.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment