面向桌面应用程序的C++轻量级、跨平台、HTML呈现引擎

2020-08-28 17:00:04

Ultralight是一个轻量级、跨平台的HTML渲染引擎,适用于桌面应用程序和游戏。它支持大多数现代HTML5和JavaScript功能,同时在二进制大小和内存使用量方面仍然很小。

API可用于C和C++,并提供C#、Rust、Java和Go社区绑定,请访问我们的论坛。

Ultralight是WebKit的一个新端口,它结合了一个新的轻量级渲染器,专门用于嵌入应用程序和游戏中。

我们可选的高性能GPU渲染器可利用GPU硬件(如果可用)。所有绘制都通过虚拟显示列表执行,并在运行时转换到目标平台(请参阅GPUDriver界面)。通过Appcore运行时使用Ultraalight时,默认情况下启用该渲染器。

为了更轻松地集成到GPU有限的游戏和环境中,Ultraalight还可以使用SIMD加速的CPU渲染管道渲染到屏幕外像素缓冲区。此模式下的路径、渐变和图案使用Blend2D';的高性能JIT编译器进行光栅化。

Ultrallight旨在与现有游戏和游戏引擎很好地集成。开发人员通过文件系统接口完全控制资源加载,并有能力为库提供自定义的、可锁定的像素缓冲区,以供每个视图渲染(例如,用于在纹理中显示HTML)。

Appcore是一个可选的跨平台桌面应用运行时,构建在Ultraalight之上,可处理窗口创建、本地事件循环、本地图形驱动程序(D3D11、D3D12、Metal、OpenGL)等。

您可以使用它以类似于Electron的方式构建桌面HTML应用程序。它目前正在积极开发中,在撰写本文时只支持单窗口应用程序。许多计划中的功能(应用程序图标、自动打包程序、带有自定义可拖动标题栏的无边框窗口等)都缺失了,但正在开发中。

对于年收入低于10万美元的公司,Ultrallight对非商业用途和商业用途都是免费的。有关更多信息,请参阅LICENSE.txt。

我们提供商业许可、优先支持和源代码。要了解更多信息,请访问我们的网站。