General questions

I’m evaluating JME as an engine for a series of projects, and I have a few questions which, as the subject line implies, are general in nature. :slight_smile: I’m also rather new to Java development (though I have some familiarith with the language) so I hope I can toss one Java question in with the rest. :slight_smile:



First, the java question. I’m curious about game distribution–specifically, how does one typically package and distribute a game in a cross-platform manner? .NET seems to have the GAC, but I’m a bit vague on how to distribute a game that requires a series of jars. I can write a bash script to properly set CLASSPATH under OSX/unix, and I suppose a batch file for windows, but is there a better way? Is there an easy way to package everything into a single jar that includes all component jars? What about the code that requires native libraries? Can I toss all the natives into the same directory, or into the jar itself?



Ok, now onto the JME-specific questions. :slight_smile: My projects are a series of “audio games”–that is, the games are non-graphical, using audio to convey environmental conditions and actions to the player. The curious can visit <a href=“http://www.agdev.org/”>AGDev.org</a> for more specific examples. I do, however, have a few questions which I’d like to toss out about JME to determine if it meets my needs.



First, I’m curious about its audio support. According to the user’s guide, audio is handled hierarchically, is given a node, etc. I’m curious about how extensive this is? Also, can audio nodes have dimensions, too? I’m envisioning bits of terrain with attached sound–breaking waves where sand meets ocean, for instance. In that case, you wouldn’t necessarily want the breaking waves to originate from a single point, but instead from a region.



I’m also curious about the GUI. As the games are targeted at blind/VI users who can’t read the screen (or, theoretically, mobile devices without good visual hardware) I’d need to provide audio feedback on the GUI. Specifically, I’d need to hook into a GUI element’s focus and perform some specific behavior based on that (I.e. speaking the text of a highlighted button or menu item, etc.) Does JME’s built-in GUI allow me to do this? Or, as an alternative, can I use swing components/frames as render surfaces, thus tapping into the accessibility features inherent there?



Think that’s enough for now. :slight_smile: Thanks a bunch!

"thewordnerd" wrote:
[...] Is there an easy way to package everything into a single jar that includes all component jars? [...]
Not into a jar, but have a look at Java WebStart (java.sun.com) - once you have set it up for your app it's really time saving...
"thewordnerd" wrote:
First, I'm curious about its audio support.
Did not use that intensively yet - someone else should tell you.
"thewordnerd" wrote:
[...] I'd need to provide audio feedback on the GUI. Specifically, I'd need to hook into a GUI element's focus and perform some specific behavior based on that [...]
Hmm, it would be possible though the GUI Event and Input system is by far not that elaborated as in e.g. Swing (it's a game engine!). jME has no (ok, little) event handling for user interaction stuff.
"thewordnerd" wrote:
Or, as an alternative, can I use swing components/frames as render surfaces, thus tapping into the accessibility features inherent there?
IMO that would be a good idea as you probably need to provide mouse-less handling and such. JMEComponent should do, what you need. (but I think it's not possible to have two of them in a single Application yet)

there is no more JMEComponent, its a canvas and implementor design now, so that jme can take advantage of the AWTGLCanvas that lwjgl dudes have made.



DP

"DarkProphet" wrote:
there is no more JMEComponent
Whoops, that's true - but it's even better now (forgot that the name changed ://)