On 03/09/2018 03:53 PM, Jason H wrote:
While I am excited about this, I still wonder that it's the right approach. By 
right, I mean scalable.
After evaluating the WebGL platform (which I was excited about as well) had 
having extreme performance issues, I foresee that this will has performance 
issues as well, because of one defect: You're rendering to a canvas what the 
browser can draw natively. If people want to serve Qt apps to the web, then the 
best approach (IMHO) is to use a server to send a client which is defined in 
HTML5 (name clash with Q_OS_HTML5) as non-canvas DOM elements (unless you're 
using a QPainter). This will leverage the browser in the best way possible, and 
let it handle the low-level drawing. To this end QMLWeb is an existing approach 
(https://github.com/qmlweb/qmlweb).
I think this depends on the use case. QMLWeb is doing a great job of bringing the QML language to web applications, which I personally find much more appealing than working with HTML and CSS. And it is probably best to leverage the browser to draw efficiently in cases where using DOM elements makes sense. This is likely the case for social media applications, news readers, ticket services, database browsers, etc.


However, for use cases where a canvas already is the main element, either for 2D or 3D content, I think Qt for WebAssembly makes a lot of sense. The difference then is just what language and framework you use to produce the code that ends up drawing the canvas. And you will still have plenty of UI elements available with buttons, sliders, and checkboxes for your menus. This could be a good fit for image editing, painting, 3D modeling, data visualization, games, simulators, etc.

I also think Qt for WebAssembly is exciting because it opens up the possibility to show a minimal demo of a full application in the browser. Instead of showing a video of the application on a product page, a small demo with limited features can be presented. Sure, it might not be as fast and doesn't have the same features as the full application (after all, you want to keep the download size to a minimum for the demo), but it will give the user a much better idea of what your application really is like. And the best part is that you can create the demo from the same code base as you used in the full application.

Svenn-Arne

_______________________________________________
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to