Download presentation
Presentation is loading. Please wait.
Published byElwin Leonard Modified over 9 years ago
1
Java 3D Web Apps and Services
2
Presentation Overview l Java3D Overview l Software l Java3D API l Scene Graph Programming Model l Java3D Terminology l Examples l Java3D Vs OpenGL l Applications
3
Java3D Overview l standard extention to Java 2 l Java3D API is an interface for writing programs to display and interact with 3D graphics l provides high level constructs for creating images, visualizations, animations and interactive application programs
4
Overview contd... l hierarchy of classes which serve as an interface to a sophisticated 3D graphics rendering system l programmer works with high level constructs which use popular graphics libraries
5
Java3D Software to Hardware Relationship Applet / Application Java3D Java 2 Native Graphics Calls OpenGLDirect 3D Future APIs Proprietary Hardware
6
Software l Java3D classes (duh!!) l Java 2 l OpenGL 1.1 OR Direct 3D 5.0 or later OpenGL or Direct 3D supported graphics accelerator for best viewing
7
Requirements contd… OpenGL Libraries l Gl.h l Glaux.h l Glaux.lib l Glu.h l Glu32.dll l Glu32.lib l Readme
8
Requirements contd... Java3D files Required files: l \jre\bin\ J3D.dll J3Daudio.dll l \jre\lib\ext vecmath.jar j3dcore.jar j3daudio.jar j3dutils.jar Optional files: l \demo\j3d l \j3d-utils- src.jar
9
The Java3D API l object-oriented API l individual graphics elements - separate objects connected by a scene graph l the objects are manipulated to create the desired effect l the API has core classes and utility classes
10
API contd... Core Classes l javax.media.j3d package l lowest level classes required for Java3D programming Utility Classes l com.sun.j3d.utils package l convenient and powerful additions to the core
11
API contd... l progams use java.awt package to display the rendering in a window l java.vecmath package defines classes for points, vectors, matrices ad other mathematical objects
12
Java3D Terminology l Scene Graph: The Java3D data stucture that specifies the visual object and viewing parameters l Virtual Universe: The conceptual space in which the object exists l Locale: It provides a reference for all objects
13
Scene Graph Programming Model l Java3D core API framework is based on the scene graph programming model l pictures rendered with Java3D - scenes l Scene Graph design tool requirements documentation
14
Scene Graph Symbols Arcs (object relationships) VirtualUniverse Locale Group Leaf Node Component Other objects Parent-child link Reference Nodes and Node Components (objects)
15
Typical scene graph (DAG) BranchGroup BG Virtual Universe Locales Nodes Leaf Nodes
16
Basic Recipe l Create a Canvas3D object l Create a SimpleUniverse object which references the Canvas3D object customize the SimpleUniverse object l Construct the content branch l Compile the content branch graph l Insert the content branch graph into the locale of the SimpleUniverse
17
OpenGL Vs Java3D Java3D l high level; OO l appli programmers l different rendering modes OpenGL l low level; procedural l system programmers l immediate mode rendering
18
Java3D Rendering Modes l Immediate mode all point, line, triangle info is provided to the rendering engine which forces the rendering in any manner, immediately no room for global optimization (at scene graph level) l Retained mode scene graph otimization
19
Rendering modes contd... l Compiled-Retained builds on retained mode enhanced optimization viz geometry compression, grouping and scene graph flattening
20
Comparison contd... Java3D l Java: language of the Internet l portability write once “render” everywhere l appli programmer can concentrate on objects l web-based, powerful tool, runs inside the browser Low level APIs l Fast l less memory required
21
Areas of Application l OpenGL Games Flight simulation l Java3D Complex 3D graphics applets for spicing up web sites
22
Resources l Software http://www.javasoft.com http://www.opengl.org l Tutorials http://www.cs.albany.edu/~nilesh/sw http://java.sun.com/products/java-media/3D/collateral/#tutorial
23
Resources contd... l Package index http://java.sun.com/products/java- media/3D/forDevelopers/j3dapi/index.html l Important links- Java3D http://www.radialsoft.com/cadcam/java3D.htm l OpenGL http://reality.sgi.com/opengl/
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.