is it possible to adapt this game for the pandora


Where are the sources for the c++ openglversion? I could have a look, how easy / hard it will be to convert.


Edit: There is no OpenGL Version also no c++ version. It uses java-sdl some sdl-bindings for java, so you won't get speedimprovements from compiling that :(
No indeed, Java only. It seems to be using LWJGL for the opengl stuff. OpenGL ES support in LWJGL has been stuck on will be added soon for a while now.

Indeed... I seem to recall seeing somewhere in their documentation that the delay is because they are yet to obtain a GLES device. Does anyone know if anyone has brought the Pandora to the LWJGL devs attention?


- Neelix
 
Where are the sources for the c++ openglversion? I could have a look, how easy / hard it will be to convert.


Edit: There is no OpenGL Version also no c++ version. It uses java-sdl some sdl-bindings for java, so you won't get speedimprovements from compiling that
sad.gif
No indeed, Java only. It seems to be using LWJGL for the opengl stuff. OpenGL ES support in LWJGL has been stuck on will be added soon for a while now.
Indeed... I seem to recall seeing somewhere in their documentation that the delay is because they are yet to obtain a GLES device. Does anyone know if anyone has brought the Pandora to the LWJGL devs attention?


- Neelix
any news since? :)
 
LWJGLES is part of the most recent Java PND. Just download it from the repo and give it a try. I'm not sure whether this game will work with it as is, some applications do, some applications make use of OpenGL specific code.

Fortunately, since this has source available, if it doesn't work immediately, getting it to work should be as simple as adding a single line and recompiling.

I just spent the entire day digging up my garden and I'm too tired to brain right now, so someone else give it a try.
 
I actually messed around with this last week. Couldn't get it running though (other than the swing version) no luck with slick which should be faster. When I tried it I got an error which looked like it was trying to do some stuff for x86.

I'm not very familiar with java, slick, lwjg etc but I looked at the source and NullpoMinoSlick.java specifically. It includes org.lwjgl.opengl.Display but all I saw it doing with it was this:




log.info("Driver adapter:" + Display.getAdapter() + ", Driver version:" + Display.getVersion());
 
String strDriverName = null;
String strDriverVersion = null;
try {
strDriverName = Display.getAdapter();
strDriverVersion = Display.getVersion();
} catch (Throwable e2) {
log.warn("Cannot get driver informations", e2);
}


not sure where to go from there.. It tries to get the adapter information but I can't find any GL calls in the code other than that.
 
Last edited by a moderator:
After all the "import org.lwjgl.opengl.whatever" it does, add the line "import org.lwjgl.opengles.*;"

That should allow it to start using openglES.
 
After all the "import org.lwjgl.opengl.whatever" it does, add the line "import org.lwjgl.opengles.*;"


That should allow it to start using openglES.
Yeah I tried that. It doesn't seem to make a difference. It complains that it can't open liblwjgl.so from the lib folder. ("Possible cause: can't load IA 32-bit .so on a ARM-bit platform") It also fails to get the driver information as per the code I posted above.
 
That's weird. Is there a stray liblwjgl.so file sitting around? Maybe it was part of the game's download. Wherever it is, it needs to be deleted.
 
That's weird. Is there a stray liblwjgl.so file sitting around? Maybe it was part of the game's download. Wherever it is, it needs to be deleted.
Yeah the game comes with a lib subfolder with a bunch of jars (like lwjgl) dlls and so files.

EDIT: I deleted them then got an error regarding the lwjgl.opengl.display stuff I posted about, it seems to only use this for logging so it seemed safe enough to comment out. 

So what I have now is FATAL NullpoMinoSlick Game Initialize failed (LWJGLException) 

java.lang.NoClassDefFoundError: org/lwjgl/LWJGLException

Seems to be right about here




NullpoMinoSlick obj = new NullpoMinoSlick();

if((sWidth != 640) || (sHeight != 480)) {
ScalableGame sObj = new ScalableGame(obj, 640, 480, true);
appGameContainer = new AppGameContainer(sObj);
} else {
appGameContainer = new AppGameContainer(obj); //HERE
}

I'll look into it after work tomorrow and see if I get somewhere with this.
 
Last edited by a moderator:
That means it isn't getting the lwjgl.jar file on the classpath anymore. How are you starting the game?
 
to run the game you just have to click the play_swing file from the file explorer. (by TrashyMG)

it should work but the speed is not good at all (due to java performances i think), and you have not the same game sensation as expected.
 
Last edited by a moderator:
That means it isn't getting the lwjgl.jar file on the classpath anymore. How are you starting the game?
java -cp bin;NullpoMino.jar;lib\log4j-1.2.15.jar;lib\slick.jar;lib\lwjgl.jar;lib\jorbis-0.0.15.jar;lib\jogg-0.0.7.jar;lib\ibxm.jar;lib\jinput.jar -Djava.library.path=lib mu.nu.nullpo.gui.slick.NullpoMinoSlick

I just noticed, here I direct it to the lwjgl.jar in the lib-folder I just removed, d'oh. :p

How can I direct it to the lwjgl.jar included in the java pnd?
 
Last edited by a moderator:
Oh :eek: i'm also interested by a way that could run the game faster. what is this "slick" stuff? 

Couldn't get it running though (other than the swing version) no luck with slick which should be faster.
 
Last edited by a moderator:
Oh :eek: i'm also interested by a way that could run the game faster. what is this "slick" stuff? 

Couldn't get it running though (other than the swing version) no luck with slick which should be faster.
Well if I can get it to launch with slick and using opengles then we should see a performance boost, hopefully reaching 60 fps. swing is just software rendered.
 
I'm still working out some stuff. In order to use the additional libraries in the latest release you need to set the CLASSPATH environment variable instead of putting -cp on the command line.

Code:
export CLASSPATH=bin;NullpoMino.jar;lib\log4j-1.2.15.jar;lib\slick.jar;lib\jorbis-0.0.15.jar;lib\jogg-0.0.7.jar;lib\ibxm.jar
java mu.nu.nullpo.gui.slick.NullpoMinoSlick
Should do it.
 
I'm still working out some stuff. In order to use the additional libraries in the latest release you need to set the CLASSPATH environment variable instead of putting -cp on the command line.








export CLASSPATH=bin;NullpoMino.jar;lib\log4j-1.2.15.jar;lib\slick.jar;lib\jorbis-0.0.15.jar;lib\jogg-0.0.7.jar;lib\ibxm.jar
java mu.nu.nullpo.gui.slick.NullpoMinoSlick
Should do it.
Almost!


burb-openpandora:/media/PANDORA/NullpoMino7_5_0_$ java mu.nu.nullpo.gui.slick.NullpoMinoSlick
Found java.pnd at /media/PANDORA/pandora/apps/java.pnd
Attempting to execute jvm at /mnt/utmp/java/jdk/bin/java
Args are: mu.nu.nullpo.gui.slick.NullpoMinoSlick
20:19:08,452 [main] INFO NullpoMinoSlick: NullpoMinoSlick Start
20:19:11,588 [main] INFO Slick: Slick Build #229
20:19:11,598 [main] INFO Slick: LWJGL Version: 2.9.0
20:19:11,601 [main] INFO Slick: OriginalDisplayMode: 800 x 480 x 16 @0Hz
20:19:11,606 [main] INFO Slick: TargetDisplayMode: 640 x 480 x 0 @0Hz
Attempting to create window...
creating system specific window... org.lwjgl.opengl.LinuxDisplay
will get root
Got handle/root
...system specific window created
...window created
20:19:15,188 [main] INFO Slick: Starting display 640x480
20:19:15,594 [main] FATAL NullpoMinoSlick: Game initialize failed
(NON-SlickException)
java.lang.NoClassDefFoundError: org/lwjgl/opengl/GL11
at
org.newdawn.slick.opengl.renderer.ImmediateModeOGLRenderer.initDisplay(ImmediateModeOGLRenderer.java:34)
at org.newdawn.slick.GameContainer.initGL(GameContainer.java:723)
at org.newdawn.slick.GameContainer.initSystem(GameContainer.java:748)
at org.newdawn.slick.AppGameContainer.setup(AppGameContainer.java:382)
at org.newdawn.slick.AppGameContainer.start(AppGameContainer.java:318)
at mu.nu.nullpo.gui.slick.NullpoMinoSlick.main(NullpoMinoSlick.java:357)
Caused by: java.lang.ClassNotFoundException: org.lwjgl.opengl.GL11
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 6 more
auplink:plink.c:223: AUFS_CTL_PLINK_MAINT: Inappropriate ioctl for device
rmdir: failed to remove `/mnt/utmp/java': Device or resource busy
burb-openpandora:/media/PANDORA/NullpoMino7_5_0_$

It actually creates the window now. And the title changes accordingly ("Now Loading...", etc) The window is a filled green color however and after a moment it closes down.

GL11?
 
Looks like it is using this "Slick2D" library, and that library makes explicit GL11 calls. The only thing to be done at this point is ask if they're going to support lwjgl's ES additions.
 
lol

it's hard for me to register an account in their forum.

their spambot-protection questions are too difficult for me.

i've missed 2 of them and now i can't try until a certain time ("try later")

the last question was: "What java keyword before a method allows the method to be used only in that class? (lower case):" :lol:
 
Back
Top