Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » GEF3D » jMonkeyEngine
jMonkeyEngine [message #1110] Mon, 25 August 2008 14:41 Go to next message
Andreas Blochberger is currently offline Andreas BlochbergerFriend
Messages: 6
Registered: July 2009
Junior Member
I was wondering, if the jMonkeyEngine would be a good alternative for
GEF3D? Its a scene graph engine based on LWGL (so its an abstraction).
This engine is already used in some Eclipse based applications. Also the
jME has been choosen by the Project Wonderland as their primary engine.

For more information, here are the links to the relevant projects:

- jMonkeyEngine (the engine): http://www.jmonkeyengine.com/
- MonkeyWorld3D (Eclipse based scene graph editor):
http://monkeyworld3d.com
- Rifidi (RFID software with jME based designer): http://rifidi.org/
- Project Wonderland: https://lg3d-wonderland.dev.java.net/
Re: jMonkeyEngine [message #1139 is a reply to message #1110] Mon, 25 August 2008 14:59 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: abheek.adarobotics.com

Andreas Blochberger wrote:
> I was wondering, if the jMonkeyEngine would be a good alternative for
> GEF3D? Its a scene graph engine based on LWGL (so its an abstraction).
> This engine is already used in some Eclipse based applications. Also the
> jME has been choosen by the Project Wonderland as their primary engine.
>
> For more information, here are the links to the relevant projects:
>
> - jMonkeyEngine (the engine): http://www.jmonkeyengine.com/
> - MonkeyWorld3D (Eclipse based scene graph editor):
> http://monkeyworld3d.com
> - Rifidi (RFID software with jME based designer): http://rifidi.org/
> - Project Wonderland: https://lg3d-wonderland.dev.java.net/
>
>
Hi Andreas,

I tried once integrating jME into an Eclipse based editor -- but it
seems that only once instance of jME "Game" can run at a single time --
hence opening multiple jME editors causes a problem -

I have not delved too much in detail how to solve this -- it seems from
the forums that this is an in built feature in jME

Cheers!
Abheek
Re: jMonkeyEngine [message #1165 is a reply to message #1139] Mon, 25 August 2008 15:11 Go to previous messageGo to next message
Andreas Blochberger is currently offline Andreas BlochbergerFriend
Messages: 6
Registered: July 2009
Junior Member
Yes, i know this. I'm a member of the MonkeyWorld3D project, and its one
of the issues to be solved in the jME/SWT integration. jME 2.0 comes with
an integration, and we are currently porting MW3D to this new release. I
do not know yet if this issue has been solved.
Re: jMonkeyEngine [message #1192 is a reply to message #1110] Mon, 25 August 2008 16:32 Go to previous messageGo to next message
Jens von Pilgrim is currently offline Jens von PilgrimFriend
Messages: 313
Registered: July 2009
Senior Member
IMHO jME and GEF3D have different scopes. GEF3D is _not_ a framework
for building VR applications or 3D games -- things you can obviously do
very well with jME. The basic idea of GEF3D is that it extends GEF and
that existing GEF based editors can be easily ported to be used within
a 3D editor (by projecting its content on a plane and tweaking it a
little bit w/o modifying the original code).

After my experiences with Java3D (see thread "Using Java3D") I tested
some other engines, e.g. Aviatrix3D. I also had a glance at jME, but
before examining it more deeply, I decided to abandon all frameworks
providing their own 3D data structure, e.g. scene graphs. The problem
is that Draw2D comes with its own data structure: a figure tree. So, if
an engine comes with its own data structure, some mapping between the
Draw2D figure tree and the scene graph has to be implemented -- at
least if Draw2D should be used. This is expensive (and may neutralize
the positive effect of a scene graph for performance) and complicated
(to implement and to maintain). So I designed GEF3D, or better to say
Draw3D, without using another abstraction layer (besides OpenGL of
course) and to use the data structures provided by GEF and Draw2D. This
way it is possible to mix 2D and 3D figures. For example, a 3D figure
can contain 2D figures (projected on the surfaces of the 3D figure).
These 2D figures are original Draw2D figures (which enables the reuse
of existing GEF based editors). On the other hand, 2D figures can also
contain 3D figures, e.g. GEF3D uses the original 2D layer figures and
all 3D figures are children of these 2D figures.

Cheers,

Jens


On 2008-08-25 16:41:25 +0200, andreas@blochberger.net (Andreas
Blochberger) said:

> I was wondering, if the jMonkeyEngine would be a good alternative for
> GEF3D? Its a scene graph engine based on LWGL (so its an abstraction).
> This engine is already used in some Eclipse based applications. Also
> the jME has been choosen by the Project Wonderland as their primary
> engine.
>
> For more information, here are the links to the relevant projects:
>
> - jMonkeyEngine (the engine): http://www.jmonkeyengine.com/
> - MonkeyWorld3D (Eclipse based scene graph editor): http://monkeyworld3d.com
> - Rifidi (RFID software with jME based designer): http://rifidi.org/
> - Project Wonderland: https://lg3d-wonderland.dev.java.net/
Re: jMonkeyEngine [message #1244 is a reply to message #1192] Tue, 26 August 2008 11:13 Go to previous messageGo to next message
Jochen Mader is currently offline Jochen MaderFriend
Messages: 24
Registered: July 2009
Junior Member
Hello, my name is Jochen and I a have been working a lot with the
different aspects of opengl in java. I am the Lead Developer of the
Rifidi Designer project where we are using jME inside eclipse. I stumbled
on gef3d a while ago and Andreas revived my interest;)
jME is a good framework that provides all the necessary things that make
it easier to work with opengl (lighthandling, renderstate management,
geometry loading, ...). jME doesn't provide geometry sorting (quad/oct/
bsp ...), that's up to the developer and jME is very well built to allow
easy integration with your own data structures.
The key problem I see in Gef3D is that you will need a structure for
organizing your geometry and effects that's independent of your
datastructure. Especially with big diagrams this is becoming more and
more of an issue.
I think jME would be well suited for that task, especially because you
are already using LWJGL.
Again: whatever you choose, you won't get around a scenegraph.
Java3D wasn't an option for us, too, so I won't get into more detail here.
In my eyes, especially for an eclipse project, the best option if you
want to do your own framework/scenegraph would be JOGL.
LWJGL is a gaming library, comes with a ton of different libraries that
you don't need and increase the overall footprint. JOGL on the other hand
is a JSR, it is a clean OpenGL layer, nothing more. There is also still
some discussion going on to include JOGL in one of the future JDK
releases which would make it one less library to worry about.
Anyways: I would be happy to contribute to this project. I think I got
enough experience with 3d software development to contribute.
Cheers
Jochen
Re: jMonkeyEngine [message #1269 is a reply to message #1165] Tue, 26 August 2008 12:17 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: abheek.adarobotics.com

Andreas Blochberger wrote:
> Yes, i know this. I'm a member of the MonkeyWorld3D project, and its one
> of the issues to be solved in the jME/SWT integration. jME 2.0 comes
> with an integration, and we are currently porting MW3D to this new
> release. I do not know yet if this issue has been solved.

I just tried integrating an Eclipse Editor with jME 2.0 -- this problem
still remains.

There must be a workaround to enable multiple game instances
..... anyone?
Re: jMonkeyEngine [message #1291 is a reply to message #1244] Tue, 26 August 2008 12:32 Go to previous messageGo to next message
Jens von Pilgrim is currently offline Jens von PilgrimFriend
Messages: 313
Registered: July 2009
Senior Member
Hi Jochen,

On 2008-08-26 13:13:39 +0200, Jochen Mader <jochen@pramari.com> said:
[...]
> The key problem I see in Gef3D is that you will need a structure for
> organizing your geometry and effects that's independent of your
> datastructure. Especially with big diagrams this is becoming more and
> more of an issue.

Frankly, we do not currently use any effects in GEF3D. And most figures
are simple cubes.

> I think jME would be well suited for that task, especially because you
> are already using LWJGL. [...] Again: whatever you choose, you won't
> get around a scenegraph.

Maybe I don't understand how to combine jME and GEF3D/Draw3D. Actually
GEF3D/Draw3D is working and we are not using a scenegraph. It is
important to define the scope of GEF3D/Draw3D: Currently, it is used to
project 2D content on a 3D plane and some intermodel connections can be
drawn. The main notation elements are cubes/boxes and lines. And text,
of course. And no further effects (no fog, no special shaders, no
lights etc.). There is no render loop, instead GEF3D's repaint
mechanism is used.

Of course, many things can be optimized. E.g. in the current version,
all figures are painted/rendered, there's no optimization on whether
the figure is visible or not. This may become important if very large
diagrams are to be displayed, in these cases other techniques such as
level of detail become interesting. Also, it would be nice to be able
to use special effects in certain circumstances. And the text rendering
could be improved, absolutely.

> In my eyes, especially for an eclipse project, the best option if you
> want to do your own framework/scenegraph would be JOGL.
> LWJGL is a gaming library, comes with a ton of different libraries that
> you don't need and increase the overall footprint. JOGL on the other hand
> is a JSR, it is a clean OpenGL layer, nothing more. There is also still
> some discussion going on to include JOGL in one of the future JDK
> releases which would make it one less library to worry about.

Maybe. I tested both, JOGL and LWJGL. I had some problems installing
JOGL (two years ago) with SWT on my Mac, and LWJGL was easier. So I
decided to use LWJGL. Frankly, I didn't spent much time on that. We
only use the GL functions and the math library provided by LWJGL, and
as I wrote I'm planing to reduce these dependencies in order to enable
the use of another library, e.g. JOGL.

> Anyways: I would be happy to contribute to this project. I think I got
> enough experience with 3d software development to contribute.

That would be great! GEF3D/Draw3D absolutely needs some 3D experience!

Cheers,

Jens
Re: jMonkeyEngine [message #1311 is a reply to message #1192] Wed, 27 August 2008 07:11 Go to previous message
Andreas Blochberger is currently offline Andreas BlochbergerFriend
Messages: 6
Registered: July 2009
Junior Member
Jens v.P. wrote:

> IMHO jME and GEF3D have different scopes. GEF3D is _not_ a framework
> for building VR applications or 3D games -- things you can obviously do
> very well with jME. The basic idea of GEF3D is that it extends GEF and
> that existing GEF based editors can be easily ported to be used within
> a 3D editor (by projecting its content on a plane and tweaking it a
> little bit w/o modifying the original code).

You want to keep it lean, i understand that. If there would be an
abstraction layer for OpenGL in eclipse, i'd suggest to use this, but
there is none yet i guess.
Re: jMonkeyEngine [message #560769 is a reply to message #1110] Mon, 25 August 2008 14:59 Go to previous message
Eclipse UserFriend
Originally posted by: abheek.adarobotics.com

Andreas Blochberger wrote:
> I was wondering, if the jMonkeyEngine would be a good alternative for
> GEF3D? Its a scene graph engine based on LWGL (so its an abstraction).
> This engine is already used in some Eclipse based applications. Also the
> jME has been choosen by the Project Wonderland as their primary engine.
>
> For more information, here are the links to the relevant projects:
>
> - jMonkeyEngine (the engine): http://www.jmonkeyengine.com/
> - MonkeyWorld3D (Eclipse based scene graph editor):
> http://monkeyworld3d.com
> - Rifidi (RFID software with jME based designer): http://rifidi.org/
> - Project Wonderland: https://lg3d-wonderland.dev.java.net/
>
>
Hi Andreas,

I tried once integrating jME into an Eclipse based editor -- but it
seems that only once instance of jME "Game" can run at a single time --
hence opening multiple jME editors causes a problem -

I have not delved too much in detail how to solve this -- it seems from
the forums that this is an in built feature in jME

Cheers!
Abheek
Re: jMonkeyEngine [message #560780 is a reply to message #1139] Mon, 25 August 2008 15:11 Go to previous message
Andreas Blochberger is currently offline Andreas BlochbergerFriend
Messages: 6
Registered: July 2009
Junior Member
Yes, i know this. I'm a member of the MonkeyWorld3D project, and its one
of the issues to be solved in the jME/SWT integration. jME 2.0 comes with
an integration, and we are currently porting MW3D to this new release. I
do not know yet if this issue has been solved.
Re: jMonkeyEngine [message #560790 is a reply to message #1110] Mon, 25 August 2008 16:32 Go to previous message
Jens von Pilgrim is currently offline Jens von PilgrimFriend
Messages: 313
Registered: July 2009
Senior Member
IMHO jME and GEF3D have different scopes. GEF3D is _not_ a framework
for building VR applications or 3D games -- things you can obviously do
very well with jME. The basic idea of GEF3D is that it extends GEF and
that existing GEF based editors can be easily ported to be used within
a 3D editor (by projecting its content on a plane and tweaking it a
little bit w/o modifying the original code).

After my experiences with Java3D (see thread "Using Java3D") I tested
some other engines, e.g. Aviatrix3D. I also had a glance at jME, but
before examining it more deeply, I decided to abandon all frameworks
providing their own 3D data structure, e.g. scene graphs. The problem
is that Draw2D comes with its own data structure: a figure tree. So, if
an engine comes with its own data structure, some mapping between the
Draw2D figure tree and the scene graph has to be implemented -- at
least if Draw2D should be used. This is expensive (and may neutralize
the positive effect of a scene graph for performance) and complicated
(to implement and to maintain). So I designed GEF3D, or better to say
Draw3D, without using another abstraction layer (besides OpenGL of
course) and to use the data structures provided by GEF and Draw2D. This
way it is possible to mix 2D and 3D figures. For example, a 3D figure
can contain 2D figures (projected on the surfaces of the 3D figure).
These 2D figures are original Draw2D figures (which enables the reuse
of existing GEF based editors). On the other hand, 2D figures can also
contain 3D figures, e.g. GEF3D uses the original 2D layer figures and
all 3D figures are children of these 2D figures.

Cheers,

Jens


On 2008-08-25 16:41:25 +0200, andreas@blochberger.net (Andreas
Blochberger) said:

> I was wondering, if the jMonkeyEngine would be a good alternative for
> GEF3D? Its a scene graph engine based on LWGL (so its an abstraction).
> This engine is already used in some Eclipse based applications. Also
> the jME has been choosen by the Project Wonderland as their primary
> engine.
>
> For more information, here are the links to the relevant projects:
>
> - jMonkeyEngine (the engine): http://www.jmonkeyengine.com/
> - MonkeyWorld3D (Eclipse based scene graph editor): http://monkeyworld3d.com
> - Rifidi (RFID software with jME based designer): http://rifidi.org/
> - Project Wonderland: https://lg3d-wonderland.dev.java.net/
Re: jMonkeyEngine [message #560812 is a reply to message #1192] Tue, 26 August 2008 11:13 Go to previous message
Jochen Mader is currently offline Jochen MaderFriend
Messages: 24
Registered: July 2009
Junior Member
Hello, my name is Jochen and I a have been working a lot with the
different aspects of opengl in java. I am the Lead Developer of the
Rifidi Designer project where we are using jME inside eclipse. I stumbled
on gef3d a while ago and Andreas revived my interest;)
jME is a good framework that provides all the necessary things that make
it easier to work with opengl (lighthandling, renderstate management,
geometry loading, ...). jME doesn't provide geometry sorting (quad/oct/
bsp ...), that's up to the developer and jME is very well built to allow
easy integration with your own data structures.
The key problem I see in Gef3D is that you will need a structure for
organizing your geometry and effects that's independent of your
datastructure. Especially with big diagrams this is becoming more and
more of an issue.
I think jME would be well suited for that task, especially because you
are already using LWJGL.
Again: whatever you choose, you won't get around a scenegraph.
Java3D wasn't an option for us, too, so I won't get into more detail here.
In my eyes, especially for an eclipse project, the best option if you
want to do your own framework/scenegraph would be JOGL.
LWJGL is a gaming library, comes with a ton of different libraries that
you don't need and increase the overall footprint. JOGL on the other hand
is a JSR, it is a clean OpenGL layer, nothing more. There is also still
some discussion going on to include JOGL in one of the future JDK
releases which would make it one less library to worry about.
Anyways: I would be happy to contribute to this project. I think I got
enough experience with 3d software development to contribute.
Cheers
Jochen
Re: jMonkeyEngine [message #560824 is a reply to message #1165] Tue, 26 August 2008 12:17 Go to previous message
Eclipse UserFriend
Originally posted by: abheek.adarobotics.com

Andreas Blochberger wrote:
> Yes, i know this. I'm a member of the MonkeyWorld3D project, and its one
> of the issues to be solved in the jME/SWT integration. jME 2.0 comes
> with an integration, and we are currently porting MW3D to this new
> release. I do not know yet if this issue has been solved.

I just tried integrating an Eclipse Editor with jME 2.0 -- this problem
still remains.

There must be a workaround to enable multiple game instances
..... anyone?
Re: jMonkeyEngine [message #560834 is a reply to message #1244] Tue, 26 August 2008 12:32 Go to previous message
Jens von Pilgrim is currently offline Jens von PilgrimFriend
Messages: 313
Registered: July 2009
Senior Member
Hi Jochen,

On 2008-08-26 13:13:39 +0200, Jochen Mader <jochen@pramari.com> said:
[...]
> The key problem I see in Gef3D is that you will need a structure for
> organizing your geometry and effects that's independent of your
> datastructure. Especially with big diagrams this is becoming more and
> more of an issue.

Frankly, we do not currently use any effects in GEF3D. And most figures
are simple cubes.

> I think jME would be well suited for that task, especially because you
> are already using LWJGL. [...] Again: whatever you choose, you won't
> get around a scenegraph.

Maybe I don't understand how to combine jME and GEF3D/Draw3D. Actually
GEF3D/Draw3D is working and we are not using a scenegraph. It is
important to define the scope of GEF3D/Draw3D: Currently, it is used to
project 2D content on a 3D plane and some intermodel connections can be
drawn. The main notation elements are cubes/boxes and lines. And text,
of course. And no further effects (no fog, no special shaders, no
lights etc.). There is no render loop, instead GEF3D's repaint
mechanism is used.

Of course, many things can be optimized. E.g. in the current version,
all figures are painted/rendered, there's no optimization on whether
the figure is visible or not. This may become important if very large
diagrams are to be displayed, in these cases other techniques such as
level of detail become interesting. Also, it would be nice to be able
to use special effects in certain circumstances. And the text rendering
could be improved, absolutely.

> In my eyes, especially for an eclipse project, the best option if you
> want to do your own framework/scenegraph would be JOGL.
> LWJGL is a gaming library, comes with a ton of different libraries that
> you don't need and increase the overall footprint. JOGL on the other hand
> is a JSR, it is a clean OpenGL layer, nothing more. There is also still
> some discussion going on to include JOGL in one of the future JDK
> releases which would make it one less library to worry about.

Maybe. I tested both, JOGL and LWJGL. I had some problems installing
JOGL (two years ago) with SWT on my Mac, and LWJGL was easier. So I
decided to use LWJGL. Frankly, I didn't spent much time on that. We
only use the GL functions and the math library provided by LWJGL, and
as I wrote I'm planing to reduce these dependencies in order to enable
the use of another library, e.g. JOGL.

> Anyways: I would be happy to contribute to this project. I think I got
> enough experience with 3d software development to contribute.

That would be great! GEF3D/Draw3D absolutely needs some 3D experience!

Cheers,

Jens
Re: jMonkeyEngine [message #560847 is a reply to message #1192] Wed, 27 August 2008 07:11 Go to previous message
Andreas Blochberger is currently offline Andreas BlochbergerFriend
Messages: 6
Registered: July 2009
Junior Member
Jens v.P. wrote:

> IMHO jME and GEF3D have different scopes. GEF3D is _not_ a framework
> for building VR applications or 3D games -- things you can obviously do
> very well with jME. The basic idea of GEF3D is that it extends GEF and
> that existing GEF based editors can be easily ported to be used within
> a 3D editor (by projecting its content on a plane and tweaking it a
> little bit w/o modifying the original code).

You want to keep it lean, i understand that. If there would be an
abstraction layer for OpenGL in eclipse, i'd suggest to use this, but
there is none yet i guess.
Previous Topic:jMonkeyEngine
Next Topic:Welcome to eclipse.gef3d
Goto Forum:
  


Current Time: Fri Apr 19 21:51:46 GMT 2024

Powered by FUDForum. Page generated in 0.04776 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top