WizardStan
Mega GP Mania
- Joined
- May 24, 2008
- Messages
- 16,731
Phase 1: Compile library, collect other necessary libraries
Phase 2: Tweak Java source a little, build JAR
Phase 3: Build examples (extract all three packages to a directory, execute "test.sh Gears". "test.sh FullScreenWindowedTest" will also work but it's not as interesting as gears. Or maybe you like squares.)
Phase 4: Run Minecraft
Okay, phase 4 needs a little bit more work. I got it to create an OpenGLES context but it makes some assumptions that it really shouldn't. Somewhere in the code it tries to get the the device capabilities and just assumes that it has an OpenGL context which causes trouble. I'm not sure when (if ever) I'll have a chance to look into that. In the simple world it would require decompiling some of the Minecraft classes and just replacing instances of "ContextGL" with "ContextGLES" (or perhaps even with simply "Context"). Nothing Notch does is simple.
In the meantime, here's lwjgl for ARM. If any Java devs have a hankering for some 3D work, this is everything you need. Just don't do anything that assumes you have an OpenGL context, and whatever you write will run on desktops (with regular OpenGL) or on the Pandora with OpenGLES. I spent way longer on this than I really should have and I expect someone to use it, capisce?
Note that it is very easy to screw up the FullScreenWindowedTest if you flip back and forth between fullscreen and windowed. Not that it makes a difference, the "windowed" mode is still full screen, but whatever. Alt-Tab back to your terminal and ctrl-C kill it if it gets messed up.
Phase 2: Tweak Java source a little, build JAR
Phase 3: Build examples (extract all three packages to a directory, execute "test.sh Gears". "test.sh FullScreenWindowedTest" will also work but it's not as interesting as gears. Or maybe you like squares.)
Phase 4: Run Minecraft
Okay, phase 4 needs a little bit more work. I got it to create an OpenGLES context but it makes some assumptions that it really shouldn't. Somewhere in the code it tries to get the the device capabilities and just assumes that it has an OpenGL context which causes trouble. I'm not sure when (if ever) I'll have a chance to look into that. In the simple world it would require decompiling some of the Minecraft classes and just replacing instances of "ContextGL" with "ContextGLES" (or perhaps even with simply "Context"). Nothing Notch does is simple.
In the meantime, here's lwjgl for ARM. If any Java devs have a hankering for some 3D work, this is everything you need. Just don't do anything that assumes you have an OpenGL context, and whatever you write will run on desktops (with regular OpenGL) or on the Pandora with OpenGLES. I spent way longer on this than I really should have and I expect someone to use it, capisce?
Note that it is very easy to screw up the FullScreenWindowedTest if you flip back and forth between fullscreen and windowed. Not that it makes a difference, the "windowed" mode is still full screen, but whatever. Alt-Tab back to your terminal and ctrl-C kill it if it gets messed up.