WebView and WebGL

John-Val Rose johnvalrose at gmail.com
Tue Sep 12 19:51:38 UTC 2017

Hi Jan,

I have to say that I find your question rather "curious"!

Imagine asking a Qt developer "Why do you need 3D in Qt?". They'd probably look at you a bit strangely and then reply "Is this a trick question?".

If there weren't the (advanced) 3D features in Qt then most C++ developers would simply ignore it! We've moved a long, long way on from "simple forms based applications" into an exciting new world of visualisations, animations, games, big data, 3D charting etc.

Or, have we?

Well, most developers and businesses have... unless you're a Java shop. There, you're most likely to still be using Swing because it has an enormous range of controls (all of which are much easier to customise than JavaFX controls) and you have a range of high-quality GUI builders and a wealth of trained, skilled and experienced staff resources to find if you need them.

And guess what? Two of the most advanced and utilised IDEs (JetBrains IntelliJ and Google Android SDK) are *Swing* applications!

But, you're still basically just "doing forms" and while that may be adequate for many types of companies, it is also significantly impeding their technology progress and limiting their developer's potential.

No, they don't want to throw away all their Java domain models and business logic, retrain everyone in C++ and then spend years rewriting a massive codebase only to find years later that they have spent millions on building a bug-infested shiny new toy that does little or nothing more than what they started with.

And they don't want to buy into the "HTML5 hype" either. They're going to face a complete brick wall trying to do what I just described by shifting to browser-based technologies.

My suggestion of implementing WebGL in WebView was merely a quick way to at least permit decent 3D functionality to finally "creep" into JavaFX and then hopefully kickstart a full-blown injection of advanced 3D features.

Besides, if you're going to embed a browser in your JavaFX app (which is actually a very common and valid requirement), wouldn't you want it to be at least able to use Google Maps properly?

JavaFX is at a crossroads.

Please, let's take the right road...


John-Val Rose
Chief Scientist/Architect
Rosethorn Technology

> On 12 Sep 2017, at 04:51, Jan Tosovsky <j.tosovsky at email.cz> wrote:
>> On 2017-09-10 Nir Lisker wrote:
>> 3D enhancement are indeed not planned for Java10 (at the minimum) ...
>> but I agree with Mike - you can, maybe somewhat surprisingly, do quite
>> a lot with what there is.
>> ...
>> We've employed some clever tricks to get adequate "advanced features"
>> results and considering that all of it can be single-handedly run on
>> iOS and Android with Gluon Mobile (specifically JavaFXPorts) I think 
>> there *is* a future in this direction ...
> Just for my curiosity, what is the main driver for developers to integrate 3D into JavaFX apps?
> Why not create apps utilizing WebGL directly in (full-featured) browsers using JavaScript bundled as GUI apps (via e.g. Meteor or CEF)?
> Is it about reusing Java knowledge, unique Java libraries, something else?
> Thanks for clarifying,
> Jan

More information about the openjfx-dev mailing list