#3533·mujoco

`mujoco_studio` crashes on Windows + AMD: `wglMakeCurrent` failed (error 2000)

Author: liangjsCreated Aug 30, 2026Updated Sep 17, 2026
Labelsbug

Intro

Hi!

I use MuJoCo for a human body simulation project.

My setup

  • MuJoCo 3.12.0 official Windows binary
  • Windows 11 (build 26200), x64
  • GPU: AMD Radeon RX 6700 XT (no NVIDIA)
  • Driver: 32.0.21013.1000, OpenGL 4.6 (25.6.1.250522)

What's happening? What did you expect?

mujoco_studio.exe with the default Filament OpenGL backend crashes on startup:

FEngine (64 bits) created at 0000023FDC17B1A0 (threading is enabled)
FEngine resolved backend: OpenGL
[ATI Technologies Inc.], [AMD Radeon RX 6700 XT], [4.6.0 Compatibility Profile Context 25.6.1.250522], [4.60]
Feature level: 3
Active workarounds:
allow_read_only_ancillary_feedback_loop
Backend feature level: 3
FEngine feature level: 1
PanicLog
in makeCurrent:296
reason: wglMakeCurrent() failed. hdc = 00000000620110F2


Windows error code: 2000. (null)
Link error in "mipmapDepth":
 - glError=0
 - LogInfo="(null)"
Postcondition
in operator():407
reason: OpenGL program mipmapDepth failed to link or compile

I expected Studio to open. Error 2000 is ERROR_INVALID_PIXEL_FORMAT. The shader error looks secondary (no current GL context).

On the same machine:

  • mujoco_studio.exe --gfx=classic works
  • simulate.exe works
  • mujoco_studio.exe --gfx=vulkanSelected backend not supported in this build.

This is not the AMD simulate sidebar bug (#639). Studio never gets a valid context.

SDL creates the window with SDL_WINDOW_OPENGL and MSAA (window.cc). Filament then builds its context on a dummy window with a different pixel format and calls wglMakeCurrent on the SDL window DC. AMD rejects that mismatch.

Steps for reproduction

  1. Unzip MuJoCo 3.12.0 for Windows.
  2. Run bin\mujoco_studio.exe (no flags).
  3. Process aborts with the log above.

Minimal model for reproduction

Not needed.

Code required for reproduction

Not needed.

Confirmations