This is just some JRuby(jruby.org/) and jMonkeyEngine(jmonkeyengine.org/) fun. Currently these are all samples from the jMonkeyEngine Hello tutorials re-written in JRuby. There are a few small modifications.
(rvm not required, but it's awesome)
rvm install jruby-head git clone git://github.com/jwoertink/Waves.git cd Waves gem install bundler bundle
You should be good at this point.
The main application can be run by
You can view other samples by passing the sample number as an argument
jruby bin/waves 8
Normal camera operations use W A S D to move. To exit just hit esc. Some examples use space bar, or J and K keys. Read sample file in lib/samples for more info.
OSX (Because I haven't tried this on anything else) JRuby 1.6+ Bundler gem
The Nifty-gui must be implemented in Java (for now) to work. This requires taking the lib/samples/nifty/StartScreenController.java and compiling it into the package/classes/java/StartScreenController.class file. If this file is missing, then to compile, run
javac -classpath vendor/jme3_2012-10-19.jar lib/samples/nifty/StartScreenController.java mv lib/samples/nifty/StartScreenController.class package/classes/java
Current (known) Issues
Not tested in any other OS
Nifty/JRuby example (sample 13a) throws nasty exception
Rag-doll sample loads, but isn't useable
Sample 9 isn't working
Sample 16 isn't working
Contributing to waves
Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it
Fork the project
Start a feature/bugfix branch
Commit and push until you are happy with your contribution
Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.
Copyright © 2012 Jeremy Woertink. See LICENSE.txt for further details.