Использование Mayavi Mlab над VN C Выдает ошибку OpenGL - PullRequest
1 голос
/ 09 апреля 2020

У меня возникли трудности с использованием mlab Mayavi в python с PyCharm IDE из среды MNE- Python. Я получаю доступ к среде Conda с Mayavi и VTK через сеанс VN C, используя сервер xvn c с моего локального MacOS на кластерную машину Linux.

Ошибка, которую я получаю при открытии окна mlab:

ERROR: In ../Rendering/OpenGL2/vtkOpenGLRenderWindow.cxx, line 754 
vtkXOpenGLRenderWindow (0x556e13b32670): Unable to find a valid OpenGL 3.2 or later implementation. Please update your video card driver to the latest version. If you are using Mesa please make sure you have version 11.2 or later and make sure your driver in Mesa supports OpenGL 3.2 such as llvmpipe or openswr. If you are on windows and using Microsoft remote desktop note that it only supports OpenGL 3.2 with nvidia quadro cards. You can use other remoting software such as nomachine to avoid this issue.

Кажется, что использование VirtualGL для перехвата PyCharm для вызова VTK OpenGL является одним из возможных решений. Кто-нибудь успешно преодолел эту проблему использования mlab Mayavi через VN C сеанс? Каковы ваши решения?

Ответы [ 2 ]

0 голосов
/ 28 апреля 2020

У меня были такие же проблемные дни в go, после обмена электронными письмами с персоналом HP C наше решение довольно простое:

export MESA_GL_VERSION_OVERRIDE = 3.2

Я использую RealVN C Средство просмотра для доступа к HP C, и я запускал API Mayavi через VSCode.

enter image description here

Новая проблема заключается в том, что я не могу сохранить график mlab используя либо API, либо интерактивную сцену. У меня пока только черная фигура.

Некоторые ответы, связанные с сохранением: mayavi mlab.savefig () выдает пустое изображение пока плохо работает в VN C.

0 голосов
/ 25 апреля 2020

Я не могу воспроизвести. Вы убедились, что на машине, к которой вы обращаетесь, имеются доступные и загруженные новейшие графические драйверы и / или программное обеспечение Mesa? Например, я использую TurboVN C для доступа к удаленному компьютеру Ubuntu 18.04, и я могу создать Пример галереи сферических гармоник как с помощью обычного, так и предполагаемого бэкэндов Mayavi. , Однако, используя настройки по умолчанию TurboVN C, отрендеренная сцена имеет артефакты и сохраняет сцену, так как png дает черное изображение, что, я думаю, является следствием использования Mesa (llvmpipe). Если я либо запускаю TurboVN C с -extension GLX, либо просто добавляю vglrun к команде python3, которая вызывает VirtualGL , то используется OpenGL и воспроизводимая сцена безупречна. Я прилагаю скриншот и сохраненные рисунки ниже.

enter image description here enter image description here enter image description here

...