Niklas, the man behind RoboVM, a JVM for iOS, just fixed up a few things that make RoboVM work with libgdx properly. This includes being able to run things on a device!
I managed to run all our demo games for which there’s a RoboVM project (Super Jumper, Vector Pinball, Pax Britannica, Gdx Invaders), and am happy to report that they all run very well on both an IPad 2 and IPad 3. Except for Pax Britannica, which has a couple of issues and seems to be too much. I haven’t done formal benchmarks yet, but things look really promising.
If you feel like testing things out (realizing that this is still super early days with lots of work to be done), here’s a quick rundown on how to get things going.
- Make sure you have all prerequisits for libgdx development for iOS, except Xamarin.iOS/Monotouch!
- Open Eclipse, and install the RoboVM plugin from http://libgdx.badlogicgames.com/robovm/eclipse/. This will install everything you need
- Get the libgdx source and import all projects into Eclipse
- Right click any of the xxx-robovm projects in Eclipse, select Run As, then iOS Device App, or iOS Simulator App
- See things running on your iOS simulator or device! (Note that you need to provision your device to be able to run anything on it, which costs you 90$/year. Thanks Apple!)
- Touch doesn’t work on the simulator, but works fine on the device. Investigating.
- Audio is missing completely, we’ll use ObjectAL most likely
- Many things in the Input class (proper orientation handling, keyboard input, etc.) are missing
- Benchmarking and optimizations
- Proof of concept on the iOS App Store
- Debugging support (unlikely to come soon, but hey, it’s free and super easy to use)
Benefits over the Xamarin backend:
- Free, apart from the mandatory 90$ Apple developer cert
- Full JRE class library support, same as Android 4
- Extremely fast compilation and deploy times (seconds, not minutes) to both the simulator and device
I’ll try to put some work into it over the next few weeks, maybe we can finish this puppy up. Please refrain from filing RoboVM issues on our tracker for the time being.