3d

C

Chris Smith

are there any 3d libraries like opengl for java?

Yes. The standard Java answer is Java3D. There are also more basic
OpenGL bindings for Java. The difference is that Java3D is
fundamentally based around a scene graph, so that you provide a higher-
level overview of a whole scene and then just tell the Java3D surface to
draw there. A basic OpenGL binding, on the contrary, will not provide
scene graph capabilities (though such a scene graph technology can be
built on top of OpenGL), but will instead expose only the task-oriented
APIs that are part of the OpenGL spec.

The reason Java3D takes the higher-level approach is to avoid frequent
crosses of the JNI boundary, which is known to be fairly expensive.

--
www.designacourse.com
The Easiest Way to Train Anyone... Anywhere.

Chris Smith - Lead Software Developer/Technical Trainer
MindIQ Corporation
 
L

Liz

Chris Smith said:
Yes. The standard Java answer is Java3D. There are also more basic
OpenGL bindings for Java. The difference is that Java3D is
fundamentally based around a scene graph, so that you provide a higher-
level overview of a whole scene and then just tell the Java3D surface to
draw there. A basic OpenGL binding, on the contrary, will not provide
scene graph capabilities (though such a scene graph technology can be
built on top of OpenGL), but will instead expose only the task-oriented
APIs that are part of the OpenGL spec.

The reason Java3D takes the higher-level approach is to avoid frequent
crosses of the JNI boundary, which is known to be fairly expensive.

--
www.designacourse.com
The Easiest Way to Train Anyone... Anywhere.

Chris Smith - Lead Software Developer/Technical Trainer
MindIQ Corporation

I remember now that when I was downloading Java3D that there were
two choices for the PC, namely based on Directx or based on OpenGL.
Since my new laptop has "integrated intel graphics" that supposedly
supports OpenGL in the hardware to some extent I was looking for
something to take full advantage of it. I'm not so sure that Java3D
does. Would the "basic OpenGL binding" do this?
 
C

Chris Smith

Liz said:
I remember now that when I was downloading Java3D that there were
two choices for the PC, namely based on Directx or based on OpenGL.
Since my new laptop has "integrated intel graphics" that supposedly
supports OpenGL in the hardware to some extent I was looking for
something to take full advantage of it. I'm not so sure that Java3D
does. Would the "basic OpenGL binding" do this?

That's a different matter. Java3D's scene graph API is a higher level
of abstraction, and has to implemented somehow at a lower level. That
implementation (which is hopefully not at all visible to the end-user or
Java3D client programmer) can be either via OpenGL or Direct3D in a
Windows environment, since both APIs are available, and Sun has provided
both implementations.

If your card advertises hardware acceleration of OpenGL, then *either*
Java3D's OpenGL implementation *or* a lower-level OpenGL binding will
probably equally take advantage of that hardware acceleration. However,
a lower-level binding may allow you to take better advantage of the card
if only some OpenGL operations are accelerated with fallback to software
rendering for others, which is often the case. If your card also
accelerates Direct3D operations, then it's also likely to be accelerated
with the Direct3D implementation of Java3D.

--
www.designacourse.com
The Easiest Way to Train Anyone... Anywhere.

Chris Smith - Lead Software Developer/Technical Trainer
MindIQ Corporation
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,014
Latest member
BiancaFix3

Latest Threads

Top