Opened 5 years ago
Closed 5 years ago
#3379 closed defect (fixed)
Volume tilted slab to plane: glClear invalid framebuffer operation
Reported by: | Owned by: | Tom Goddard | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Volume Data | Version: | |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: Darwin-19.5.0-x86_64-i386-64bit ChimeraX Version: 1.1.dev202006082325 (2020-06-08 23:25:53 UTC) Description Switched from tilted slab to single plane using volume viewer menu on multichannel light microscopy from Allen Insititute. Log: UCSF ChimeraX version: 1.1.dev202006082325 (2020-06-08) © 2016-2020 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > open /Users/goddard/ucsf/data/allen_cell/AICS-12/AICS-12_269.ome.tif Opened multi-channel map AICS-12_269.ome.tif, 8 channels, grid size 924,624,47, pixel 0.108,0.108,0.29, shown at step 2, values uint16 > volume #1 showOutlineBox true imageMode "tilted slab" tiltedSlabOffset 6.453 > tiltedSlabSpacing 0.1083 tiltedSlabPlaneCount 4 > volume #1.1 tiltedSlabAxis -0.08897,0.02955,0.9956 tiltedSlabOffset 1.524 > volume #1.1 tiltedSlabAxis 0.01323,-0.07022,0.9974 tiltedSlabOffset 4.38 > volume #1.1 tiltedSlabAxis 0.01323,-0.07022,0.9974 tiltedSlabOffset 2.839 > set bgColor white > ui mousemode right "crop volume" > volume #1.1 tiltedSlabOffset 2.839 tiltedSlabPlaneCount 11 > volume #1.1 tiltedSlabOffset 2.839 tiltedSlabPlaneCount 16 > set bgColor black > volume #1.1 tiltedSlabOffset 2.839 tiltedSlabPlaneCount 9 > volume #1 region 0,0,0,923,623,46 step 1 colorMode opaque8 orthoplanes xyz > positionPlanes 461,311,23 imageMode orthoplanes > set bgColor white > volume #1.1 level 1057,0 level 4929,0.8 level 1.96e+04,1 > volume #1.1 level 1057,0 level 3245,0.7706 level 1.96e+04,1 > volume #1.2 level 790.3,0 level 2311,0.8 level 8275,1 > volume #1.2 level 790.3,0 level 1949,0.8441 level 8275,1 > volume #1.3 level 403,0 level 485,0.8 level 2069,1 > volume #1.3 level 403,0 level 453.6,0.8147 level 2069,1 > volume #1.1 orthoplanes xyz positionPlanes 461,441,23 > volume #1.1 orthoplanes xyz positionPlanes 685,441,23 > volume #1.1 orthoplanes xyz positionPlanes 685,387,23 > select clear > volume #1 region 0,0,0,923,623,46 step 2 colorMode auto8 imageMode "tilted > slab" tiltedSlabAxis 0.5152,-0.7002,-0.4943 tiltedSlabOffset -1.377 > tiltedSlabPlaneCount 4 > set bgColor black > volume #1.1 tiltedSlabAxis 0.04408,0.009686,-0.999 tiltedSlabOffset 2.406 > volume #1.1 tiltedSlabAxis 0.04408,0.009686,-0.999 tiltedSlabOffset -1.391 > volume #1.1 tiltedSlabAxis 0.09182,0.05938,-0.994 tiltedSlabOffset 2.547 > volume #1.1 tiltedSlabAxis 0.09182,0.05938,-0.994 tiltedSlabOffset 0.5921 > volume #1.1 tiltedSlabAxis 0.09182,0.05938,-0.994 tiltedSlabOffset 0.01317 > volume #1.1 tiltedSlabAxis 0.0287,-0.04669,-0.9985 tiltedSlabOffset -5.7 > set bgColor white > volume #1 outlineBoxRgb black > volume #1 backingColor black > ui mousemode right "crop volume" > volume #1.1 tiltedSlabOffset -7.108 tiltedSlabPlaneCount 17 > ui mousemode right "move planes" > volume #1.1 tiltedSlabOffset -4.183 tiltedSlabPlaneCount 17 > volume #1.1 tiltedSlabOffset -4.616 tiltedSlabPlaneCount 17 > ui mousemode right "rotate slab" > volume #1.1 tiltedSlabAxis 0.03927,-0.02371,-0.9989 tiltedSlabOffset -3.324 > ui mousemode right "move planes" > volume #1.1 tiltedSlabOffset -4.299 tiltedSlabPlaneCount 17 > volume #1.1 tiltedSlabOffset -4.624 tiltedSlabPlaneCount 17 > ui mousemode right "rotate slab" > volume #1.1 tiltedSlabAxis -0.007982,0.005278,-1 tiltedSlabOffset -5.965 > volume #1 step 1 > volume #1.1 level 1057,0 level 3174,0.8441 level 1.96e+04,1 > volume #1.3 level 403,0 level 469.8,0.7941 level 2069,1 > ui mousemode right "crop volume" > volume #1.1 tiltedSlabOffset -3.473 tiltedSlabPlaneCount 14 > ui mousemode right "move planes" > volume #1.1 tiltedSlabOffset -5.098 tiltedSlabPlaneCount 14 An error occurred in drawing the scene. Redrawing graphics is now stopped to avoid a continuous stream of error messages. To restart graphics use the command "graphics restart" after changing the settings that caused the error. Traceback (most recent call last): File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/core/updateloop.py", line 73, in draw_new_frame view.draw(check_for_changes = False) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/graphics/view.py", line 166, in draw self._draw_scene(camera, drawings) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/graphics/view.py", line 240, in _draw_scene draw_transparent(r, transparent_drawings) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/graphics/drawing.py", line 1434, in draw_transparent lambda: _draw_multiple(drawings, r, Drawing.TRANSPARENT_DRAW_PASS)) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/graphics/opengl.py", line 1170, in draw_transparent draw() File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/graphics/drawing.py", line 1434, in <lambda> lambda: _draw_multiple(drawings, r, Drawing.TRANSPARENT_DRAW_PASS)) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/graphics/drawing.py", line 1440, in _draw_multiple d.draw(renderer, draw_pass) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/map/image3d.py", line 750, in draw bi.draw(renderer, draw_pass) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/map/image3d.py", line 1342, in draw Image3d.draw(self, renderer, draw_pass) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/map/image3d.py", line 760, in draw pd = self._update_planes(renderer) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/map/image3d.py", line 525, in _update_planes pd = self._update_3d_texture_planes(view_dir) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/map/image3d.py", line 577, in _update_3d_texture_planes pd = self._texture_3d_planes() File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/map/image3d.py", line 587, in _texture_3d_planes pd = Texture3dPlanes(self) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/map/image3d.py", line 1122, in __init__ self._fill_textures() File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/map/image3d.py", line 1215, in _fill_textures self._fill_texture_blend(t) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/map/image3d.py", line 1265, in _fill_texture_blend b.blend3d(vap.texture, modulation_color, self.texture) File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/graphics/opengl.py", line 1868, in blend3d r.draw_background() File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/graphics/opengl.py", line 1096, in draw_background GL.glClear(flags) File "src/errorchecker.pyx", line 58, in OpenGL_accelerate.errorchecker._ErrorChecker.glCheckError OpenGL.error.GLError: GLError( err = 1286, description = b'invalid framebuffer operation', baseOperation = glClear, cArguments = (16640,) ) Exception ignored in: <function Drawing.__del__ at 0x1119205f0> Traceback (most recent call last): File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/graphics/drawing.py", line 1113, in __del__ self.delete() File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/graphics/drawing.py", line 1133, in delete raise RuntimeError("Don't have opengl context needed to delete texture from drawing '%s' because drawing was never drawn" % self.name) RuntimeError: Don't have opengl context needed to delete texture from drawing 'Image3D 3d texture planes' because drawing was never drawn Exception ignored in: <function Texture.__del__ at 0x111ef97a0> Traceback (most recent call last): File "/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/graphics/opengl.py", line 2880, in __del__ raise OpenGLError('OpenGL texture was not deleted before graphics.Texture destroyed') chimerax.graphics.opengl.OpenGLError: OpenGL texture was not deleted before graphics.Texture destroyed > volume #1 region 0,0,23,923,623,23 step 1 imageMode "full region" OpenGL version: 4.1 ATI-3.9.15 OpenGL renderer: AMD Radeon Pro Vega 20 OpenGL Engine OpenGL vendor: ATI Technologies Inc.Hardware: Hardware Overview: Model Name: MacBook Pro Model Identifier: MacBookPro15,3 Processor Name: 8-Core Intel Core i9 Processor Speed: 2.4 GHz Number of Processors: 1 Total Number of Cores: 8 L2 Cache (per Core): 256 KB L3 Cache: 16 MB Hyper-Threading Technology: Enabled Memory: 32 GB Boot ROM Version: 1037.120.87.0.0 (iBridge: 17.16.15300.0.0,0) Software: System Software Overview: System Version: macOS 10.15.5 (19F101) Kernel Version: Darwin 19.5.0 Time since boot: 2:48 Graphics/Displays: Intel UHD Graphics 630: Chipset Model: Intel UHD Graphics 630 Type: GPU Bus: Built-In VRAM (Dynamic, Max): 1536 MB Vendor: Intel Device ID: 0x3e9b Revision ID: 0x0002 Automatic Graphics Switching: Supported gMux Version: 5.0.0 Metal: Supported, feature set macOS GPUFamily2 v1 Radeon Pro Vega 20: Chipset Model: Radeon Pro Vega 20 Type: GPU Bus: PCIe PCIe Lane Width: x8 VRAM (Total): 4 GB Vendor: AMD (0x1002) Device ID: 0x69af Revision ID: 0x00c0 ROM Revision: 113-D2060I-087 VBIOS Version: 113-D20601MA0T-016 Option ROM Version: 113-D20601MA0T-016 EFI Driver Version: 01.01.087 Automatic Graphics Switching: Supported gMux Version: 5.0.0 Metal: Supported, feature set macOS GPUFamily2 v1 Displays: Color LCD: Display Type: Built-In Retina LCD Resolution: 2880 x 1800 Retina Framebuffer Depth: 24-Bit Color (ARGB8888) Main Display: Yes Mirror: Off Online: Yes Automatically Adjust Brightness: No Connection Type: Internal PyQt version: 5.12.3 Compiled Qt version: 5.12.4 Runtime Qt version: 5.12.8
Change History (3)
comment:1 by , 5 years ago
Component: | Unassigned → Volume Data |
---|---|
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → Volume tilted slab to plane: glClear invalid framebuffer operation |
comment:2 by , 5 years ago
comment:3 by , 5 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Fixed.
Problem was that 3D texture for single-plane region in tilted plane mode had wrong dimension. Another problem was the volume viewer was redrawing after just one of the 3 map channels was switched to plane. Fixed both problems.
Note:
See TracTickets
for help on using tickets.
There are a few bugs here. First volume viewer is setting plane mode for just one channel then forcing an immediate redraw because the plane mode sets the slider value and the slider value change causes an immediate redraw. The other channels also have their region set to a single plane, but the remain in tilted slab mode, and tilted slab texture fill fails for single plane regions.
Should probably fix tilted plane so it does not fail for single plane regions, just show nothing.
Then fix volume viewer so it does not force a redraw when just the first channel has been switched to plane mode, all channels should change to plane mode before the redraw.