McManning / McManning/Scratchpad
Blender 2.91 - GL Context Crashes
Open
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 37
- Forks
- 4
- PR merge metrics
- No merged PRs in 30d
Description
Got the following exception - sourced from Mesh.draw() glDrawElements after either copying a mesh or adding a new mesh to the scene while the render engine is active.
# Blender 2.91.0, Commit date: 2020-11-25 08:34, Hash 0f45cab862b8
bpy.context.space_data.context = 'RENDER' # Property
bpy.context.scene.render.engine = 'foo_renderer' # Property
bpy.context.space_data.shading.type = 'MATERIAL' # Property
bpy.ops.transform.translate(value=(-1.0005, -0.840433, 1.15594), orient_type='GLOBAL', orient_matrix=((1, 0, 0), (0, 1, 0), (0, 0, 1)), orient_matrix_type='GLOBAL', mirror=True, use_proportional_edit=False, proportional_edit_falloff='SMOOTH', proportional_size=1, use_proportional_connected=False, use_proportional_projected=False) # Operator
Copied 1 selected object(s) # Info
bpy.ops.view3d.pastebuffer() # Operator
1 object(s) pasted # Info
# backtrace
Exception Record:
ExceptionCode : EXCEPTION_ACCESS_VIOLATION
Exception Address : 0x00007FFA5607D0E0
Exception Module : nvoglv64.dll
Exception Flags : 0x00000000
Exception Parameters : 0x2
Parameters[0] : 0x0000000000000000
Parameters[1] : 0x0000000000000000
Stack trace:
nvoglv64.dll :0x00007FFA5607D0E0 Symbols not available
Loaded Modules :
0x00007FF75BA20000 2.9.1.0 blender.exe c:\Program Files\Blender Foundation\Blender 2.91\blender.pdb
0x00007FFAB7660000 10.0.18362.1171 ntdll.dll
... etc ...
# Python backtrace
File "C:\Users\cmcma\AppData\Roaming\Blender Foundation\Blender\2.91\scripts\addons\micro.py", line 428 in draw
File "C:\Users\cmcma\AppData\Roaming\Blender Foundation\Blender\2.91\scripts\addons\micro.py", line 594 in view_draw
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the reported copy-or-add-mesh sequence in Blender 2.91 with the render engine active, then inspect the draw path at addons/micro.py lines 428 and 594. Use the reported Mesh.draw()/glDrawElements crash and access violation as the failure to investigate; done means the sequence no longer crashes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- blender, python
- Domain
- computer-graphics
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100