| Q&A |
Doug
Twilleager
Sun Microsystems, Specification Leader JAVA 3D API 1.4
(JSR
189)
09/10/03 |
| Q1 |
What
is Java 3D? |
| A1 |
Java
3D is a scene graph based API for processing and rendering 3D
scenes and environments. It is a standard extension to the Java
platform. Version 1.3.1 of the API was just released earlier
this year. More detailed information may be found at java.sun.com/products/java-media/3D/ |
| |
|
| Q2 |
Java
is considered to be slower than other solutions for animating
realtime 3D contents. What are the benefits of using Java for
delivering 3D contents? |
| A2 |
With
the development of extremely powerful just in time compilers,
Java applications can now achieve performance on par with native
C++ applications. Beyond that, the largest benefit of using
the Java platform, and Java 3D in paticular, for developement
is the increase in programmer productivity. It is very fast
and easy to develope a powerful 3D application with Java 3D
and it's associated utilities. |
| |
|
| Q3 |
Is
Java 3D able to display large 3D files such as CAD datas? |
| A3 |
Yes.
Java 3D has been accepted in all kinds of different markets,
from CAD to scientific visualization to games. The CAD market
was one of the first markets to embrace Java 3D. |
| |
|
| Q4 |
What
are the key new fonctionnalities of Java 3D 1.4? |
| A4 |
Programmable
shading is probably the most important feature being looked
at for Java 3D 1.4. The real time rendering industry has shifted
from fixed funtionality pipelines to programmable pipelines,
and we need to incorporate that change into Java 3D. |
| |
|
| Q5 |
Shading
languages seems to be a new evolution in realtime 3D, will Java
3D support nVidia Cg or OpenGL SL? |
| A5 |
The
current plan is to have Java 3D be shading language neutral.
We would like to provide all the mechanisms to allow for programmable
shading, but not enforce the usage of a paticular language.
Rather, we would expose the available lanuages to the application,
and let the application make the appropriate choice. |
| |
|
| Q6 |
Why
is Java compatible for both OpenGL and DirectX APIs on Windows? |
| A6 |
When
we first designed Java 3D, we knew that we had to allow for
different implementations on top of different low level rendering
API's. So, much of the API was built to be agnostic of the low
level API. That allowed us to provide implementations for both
OpenGL and DirectX. Some video cards implement one API better
than the other, so this gives developers the choice based upon
their projected deployment platform. |
| |
|
| Q7 |
Will
Java 3D take advantage of 3D hardware acceleration on MacOSX
Platform ? |
| A7 |
Mac
OSX has OpenGL, so Java 3D should take advantage of hardware
acceleration there as well. |
| |
|
| Q8 |
Java
3D can import VRML files, what about the X3D (next generation
of VRML) and MPEG4 standards? |
| A8 |
There
are implementations of both X3D and MPEG4 that utilize Java
3D. Although Java 3D is a high level API, some standards such
as those above are even higher. Java 3D is a great platform
to base the implementations of those standards. |
| |
|
| Q9 |
Do
you plan to bring Java 3D on wireless devices ? |
| A9 |
There
is a Java Specification Request being developed right now which
brings 3D scene graph funtionalitly to mobile devices. It specifically
targets very small devices, so we found that Java 3D was a bit
to large to be strictly subset into those devices. For slightly
larger devices, such as high end phones and PDA's, a subset
of Java 3D could be viable. We will wait to see what the market
and developers want before we embark on that project.
|
| |
|
| Q10 |
Why
is Sun involved in 3D graphics support on Java technologies
? |
| A10 |
We
are commited to make the Java platform full featured for all
types of application development. There are many applications
that need 3D capabilities, so we provide that functionality.
We are looking to even compliment the high level 3D capabilities
of Java 3D with Java bindings for OpenGL, to allow low level
access to 3D capabilities. |
| |
|
| Q11 |
What
are Java 3D's main domains of application ? (entertainment,
industry, e-learning ?) |
| A11 |
Java
3D has very broad market acceptance. Any market that requires
data visualization has embraced Java 3D. That includes entertainment,
training, vis-sim, CAD, and many others. We are pleasently suprised
all the time when we see people building innovative applications
with Java 3D. |
| |
|
| |
|
| |
|