JOGL + XiG Summit Accelerated X server

Hi all.

Glad I finally found this forum.

Someone mentioned to me that JOGL inherantly requires MESA and hence XFree86. I’ve not seen this anywhere so far in all the JOGL docs, so I need to know if this is this correct?

I’m currently creating a simple java application using OpenGL/JOGL.
I’m also using an accelerated X server called Summit from XiG software, which provides direct hardware rendering for opengl amongst other things. Hence, I am not using XFree86 + DRI + MESA.

Currently the application runs using indirect rendering mode, but it does not run using direct rendering. I’m not totally sure why this would occur but I think it’s something to do with the GL libraries.

Am I wasting my time trying to use an alternate X server?

Thanks for any information.

Regards,

Greg

It could be a problem with the default capabilities chooser,
choosing a mode with indirect rendering.
You could try your own chooser and try to select a
HW accelerated mode.

See also topic: hardware acceleration breaks with new version.

I’d be interested to know whether you get HW acceleration working on the XIG server. Keep us posted.

Frank Suykens.

Hello,

We are also developing a java application using JOGL as OpenGL port running on Xig.
But we experience a lot of problems. When we do a GL-call, the application chrashes, and gives a native static as below:


#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  SIGSEGV (0xb) at pc=0xb0cb4e1b, pid=5560, tid=2968509360
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_05-b05 mixed mode, sharing)
# Problematic frame:
# C  0xb0cb4e1b
#

---------------  T H R E A D  ---------------

Current thread (0x084a4e80):  JavaThread "AWT-EventQueue-0" [_thread_in_native, id=5573]

siginfo:si_signo=11, si_errno=0, si_code=1, si_addr=0x000000df

Registers:
EAX=0xffffffff, EBX=0xffffffff, ECX=0x00ff0000, EDX=0x0000ff00
ESP=0xb0efca08, EBP=0x0859fec0, ESI=0x085a8b90, EDI=0x0859fec0
EIP=0xb0cb4e1b, CR2=0x000000df, EFLAGS=0x00010286

Top of Stack: (sp=0xb0efca08)
0xb0efca08:   00000000 b7f09da7 00000000 00000000
0xb0efca18:   00000000 00000000 00000000 ffffffff
0xb0efca28:   ffffffff 08560958 085a8b90 b10035dc
0xb0efca38:   b1008b08 0859fec0 b0efca90 00000001
0xb0efca48:   00000002 085a0000 000015b8 0140001b
0xb0efca58:   b0d68000 00000001 b0d69000 00000002
0xb0efca68:   085a0000 00000000 b0efcaf0 b0b3427c
0xb0efca78:   085a0000 00000002 00000001 b0efca90 

Instructions: (pc=0xb0cb4e1b)
0xb0cb4e0b:   eb c1 e7 08 09 fb 09 c3 89 5c 24 1c 8b 44 24 20
0xb0cb4e1b:   83 b8 e0 00 00 00 01 74 44 8b 88 c8 00 00 00 8b 

Stack: [0xb0e7e000,0xb0efe000),  sp=0xb0efca08,  free space=506k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  0xb0cb4e1b

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  com.sun.opengl.impl.GLImpl.glClear(I)V+0
j  be.ebit.components.svg.opengl.GlImageRenderer$GlRenderer.init(Ljavax/media/opengl/GLAutoDrawable;)V+131
j  com.sun.opengl.impl.GLDrawableHelper.init(Ljavax/media/opengl/GLAutoDrawable;)V+29
j  javax.media.opengl.GLCanvas$InitAction.run()V+11
j  com.sun.opengl.impl.GLDrawableHelper.invokeGL(Ljavax/media/opengl/GLDrawable;Ljavax/media/opengl/GLContext;Ljava/lang/Runnable;Ljava/lang/Runnable;)V+84
j  javax.media.opengl.GLCanvas.maybeDoSingleThreadedWorkaround(Ljava/lang/Runnable;Ljava/lang/Runnable;)V+36
j  javax.media.opengl.GLCanvas.display()V+9
j  javax.media.opengl.GLCanvas.paint(Ljava/awt/Graphics;)V+1
j  sun.awt.RepaintArea.paintComponent(Ljava/awt/Component;Ljava/awt/Graphics;)V+6
j  sun.awt.X11.XRepaintArea.paintComponent(Ljava/awt/Component;Ljava/awt/Graphics;)V+23
j  sun.awt.RepaintArea.paint(Ljava/lang/Object;Z)V+326
j  sun.awt.X11.XComponentPeer.handleEvent(Ljava/awt/AWTEvent;)V+188
j  java.awt.Component.dispatchEventImpl(Ljava/awt/AWTEvent;)V+765
j  java.awt.Component.dispatchEvent(Ljava/awt/AWTEvent;)V+2
j  java.awt.EventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V+46
j  java.awt.EventDispatchThread.pumpOneEventForHierarchy(ILjava/awt/Component;)Z+233
j  java.awt.EventDispatchThread.pumpEventsForHierarchy(ILjava/awt/Conditional;Ljava/awt/Component;)V+26
j  java.awt.EventDispatchThread.pumpEvents(ILjava/awt/Conditional;)V+4
j  java.awt.EventDispatchThread.pumpEvents(Ljava/awt/Conditional;)V+3
j  java.awt.EventDispatchThread.run()V+9
v  ~StubRoutines::call_stub

Rest omitted.

Some technical info:

  • OS: debian
  • X server: Xig
  • JRE: SUN 1.5.0_05
  • graphics chip: Via S3 pro savage 32Mb
    All latest av. versions.

who can help us?

Thx

Does the Gears demo from the jogl-demos project work on your system?