diff options
author | Sven Gothel <[email protected]> | 2013-10-02 01:12:20 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2013-10-02 01:12:20 +0200 |
commit | 543c8649f43fdc43028075d7472ad553299271bf (patch) | |
tree | 01f0d9e2d94e4a9277c3318b9188fcd95b5f851d /www/bof0899.pdf | |
parent | 00062e490f0b0cc2944a2167f2f00149c8ba352e (diff) |
GLJPanel/AWTGLPixelBuffer: Reused BufferedImage didn't account for row-stride (regression of b33bdf41cf53f37203643a8551bf5d94b42a8fab)
SingleAWTGLPixelBufferProvider w/ allowing row-stride reuses the AWTGLPixelBuffer and it's BufferedImage
even w/ different width.
This leads to distortion if using the BufferedImage unhandled.
GLJPanel also set GL_PACK_ROW_LENGTH to pixelBuffer.width, which leads to an 'out-of-bounds'
exception if ReadPixels is used w/ panelwidth and panelHeight.
++
Introduce AWTGLPixelBuffer.getAlignedImage(width, height) which returns an aligned
BufferedImage while reusing the DataBuffer.
GLJPanel fetches a new alignedImage if required.
This allows a more efficient single buffer usage as intended, w/o the need of copying data.
Diffstat (limited to 'www/bof0899.pdf')
0 files changed, 0 insertions, 0 deletions