مخاطبان هدف
این برنامه برای توسعه دهندگانی که پروژه WebFX را دنبال می کنند منتشر شده است و بخشی از دموی پروژه است.
برای مخاطبان جدید
WebFX یک راه حل چند پلت فرم رایگان و منبع باز است که می تواند 7 پلتفرم (Web، Android، iOS، macOS، Linux، Windows و جاسازی هایی مانند Raspberry Pi) را از یک پایه کد جاوا مورد هدف قرار دهد.
فناوری های اساسی: OpenJFX، Gluon و GWT.
به عنوان مثال، می توانید از نسخه وب همین برنامه در https://raytracer.webfx.dev دیدن کنید.
هر پلتفرمی که باشد، کد منبع برنامه دقیقاً یکسان است (برای دسترسی به کد منبع این نسخه ی نمایشی به بخش پیوندها در زیر مراجعه کنید).
این برنامه به زبان جاوا نوشته شده است و از JavaFX API برای ساخت رابط کاربری استفاده می کند.
زنجیره ابزار Gluon (ساخته شده در بالای GraalVM) برای کامپایل کد جاوا برنامه در یک برنامه بومی برای همه پلتفرم ها به جز وب استفاده می شود (بنابراین این شامل این نسخه اندروید نیز می شود).
GWT برای کامپایل نسخه وب استفاده می شود. این کد جاوا را به یک کد جاوا اسکریپت بهینه تبدیل می کند.
در نتیجه، تمامی فایل های اجرایی در تمامی پلتفرم ها عملکرد بهینه ای را ارائه می دهند.
درباره این نسخه ی نمایشی خاص
این نسخه نمایشی نمونهای از برنامهای را نشان میدهد که با وجود استفاده زیاد از CPU، رابط کاربری را مسدود نمیکند، و این در هر پلتفرمی (حتی در وب) است.
در حالی که برنامه در حال محاسبه ردیابی پرتو است، رابط کاربری هنوز فعال است، حتی میتوانید انیمیشن محاسبهشده تا کنون را در حالی که محاسبات را در پسزمینه ادامه میدهد، پخش کنید.
این امر با استفاده از WebFX Worker API، که به Web Workers واقعی برای پلتفرم وب ترجمه میشود، و رشتههای استاندارد جاوا برای سایر پلتفرمها به دست میآید.
پیوندها
کد منبع نسخه آزمایشی: https://github.com/webfx-demos/webfx-demo-raytracer
وب سایت WebFX: https://webfx.dev
WebFX GitHub: https://github.com/webfx-project/webfx