To be fair, Ultralight supports the console platforms, which it cannot do with open source code (not allowed by the developer agreements.) As such, it would already have to have a way to deal with non-public binaries or sources in the tree. In addition, a GPU renderer that plays nice as an embedded library, and is performant and can properly render html is not a small feat of engineering. I cannot entirely blame the author(s) for keeping that part proprietary. I just question the wisdom of it in the face of free competition like WebKit, CEF, Sciter or Qt.
Yep, we maintain an Xbox port and are porting to PS4, PS5, and Switch next.
Yes, the GPU renderer (and CPU renderer) took about 4 years of R&D alone to get to a usable state (we started on GPU rasterization long before WebRender was even around).
FWIW, a large number of our customers need commercial support and have complex integration concerns that go significantly beyond what those offerings provide (just in the past week, we've been doing custom development for several game studios to get our renderer working in their engine on their platforms).
Also we fully intend to stay current with WebKit trunk (we use a fork of their WebCore/JavaScriptCore modules) since a number of our users need to support modern HTML/JS/CSS (latest build supports ES6 modules, WebAssembly, and more).
I don't understand that. The readme says "Ultralight is a lightweight, cross-platform, HTML rendering engine for desktop apps and games." How does this fit with your argument?
> which it cannot do with open source code (not allowed by the developer agreements.)
Consoles, as in PS4, XB1, soon PS5..etc. Elsewhere in the thread the author said that some of these are already supported, and others are coming soon. Access to the SDKs for those, which you would need to run something like UL, is governed by contracts that you as a developer sign with the platform owner -- Sony, Microsoft, Nintendo, etc.
These agreements very rarely (read: never) allow publishing of the SDK sources in any fashion. Even simply exposing code that calls into SDK functions would be in violation.
You don't get access to the SDK unless you sign the contract, and if you sign the contract and breach it, they have legal cause against you. Usually if you want to use third-rdparty software for these closed platforms, the third-party and you must both have developer agreements with the platform owner. This of course excludes software that you as a developer ported to the platform on your own.
Ok, I see, you're talking about home video game consoles, not command-line interfaces. I'm not home console developer (nor user); one reason is that it ties one too closely to the proprietary technology of individual manufacturers. But I see your point. Your arguments do not contradict my statements. I only stated that not all source code are available in the free version and therefore it is not an open source product.