Java3D: what next

So the consensus appears to be that Java3D is on the way out. If we take that as given, do I give up on the j3d based game I was starting on, on account of the API being years dead before I finish it, or do I hope that there is some clear future upgrade path to an as-yet unspecified API that sits over JOGL or LWJGL?

What do people think of the existing openGL based 3d containers?

Is it worth waiting or should I just knuckle down and dedicate the next six months to picking up openGL and building something to do what I need?

I’m really not sure what to do now, but I’m thinking you guys all know what’s going on better than anyone…

That is really good question and I’d like to hear what is the “true” solution as well… but might be hard to get straight answer - it seems to me that egos have more to do with current situation then reality…

Well, you could always look into a 3rd party like OpenMind. Has anyone had experience with developing with OpenMind? It seems to be built to handle static scenes very well, but I don’t see a good way of dealing with individual models/meshes.

Our company has evaluated the same dilemma.

We have invested almost 1.000.000$ in our application which uses Java3D. So far we are going to keep on using it, for several reasons.

One is we hope that Java3D will continue to be supported.

Second is we really dont need all those fancy graphics the new 3D games have. And we like the scenegraph concept.

On the other hand is the Java3D sound terrible, we still use it, but maybe not for long. We really hope Sun will look into all the issues surrounding it. We consider using AM3D Diesel instead.

We dont believe Java3D is on the way out, we believe that Sun have financial problems and have cut down on the staff. Hopefully this situation will reverse.

Regards
Nikolai

[quote]Hopefully this situation will reverse.
[/quote]
Only if they do what I tell 'em 8)

Ditch Java3D and learn a portable technology. OpenGL is easier than it looks. Your sensible choice of API is now between JOGL & friends or LWJGL, and your decision should be based on what the end result has to be, who it’s for, and when it has to be delivered.

Cas :slight_smile:

Well personally Im not thrilled to see that Java3D might be going down the drain.

For my project the simplicity of the sceen graph model is really important as development time is a crusial facto Especially development of new functionality on the platform the project will result in. I am very aware of the overhead in a high level API like Java3D but sometimes high level API´s have their advantages if you just know how to handle the trade offs.

Tex

Java 3D is not “going away” – Sun has to continue to support it, especially because there are quite a few commercial applications using it for military, corporate, and academic projects as well as for games. Don’t forget that it is still the “official” 3D scenegraph API for java, and 3D graphics is more than just games.

The 1.4 version is stalled, possibly indefinitely, but what is there right now is still very good, if what you need is a comprehensive scenegraph API and not just a low-level binding.

But I think there’s going to be a lot of focus on the jogl and joal APIs for now, as well there should be, as well as the new mobile 3D API, which is going to take away some steam behind Java3D.

Obviously there’s plenty of consternation among us (myself included!!) about the future of Java3D. Personally, I’ve already invested several hundreds of hours and tens of thousands of dollars in our game-in-progress, so I will be continuing to use Java3D as-is, as well as keeping an eye on possible replacements. And I’ll be picking up a couple of OpenGL and OpenAL books :wink:

But if I was starting from scratch, and I needed a scenegraph API, then I would take a much closer look at OpenMind, and RenderWare, and other higher-level tools. I might still choose Java3D in the end, but it wouldn’t be as easy a decision as it was originally.

Hopefully the guys at Sun can provide a clear roadmap real soon!

Just my $0.02

–Brad

I asked at the JavaOne desktop games session about the future of Java3D. As many others, the “easy” scenegraph fits in with my goals.

The answer I got was basically that it is on hold while the available resources are put into JOGL and JOAL which most commercial game developers are most interested in. The future is unclear for Java3D, but it will either be revived, rewritten (maybe on top of JOGL/AL?) or replaced. AFAIK based on the conversation there will continue to be a scene graph based API in java… but its too early to tell what that will be.

I’m kinda guessing they would rewrite Java3D on top of JOGL/AL once its mature, and allow you to dig deep into the guts so you can do straight JOGL from within Java3D and get the best of both worlds. Time will tell.

If there was something that was perhaps a bit more low-level than j3d but higher level than direct openGL calls and abstracted enough to be easy to run on either jogl or lwjgl I think that would be ideal. Just enough to give a framework but free enough to enable people to make lower level calls if necessary.

I don’t know if any of the OpenMind type toolkits do this, not having tried them, but it’s worth a look.

As a last resort, if there doesn’t look to be the right thing on the horizon then maybe we should, like, you know, even think about doing it ourselves. I mean it does occur to me that there probably isn’t a group of people anywhere else with a better idea of what would be useful to people who are experienced with Java3D and interested in writing games…

There have also been some question marks over the future of OpenGL:
http://www.theregister.co.uk/content/archive/29555.html
http://www.theregister.co.uk/content/archive/26125.html

as for last post pointing to an article about Mircosoft quiting OpenGL board - hm… that is actually very interesting. Well Mircosoft doesn’t own OpenGL but if they decided to go with Direct3D alone that might bring some consequences upon game developers. Perhaps Java3D might be back since it does have Direct3D port. I really now have a question for those who are initiated - will Microsoft’s move have any impact on future considerations what should be used for games? …

Microsoft leaving the ARB is not a huge blow for the OpenGL community. They did more harm than good while sitting on the panel. They do, however, hold a few SGI patents that they could use against OpenGL. Other than that, there isn’t much Microsoft could do against OpenGL. Not support it in windows? They don’t do that very well now, we pretty much count on video card drivers to give us a decent OpenGL implementation.

I think openGL is quite safe - firstly Microsoft are not quite purely evil (although often they seem that way) and secondly Open_GL is so popular that I think a workaround version that avoided the dangerous patents would be put together fairly quickly.

Agreed. The very fact that games like Doom 3 are written in OpenGL means that Microsoft will lose sales if they cripple support. As it is, companies like nVidia are still very keen on OpenGL, and if they do it, all graphics card companies have to do it or fall behind.

Basically, the entire structure keeps itself together at the moment. Whether that will always be true is another matter… Who knows what nasty patent tricks they may try to pull to stop OpenGL 2.0 from showing up Direct3D?

hi Breakfast,

why do you think, that " Java3D is on the way out"
can you give me some links?

I know I 'm slow :wink:

bienator

[quote]The very fact that games like Doom 3 are written in OpenGL means that Microsoft will lose sales if they cripple support. As it is, companies like nVidia are still very keen on OpenGL, and if they do it, all graphics card companies have to do it or fall behind.
[/quote]
Still, I wonder what will happen if John Carmack decides to switch to D3D or retires or something. His 3D engines seem to be the sole reason for the graphics card companies to provide proper openGL support.

The game industry isn’t the only thing that keeps OpenGL alive. Many CAD applications are based in OpenGL. There are also medical imaging apps. I interviewed once with a company that did surgical navigation with OpenGL. These companies are not going to migrate to a game-oriented 3D imaging API such as DirectX. Politically, that just wouldn’t wash.

People would expect to hear stuff like “Yes, we’ve found the tumor and Doctor Roberts, aka TopGun, is revving up his X-wing and plans to shoot that sucker right out of there!”

As for cross-platform, there’s no choice but OpenGL. Microsoft dropping support only means that it’s now up to the card vendors to release drivers. They won’t be bundled into the Windows installation.