SMPL 데모를 실행하는 과정에서 다음과 같은 에러 메세지가 발생하였습니다.
Exception: pyglet 2.0.7 requires Python 3.8 or newer.
setup.py에는 'pyrender>=0.1.23' 이게 실행되었고 pyrender == 0.1.45가 설치되었습니다.
문제는 pyrender가 아닌 pyglet == 2.0.7이 설치되었다는 것 입니다.
pyglet == 2.0.7은 python 3.8 이상 버전과 호환됩니다.
SMPL은 python 3.6 으로 개발된 것으로 알고 있기 때문에
python 3.6과 호환되는 pyglet 1.5.21 버전을 설치하여 이 문제(import pyrender)를 해결하였습니다.
* pyglet 1.3.2 버전도 python 3.6과 호환이 되지만
OpenGL 3 컨텍스트를 생성하는데 필요한 WGL_ARB_create_context 확장을 지원하지 않는다는
에러메세지가 발생하여 위 문제를 해결한 1.5.21버전을 사용했습니다.
- pyrender를 import시키는데 왜 pyglet 버전이 문제인가?
→ pyrender가 3D 렌더링을 위해 pyglet을 사용하기 때문입니다.
pyrender는 3D 시각화 및 렌더링 라이브러리입니다. 3D 모델을 표시하고 렌더링하는 데 사용됩니다.
pyrender는 내부적으로 pyglet을 사용하여 그래픽 컨텍스트를 생성하고 OpenGL을 통해 렌더링합니다.
따라서, pyrender를 사용하려면 pyglet 라이브러리도 설치해야합니다.
pyglet은 윈도우 시스템, OpenGL 지원 및 그래픽 렌더링에 필요한 기능을 제공합니다.