現在、オープンソースの OpenGL ゲームを OpenGL ES に移植しています。ターゲット デバイスは Linux を実行し、比較的弱い CPU (FPU を備えた ARM11 ファミリ) を備えています。OpenGL ES アクセラレータはありますが、OpenGL アクセラレータはありません。
最初に、Radeon X1650 Pro を搭載した Athlon X2 など、別の Linux マシンで高速化された OpenGL インスタンスを使用して、既存の OpenGL-GLX-X11 実装を実行したいと考えています。これは、高レベルで整理する必要がある重大な CPU ボトルネックがないことを確認するのに役立ちます。
X11接続のSSH転送を設定できました。glxinfo および glxgears プログラムは実行されますが、ローカルで実行されている glxgears (vsync で 60 fps) と比較して、後者のパフォーマンス (8 fps) は非常に貧弱です。glxinfo レポートには、ダイレクト レンダリングが使用されていると記載されており、ローカル (ARM デバイスに対して) ソフトウェア レンダラーが使用されていることがわかります。
私が望んでいるのは、OpenGL コマンドが Athlon X2 マシンに送信され、Radeon を使用して高速化されることです。これには間接レンダリングを有効にする必要があると思います。ただし、LIBGL_ALWAYS_INDIRECT=1 を設定しても何も変わりません。例えば:
arm$ LIBGL_ALWAYS_INDIRECT=1 glxinfo | fgrep rendering
direct rendering: Yes
arm$
ARM デバイスは Gentoo Linux を実行しています。私がやりたいことを強制する最良の方法は何ですか?