When I remote desktop into a machine, my graphics information shown in Help > Support Information is:
In Windows Graphics Capabilities:
|
68 KB
|
210 KB
|
48 KB
![]() |
14 KB
From Matt:
1. fix BIChartPanel.getMaxRenderBufferSize() logic to NOT return 0 (and use 4096 if 0 occurs). This was happening when using Microsoft OpenGL driver through Remote Desktop.
2. remove random dots code in VA export image
3. fix inverted image/text issue. It looks like glReadPixels() behaves differently in JOGL 2 when using the Microsoft OpenGL Driver. So, we just need to have VA's BIImageExporter.transformPixels() and ADS's ImageSerializerJOGL.transformPixels() perform the flipping based on if we are using a better driver (which supports FBO or PBuffer) or not (the Microsoft OpenGL driver).
4. fix error msg 0x500 (caused by GL_MULTISAMPLE) GLDrawableHelper.init() -> GLDrawableHelper.init() -> BIBaseChartRenderer.init() -> BIBaseChartRenderer.initGL(true) -> gl.getGL2().glEnable(GL2.GL_MULTISAMPLE) ==> after that call, glGetError() returns 0x500 (1280 decimal) To avoid this case, look at the drawable's chosen GLCapabilities & if getSampleBuffers() returns FALSE, then don't enable GL_MULTISAMPLE.
The detection logic in #3 needs further QA testing on different platforms, since there's no clearly-defined variables indicating when the image needs to be flipped or not.
With this update, we flip the image when using the Mesa software renderer and when the drawable supports FBOs or PBuffers (which are supported by modern drivers).
The Microsoft OpenGL Driver doesn't support FBOs or PBuffers, which seems to be the distinguishing factor, but it's possible there is a driver that doesn't support those yet still needs the image-flipping.
An alternative approach would be to query the GL Vendor strings and disable the image flip if the strings match "Microsoft Corporation" & "GDI Generic".
To do this, we'd need to query the GraphicsCaps, which could be done when the renderer is initialized.
Verified in ADS-17.0.2-1 and ADS-18.0.0-dev-43
Steps to Verified:
Scenario1: Connect Remote Desktop machine: Window's OS
1. Open ADS in windows remote machine
2. Expand any server and execute any select query
3. Launch VA
4.DnD any dimension field and measure field in column and row deck.
5. Go to worksheet menu bar option and select Export as Image option
6. Export Image window opened now Click on Next button and Save Export Image
Previous : Image not exported , and NullPointerException throws.
Actual Result: Image exported successfully. Refer updated screenshot '14258.png
Scenario2: Open ADS in windows 7 Vmware Machine
1. Open ADS in windows remote machine
2. Expand any server and execute any select query
3. Launch VA
4.DnD any dimension field and measure field in column and row deck.
5. Go to worksheet menu bar option and select Export as Image option
6. Export Image window opened now Click on Next button and Save Export Image
Previous: image has lots of extraneous dots and image has the text inverted
Actual Result: Image exported successfully. Refer updated screenshot '14258_Vmware.png
Verified in ADS-17.0.2-1 and ADS-18.0.0-dev-43
Steps to Verified:
Scenario1: Connect Remote Desktop machine: Window's OS
1. Open ADS in windows remote machine
2. Expand any server and execute any select query
3. Launch VA
4.DnD any dimension field and measure field in column and row deck.
5. Go to worksheet menu bar option and select Export as Image option
6. Export Image window opened now Click on Next button and Save Export Image
Previous : Image not exported , and NullPointerException throws.
Actual Result: Image exported successfully. Refer updated screenshot '14258.png
Scenario2: Open ADS in windows 7 Vmware Machine
1. Open ADS in windows remote machine
2. Expand any server and execute any select query
3. Launch VA
4.DnD any dimension field and measure field in column and row deck.
5. Go to worksheet menu bar option and select Export as Image option
6. Export Image window opened now Click on Next button and Save Export Image
Previous: image has lots of extraneous dots and image has the text inverted
Actual Result: Image exported successfully. Refer updated screenshot '14258_Vmware.png
Issue #14258 |
Closed |
Fixed |
Resolved |
Completion |
No due date |
Fixed Build 17.0.2-1,18-dev-43 |
No time estimate |
From Matt:
1. fix BIChartPanel.getMaxRenderBufferSize() logic to NOT return 0 (and use 4096 if 0 occurs). This was happening when using Microsoft OpenGL driver through Remote Desktop.
2. remove random dots code in VA export image
3. fix inverted image/text issue. It looks like glReadPixels() behaves differently in JOGL 2 when using the Microsoft OpenGL Driver. So, we just need to have VA's BIImageExporter.transformPixels() and ADS's ImageSerializerJOGL.transformPixels() perform the flipping based on if we are using a better driver (which supports FBO or PBuffer) or not (the Microsoft OpenGL driver).
4. fix error msg 0x500 (caused by GL_MULTISAMPLE) GLDrawableHelper.init() -> GLDrawableHelper.init() -> BIBaseChartRenderer.init() -> BIBaseChartRenderer.initGL(true) -> gl.getGL2().glEnable(GL2.GL_MULTISAMPLE) ==> after that call, glGetError() returns 0x500 (1280 decimal) To avoid this case, look at the drawable's chosen GLCapabilities & if getSampleBuffers() returns FALSE, then don't enable GL_MULTISAMPLE.
The detection logic in #3 needs further QA testing on different platforms, since there's no clearly-defined variables indicating when the image needs to be flipped or not.
With this update, we flip the image when using the Mesa software renderer and when the drawable supports FBOs or PBuffers (which are supported by modern drivers).
The Microsoft OpenGL Driver doesn't support FBOs or PBuffers, which seems to be the distinguishing factor, but it's possible there is a driver that doesn't support those yet still needs the image-flipping.
An alternative approach would be to query the GL Vendor strings and disable the image flip if the strings match "Microsoft Corporation" & "GDI Generic".
To do this, we'd need to query the GraphicsCaps, which could be done when the renderer is initialized.