Java 3D
Ця стаття містить правописні, лексичні, граматичні, стилістичні або інші мовні помилки, які треба виправити. Ви можете допомогти вдосконалити цю статтю, погодивши її із чинними мовними стандартами. (серпень 2013) |
Цю статтю потрібно повністю переписати відповідно до стандартів якості Вікіпедії. Ви можете допомогти, переробивши її. Можливо, сторінка обговорення містить зауваження щодо потрібних змін. (серпень 2013) |
![]() | |
Тип | API |
---|---|
Розробник | Sun Microsystems |
Стабільний випуск | 1.5.2 (2008) |
Версії | 1.5[1] |
Операційна система | кросплатформний |
Ліцензія | GPL version 2+GPL linking exception |
Вебсайт | java3d.java.net |
![](http://upload.wikimedia.org/wikipedia/commons/thumb/9/9d/Java3d.png/300px-Java3d.png)
Java 3D — це тривимірний програмний інтерфейс (API) для платформи Java, що працює поверх OpenGL або Direct3D. Починаючи з версії 1.2, він розробляється в рамках Java Community Process. Граф сцени Java 3D — це спрямований ациклічний граф.
У порівнянні з іншими рішеннями, Java 3D — це не просто обгортка навколо цих графічних API, а інтерфейс, який інкапсулює графічне програмування з використанням справжнього об'єктноорієнтованого підходу. Сцена будується за допомогою графа сцени, який представляє об'єкти, що мають бути відображені. Цей граф сцени структурований у вигляді дерева, яке містить ряд елементів, необхідних для відображення об'єктів. Крім того, Java 3D пропонує широку підтримку просторового звуку.
Java 3D та документація до неї доступні для окремого завантаження. Вони не є частиною Java Development Kit (JDK).
Історія
У 1996 році Intel, Silicon Graphics, Apple і Sun підтримували інтерфейси API графічних сцен у стані розробки. Оскільки всі вони хотіли створити версію для Java, то вирішили співпрацювати над її розробкою. Цей проєкт отримав назву Java 3D. Розробка вже йшла повним ходом у 1997 році, а публічна бета-версія була випущена у березні 1998 року. Перша офіційна версія була випущена в грудні 1998 року. З середини 2003 року до літа 2004 року розробка Java 3D була припинена. Влітку 2004 року Java 3D була випущена як проєкт з відкритим вихідним кодом, керований спільнотою, і з того часу компанія Sun та волонтери продовжують її розробку.
29 січня 2008 року було оголошено, що вдосконалення Java 3D буде припинено на користь отримання тривимірної графічної сцени для JavaFX[2].
З 28 лютого 2008 року весь вихідний код Java 3D розповсюджується під ліцензією GNU General Public License (GPL) версії 2 з виключенням Classpath. [2]
З 10 лютого 2012 року Java 3D використовує JOGL 2.0 для апаратно-прискореного рендерингу OpenGL. Порт був ініційований Julien Gouesse. [3]
Особливості
![](http://upload.wikimedia.org/wikipedia/commons/thumb/4/46/Java3DStarSystemScreenShot.png/220px-Java3DStarSystemScreenShot.png)
- Багатопотокові структури графів сцен
- Крос-платформна сумісність
- Універсальні API-інтерфейси реального часу, придатні для візуалізації та ігор
- Підтримка режимів збереженого, скомпільованого та миттєвого рендерингу
- Включає апаратне прискорення візуалізації JOGL, OpenGL та Direct3D (залежно від платформи)
- Складна віртуальна реальність на основі графового представлення сцени з підтримкою стереоскопічного рендерингу та складних багатоекранних конфігурацій
- Вбудована підтримка гарнітур віртуальної реальності
- CAVE (багатоекранні проєкції)
- 3D аудіо ефекти
- Програмовані шейдери з підтримкою GLSL і CG
- Буфер трафаретів
- Імпорт популярних форматів, таких як 3DS, OBJ, VRML, X3D, NWN та FLT
- Конкурентні технології
Конкурентні технології
Java 3D — не єдиний високорівневий API для 3D-візуалізації на Java. Частково через паузи у розробці у 2003 та 2004 роках з'явилося декілька конкуруючих технологій графіки сцен у Java.
Загальна мета:
- Ardor3D
Gaming:
- JMonkey Engine
- Espresso3D
Візуалізація:
- Jreality.
Крім того, багато інших API графіки сцен C або C++ пропонують підтримку Java через JNI.
На нижчому рівні, прив'язки JOGL (JSR 231) OpenGL для Java є популярною альтернативою API графів сцен, таких як Java 3D. LWJGL є ще одним таким зв'язуванням.
Див. також
- Project Looking Glass (Experimental 3D Desktop using Java 3D)
- Project Wonderland (Virtual workspace environment using Java 3D and Project Darkstar)
- J3DFly (Experimental Scene Graph editor for Java 3D)
Посилання
- Official site and releases
- JSR 926 [Архівовано 23 вересня 2020 у Wayback Machine.] (Java 3D 1.5), JSR 912 [Архівовано 23 вересня 2020 у Wayback Machine.] (Java 3D 1.3)
- Forum and Wiki for Java 3D. — Places for collaboration; includes lists of books and users, faq and knowledge base
- java3d.org [Архівовано 12 червня 2013 у Wayback Machine.]. Tutorial, examples and information
- OpenGL.J3D Java 3D Tutorials [Архівовано 15 листопада 2012 у Wayback Machine.]
- Lecture [Архівовано 10 травня 2008 у Wayback Machine.]. — From Siggraph for beginners
- Game Programming [1] [Архівовано 9 березня 2013 у Wayback Machine.], [2] [Архівовано 9 червня 2013 у Wayback Machine.] in Java 3D (chapters as pdf-files and sourcecode)
- Plugin for Eclipse hosted by SourceForge [Архівовано 28 березня 2013 у Wayback Machine.]
- Example visualisation applets using Java 3D [Архівовано 26 березня 2022 у Wayback Machine.]
- EMAP, The e-Mouse Atlas Project [Архівовано 17 січня 2013 у Wayback Machine.]. — A 3D anatomical structure explorer with embedded 2D section made by Guangjie Feng.