Created
March 17, 2025 02:31
-
-
Save DragaDoncila/0b68891f7b4eaed98c81b9f94107a6f4 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
WARNING: Error drawing visual <Volume at 0x7f412d5f5fd0> | |
13:07:30 : WARNING : MainThread : Error drawing visual <Volume at 0x7f412d5f5fd0> | |
--------------------------------------------------------------------------- | |
RuntimeError Traceback (most recent call last) | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/app/backends/_qt.py:928, in CanvasBackendDesktop.paintGL(self=<vispy.app.backends._qt.CanvasBackendDesktop object>) | |
926 # (0, 0, self.width(), self.height())) | |
927 self._vispy_canvas.set_current() | |
--> 928 self._vispy_canvas.events.draw(region=None) | |
self._vispy_canvas = <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30> | |
self._vispy_canvas.events.draw = <vispy.util.event.EventEmitter object at 0x7f412d5e4140> | |
self = <vispy.app.backends._qt.CanvasBackendDesktop object at 0x7f412d6d3920> | |
self._vispy_canvas.events = <vispy.util.event.EmitterGroup object at 0x7f412d6b8e00> 930 # Clear the alpha channel with QOpenGLWidget (Qt >= 5.4), otherwise the | |
931 # window is translucent behind non-opaque objects. | |
932 # Reference: MRtrix3/mrtrix3#266 | |
933 if QT5_NEW_API or PYSIDE6_API or PYQT6_API: | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/util/event.py:453, in EventEmitter.__call__(self=<vispy.util.event.EventEmitter object>, *args=(), **kwargs={'region': None}) | |
450 if self._emitting > 1: | |
451 raise RuntimeError('EventEmitter loop detected!') | |
--> 453 self._invoke_callback(cb, event) | |
event = <DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw> | |
self = <vispy.util.event.EventEmitter object at 0x7f412d5e4140> | |
cb = <bound method SceneCanvas.on_draw of <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30>> 454 if event.blocked: | |
455 break | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/util/event.py:471, in EventEmitter._invoke_callback(self=<vispy.util.event.EventEmitter object>, cb=<bound method SceneCanvas.on_draw of <NapariSceneCanvas (PyQt5)>>, event=<DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw>) | |
469 cb(event) | |
470 except Exception: | |
--> 471 _handle_exception(self.ignore_callback_errors, | |
self = <vispy.util.event.EventEmitter object at 0x7f412d5e4140> | |
cb = <bound method SceneCanvas.on_draw of <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30>> | |
event = <DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw> | |
(cb, event) = (<bound method SceneCanvas.on_draw of <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30>>, <DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw>) 472 self.print_callback_errors, | |
473 self, cb_event=(cb, event)) | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/util/event.py:469, in EventEmitter._invoke_callback(self=<vispy.util.event.EventEmitter object>, cb=<bound method SceneCanvas.on_draw of <NapariSceneCanvas (PyQt5)>>, event=<DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw>) | |
467 def _invoke_callback(self, cb, event): | |
468 try: | |
--> 469 cb(event) | |
cb = <bound method SceneCanvas.on_draw of <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30>> | |
event = <DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw> 470 except Exception: | |
471 _handle_exception(self.ignore_callback_errors, | |
472 self.print_callback_errors, | |
473 self, cb_event=(cb, event)) | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/scene/canvas.py:219, in SceneCanvas.on_draw(self=<NapariSceneCanvas (PyQt5)>, event=<DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw>) | |
216 # Now that a draw event is going to be handled, open up the | |
217 # scheduling of further updates | |
218 self._update_pending = False | |
--> 219 self._draw_scene() | |
self = <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/scene/canvas.py:278, in SceneCanvas._draw_scene(self=<NapariSceneCanvas (PyQt5)>, bgcolor=array([0., 0., 0., 1.], dtype=float32)) | |
276 bgcolor = self._bgcolor | |
277 self.context.clear(color=bgcolor, depth=True) | |
--> 278 self.draw_visual(self.scene) | |
self = <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/scene/canvas.py:316, in SceneCanvas.draw_visual(self=<NapariSceneCanvas (PyQt5)>, visual=<SubScene>, event=None) | |
314 else: | |
315 if hasattr(node, 'draw'): | |
--> 316 node.draw() | |
node = <Volume at 0x7f412d5f5fd0> 317 prof.mark(str(node)) | |
318 else: | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/scene/visuals.py:106, in VisualNode.draw(self=<Volume>) | |
104 if self.picking and not self.interactive: | |
105 return | |
--> 106 self._visual_superclass.draw(self) | |
self = <Volume at 0x7f412d5f5fd0> | |
self._visual_superclass = <class 'vispy.visuals.volume.VolumeVisual'> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/visuals/visual.py:514, in Visual.draw(self=<Volume>) | |
512 self._configure_gl_state() | |
513 try: | |
--> 514 self._program.draw(self._vshare.draw_mode, | |
self._vshare.draw_mode = 'triangle_strip' | |
self = <Volume at 0x7f412d5f5fd0> | |
self._vshare = <vispy.visuals.visual.VisualShare object at 0x7f40a4b91580> | |
self._program = <vispy.visuals.shaders.program.ModularProgram object at 0x7f40a4bb90a0> | |
self._vshare.index_buffer = <IndexBuffer size=14 last_dim=1> 515 self._vshare.index_buffer) | |
516 except Exception: | |
517 logger.warning("Error drawing visual %r" % self) | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/visuals/shaders/program.py:102, in ModularProgram.draw(self=<vispy.visuals.shaders.program.ModularProgram object>, *args=('triangle_strip', <IndexBuffer size=14 last_dim=1>), **kwargs={}) | |
100 self.build_if_needed() | |
101 self.update_variables() | |
--> 102 Program.draw(self, *args, **kwargs) | |
self = <vispy.visuals.shaders.program.ModularProgram object at 0x7f40a4bb90a0> | |
args = ('triangle_strip', <IndexBuffer size=14 last_dim=1>) | |
kwargs = {} | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/program.py:543, in Program.draw(self=<vispy.visuals.shaders.program.ModularProgram object>, mode='triangle_strip', indices=<IndexBuffer size=14 last_dim=1>, check_error=True) | |
539 raise TypeError("Invalid index: %r (must be IndexBuffer)" % | |
540 indices) | |
542 # Process GLIR commands | |
--> 543 canvas.context.flush_commands() | |
canvas = <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/context.py:172, in GLContext.flush_commands(self=<GLContext>, event=None) | |
170 fbo = 0 | |
171 self.shared.parser.parse([('CURRENT', 0, fbo)]) | |
--> 172 self.glir.flush(self.shared.parser) | |
self = <GLContext at 0x7f412d5e46e0> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/glir.py:584, in GlirQueue.flush(self=<vispy.gloo.glir.GlirQueue object>, parser=<vispy.gloo.glir.GlirParser object>) | |
582 def flush(self, parser): | |
583 """Flush all current commands to the GLIR interpreter.""" | |
--> 584 self._shared.flush(parser) | |
parser = <vispy.gloo.glir.GlirParser object at 0x7f412d5e4680> | |
self._shared = <vispy.gloo.glir._GlirQueueShare object at 0x7f412d5e4770> | |
self = <vispy.gloo.glir.GlirQueue object at 0x7f412d5e45c0> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/glir.py:506, in _GlirQueueShare.flush(self=<vispy.gloo.glir._GlirQueueShare object>, parser=<vispy.gloo.glir.GlirParser object>) | |
504 show = self._verbose if isinstance(self._verbose, str) else None | |
505 self.show(show) | |
--> 506 parser.parse(self._filter(self.clear(), parser)) | |
self = <vispy.gloo.glir._GlirQueueShare object at 0x7f412d5e4770> | |
parser = <vispy.gloo.glir.GlirParser object at 0x7f412d5e4680> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/glir.py:824, in GlirParser.parse(self=<vispy.gloo.glir.GlirParser object>, commands=[('FUNC', 'glViewport', 0, 0, 778, 580), ('FUNC', 'glClearColor', np.float32(0.0), np.float32(0.0), np.float32(0.0), np.float32(1.0)), ('FUNC', 'glClear', 17664), ('FUNC', 'glDisable', 'cull_face'), ('FUNC', 'glDisable', 'depth_test'), ('FUNC', 'glEnable', 'blend'), ('FUNC', 'glBlendFuncSeparate', 'src_alpha', 'one_minus_src_alpha', 'one', 'one'), ('FUNC', 'glBlendEquationSeparate', 'func_add', 'func_add'), ('CREATE', 53, 'Program'), ('CREATE', 119, 'VertexShader'), ('DATA', 119, 0, 'uniform mat4 u_matrix;\n\nvec4 affine_transform_ma...ransform_map_chain_11(vec4(v_position, 1.0));\n}\n\n'), ('ATTACH', 53, 119), ('CREATE', 120, 'FragmentShader'), ('DATA', 120, 0, 'uniform mat4 u_matrix;\n\nvec4 affine_transform_ma...)/2.0;\n\n apply_alpha();\npicking_filter();\n\n}\n\n'), ('ATTACH', 53, 120), ('LINK', 53), ('DELETE', 119), ('DELETE', 120), ('UNIFORM', 53, 'u_alpha', 'float', array([1.], dtype=float32)), ('UNIFORM', 53, 'u_enabled', 'int', array([0], dtype=int32)), ...]) | |
821 self._objects.pop(id_) | |
823 for command in commands: | |
--> 824 self._parse(command) | |
command = ('DRAW', 53, 'triangle_strip', (54, 'UNSIGNED_INT', 14), 1) | |
self = <vispy.gloo.glir.GlirParser object at 0x7f412d5e4680> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/glir.py:786, in GlirParser._parse(self=<vispy.gloo.glir.GlirParser object>, command=('DRAW', 53, 'triangle_strip', (54, 'UNSIGNED_INT', 14), 1)) | |
783 # Triage over command. Order of commands is set so most | |
784 # common ones occur first. | |
785 if cmd == 'DRAW': # Program | |
--> 786 ob.draw(*args) | |
args = ('triangle_strip', (54, 'UNSIGNED_INT', 14), 1) | |
ob = <GlirProgram 53 at 0x7f40a4bb9130> 787 elif cmd == 'TEXTURE': # Program | |
788 ob.set_texture(*args) | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/glir.py:1333, in GlirProgram.draw(self=<GlirProgram 53>, mode='triangle_strip', selection=(54, 'UNSIGNED_INT', 14), instances=1) | |
1331 raise RuntimeError('Cannot draw program if code has not been set') | |
1332 # Init | |
-> 1333 gl.check_error('Check before draw') | |
gl = <module 'vispy.gloo.gl' from '/home/ddon0001/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/gl/__init__.py'> 1334 try: | |
1335 mode = as_enum(mode) | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/gl/__init__.py:204, in check_error(when='Check before draw') | |
202 err.errors = errors | |
203 err.err = errors[-1] # pyopengl compat | |
--> 204 raise err | |
err = RuntimeError('OpenGL got errors (Check before draw): GL_INVALID_ENUM') | |
RuntimeError: OpenGL got errors (Check before draw): GL_INVALID_ENUM | |
WARNING: Error drawing visual <Volume at 0x7f40a4cc33e0> | |
13:07:30 : WARNING : MainThread : Error drawing visual <Volume at 0x7f40a4cc33e0> | |
--------------------------------------------------------------------------- | |
RuntimeError Traceback (most recent call last) | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/app/backends/_qt.py:928, in CanvasBackendDesktop.paintGL(self=<vispy.app.backends._qt.CanvasBackendDesktop object>) | |
926 # (0, 0, self.width(), self.height())) | |
927 self._vispy_canvas.set_current() | |
--> 928 self._vispy_canvas.events.draw(region=None) | |
self._vispy_canvas = <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30> | |
self._vispy_canvas.events.draw = <vispy.util.event.EventEmitter object at 0x7f412d5e4140> | |
self = <vispy.app.backends._qt.CanvasBackendDesktop object at 0x7f412d6d3920> | |
self._vispy_canvas.events = <vispy.util.event.EmitterGroup object at 0x7f412d6b8e00> 930 # Clear the alpha channel with QOpenGLWidget (Qt >= 5.4), otherwise the | |
931 # window is translucent behind non-opaque objects. | |
932 # Reference: MRtrix3/mrtrix3#266 | |
933 if QT5_NEW_API or PYSIDE6_API or PYQT6_API: | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/util/event.py:453, in EventEmitter.__call__(self=<vispy.util.event.EventEmitter object>, *args=(), **kwargs={'region': None}) | |
450 if self._emitting > 1: | |
451 raise RuntimeError('EventEmitter loop detected!') | |
--> 453 self._invoke_callback(cb, event) | |
event = <DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw> | |
self = <vispy.util.event.EventEmitter object at 0x7f412d5e4140> | |
cb = <bound method SceneCanvas.on_draw of <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30>> 454 if event.blocked: | |
455 break | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/util/event.py:471, in EventEmitter._invoke_callback(self=<vispy.util.event.EventEmitter object>, cb=<bound method SceneCanvas.on_draw of <NapariSceneCanvas (PyQt5)>>, event=<DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw>) | |
469 cb(event) | |
470 except Exception: | |
--> 471 _handle_exception(self.ignore_callback_errors, | |
self = <vispy.util.event.EventEmitter object at 0x7f412d5e4140> | |
cb = <bound method SceneCanvas.on_draw of <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30>> | |
event = <DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw> | |
(cb, event) = (<bound method SceneCanvas.on_draw of <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30>>, <DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw>) 472 self.print_callback_errors, | |
473 self, cb_event=(cb, event)) | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/util/event.py:469, in EventEmitter._invoke_callback(self=<vispy.util.event.EventEmitter object>, cb=<bound method SceneCanvas.on_draw of <NapariSceneCanvas (PyQt5)>>, event=<DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw>) | |
467 def _invoke_callback(self, cb, event): | |
468 try: | |
--> 469 cb(event) | |
cb = <bound method SceneCanvas.on_draw of <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30>> | |
event = <DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw> 470 except Exception: | |
471 _handle_exception(self.ignore_callback_errors, | |
472 self.print_callback_errors, | |
473 self, cb_event=(cb, event)) | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/scene/canvas.py:219, in SceneCanvas.on_draw(self=<NapariSceneCanvas (PyQt5)>, event=<DrawEvent blocked=False handled=False native=None region=None source=None sources=[] type=draw>) | |
216 # Now that a draw event is going to be handled, open up the | |
217 # scheduling of further updates | |
218 self._update_pending = False | |
--> 219 self._draw_scene() | |
self = <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/scene/canvas.py:278, in SceneCanvas._draw_scene(self=<NapariSceneCanvas (PyQt5)>, bgcolor=array([0., 0., 0., 1.], dtype=float32)) | |
276 bgcolor = self._bgcolor | |
277 self.context.clear(color=bgcolor, depth=True) | |
--> 278 self.draw_visual(self.scene) | |
self = <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/scene/canvas.py:316, in SceneCanvas.draw_visual(self=<NapariSceneCanvas (PyQt5)>, visual=<SubScene>, event=None) | |
314 else: | |
315 if hasattr(node, 'draw'): | |
--> 316 node.draw() | |
node = <Volume at 0x7f40a4cc33e0> 317 prof.mark(str(node)) | |
318 else: | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/scene/visuals.py:106, in VisualNode.draw(self=<Volume>) | |
104 if self.picking and not self.interactive: | |
105 return | |
--> 106 self._visual_superclass.draw(self) | |
self = <Volume at 0x7f40a4cc33e0> | |
self._visual_superclass = <class 'vispy.visuals.volume.VolumeVisual'> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/visuals/visual.py:514, in Visual.draw(self=<Volume>) | |
512 self._configure_gl_state() | |
513 try: | |
--> 514 self._program.draw(self._vshare.draw_mode, | |
self._vshare.draw_mode = 'triangle_strip' | |
self = <Volume at 0x7f40a4cc33e0> | |
self._vshare = <vispy.visuals.visual.VisualShare object at 0x7f40a4b7c800> | |
self._program = <vispy.visuals.shaders.program.ModularProgram object at 0x7f409da30f50> | |
self._vshare.index_buffer = <IndexBuffer size=14 last_dim=1> 515 self._vshare.index_buffer) | |
516 except Exception: | |
517 logger.warning("Error drawing visual %r" % self) | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/visuals/shaders/program.py:102, in ModularProgram.draw(self=<vispy.visuals.shaders.program.ModularProgram object>, *args=('triangle_strip', <IndexBuffer size=14 last_dim=1>), **kwargs={}) | |
100 self.build_if_needed() | |
101 self.update_variables() | |
--> 102 Program.draw(self, *args, **kwargs) | |
self = <vispy.visuals.shaders.program.ModularProgram object at 0x7f409da30f50> | |
args = ('triangle_strip', <IndexBuffer size=14 last_dim=1>) | |
kwargs = {} | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/program.py:543, in Program.draw(self=<vispy.visuals.shaders.program.ModularProgram object>, mode='triangle_strip', indices=<IndexBuffer size=14 last_dim=1>, check_error=True) | |
539 raise TypeError("Invalid index: %r (must be IndexBuffer)" % | |
540 indices) | |
542 # Process GLIR commands | |
--> 543 canvas.context.flush_commands() | |
canvas = <NapariSceneCanvas (PyQt5) at 0x7f412dc18e30> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/context.py:172, in GLContext.flush_commands(self=<GLContext>, event=None) | |
170 fbo = 0 | |
171 self.shared.parser.parse([('CURRENT', 0, fbo)]) | |
--> 172 self.glir.flush(self.shared.parser) | |
self = <GLContext at 0x7f412d5e46e0> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/glir.py:584, in GlirQueue.flush(self=<vispy.gloo.glir.GlirQueue object>, parser=<vispy.gloo.glir.GlirParser object>) | |
582 def flush(self, parser): | |
583 """Flush all current commands to the GLIR interpreter.""" | |
--> 584 self._shared.flush(parser) | |
parser = <vispy.gloo.glir.GlirParser object at 0x7f412d5e4680> | |
self._shared = <vispy.gloo.glir._GlirQueueShare object at 0x7f412d5e4770> | |
self = <vispy.gloo.glir.GlirQueue object at 0x7f412d5e45c0> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/glir.py:506, in _GlirQueueShare.flush(self=<vispy.gloo.glir._GlirQueueShare object>, parser=<vispy.gloo.glir.GlirParser object>) | |
504 show = self._verbose if isinstance(self._verbose, str) else None | |
505 self.show(show) | |
--> 506 parser.parse(self._filter(self.clear(), parser)) | |
self = <vispy.gloo.glir._GlirQueueShare object at 0x7f412d5e4770> | |
parser = <vispy.gloo.glir.GlirParser object at 0x7f412d5e4680> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/glir.py:824, in GlirParser.parse(self=<vispy.gloo.glir.GlirParser object>, commands=[('FUNC', 'glDisable', 'cull_face'), ('FUNC', 'glDisable', 'depth_test'), ('FUNC', 'glEnable', 'blend'), ('FUNC', 'glBlendFuncSeparate', 'src_alpha', 'dst_alpha', 'one', 'one'), ('FUNC', 'glBlendEquationSeparate', 'func_add', 'func_add'), ('CREATE', 90, 'Program'), ('CREATE', 121, 'VertexShader'), ('DATA', 121, 0, 'uniform mat4 u_matrix;\n\nvec4 affine_transform_ma...ransform_map_chain_11(vec4(v_position, 1.0));\n}\n\n'), ('ATTACH', 90, 121), ('CREATE', 122, 'FragmentShader'), ('DATA', 122, 0, 'uniform mat4 u_matrix;\n\nvec4 affine_transform_ma...)/2.0;\n\n apply_alpha();\npicking_filter();\n\n}\n\n'), ('ATTACH', 90, 122), ('LINK', 90), ('DELETE', 121), ('DELETE', 122), ('UNIFORM', 90, 'u_alpha', 'float', array([1.], dtype=float32)), ('UNIFORM', 90, 'u_enabled', 'int', array([0], dtype=int32)), ('UNIFORM', 90, 'u_id_color', 'vec4', array([0.10588, 0. , 0. , 0. ], dtype=float32)), ('UNIFORM', 90, 'u_inv_matrix', 'mat4', array([ 1. , 0. , ..., 29.5, 1. ], dtype=float32)), ('UNIFORM', 90, 'u_inv_matrix_1', 'mat4', array([180.73322, 0. , ..., 0. , 1. ], dtype=float32)), ...]) | |
821 self._objects.pop(id_) | |
823 for command in commands: | |
--> 824 self._parse(command) | |
command = ('DRAW', 90, 'triangle_strip', (91, 'UNSIGNED_INT', 14), 1) | |
self = <vispy.gloo.glir.GlirParser object at 0x7f412d5e4680> | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/glir.py:786, in GlirParser._parse(self=<vispy.gloo.glir.GlirParser object>, command=('DRAW', 90, 'triangle_strip', (91, 'UNSIGNED_INT', 14), 1)) | |
783 # Triage over command. Order of commands is set so most | |
784 # common ones occur first. | |
785 if cmd == 'DRAW': # Program | |
--> 786 ob.draw(*args) | |
args = ('triangle_strip', (91, 'UNSIGNED_INT', 14), 1) | |
ob = <GlirProgram 90 at 0x7f409da85fd0> 787 elif cmd == 'TEXTURE': # Program | |
788 ob.set_texture(*args) | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/glir.py:1333, in GlirProgram.draw(self=<GlirProgram 90>, mode='triangle_strip', selection=(91, 'UNSIGNED_INT', 14), instances=1) | |
1331 raise RuntimeError('Cannot draw program if code has not been set') | |
1332 # Init | |
-> 1333 gl.check_error('Check before draw') | |
gl = <module 'vispy.gloo.gl' from '/home/ddon0001/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/gl/__init__.py'> 1334 try: | |
1335 mode = as_enum(mode) | |
File ~/miniconda3/envs/opengl/lib/python3.12/site-packages/vispy/gloo/gl/__init__.py:204, in check_error(when='Check before draw') | |
202 err.errors = errors | |
203 err.err = errors[-1] # pyopengl compat | |
--> 204 raise err | |
err = RuntimeError('OpenGL got errors (Check before draw): GL_INVALID_ENUM') | |
RuntimeError: OpenGL got errors (Check before draw): GL_INVALID_ENUM |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment