SpaceNet 2D/3D GUI

Seeking helpful suggestions for a project:



http://www.automenta.com/spacenet



It’s a JMonkeyEngine-based GUI framework, with extra features that form a complete operating system.



It is slightly different from other JME GUI’s in that the widgets are 3D and vector, so they can be arranged fractally in with arbitrary relative position, scale, and rotation.  This seems to open a new space of GUI possibilities beyond pixel-based systems, because the view can take advantage of zooming to adjust what is focused.







We have not published any videos yet, but there are some screenshots on the supplied link.



A development kit (with dependent .JAR’s included) is being planned, but so far, it’s just the source code in the sourceforge subversion repository.



We are interested in working with other developers ASAP, especially those with Java and JME experience.  Reply or send me a private message to start a discussion!



For some examples of the API, see the code in the Examples package:



https://spacenet.svn.sourceforge.net/svnroot/spacenet/protojava2/spacenet.space.example/java/automenta/spacenet/space/example/








Looks like an interessting GUI.

The help board is primarily for problems; issues with your code or something you can’t quite figure out, and since this is obviously a ‘project’ and since you are recruiting, the best place for you is the Projects board, where I’ve moved you.



Please read the stickies, but do note that none of them force any mandatory changes to your post; it looks just fine as it is.



Looks like a really intriguing take on GUI development. You should have good chances at finding some great helping hands around here :slight_smile:

erlend_sh said:

The help board is primarily for problems; issues with your code or something you can't quite figure out, and since this is obviously a 'project' and since you are recruiting, the best place for you is the Projects board, where I've moved you.


thanks! this project forum seems more appropriate.


Video:

http://www.youtube.com/watch?v=uiVhheUo1x0

#jme2 #gui



Added to jME Twitter



Awesome progress man, it looks like something even I could use! Still no luck in finding additional contributors?



Another thing about the video; always add music to it. Afaik YouTube doesn’t care about the use of copyrighted songs, but if you’re feeling paranoid you could always look up a lot of great free tracks as well. Re-uploading the same one with a track added would be nice, but not necessary, but I sincerely hope you’ll add a tune for your next flick. Either way I’ll be looking forward to it :wink:

Hi!



It is a nice project. I'm still hesitating, I don't know which GUI framework I will use for my game. Does SpaceNet work with JOGL?

gouessej said:

Does SpaceNet work with JOGL?


the current version's example launchers use DefaultJmeWindow , which creates a native LWJGL window (WindowJme).  aside from a few hardcoded LWJGL-specifics, it can certainly be improved to also work with JOGL.

if you're interested to develop the necessary abstractions, i will be happy to help you because this improvement would be significant.  these are some of the classes that may need modification to be compatible with JOGL:

  • DefaultJmeWindow

  • Jme

  • WindowJme

  • WindowLoop

  • JmeNode



to integrate SpaceNet with your existing game, you may need to manually merge the logic in WindowLoop since it uses a heavily modified BasicGame derivative.  or you may be able to use SpaceNet's display loop by embedding your game "inside" of it.  this can be achieved by add()'ing a JME Spatial to a Space (such as DefaultSpace, used heavily in the 'examples' project).  i am glad to help you with this also.

can you explain why you are using JOGL instead of LWJGL?  i would be interested in switching to JOGL as the default video interface if it would result in performance, memory, or visual improvements.

Here is a draft version of an overview of SpaceNet's scenegraph interface:



https://spacenet.svn.sourceforge.net/svnroot/spacenet/protojava3/spacenet.space/doc/SemanticScenegraph.odt

sseehh said:

can you explain why you are using JOGL instead of LWJGL?  i would be interested in switching to JOGL as the default video interface if it would result in performance, memory, or visual improvements.

The JOGL renderer of JMonkeyEngine 2 is not reliable enough, please wait for some months to perform a switch to JOGL. I can explain why I use JOGL rather than LWJGL but it is a subject of debate. At first, I only need an openGL binding whereas LWJGL does not contain only this. Unlike many guys say, the performances of JOGL and LWJGL are very close. I categorically refuse using LWJGL because it is not reliable enough on my view, I have had lots of problems with LWJGL games particularly under Linux and/or with quite old graphics cards. I have complained a lot about this aspect and LWJGL developers are quite angry because it is simply not a driver problem, I proved it once when I found a change that was causing a regression, the driver problems are often an excuse to avoid investigating. JOGL is far more robust and that is why it is used in some professional applications (NASA World Wind, STRAP, Insparia, Impact, Molecular Biology Toolkit, Project Wonderland, ...) including commercial games ("Wakfu" by Ankama Games, Jack Flowers). JOGL 2 is even compatible with mobile phones (and embedded systems using OpenGL-ES), it clearly goes beyond LWJGL in term of platform support. JMonkeyEngine relies historically on LWJGL and I think I won't succeed in changing this fact but the support of JOGL is critical for professional applications. LWJGL has its own advantages, it is more independent of AWT (it is better when making your own private virtual machine) but then JOGL is better when you wish mixing AWT/Swing components with OpenGL rendering and JOGL 2 now provides optionally an AWT-independent windowing system too.

sseehh said:

to integrate SpaceNet with your existing game, you may need to manually merge the logic in WindowLoop since it uses a heavily modified BasicGame derivative.  or you may be able to use SpaceNet's display loop by embedding your game "inside" of it.  this can be achieved by add()'ing a JME Spatial to a Space (such as DefaultSpace, used heavily in the 'examples' project).  i am glad to help you with this also.

I use StandardGame, I have paid someone to help me to fix remaining bugs in this class, I cannot now rely on a derivative of BasicGame. Moreover, I have spent too much time on my view on improving JMonkeyEngine 2 itself instead of improving my own game. That is why I'm a bit reluctant in spending much time again in improving existing features of JMonkeyEngine 2 and/or libraries around it. Lol I'm the author of TUER, I don't want to become a core developer of JMonkeyEngine 2.