Java 3D

Java 3D הוא ממשק תכנות יישומים לגרפיקת תלת-ממד בשפת התכנות Java. הממשק פותח על ידי חברת סאן מיקרוסיסטמס.

בניגוד לפתרונות דומים, Java 3D אינו רק מעטפת לממשקי תכנות יישומים אחרים אלא ממשק מונחה-עצמים טהור ורב-פלטפורמי. בעזרת Java 3D ניתן להציג נתונים מדעיים, תמונות רפואיות, אנמיציות, משחקים ועוד. ניתן גם לייבא מודלים תלת־ממדיים בפורמטים שונים (כגון  3DS,OBJ, OpenFlight, VRML  ועוד) לתוכנית Java3D.

Java 3D נשען על OpenGL או על DirectX כאשר ברירת המחדל היא OpenGL, לכן הוא נחשב כשפה עילית עבור הטלות ובניית אובייקטים תלת־ממדיים. 

ל-Java 3D יש מנוע ממוטב המחשב את ההטלות ואת סדר ההטלות של האובייקטים למסך המחשב (תהליך הנקרא rendering) אך אפשר גם לשלוט בסדר הרינדור אך זה פחות מומלץ.

כל האובייקטים הגאומטריים חיים בעולם ווירטואלי. ל- Java 3D יש מחלקה הנקראת VirutalUniverse שבעזרתו היא קושרת את כל האובייקטים, והעולם הווירטואלי מוטל על גבי צג המחשב.

Java 3D מבוסס על מבני נתונים הנקרא גרף התרחשות (scene graph). זהו מבנה נתונים מכוון אשר פתוח, זאת אומרת אין אפשרות לחזור לצומת. כל צומת בגרף היא עצם. 
הגרף, בצורה כללית מתחלק לשני חלקים עיקריים:
 ענף התוכן (content branch graph) - ענף הכולל מחלקות הקשורות לתוכן העולם הווירטואלי.
 ענף הראייה (view branch graph) - ענף הכולל מחלקות שקשורות לאוריינטציה וזוויות המסתכל. כמו כן ישנם מחלקות בענף זה הקשורות להתקנים חיצוניים.

כיום Java3D אינה חלק מ-JAVA 6 וצריך להתקינה בנפרד.

קישורים חיצוניים 
 
 Java 3D באתר ג'אווה
 www.j3d.org
 סרטון המדגים עולם וירטואלי הנכתב ב http://www.youtube.com/watch?v=BGnhpg2iaRo  Java3D

שפות תכנות