GNU/Linux版のバージョン4.0系FirefoxでWebGLを有効にする(Firefox 4.0 Beta 12時点)
バージョン4.0系のFirefoxはWebGLに対応しており、Chrome ExperimentsのWebGL ExperimentsなどでOpenGLを用いたデモページが参照できる。ただ、GNU/Linux版のFirefoxではこの機能が標準では無効になっているようで、WebGLがサポートされないものとして扱われる(ページが正常に動作しないかエラーメッセージが出る)。
この背景としてGNU/Linuxの大部分のグラフィックドライバに不具合があるのが理由という話があるようだが、4.0 Beta 12の時点では環境変数MOZ_GLX_IGNORE_BLACKLISTを設定することで強制的に有効化することができる。
[firefox]$ MOZ_GLX_IGNORE_BLACKLIST=1 ./firefox ([オプションや引数...])
手元のfglrxドライバ使用のRadeon HD 4200の環境でWebGL Experimentsの幾つかのページを開いたところ、正しく動作しているように見え、Compizが動作していても表示がおかしくなることはなかった。また、Flight Of The Navigatorも正しく開けた。
先ほどのリンクのURLへのコメントによると、NVIDIA製GPU搭載のグラフィックボードをNVIDIAの(プロプライエタリな)ドライバで使用している環境でも安定しているようだ。
WebGLのテストページ(WebGL Conformance Test Runner)を試すと、エラーは結構な数出るものの、割合としては正常動作するものが多かった。手元の環境では「Results: (5377 of 5468 passed, 1 timed out)」となった。
(2011/5/12)WebGLの仕様におけるセキュリティ問題が明らかになっているが、バージョン4.0系のGNU/Linux版Firefoxでは本記事の有効化手順を実行しなければ動作はしない。有効化された環境の場合、about:configの「webgl.disabled」で無効化することもできる。
(2011/5/31)Google Chrome/Chromiumについては公式のヘルプに書かれている一部の環境を除いて標準で有効となっており、--disable-webglオプションにより無効化できる。また、一部の無効化される環境で--ignore-gpu-blacklistオプションを付けると強制的に有効にすることもできるが、問題が起こる可能性がある。
関連記事:
- Mozilla Firefoxのユーザインターフェースに関するメモ(Firefox 4.0 Beta 12時点)
- バージョン4.0系のMozilla Firefoxのタブ関係に関するメモ(Firefox 4.0 Beta 12時点)
使用したバージョン:
- Mozilla Firefox 4.0 Beta 12
- xorg-server 1.9.0
- Linux 2.6.35.10
- Catalyst 10.12 (8.801)