仮想マシン (ホストではない) で実行したいプログラムがあるのですが、OpenGL 3.3 がないとまったく実行できません。このプログラムをすぐにクラッシュさせずに実行できるようにしたいのですが (パフォーマンスが優れていなくても)。OpenGL 3.3 を Virtualbox で動作させる方法はありますか? ない場合は、仮想マシンで OpenGL 3.3 をエミュレートして、プログラムにインストールされていると認識させる方法はありますか? または、このプログラムを実行する他の方法はありますか?もしそうなら、どうやって?
ホストは Windows 10、ゲストは Windows 10 です。Virtualbox 5.2.16 を使用しています。VM でプログラムを実行しようとすると、次のエラーが発生します。
私はただこの状況を乗り越える方法を探しているだけであり、あらゆる提案を歓迎します。
答え1
実行したいプログラムと一緒に Mesa3D OpenGL DLL をインストールすれば、OpenGL 3 のサポートが得られます。ただし、これはソフトウェア レンダラーなので、レンダラーの有用性は、レンダラーを使って何をしようとしているかによって大きく異なります。3D レンダリング要件が厳しい場合は役に立ちません。レンダリング要件が非常に低く、たまたま OpenGL 3 API を使用している場合は、おそらくかなりうまく機能します。
答え2
まだ更新がないので、問題が解決したかどうかはわかりませんしかし私は、ゲスト内でいくつかの特別な環境変数を使用して独自の OpenGL 3.3 バイナリを実行することで、この問題を解決しました。
ゲストでこれを試してください:
LIBGL_ALWAYS_SOFTWARE=true GALLIUM_DRIVER=llvmpipe YourProgramHere
参照:詳しくはこちら