대상 고객
이 앱은 WebFX 프로젝트를 따르는 개발자를 위해 게시되었으며 프로젝트 데모의 일부입니다.
새로운 청중을 위해
WebFX는 단일 Java 코드 기반에서 7개 플랫폼(웹, Android, iOS, macOS, Linux, Windows 및 임베드(예: Raspberry Pi))을 대상으로 할 수 있는 무료 오픈 소스 크로스 플랫폼 솔루션입니다.
기본 기술: OpenJFX, Gluon 및 GWT.
예를 들어 https://raytracer.webfx.dev에서 동일한 앱의 웹 버전을 방문할 수 있습니다.
플랫폼이 무엇이든 애플리케이션 소스 코드는 정확히 동일합니다(이 데모의 소스 코드에 액세스하려면 아래 링크 섹션 참조).
애플리케이션은 Java로 작성되었으며 JavaFX API를 사용하여 사용자 인터페이스를 구축합니다.
Gluon 도구 체인(GraalVM 위에 구축됨)은 애플리케이션 Java 코드를 웹을 제외한 모든 플랫폼의 기본 앱으로 컴파일하는 데 사용됩니다(따라서 여기에는 이 Android 버전 포함).
GWT는 웹 버전을 컴파일하는 데 사용됩니다. Java 코드를 최적화된 JavaScript 코드로 변환합니다.
결과적으로 모든 플랫폼의 모든 실행 파일은 최적화된 성능을 제공합니다.
이 특정 데모 정보
이 데모는 CPU 사용량이 많음에도 불구하고 UI를 차단하지 않는 앱의 예를 보여줍니다. 이는 모든 플랫폼(웹에서도)에서 가능합니다.
애플리케이션이 레이 트레이싱을 계산하는 동안 UI는 여전히 반응적이며 백그라운드에서 계산을 계속하는 동안 지금까지 계산된 애니메이션을 재생할 수도 있습니다.
이것은 웹 플랫폼을 위한 실제 웹 작업자로 변환되는 WebFX 작업자 API와 다른 플랫폼을 위한 표준 Java 스레드를 사용하여 달성됩니다.
연결
데모 소스 코드: https://github.com/webfx-demos/webfx-demo-raytracer
WebFX 웹사이트: https://webfx.dev
WebFX GitHub: https://github.com/webfx-project/webfx