-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[render_gl] Remove X server requirement #21050
Comments
FYI on a related topic... As of Bazel 7.0, to access a real Xorg server during Bazel tests downstream projects must add this line in their
Otherwise, you'll see an failure such as This is due to the following change in Bazel 7: |
I tried some prototyping today... I used this WIP branch that switches VTK rendering to use EGL instead of GLX. I built a wheel file, installed it on Deepnote, and did As I understand it, there are ways to teach EGL to use the GPU, but I haven't looked into that specifically yet. When using EGL, the camera option to Assuming that EGL can't be made strictly better than GLX, the next steps would be to see if we can compile both GLX and EGL support into Drake's VTK, and offer a |
For our Kitware helpers -- let's say the first milestone on this issue is just RenderEngineVtk. We'll leave the RenderEngineGl for a second milestone. |
Actually, I take that back. Let's use #21700 for the VTK option, and keep this ticket for the RenderEngineGl changes. |
Is your feature request related to a problem? Please describe.
According to @jwnimmer-tri, there's no reason for an X server to be a strict requirement for renderering. It makes it harder to deploy to headless environments for containerized environments.
Describe the solution you'd like
RenderEngineGL could use EGL to create it's OpenGL context.
VTK can automatically use EGL if built with that option.Edit: See #21700.Describe alternatives you've considered
I considered using
xvfb
but that does non-HW-accelerated rendering and would be a bottleneck.The text was updated successfully, but these errors were encountered: