Hello,
Upon upgrading to JOGL 1.1.1 from JOGL 1.0, creating a pbuffer no longer works. During Animator.run, GLException is thrown requesting that render-to-texture-rectangle is enabled. Enabling this property on an ATI Radeon 9000 is fruitless since the card does not support non-power-of-two textures.
By searching the forums, only other thread that mentioned similar problem (ATI card) was due to improper use of texture coordinates, however in this case nothing was changed from fully working to not working; the only changes being replacement of the libraries (jar, dll) with the latest version (1.1.1).
Some info:
GLEventListener.init {
GLCapabilities c = …
c.setDoubleBuffered(false);
c.setOffscreenRenderToTexture(true);
…
pBuffer = canvas.createOffscreenDrawable(c, 512, 512);
pBuffer.addGLEvenListener(getOffscreenRenderer());
…
// I then prime the pbuffer as per requirement, due to a bug in 1.0 which failed
// to call GLEventListener.init of the instance attached to the pbuffer.
pBuffer.display();
}
GLEventListener.run {
pBuffer.display();
…
gl.glActiveTexture(GL.GL_TEXTURE0_ARB);
gl.glEnable(GL.GL_TEXTURE_2D);
pBuffer.bindTexture();
// render geometry
pBuffer.releaseTexture();
}
What stumped me is the fact that this code works perfectly on JOGL 1.0, and also works “perfectly” provided pbuffer
support is not used on JOGL 1.1.1.
Win2k, Catalyst 5.8
If anyone has experienced this problem, please let me know.
Thanks for all the help you can offer.
-Al