OpenAI发布的mujoco_py接口bug还是比较多的,其中渲染方面的问题很多,解决一个又一个的,经常是这个代码调用的渲染窗口没问题了,之后用到其他的一些调用方法还是会有问题,暂时还没有遇到通用的解决方案,只能见招拆招,记录一下。(也是因为我是小白,能力见识有限,如果有什么好的解决方案麻烦告知我一下,谢谢!)
根据我在mujoco_py/issues和robosuite/issues等讨论区论坛的查阅,貌似主要原因是mujoco_py渲染时mujoco与gpu动态链接的一些library出了问题,也有大佬直接不用mujoco_py提供的渲染模块,改用Unity3D来渲染(我不会,还在摸索。。。)许多问题我也还在报错中没有解决,长期更新
目录
'error: Missing GL version'相关问题
2. 如何查看安装的mujoco-py有没有调用GPU的内置共享模块
'error: Missing GL version'相关问题
1. 基本的一些设置
先确保安装了相关的library(就是mujoco_py官方提供的一些对于渲染问题GL的解决方案)
$ sudo apt-get install libglew-dev
然后在~/.bashrc
文件中添加如下路径
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libGLEW.so
2. 如何查看安装的mujoco-py有没有调用GPU的内置共享模块
终端在你创建的虚拟环境中
$ python3
>>> import mujoco_py
>>> mujoco_py.cymj
如果弹出信息如mujoco_py/generated/cymj_2.0.2.9_37_linuxgpuextensionbuilder_37.so,其中有`gpu`说明没问题,如果是`cpu`,就没有使用GPU的相关库。
具体问题描述见MjSim rendering doesn't use GPU #493
我的mujoco_py用的是CPU……,不过暂时还没有重装尝试。之后尝试再补充。