Malt
Malt copied to clipboard
glGetError crash when selecting Malt as Render Engine
Malt version
blender-3.3-last-version
Blender version
3.3.1
OS
NixOS Unstable 64-bit
Hardware info
AMD Ryzen 9 5900X 12-Core | 64 GB RAM | AMD Radeon RX 6800 XT
Issue description and reproduction steps
I was able to install Malt successfully, but when I try to select Malt in the Render Engine dropdown I get this crash:
SETUP IOCapture
Process SpawnProcess-2:
Traceback (most recent call last):
File "/nix/store/iw1vmh509hcbby8dbpsaanbri4zsq7dj-python3-3.10.10/lib/python3.10/multiprocessing/process.py", line 314, in _bootstrap
self.run()
File "/nix/store/iw1vmh509hcbby8dbpsaanbri4zsq7dj-python3-3.10.10/lib/python3.10/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/home/pauan/.config/blender/3.3/scripts/addons/BlenderMalt/.MaltPath/Bridge/__init__.py", line 21, in start_server
from . import Server
File "/home/pauan/.config/blender/3.3/scripts/addons/BlenderMalt/.MaltPath/Bridge/Server.py", line 8, in <module>
from Malt.GL import GL
File "/home/pauan/.config/blender/3.3/scripts/addons/BlenderMalt/.MaltPath/Malt/GL/GL.py", line 7, in <module>
from OpenGL.GL import *
File "/home/pauan/.config/blender/3.3/scripts/addons/BlenderMalt/.MaltPath/Malt/.Dependencies-310/OpenGL/GL/__init__.py", line 4, in <module>
from OpenGL.GL.VERSION.GL_1_1 import *
File "/home/pauan/.config/blender/3.3/scripts/addons/BlenderMalt/.MaltPath/Malt/.Dependencies-310/OpenGL/GL/VERSION/GL_1_1.py", line 14, in <module>
from OpenGL.raw.GL.VERSION.GL_1_1 import *
File "/home/pauan/.config/blender/3.3/scripts/addons/BlenderMalt/.MaltPath/Malt/.Dependencies-310/OpenGL/raw/GL/VERSION/GL_1_1.py", line 7, in <module>
from OpenGL.raw.GL import _errors
File "/home/pauan/.config/blender/3.3/scripts/addons/BlenderMalt/.MaltPath/Malt/.Dependencies-310/OpenGL/raw/GL/_errors.py", line 4, in <module>
_error_checker = _ErrorChecker( _p, _p.GL.glGetError )
AttributeError: 'NoneType' object has no attribute 'glGetError'
Am I missing an OpenGL dependency or something? Other OpenGL programs work fine on my system.
Attachments
I can't provide a session log because Blender hard crashes, and there is no log file in /tmp
I tested with Blender 3.4.1 and:
- Malt 1.0.0.beta.3.Release
- Malt Development-latest
- Malt experimental-workaround-amd-bindless-bug-latest
They all give the same error.
The PyOpenGL library is included with the addon download, but it's failing to load. I have no idea what could be going on and I certainly can't reproduce it myself.
If you haven't, I'd try using the official Blender version (https://www.blender.org/download/).
It is the official Blender version, it's downloaded from https://download.blender.org/source/blender-3.4.1.tar.xz
. I can run dozens of other addons fine, I can use LuxCore fine, and regular rendering with Cycles / Eevee also works fine.
I assume it's doing some sort of dynamic loading, but which folder is it loading from, and how is it loading the OpenGL library?
I assume it's doing some sort of dynamic loading, but which folder is it loading from, and how is it loading the OpenGL library?
The OpenGL loading is handled by PyOpenGL (the "standard" python OpenGL bindings), which is included in the BlenderMalt addon (from your log /home/pauan/.config/blender/3.3/scripts/addons/BlenderMalt/.MaltPath/Malt/.Dependencies-310/OpenGL
).
When Malt starts its own process it tried to import it, but it looks like some part of the PyOpenGL initialization is failing.
I guess this is some distro-related issue. You can try to follow the steps from How to Setup BlenderMalt for Development, maybe using your distro python installation (make sure it's 3.10) instead of the one that comes with Blender.
I have a question, it is necessary to update hardware to use it, I think AMD patocizes Blender with that condition
@DavidRuales I have a Radeon RX 6800 XT, it's quite recent hardware, and it is supported by Blender (I can use GPU rendering in Blender with Cycles).