目标听众
此应用程序已针对 WebFX 项目之后的开发人员发布,并且是项目演示的一部分。
对于新观众
WebFX 是一个免费的开源跨平台解决方案,可以从单个 Java 代码库针对 7 个平台(Web、Android、iOS、macOS、Linux、Windows 和 Raspberry Pi 等嵌入式平台)。
底层技术:OpenJFX、Gluon 和 GWT。
例如,您可以在 https://raytracer.webfx.dev 访问同一应用程序的网络版本
无论平台如何,应用程序源代码都是完全相同的(请参阅下面的链接部分以访问此演示的源代码)。
该应用程序是用 Java 编写的,并使用 JavaFX API 构建用户界面。
Gluon 工具链(建立在 GraalVM 之上)用于将应用程序 Java 代码编译为适用于除 Web 之外的所有平台(因此包括此 Android 版本)的本机应用程序。
GWT 用于编译Web 版本。它将 Java 代码转换为优化的 JavaScript 代码。
因此,所有平台中的所有可执行文件都提供了优化的性能。
关于这个特别的演示
此演示展示了一个应用程序示例,该应用程序在 CPU 使用率很高的情况下不会阻塞 UI,并且可以在任何平台(甚至在 Web 上)上运行。
当应用程序正在计算光线追踪时,UI 仍然是反应式的,您甚至可以播放到目前为止计算的动画,同时它在后台继续计算。
这是通过使用 WebFX Worker API 实现的,该 API 被转换为 Web 平台的实际 Web Workers,以及其他平台的标准 Java 线程。
链接
演示源码:https://github.com/webfx-demos/webfx-demo-raytracer
WebFX 网站:https://webfx.dev
WebFX GitHub:https://github.com/webfx-project/webfx