Please test this java program

Accname

2D-Graphics enthusiast
Reaction score
1,462
Hi guys.

I would really appreciate if you could download and test this java program.
I am only interested on what kinds of operating systems it runs and what kind of hardware works with it.

The program is about 1.7mb in size. The newest java version is required to run it.

Here is the download link:
Windows Version: http://www.file-upload.net/download-8146669/Picture-Test--Windows-.zip.html
MacOS Version: http://www.file-upload.net/download-8146673/Picture-Test--MacOS-.zip.html
Linux Version: http://www.file-upload.net/download-8146674/Picture-Test--Linux-.zip.html
Solaris Version: http://www.file-upload.net/download-8146678/Picture-Test--Solaris-.zip.html

Thanks for the support.


Edit: By the way, it needs OpenGL Version 3.0, so it might not work on older laptops.
 

Zakyath

Member
Reaction score
238
it runs, spins and goes back and forth on acer aspire 5742G windows 7 home premium 64 bit
 

monoVertex

I'm back!
Reaction score
460
All of the commands in the README work for me. My specs:

  • Windows 8 Pro x64
  • Java 1.7.0_25
  • AMD Radeon HD 7800
  • Direct X11
If you need any other information, please tell me (I have a desktop).
Also, I ran it in Cygwin, if that makes any difference.

My only issue with the program is that the images, especially second one, are a bit pixelated. You should add some anti-aliasing in the future :).

I can also test this for you on an Acer Aspire One D270 with Linux Mint, if you want.
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
The first picture uses linear filtering and mipmaping. The second picture doesnt. That was done deliberately to show the difference.
Anti-Aliasing wouldnt do much. It only smoothes the edges of vertices being drawn, it doesnt do anything with the texture. The texture itself is so pixelated.

But thank you very much for the tests. It would be nice if somebody with a linux or mac OS could test it too.
 

monoVertex

I'm back!
Reaction score
460
The first picture uses linear filtering and mipmaping. The second picture doesnt. That was done deliberately to show the difference.
Anti-Aliasing wouldnt do much. It only smoothes the edges of vertices being drawn, it doesnt do anything with the texture. The texture itself is so pixelated.

But thank you very much for the tests. It would be nice if somebody with a linux or mac OS could test it too.

Ah, yes, you're right.

I'm testing on Linux now, I'll also test on an OSX virtual machine.
 

PurgeandFire

zxcvmkgdfg
Reaction score
509
Everything worked for me except "q" (shader), but I think that is just because I'm running 1.6 JRE (chrome on mac can't run 1.7). Maybe I'll upgrade and let you know of the results, and then downgrade afterward. All the other things in the readme worked.

Specs:
  • OS X 10.8.4 (64-bit)
  • java version "1.6.0_51"
  • Java(TM) SE Runtime Environment (build 1.6.0_51-b11-457-11M4509)
  • Java HotSpot(TM) 64-Bit Server VM (build 20.51-b01-457, mixed mode
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
Interesting. What exactly happened when you pressed the 'Q'-key? Did the program crash? Or did simply nothing happen?
And what kind of graphics card do you have?
 

monoVertex

I'm back!
Reaction score
460
On my OSX Virtual Machine, the following happens:

Java 1.6.0_51
Code:
Cosmins-Mac:picture cosmin$ java -jar Exe.jar
Exception in thread "main" java.lang.UnsupportedClassVersionError: test/Picture_Test : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)


Java 1.7:
Code:
Cosmins-Mac:picture cosmin$ java7 -jar Exe.jar
org.lwjgl.LWJGLException: Could not create pixel format
at org.lwjgl.opengl.MacOSXPeerInfo.nChoosePixelFormat(Native Method)
at org.lwjgl.opengl.MacOSXPeerInfo.choosePixelFormat(MacOSXPeerInfo.java:58)
at org.lwjgl.opengl.MacOSXPeerInfo.<init>(MacOSXPeerInfo.java:53)
at org.lwjgl.opengl.MacOSXPbufferPeerInfo.<init>(MacOSXPbufferPeerInfo.java:46)
at org.lwjgl.opengl.MacOSXDisplay.createPbuffer(MacOSXDisplay.java:526)
at org.lwjgl.opengl.Pbuffer.createPbuffer(Pbuffer.java:234)
at org.lwjgl.opengl.Pbuffer.<init>(Pbuffer.java:219)
at org.lwjgl.opengl.Pbuffer.<init>(Pbuffer.java:190)
at org.lwjgl.opengl.Pbuffer.<init>(Pbuffer.java:166)
at de.starzi.graphics.engine.XProgram.set_pixel_format(XProgram.java:110)
at test.Picture_Test.main(Picture_Test.java:33)
Exception in thread "main" java.lang.RuntimeException: Failed to set display size:
at de.starzi.graphics.engine.XProgram.set_display_size(XProgram.java:220)
at test.Picture_Test.main(Picture_Test.java:37)
Suppressed: org.lwjgl.LWJGLException: Could not create pixel format
at org.lwjgl.opengl.MacOSXPeerInfo.nChoosePixelFormat(Native Method)
at org.lwjgl.opengl.MacOSXPeerInfo.choosePixelFormat(MacOSXPeerInfo.java:58)
at org.lwjgl.opengl.MacOSXPeerInfo.<init>(MacOSXPeerInfo.java:53)
at org.lwjgl.opengl.MacOSXCanvasPeerInfo.<init>(MacOSXCanvasPeerInfo.java:57)
at org.lwjgl.opengl.MacOSXDisplayPeerInfo.<init>(MacOSXDisplayPeerInfo.java:48)
at org.lwjgl.opengl.MacOSXDisplay.createPeerInfo(MacOSXDisplay.java:304)
at org.lwjgl.opengl.DrawableGL.setPixelFormat(DrawableGL.java:61)
at org.lwjgl.opengl.Display.create(Display.java:846)
at org.lwjgl.opengl.Display.create(Display.java:797)
at de.starzi.graphics.engine.XProgram.set_orthogonal_projection(XProgram.java:166)
at de.starzi.graphics.engine.XProgram.set_resolution(XProgram.java:141)
at de.starzi.graphics.engine.XProgram.set_display_size(XProgram.java:212)
... 1 more

However, I would not care much for these, as it's a virtual machine and probably the virtual hardware gets in the way of the graphic programming. AFAIK, VMware doesn't emulate a powerful graphic card and probably there's some issues with that. I use it for web development tests, so the graphics card doesn't really matter to me...

Now, for Linux Mint.

Specs:
  • Acer Aspire One D270
  • GPU: Intel GMA 3650 (Intel integrated GPU)
  • Linux solaris 3.8.0-27-generic #40-Ubuntu SMP Tue Jul 9 00:19:35 UTC 2013 i686 i686 i686 GNU/Linux
  • Java 1.7.0_25

Everything works except the 'q' command. For that, I get this exception:
Code:
cosmin@solaris ~/Downloads/picture $ java -jar Exe.jar
de.starzi.graphics.shader.Shader$Shader_Factory$Compile_Error: Error when compiling shader FRAGMENT: 
0:1(193): error: could not implicitly convert operands to arithmetic operator

Exception in thread "main" java.lang.NoClassDefFoundError: org/lwjgl/util/glu/GLU
	at de.starzi.graphics.engine.XProgram.get_opengl_error(XProgram.java:718)
	at de.starzi.graphics.opengl.GLBuffer$Buffer_Type.unbind_buffer(GLBuffer.java:98)
	at de.starzi.graphics.opengl.GLFloat_Buffer.unbind(GLFloat_Buffer.java:184)
	at de.starzi.graphics.opengl.GLBuffer$Buffer_Type.bind_buffer(GLBuffer.java:115)
	at de.starzi.graphics.opengl.GLFloat_Buffer.bind(GLFloat_Buffer.java:177)
	at de.starzi.graphics.opengl.GLFloat_Buffer.<init>(GLFloat_Buffer.java:59)
	at de.starzi.graphics.opengl.GLFloat_Buffer.<init>(GLFloat_Buffer.java:31)
	at de.starzi.graphics.engine.Quad_Batch.<init>(Quad_Batch.java:39)
	at de.starzi.graphics.engine.Spriteset.get_batch(Spriteset.java:79)
	at de.starzi.graphics.engine.Picture.set_spriteset(Picture.java:283)
	at de.starzi.graphics.engine.Picture.set_shader(Picture.java:318)
	at test.Picture_Test$SomeScene.update(Picture_Test.java:111)
	at de.starzi.graphics.engine.XProgram.start(XProgram.java:547)
	at test.Picture_Test.main(Picture_Test.java:53)
Caused by: java.lang.ClassNotFoundException: org.lwjgl.util.glu.GLU
	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:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 14 more

Note: 'solaris' is the name of my computer, it has nothing to do with the Solaris OS. That's a coincidence that I have noticed just now :D.
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
Okay, thank you very much.

The first one comes from an insufficient Java version. The "UnsupportedClassVersionError" is pretty straight forward.
The next one has something to do with hardware limitations: "Could not create pixel format".
Now, the pixel format I choose for the application is 32bit and I have heard that apple usually uses 16bit instead. So maybe it might work if I switch to 16bit with the application. Would you try again if I upload a different version?

The last one is a bit more tricky. The custom shaders did fail to compile. The source for the error, however is not so easy to find. But I have a guess.
Could you try another test application which I am going to upload?

The new MacOS version now uses a 16bit pixel format.
The new Linux version now has a slightly changed shader.

Thank you, again.
 

Attachments

  • Picture Test (MacOS 16bit).zip
    1.2 MB · Views: 307
  • Picture Test (Linux2).zip
    1.2 MB · Views: 299

monoVertex

I'm back!
Reaction score
460
For Mac, I got what I think is the same error:

Code:
Cosmins-Mac:picture cosmin$ java7 -jar Exe.jar
org.lwjgl.LWJGLException: Could not create pixel format
at org.lwjgl.opengl.MacOSXPeerInfo.nChoosePixelFormat(Native Method)
at org.lwjgl.opengl.MacOSXPeerInfo.choosePixelFormat(MacOSXPeerInfo.java:58)
at org.lwjgl.opengl.MacOSXPeerInfo.<init>(MacOSXPeerInfo.java:53)
at org.lwjgl.opengl.MacOSXPbufferPeerInfo.<init>(MacOSXPbufferPeerInfo.java:46)
at org.lwjgl.opengl.MacOSXDisplay.createPbuffer(MacOSXDisplay.java:526)
at org.lwjgl.opengl.Pbuffer.createPbuffer(Pbuffer.java:234)
at org.lwjgl.opengl.Pbuffer.<init>(Pbuffer.java:219)
at org.lwjgl.opengl.Pbuffer.<init>(Pbuffer.java:190)
at org.lwjgl.opengl.Pbuffer.<init>(Pbuffer.java:166)
at de.starzi.graphics.engine.XProgram.set_pixel_format(XProgram.java:110)
at test.Picture_Test.main(Picture_Test.java:32)
Exception in thread "main" java.lang.RuntimeException: Failed to set display size:
at de.starzi.graphics.engine.XProgram.set_display_size(XProgram.java:220)
at test.Picture_Test.main(Picture_Test.java:36)
Suppressed: org.lwjgl.LWJGLException: Could not create pixel format
at org.lwjgl.opengl.MacOSXPeerInfo.nChoosePixelFormat(Native Method)
at org.lwjgl.opengl.MacOSXPeerInfo.choosePixelFormat(MacOSXPeerInfo.java:58)
at org.lwjgl.opengl.MacOSXPeerInfo.<init>(MacOSXPeerInfo.java:53)
at org.lwjgl.opengl.MacOSXCanvasPeerInfo.<init>(MacOSXCanvasPeerInfo.java:57)
at org.lwjgl.opengl.MacOSXDisplayPeerInfo.<init>(MacOSXDisplayPeerInfo.java:48)
at org.lwjgl.opengl.MacOSXDisplay.createPeerInfo(MacOSXDisplay.java:304)
at org.lwjgl.opengl.DrawableGL.setPixelFormat(DrawableGL.java:61)
at org.lwjgl.opengl.Display.create(Display.java:846)
at org.lwjgl.opengl.Display.create(Display.java:797)
at de.starzi.graphics.engine.XProgram.set_orthogonal_projection(XProgram.java:166)
at de.starzi.graphics.engine.XProgram.set_resolution(XProgram.java:141)
at de.starzi.graphics.engine.XProgram.set_display_size(XProgram.java:212)
... 1 more

Linux works correctly for all the commands now, good job! :)
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
Well then, it seems mac doesnt quite want to work with LWJGL. I really dont know what to try next. I will, however see if somebody in a support forum can help me out with this.

The linux version didnt really change. I just changed a "3" to "3.0" in the shader to make it a floating point number instead of an integer. I am quite surprised this was such a big deal for the compiler.
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
Yeah. It depends on the hardware too. OpenGL is more of a guideline. Different graphics cards manufacturers do different things every now and then.

Thank you for your help though.
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
Hard to say. I dont have a machine I could test it on, this makes it much more difficult.
Furthermore the error message doesnt really help me at all. I can only hope that somebody in the support forum can tell me something valuable about it.

But I will sure see what I can do. After all, that was the reason why I am working with java and OpenGL; its supposed to be cross platform.
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
Well, after googling about it I got the following responses:
1). Update graphics card drivers. Might do the trick.
2). Update java.
3). Update LWJGL jars.

So here is a new Version with the latest version of LWJGL (to be honest, I dont know what version I used before. I guess I already used the latest or the second latest)

It would be nice if you could try to update the graphics card drivers too.

By the way, this error happens frequently with people who want to try to play minecraft on a mac. Minecraft also uses LWJGL. So if you have minecraft and you can play it on your mac then the error is probably my fault.
 

Attachments

  • Picture Test (MacOS2).zip
    1.4 MB · Views: 289

monoVertex

I'm back!
Reaction score
460
Cross-platform is something really relative. Python is also cross-platform for example, but I often find things that don't work on one platform (Windows, mostly) or work in a different way.

I will test again, but not right now as I'm stumbled in an issue of my own, trying to set up an nginx server correctly.

EDIT: Still getting the error, after a Software Update. Even if we talked in the shoutbox, posting this for future reference.
 

Slapshot136

Divide et impera
Reaction score
471
It doesn't run for me at all (I don't see it do anything..)

2013-10-07_2204.png
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,667
It doesn't run for me at all (I don't see it do anything..)
You need to do this:

Ab10rBg.png


Important specs from my computer:

Windows 7 x64
Nvidia Geforce GT640
Java 1.7_0.21-b11

----------------

EDIT:
I just realized my IE10 64-bit has recently been combined with the 32-bit version. Wut?? Now I have to enable it. Uninstalling Java 32bit.
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
@Slapshot: Please try to run the application through the command line and see what kind of error message you get. I will see what I can do with the display classes.
 
General chit-chat
Help Users
  • Varine Varine:
    How can you tell the difference between real traffic and indexing or AI generation bots?
  • The Helper The Helper:
    The bots will show up as users online in the forum software but they do not show up in my stats tracking. I am sure there are bots in the stats but the way alot of the bots treat the site do not show up on the stats
  • Varine Varine:
    I want to build a filtration system for my 3d printer, and that shit is so much more complicated than I thought it would be
  • Varine Varine:
    Apparently ABS emits styrene particulates which can be like .2 micrometers, which idk if the VOC detectors I have can even catch that
  • Varine Varine:
    Anyway I need to get some of those sensors and two air pressure sensors installed before an after the filters, which I need to figure out how to calculate the necessary pressure for and I have yet to find anything that tells me how to actually do that, just the cfm ratings
  • Varine Varine:
    And then I have to set up an arduino board to read those sensors, which I also don't know very much about but I have a whole bunch of crash course things for that
  • Varine Varine:
    These sensors are also a lot more than I thought they would be. Like 5 to 10 each, idk why but I assumed they would be like 2 dollars
  • Varine Varine:
    Another issue I'm learning is that a lot of the air quality sensors don't work at very high ambient temperatures. I'm planning on heating this enclosure to like 60C or so, and that's the upper limit of their functionality
  • Varine Varine:
    Although I don't know if I need to actually actively heat it or just let the plate and hotend bring the ambient temp to whatever it will, but even then I need to figure out an exfiltration for hot air. I think I kind of know what to do but it's still fucking confusing
  • The Helper The Helper:
    Maybe you could find some of that information from AC tech - like how they detect freon and such
  • Varine Varine:
    That's mostly what I've been looking at
  • Varine Varine:
    I don't think I'm dealing with quite the same pressures though, at the very least its a significantly smaller system. For the time being I'm just going to put together a quick scrubby box though and hope it works good enough to not make my house toxic
  • Varine Varine:
    I mean I don't use this enough to pose any significant danger I don't think, but I would still rather not be throwing styrene all over the air
  • The Helper The Helper:
    New dessert added to recipes Southern Pecan Praline Cake https://www.thehelper.net/threads/recipe-southern-pecan-praline-cake.193555/
  • The Helper The Helper:
    Another bot invasion 493 members online most of them bots that do not show up on stats
  • Varine Varine:
    I'm looking at a solid 378 guests, but 3 members. Of which two are me and VSNES. The third is unlisted, which makes me think its a ghost.
    +1
  • The Helper The Helper:
    Some members choose invisibility mode
    +1
  • The Helper The Helper:
    I bitch about Xenforo sometimes but it really is full featured you just have to really know what you are doing to get the most out of it.
  • The Helper The Helper:
    It is just not easy to fix styles and customize but it definitely can be done
  • The Helper The Helper:
    I do know this - xenforo dropped the ball by not keeping the vbulletin reputation comments as a feature. The loss of the Reputation comments data when we switched to Xenforo really was the death knell for the site when it came to all the users that left. I know I missed it so much and I got way less interested in the site when that feature was gone and I run the site.
  • Blackveiled Blackveiled:
    People love rep, lol
    +1
  • The Helper The Helper:
    The recipe today is Sloppy Joe Casserole - one of my faves LOL https://www.thehelper.net/threads/sloppy-joe-casserole-with-manwich.193585/
  • The Helper The Helper:
    Decided to put up a healthier type recipe to mix it up - Honey Garlic Shrimp Stir-Fry https://www.thehelper.net/threads/recipe-honey-garlic-shrimp-stir-fry.193595/

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top