この状態を直す
結論
$ sudo apt install -y mesa-utils
$ export MESA_D3D12_DEFAULT_ADAPTER_NAME="NVIDIA"
$ glxinfo -B
で、Device: D3D12 (NVIDIA GeForce ...) (0xffffffff) と出ればよい。
私のPC構成
- Windows11 + WSL2
- ROS2 Humble
- Intel Core Ultra
- 内蔵GPUのIntel Arc / Geforce RTX4050 Laptop
考察
私はNVIDIA + IntelArcが搭載されたラップトップを利用しています。 nvidia-smi
というコマンドを入力した場合、正しくNVIDIAが認識されています。この状態で上の黒塗りバグが出ていました。
しかし、上記の方法を試すと正しく画面に3D表示がされました。
自分でも結局なぜこの方法で直るのかわかっていないのですが、
export MESA_D3D12_DEFAULT_ADAPTER_NAME="NVIDIA"
というコマンドを入力する前に glxinfo -B
をしたら、Intel Arcのグラボが選択されていました。
けれども、WSL2上で使用されるグラボはNVIDIA。要はNVIDIAのグラボを見つけたいのに、参照できないみたいなことになっていたのかもしれないです。
有識者、情報がございましたら教えてください。