ЦЕЛЕВА АУДИТОРИЯ
Това приложение е публикувано за разработчици след проекта WebFX и е част от демонстрациите на проекта.
ЗА НОВА ПУБЛИКА
WebFX е безплатно кръстосано платформено решение с отворен код, което може да се насочи към 7 платформи (Web, Android, iOS, macOS, Linux, Windows и вграждане, като Raspberry Pi) от една база с Java код.
Основни технологии: OpenJFX, Gluon & GWT.
Например, можете да посетите уеб версията на същото приложение на https://raytracer.webfx.dev
Каквато и да е платформата, изходният код на приложението е абсолютно същият (вижте раздела ВРЪЗКИ по-долу, за да получите достъп до изходния код на тази демонстрация).
Приложението е написано на Java и използва JavaFX API за изграждане на потребителския интерфейс.
Инструменталната верига Gluon (изградена върху GraalVM) се използва за компилиране на Java кода на приложението в родно приложение за всички платформи с изключение на мрежата (така че това включва тази версия на Android).
GWT се използва за компилиране на уеб версията. Той транспилира Java кода в оптимизиран JavaScript код.
В резултат на това всички изпълними файлове във всички платформи предлагат оптимизирана производителност.
ЗА ТОВА КОНКРЕТНО ДЕМО
Тази демонстрация показва пример за приложение, което не блокира потребителския интерфейс въпреки тежкото използване на процесора, и това на всяка платформа (дори в мрежата).
Докато приложението изчислява проследяването на лъчи, потребителският интерфейс все още е активен, можете дори да възпроизведете изчислената досега анимация, докато то продължава изчислението във фонов режим.
Това се постига чрез използване на WebFX Worker API, който е преведен на действителни Web Workers за уеб платформата и стандартни Java нишки за други платформи.
ВРЪЗКИ
Демо изходен код: https://github.com/webfx-demos/webfx-demo-raytracer
Уебсайт на WebFX: https://webfx.dev
WebFX GitHub: https://github.com/webfx-project/webfx