Java-Gaming.org    
Featured games (81)
games approved by the League of Dukes
Games in Showcase (480)
Games in Android Showcase (110)
games submitted by our members
Games in WIP (547)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Problems on certain systems.  (Read 2091 times)
0 Members and 1 Guest are viewing this topic.
Offline kevglass

JGO Kernel


Medals: 152
Projects: 23
Exp: 18 years


Coder, Trainee Pixel Artist, Game Reviewer


« Posted 2003-07-30 14:44:20 »

I've ported my 2D app over to JOGL. But I'm getting reports of it failing on a selection of graphics cards. Also, on my work machine I have no 3d card and had assumed software OpenGL would take over. However, I find all my textures come back as pure red...

Is there a list of problematic systems? Is this likely to be my code or are these known OpenGL problems? Could it problem with colour depth or something?

Do I need to set GLCapabilities up, or will the defaults suffice?

Going slightly insane now Smiley

Kev

Offline tortoise

Junior Member




<3 Shmups


« Reply #1 - Posted 2003-07-30 15:10:10 »

I'm interested in seeing if the software GL problem is solvable too. On 4 out of 4 machines that only have software GL, all polys come up a maroonish, dark red. Maybe I should try it out on Linux with Mesa and see what happens.
Offline William Denniss

JGO Coder


Projects: 2


Fire at will


« Reply #2 - Posted 2003-07-30 21:01:19 »

I have a similar problem when trying JOGL on a Laptop which has a 3D card - but it's a pretty pathetic one.  "SiS Integrated", 32MB (shared).

Using Linux/JOGL, The Gears demo works, but none others do.  My card is reported as:
1  
2  
3  
GL_VENDOR: VA Linux Systems, Inc.
GL_RENDERER: Mesa GLX Indirect
GL_VERSION: 1.2 Mesa 3.4.2


Using Windows/JOGL, the gears demo will run a little faster, and the InfiniteShadowVolumes demo will also run - but no others.

Running the Xith3D demo with Linux/JOGL also fails (after modifying the shell script and uncommenting/recompiling a line of code.

Running the Infinite Shadows demo gets this from linux:
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
34  
35  
36  
37  
38  
39  
[divzero@localhost jogl-demos]$ java -Djava.library.path=/usr/java/j2sdk1.4.0/jre/lib/ext/ -cp jogl-demos.jar:jogl-demos-util.jar:jogl-demos-data.jar   demos.infiniteShadowVolumes.InfiniteShadowVolumes
net.java.games.jogl.GLException: Error making context current
        at net.java.games.jogl.impl.x11.X11GLContext.makeCurrent(X11GLContext.java:141)
        at net.java.games.jogl.impl.x11.X11OnscreenGLContext.makeCurrent(X11OnscreenGLContext.java:111)
        at net.java.games.jogl.impl.GLContext.invokeGL(GLContext.java:162)
        at net.java.games.jogl.GLCanvas.displayImpl(GLCanvas.java:196)
        at net.java.games.jogl.GLCanvas.display(GLCanvas.java:91)
        at net.java.games.jogl.Animator$1.run(Animator.java:104)
        at java.lang.Thread.run(Thread.java:536)
net.java.games.jogl.GLException: Error making context current
        at net.java.games.jogl.impl.x11.X11GLContext.makeCurrent(X11GLContext.java:141)
        at net.java.games.jogl.impl.x11.X11OnscreenGLContext.makeCurrent(X11OnscreenGLContext.java:111)
        at net.java.games.jogl.impl.GLContext.invokeGL(GLContext.java:162)
        at net.java.games.jogl.GLCanvas.displayImpl(GLCanvas.java:196)
        at net.java.games.jogl.GLCanvas.display(GLCanvas.java:91)
        at net.java.games.jogl.GLCanvas.paint(GLCanvas.java:102)
        at sun.awt.RepaintArea.paint(RepaintArea.java:180)
        at sun.awt.motif.MComponentPeer.handleEvent(MComponentPeer.java:339)
        at java.awt.Component.dispatchEventImpl(Component.java:3586)
        at java.awt.Component.dispatchEvent(Component.java:3367)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:445)
        at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:190)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:144)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:130)        at java.awt.EventDispatchThread.run(EventDispatchThread.java:98)
net.java.games.jogl.GLException: Error making context current
        at net.java.games.jogl.impl.x11.X11GLContext.makeCurrent(X11GLContext.java:141)
        at net.java.games.jogl.impl.x11.X11OnscreenGLContext.makeCurrent(X11OnscreenGLContext.java:111)
        at net.java.games.jogl.impl.GLContext.invokeGL(GLContext.java:162)
        at net.java.games.jogl.GLCanvas.displayImpl(GLCanvas.java:196)
        at net.java.games.jogl.GLCanvas.display(GLCanvas.java:91)
        at net.java.games.jogl.GLCanvas.paint(GLCanvas.java:102)
        at sun.awt.RepaintArea.paint(RepaintArea.java:180)
        at sun.awt.motif.MComponentPeer.handleEvent(MComponentPeer.java:339)
        at java.awt.Component.dispatchEventImpl(Component.java:3586)
        at java.awt.Component.dispatchEvent(Component.java:3367)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:445)
        at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:190)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:144)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:130)        at java.awt.EventDispatchThread.run(EventDispatchThread.java:98)


Does this just mean my card is crap?  Do I have any hope of getting linux drivers or should I just give up now?  I have a PC with a better card but havn't the chance to test it yet.

Cheers,

Will.

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline pepijnve

Junior Member




Java games rock!


« Reply #3 - Posted 2003-07-31 06:28:11 »

1  
GL_RENDERER: Mesa GLX Indirect

This means that Mesa is running in software mode. I checked quickly in the 2.4.x kernel and it says that it has some SiS chip support. You would have to find out which chip it is exactly to be sure whether it's suported or not. If it's supported you'll need to compile a kernel that has SiS support builtin or as a module (it's called 'Generic SiS support') to get proper 3d hardware acceleration.
Offline dotandcross

Senior Newbie




I'm a Java Bean


« Reply #4 - Posted 2003-07-31 12:14:22 »

Yes, I think we know that it is running in software mode. And getting proper 3D hardware acceleration does not actually solve the problem.

Does this mean people running Linux without 3D hardware acceleration will have proplems with JOGL? Is there like a minimun specs for JOGL?

I guess i can cut development on my laptop, tats for sure Smiley I have only 8mb of graphics ram!
Offline tortoise

Junior Member




<3 Shmups


« Reply #5 - Posted 2003-07-31 14:10:29 »

Quote
Does this mean people running Linux without 3D hardware acceleration will have proplems with JOGL?


That restriction is not limited to just Linux. Although I wonder if this is really at the JOGL level or the OpenGL level.

Quote

I guess i can cut development on my laptop, tats for sure Smiley I have only 8mb of graphics ram!


Yup, dang that sucks. I so prefer to work on my laptop over my desktop. On the other hand, a new laptop might be nice... Smiley
Offline pepijnve

Junior Member




Java games rock!


« Reply #6 - Posted 2003-07-31 14:43:06 »

In an attemt to be more helpful I tried to trace what's actually going wrong. Wink The difference between the Gears and InfiniteShadowVolumes demo is that the shadows one tries to use a stencil buffer. If I comment the line
1  
caps.setStencilBits(16)
out in InfiniteShadowVolumes.java, the demo runs in Mesa indirect mode. Of course then there are no visible shadows Smiley
I don't think the microsoft opengl software implementation has stencil buffer support and apparantly neither does mesa. Maybe in a more recent version than 3.4.2.
Given these facts, it might be a good idea to have jogl detect this type of failure earlier and report the error instead of generating an exception deep in the code. I'm not sure if this is possible in the first place though.
Offline Ken Russell

JGO Coder




Java games rock!


« Reply #7 - Posted 2003-08-01 03:04:36 »

It looks like this is a problem with JOGL's pixel format selection algorithm. The DefaultGLCapabilitiesChooser defines how the library selects the window's pixel format from the list of those available, though you can customize this by implementing the GLCapabilitiesChooser interface. glXChooseVisual and Windows' ChoosePixelFormat have different enough semantics that it was necessary to write an algorithm to span platforms. The current algorithm was written without looking at the GLX implementation and required some modifications along the way to get all of the demos ported. If anyone wants to redo it to have closer behavior to glXChooseVisual, but to always return some valid format as ChoosePixelFormat does, please do so and make the code available. In the meantime I've put this on the list of things to do in the "high priority" section.
Offline Ken Russell

JGO Coder




Java games rock!


« Reply #8 - Posted 2003-08-01 03:09:04 »

Quote
I don't think the microsoft opengl software implementation has stencil buffer support and apparantly neither does mesa.


I'm pretty sure the MS software implementation does have stencil buffers because the demo runs on my non-hardware-accelerated, four-year-old notebook. The wall texture is missing, though I've seen this happen on hardware-accelerated systems as well.

Quote
Given these facts, it might be a good idea to have jogl detect this type of failure earlier and report the error instead of generating an exception deep in the code. I'm not sure if this is possible in the first place though.


Agreed. I'll check in a new todo.txt later that has this as a high priority item (as mentioned above).
Offline William Denniss

JGO Coder


Projects: 2


Fire at will


« Reply #9 - Posted 2003-08-01 03:35:56 »

Quote

Agreed. I'll check in a new todo.txt later that has this as a high priority item (as mentioned above).


Great to hear, detecting which features to use and which features not to use is a pretty important task as then you can support both the high and low end systems and won't get as many bug reports from end users.

Will.

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline kevglass

JGO Kernel


Medals: 152
Projects: 23
Exp: 18 years


Coder, Trainee Pixel Artist, Game Reviewer


« Reply #10 - Posted 2003-08-01 04:26:48 »

Ken,

I'd been meaning to ask about this. The GLCapabilitiesChooser, where would I get the array of available capabilities to pass in?

Currently, I just create by JOGL Canvas using the default constructor fro GLCapabilities(). Could this be causing my pure red textures?

Kev

Offline Ken Russell

JGO Coder




Java games rock!


« Reply #11 - Posted 2003-08-02 01:09:53 »

Quote
I'd been meaning to ask about this. The GLCapabilitiesChooser, where would I get the array of available capabilities to pass in?


If you implement the GLCapabilitiesChooser interface and use the GLDrawableFactory method which takes a GLCapabilitiesChooser, you'll get the ability to select the pixel format yourself.

Quote
Currently, I just create by JOGL Canvas using the default constructor fro GLCapabilities(). Could this be causing my pure red textures?


Probably JOGL is choosing the wrong pixel format. I saw this kind of behavior on Linux early in the X11 port. Try printing out the GLCapabilities objects that are passed in to your chooser and seeing if you can find a better fit than the one the DefaultGLCapabilitiesChooser is selecting.
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

atombrot (23 views)
2014-08-19 09:29:53

Tekkerue (22 views)
2014-08-16 06:45:27

Tekkerue (21 views)
2014-08-16 06:22:17

Tekkerue (12 views)
2014-08-16 06:20:21

Tekkerue (19 views)
2014-08-16 06:12:11

Rayexar (57 views)
2014-08-11 02:49:23

BurntPizza (37 views)
2014-08-09 21:09:32

BurntPizza (29 views)
2014-08-08 02:01:56

Norakomi (36 views)
2014-08-06 19:49:38

BurntPizza (66 views)
2014-08-03 02:57:17
List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06

List of Learning Resources
by SilverTiger
2014-07-31 11:54:12

HotSpot Options
by dleskov
2014-07-08 01:59:08
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!