Bug 1070

Summary: Fix glPixelStorei issues w/ ES3 and OpenGL 1.1
Product: [JogAmp] Jogl Reporter: Sven Gothel <sgothel>
Component: coreAssignee: Sven Gothel <sgothel>
Status: RESOLVED FIXED    
Severity: major CC: sgothel
Priority: ---    
Version: 2.3.0   
Hardware: All   
OS: all   
Type: DEFECT SCM Refs:
73a4d809f92126228b64a3bded75686db806be64 d19bb03e3cabc9a50b63c4ce8d866efab7f34860 6363fccee219ce238b0b2ded39c116e2bc8613d5
Workaround: ---

Description Sven Gothel 2014-09-20 21:14:13 CEST
Don't utilize glPixelStorei's PACK/UNPACK IMAGE_HEIGHT and SKIP_IMAGES for Desktop GL < 1.2, avoiding GL-Error

GLBuffers.sizeof(..): Add support for ES3, reading supported glPixelStorei states
Comment 1 Sven Gothel 2014-09-20 21:14:56 CEST
73a4d809f92126228b64a3bded75686db806be64:

Don't utilize glPixelStorei's PACK/UNPACK IMAGE_HEIGHT and SKIP_IMAGES for Desktop GL < 1.2, avoiding GL-Error

Commit fc1e98790a02b4fa7922f3cdd9d437f87d7c99e5
added handling of PACK/UNPACK IMAGE_HEIGHT and SKIP_IMAGES in GLPixelStorageModes.

However, it has been overseen that the four states are not available in OpenGL 1.1.

Adding exclusion of the same if desktop GL < 1.2
and hence avoiding GL errors.

Same applies to GLBuffers.sizeof(..) method.
Comment 2 Sven Gothel 2014-09-20 21:15:28 CEST
d19bb03e3cabc9a50b63c4ce8d866efab7f34860:

GLPixelStorageModes: Emphasize reset*() usage; setUnpackRowLength: GL2ES2 -> GL2ES3; Better adoption of GLPixelStorageModes (GLJPanel, GLReadBufferUtil, TextureIO)

- Emphasize reset*() is being called when saving modes for 1st modification;

- setUnpackRowLength: GL2ES2 -> GL2ES3; Actually GL2ES3 is required for UNPACK_ROW_LENGTH

- Better adoption of GLPixelStorageModes (GLJPanel, GLReadBufferUtil, TextureIO)
Comment 3 Sven Gothel 2014-09-20 21:16:05 CEST
6363fccee219ce238b0b2ded39c116e2bc8613d5:

GLBuffers.sizeof(..): Add support for ES3, reading supported glPixelStorei states