google-deepmind / google-deepmind/mujoco
Support for Modern OpenGL Versions in MuJoCo Visualization (Beyond ARB Framebuffers)
- Dominant language
- C++
- Stars
- 15.2k
- Forks
- 1.8k
- Avg merge
- 10d 16h
- Merged PRs (30d)
- 25
Description
### The feature, motivation and pitch
**Issue**:
MuJoCo’s visualization currently relies on a tight dependency with specific versions of OpenGL, particularly using ARB framebuffers. This creates a number of limitations for developers, especially when:
• Developing cross-platform applications, where OpenGL versions and extensions differ across systems.
• Integrating MuJoCo with other graphical libraries and tools such as Dear ImGui, which are designed to work with more modern versions of OpenGL.
• Combining MuJoCo with custom graphics pipelines or leveraging newer OpenGL features.
As a result, the only workaround in many cases is to downgrade the entire application stack to match MuJoCo’s OpenGL requirements, which can become increasingly problematic, or many a time impossible, especially with newer hardware (or softwares for example on MacOS) and development environments that favor modern OpenGL versions.
**Questions**:
1. Are there any plans or ongoing efforts to decouple MuJoCo’s rendering pipeline from the older ARB framebuffer-specific version of OpenGL?
2. If this is not currently planned, could you provide some guidance or suggestions for developers who wish to extend MuJoCo’s rendering to support modern OpenGL versions?
**Impact**:
This enhancement would improve MuJoCo’s flexibility for developers working on modern software stacks, enhance performance, and open up new possibilities for integrating MuJoCo with additional graphical tools and libraries.
Thank you for considering this!
### Alternatives
Related issues: #1778, #1452
### Additional context
I am currently using Dear ImGui Bundle in conjunction with MuJoCo for visualizations and have run into this limitation while working with modern OpenGL features. The lack of support for newer OpenGL versions significantly hampers the integration.
Platform-specific issues arise, especially in cross-platform applications where OpenGL versions vary, making it hard to ensure a consistent user experience without downgrading everything to the minimum version supported by MuJoCo.
Contributor guide
Assessment
This issue has not been assessed yet.