Bug 719

Summary: Windows BITMAP Offscreen Orientation is not propagated through API (i.e. vertically flipped when read-out w/ OpenGL API via glReadPixels())
Product: [JogAmp] Jogl Reporter: Sven Gothel <sgothel>
Component: windowsAssignee: Sven Gothel <sgothel>
Status: RESOLVED FIXED    
Severity: major    
Priority: ---    
Version: 2   
Hardware: All   
OS: windows   
Type: --- SCM Refs:
fd418a69eca7b8c1bb74244982305fc6004d0a52
Workaround: ---
Bug Depends on: 720    
Bug Blocks:    

Description Sven Gothel 2013-04-17 15:07:09 CEST
An offscreen GLDrawable using BITMAP on Windows shall expose the same behavior than 
other impl.

Culprit is WindowsBitmapWGLDrawable, which flips the GDI DiB via
BITMAPINFOHEADER's height field while assigning the negative height.

This shall not be done, since we don't read out the DiB directly, 
but via OpenGL.
Comment 1 Sven Gothel 2013-04-18 02:51:45 CEST
Depends on Bug 720, since cleaning up GLContextImpl* is required to move 
property 'GLContext.isGLOrientationFlippedVertical()'
to 'GLDrawable.isGLOriented()' where it belongs!

Windows BITMAP GLDrawable impl. isGLOriented() shall return false,
while we keep the BITMAPINFOHEADER's height field negative 
to remove the need for vertical flip when used w/ AWT or Windows, ..

Then property 'GLDrawable.isGLOriented()' has to be recognized throughout the
utility functions, i.e. TextureData's mustFlipVertically and hence TextureIO writer.