Game Programming and Development Tools

3D for Java? – jestermax

jestermax

Member

Posts: 1064
From: Ontario, Canada
Registered: 06-21-2006
hey, does anyone have any experience with 3D programming using java? i'm looking for a library or game engine that has a clean API, a fair amount of features, and easy learning curve (easy doesn't necessarily mean easy )
I was looking at Jirr (Java port of Irricht) but has anyone used this?

also, multiplatform is the name of the game so i don't want to have to use JNI for OS binding.

samw3

Member

Posts: 542
From: Toccoa, GA, USA
Registered: 08-15-2006
You piqued my curiosity with Jirr.. but alas, it looks like Jirr is a wrapper not a java port You still need the irrlicht binaries.

------------------
Sam Washburn

jestermax

Member

Posts: 1064
From: Ontario, Canada
Registered: 06-21-2006
hmmmm, i hadn't looked at it yet. It says it's cross platform though.... if i need the binaries then that would be fine, as long as i don't need to be using a certain OS to use the library. If they're written in multplatform C/C++ then it would probably be more advantageous speedwise anyways.
samw3

Member

Posts: 542
From: Toccoa, GA, USA
Registered: 08-15-2006
well, for cross-platform jni stuff. I've been looking at http://lwjgl.org/

------------------
Sam Washburn

jestermax

Member

Posts: 1064
From: Ontario, Canada
Registered: 06-21-2006
that looks half-decent actually. The issue is that i'm looking for something a bit higher level. thats not to say that i probably won't end up using that though . i'm more looking for mesh and 3d gui support as well as straight rendering/OGL access. POSSIBLY shader support in the future as well.
steveth45

Member

Posts: 536
From: Eugene, OR, USA
Registered: 08-10-2005
quote:
Originally posted by jestermax:
i'm more looking for mesh and 3d gui support as well as straight rendering/OGL access. POSSIBLY shader support in the future as well.

Irrlicht has all of those things. You may have to extend Jirr to make OpenGl calls directly, I don't know, but you can subclass different classes in Irrlicht, and implement your own rendering code, or fiddle around directly with Irrlicht, as it is open source.

------------------
+---------+
|steveth45|
+---------+

jestermax

Member

Posts: 1064
From: Ontario, Canada
Registered: 06-21-2006
well, the straight open gl access isn't a major thing. it would be nice to have that access but its not a showstopper. if jirr can meet all my needs then thats fine.
what i'm looking for is something that can:
-render meshes
-render a scene/level
-work with planes/textures (to make 2d stuff)
-particle system
-gui/overlays

actually, that list was pretty useless thats basically what a 3d engine is for.....well anyways, i need to be able to perform all those operations.

steveth45

Member

Posts: 536
From: Eugene, OR, USA
Registered: 08-10-2005
I can give you API references for each of these in Irrlicht

-render meshes : IMesh or IAnimatedMesh
-render a scene/level : ISceneNode and ISceneManager
-work with planes/textures (to make 2d stuff) : ITexture and draw2DImage()
-particle system : IParticleSystemSceneNode and IParticleEmitter
-gui/overlays : irr::gui, there is a whole rendered gui system

Some notes, Irrlicht supports multiple mesh formats, namely .X, .ms3d, .3ds, .obj. The creator of Irrlicht has also made a free scene editor, called irrEdit, that allows you to construct a scene in 3 dimensions, add lighting and export as a .irr file that can be loaded as a scene very easily in Irrlicht. There is at least one particle system editor for Irrlicht, that allows you to construct a particle system visually. The particle emitter system is very nice. The gui/overlay system is very complete with all the common gui widgets, and it is rendered within the frame, so it can be used for in-game menus and such.

------------------
+---------+
|steveth45|
+---------+

Calin

Member

Posts: 358
From: Moldova
Registered: 12-04-2006
What are you trying to achieve?

If you're looking to learn, build a hobbyist project in rather short time I recommend Irrlicht since you can pick up without much external help. The tutorials and forums searches will give you the answers for most common questions. For commercial quality I think Ogre works better. It's rather messy and more involving than Irrlicht but it gives you greater flexibility. It has a community that's twice what Irricht has so the chances of getting qualified answers on the forums for 'unstandard' questions is significantly greater. I haven't dealt enough with other engines to comment on them.

Calin

[This message has been edited by Calin (edited February 23, 2007).]

jestermax

Member

Posts: 1064
From: Ontario, Canada
Registered: 06-21-2006
i use ogre all the time currently. the only issue i have with it isn't an issue with it at all (my graphics card sucks). i actually really like the API too.
ANYWAYS, i'm trying to accomplish this in Java. Ogre has some bindings for java but i was wondering what would be the best options. I think if i can get a decent enough port/bindings for java (Jirr?) then i might prefer Irricht right now. It SHOULD allow me faster development since it also integrates physics (as far as i know). i'm hoping that theres enough of a community for it though .

EDIT:
So i downloaded Jirr which uses Irrlicht 1.1. it works and actually looks like it could be ok. it's only a beta library however and i'd like to profile it and check for memory leaks. Anyways, it SEEMS to be ok but i haven't taken a close look at the API. it seems to be the same as irrlicht or at least it's what i'd expect it to look like .
I'm still looking for a more stable solution however. so if you have any other ideas i'd be glad to hear them

[This message has been edited by jestermax (edited February 23, 2007).]