漫画の地球儀

Chromeの『webGLがブロックされました』の原因、対処法!【動かない、使えない、pc、ブラウザ】

スポンサーリンク

WebGL

f:id:rick1208:20200728101727p:plain
webGL(ウェブジーエル)とはウェブページで3Dグラフィックスを表示する規格のことです。この規格により、例えば3DのCGを使用したリッチコンテンツをウェブページ上で使用することが可能です。

表示するのでにはChromeなどのブラウザがwebGLに対応している必要がありますが、2018年現在ではChromeはもちろん、一般的なブラウザの大半がwebGLに対応されています。

ChromeWebGLが使えない場合の理由と対処法

f:id:rick1208:20200728101940p:plain
ウェブページで3Dゲームなどのリッチコンテンツを動かすことができ、今後の期待も大きい技術であるwebGLですが、「webGLがブロックされましたと表示されChromeが動かない!」「ChromewebGLが使えない!」といった報告が各所で挙げられています。

そこで、ここではChromewebGLが使えない場合の原因と対処法をまとめます。原因として当てはまるものがないかチェックし、対処法を参考にお試しください。

WebGL機能を無効にしている場合

f:id:rick1208:20200728131447p:plain
まず最初は、ChromeにおけるwebGLの設定が無効になってしまっていることが原因ではないかをチェックしていきましょう。設定はChromeの設定メニューでチェックすることが可能です。下記を参考にChromeの設定をごチェックください。
f:id:rick1208:20200728131500p:plain
Chromeの画面右上にあるメニューボタンを押して表示されるメニューの「設定」を押してください。
f:id:rick1208:20200728131506p:plain
Chromeの設定画面が表示されたら最下部までスクロールし、「詳細設定」を押します。
f:id:rick1208:20200728131512p:plain
詳細設定が表示されたら、さらに下までスクロールし「ハードウェアアクセラレーションが使用可能な場合は使用する」の項目を探します。こちらの設定が有効であればwebGLを使うことが可能です。

ブラウザが不安定な場合

f:id:rick1208:20200726180223p:plain
ChromewebGL機能が有効であるにも関わらず、ChromewebGLが動かない場合があります。いくつか考えられる原因を下記にまとめますので、参考にChromeの設定をお試しください。

拡張機能やキャッシュなどが影響している

f:id:rick1208:20200726170012p:plain
便利なChrome拡張機能ですが、その拡張機能webGLの動作に影響を及ぼしてしまい、webGLが使えない状態となる場合があります。1回、拡張機能の設定をすべて無効にして、webGLの動作をチェックしてみましょう。

Chromeにて拡張機能を無効にしてwebGLのチェックを行うときは、Chromeにシークレットモードを適用すると便利です。

シークレットモードとは、Chromeの見ること履歴やパスワード、Cookieといったプライベートに関わる情報をパソコンに残さずにChromeを使うことが可能なモードですが、一時的にすべての拡張機能を無効にし、キャッシュなどの情報を引き継がない状態に可能です。

そこで、ここではChromeをシークレットモードで起動する方法をご解説いたします。
f:id:rick1208:20200728131700p:plain
Chromeの画面右上にあるメニューボタンを押して表示されるメニューの「新しいシークレット ウインドウ」を押してください。
f:id:rick1208:20200728131706p:plain
「新しいシークレット ウインドウ」のクリックにより、シークレットモードでChromeが起動しました。このChromewebGLが使えないサイトにアクセスし、webGLが動くかチェックしましょう。

もし、シークレットモードでwebGLが使えた場合は、ChromewebGLが使えなかった原因は、拡張機能かキャッシュです。なので、対処法としてChrome拡張機能の無効化やキャッシュの消去を行うことで、通常モードのChromeでもwebGLが使えるはずです。

余計な試験運用設定が有効になっている

f:id:rick1208:20200726165943p:plain
まず、試験運用設定とは、flagsとも呼ばれているChromeの試験運用段階の設定です。この試験運用設定によりChromeを高速化することも可能です。

ですが、Chromeの試験運用設定の中には画面の描画やハードウェアアクセラレーションに関する設定も存在しており、webGLの動作に悪影響を起こす可能性があります。

もし、試験運用設定を使用して画面の描画に関する項目を変更していた場合は、対処法として1回、Chromeで試験運用設定の初期化を試してみましょう。下記の方法で、Chromeの試験運用設定を初期化することが可能です。
f:id:rick1208:20200728131728p:plain
Chromeの試験運用設定をリセットするには、まずChromeでflags画面を出します。flags画面の表示方法はChromeのロケーションバーに「chrome:flags」を記入してエンターキーを押下します。
f:id:rick1208:20200728131852p:plain
そこで表示されたflagsの画面でChromeの試験運用設定を初期化することが可能です。初期化は「Reset all to default」をクリックすることで実行されます。

OSやChromeのバージョンによっては日本語で表示される場合があります。もし、flagsの画面が日本語で表示された場合には「すべてデフォルトに戻す」のクリックでChromeの試験運用設定が初期化されます。

Chromeのバージョンが古い

f:id:rick1208:20200726100635p:plain
パソコンにダウンロードしているChromeのバージョンが古いため、最新 のwebGLである「webGL 2、0」が使えない可能性も考えられます。Chromeのバージョンは「Chrome 56」より「webGL 2、0」に対応しています。

下記の方法でChromeのバージョンをチェックしてみましょう。もし、Chromeのバージョンが「Chrome 56」以前のものである場合は、対処法としてはChromeのバージョンアップで改善し、webGLが動作します。
f:id:rick1208:20200728131920p:plain
Chromeの画面右上にあるメニューボタンを押して表示されるメニューの「Google Chrome について」を押してください。
f:id:rick1208:20200728131927p:plain
Chromeについて」が表示され、Chromeのバージョンをチェックすることが可能です。こちらのバージョンが56よりも以前のChromeである場合、ChromewebGLが動かない原因はChromeのバージョンが古いためです。対処法としてChromeのバージョンアップが必要です。

バージョンアップ方法については記事の最下部でご解説いたします。

Chromeがベータ版になっている

f:id:rick1208:20200726010658p:plain
一般公開前の最新機能をいち早く使用可能なベータ版ですが、ベータ版とは開発途中のバージョンであり、安定版と比較して動作が不安定である場合があります。もし、Chromeでベータ版を使用していた場合は、Chromeの安定版をダウンロードしてwebGLの動作をチェックしてみましょう。

ダウンロードしていたChromeがベータ版か安定版かわからない場合は、下記の方法でチェック可能です。 (バージョンチェックの方法と同じ手順になります)
f:id:rick1208:20200728132010p:plain
Chromeの画面右上にあるメニューボタンを押して表示されるメニューの「Google Chrome について」を押してください。
f:id:rick1208:20200728132019p:plain
Chromeについて」が表示され、安定版かどうかをチェックすることが可能です。安定版であれば「Official Build」と表示されます。もし、ベータ版であれば「Beta Build」、開発版であれば「Dev Build」が表示されますので、その場合は安定版をダウンロードして、webGLの動作をチェックしてみましょう。

Chromeの安定版は下記のリンクからダウンロード可能です。
Google Chrome ウェブブラウザ

ハードウェアアクセラレーションに不具合がある

f:id:rick1208:20200724030017p:plain
まず、ハードウェアアクセラレーションとは、画面の描画にGPUの力を借りる動作のことです。webGLでコンテンツを処理するときは、GPUを使用するので、ハードウェアアクセラレーションが正常に動作可能な状態である必要があるわけです。

もし、これまでご解説した方法でwebGLが動かない場合は、ハードウェアアクセラレーションに不具合が発生している可能性があります。特に、動画の再生でフリーズが発生している場合については、対処法として不具合の原因である、一部のハードウェアアクセラレーション機能を無効化することで改善します。

ここでは、ハードウェアアクセラレーションの一部機能を無効化する方法を、ご解説いたします。
f:id:rick1208:20200728133109p:plain
Googleのハードウェアアクセラレーションの一部機能の無効化を行うには、まずflagsの画面を出します。flagsの表示方法はロケーションバーに「chrome:flags」を記入してエンターキーを押下します。
f:id:rick1208:20200728133116p:plain
表示されたflags画面の検索欄に「Hardware-accelerated video decode」と記入し、エンターキーを押下することで設定が検索されます。
f:id:rick1208:20200728133121p:plain
検索によりChromeのハードウェアアクセラレーション設定が表示されます。有効である「Enable」から、無効の「Disabled」に変更することで、無効化の設定が終了です。

ハードウェアアクセラレーションの一部機能が無効化された状態でwebGLの動作をチェックしてみましょう。

ディスプレイドライバーとの相性

f:id:rick1208:20200724003706p:plain
ここまでは、ブラウザ(Chrome)のチェックポイントをご説明してきましたが、それでもwebGLが動かない場合は、ディスプレイドライバに問題があるかもしれません。ディスプレイドライバーとは、パソコンに繋がれたディスプレイを制御するのでに必要なソフトですが、そのソフトがwebGLに対応していないことが原因である可能性もあります。

下記を参考にディスプレイドライバーまわりをチェックしていきましょう。

ディスプレイドライバーに不具合がある

f:id:rick1208:20200723163944p:plain
現在動作させているディスプレイドライバーとの相性でwebGLが正しく動かないことがあります。最新のディスプレイドライバーで対策が行われている可能性があるため、ディスプレイドライバーの更新を行いましょう。

OSのアップデートで更新内容にてディスプレイドライバーに関連した記載がないかチェックし、記載があればアップデートを行い、webGLの動作をチェックしてみましょう。

Windowsの場合は、メーカーのホームページよりディスプレイドライバーを入手し、手動での更新が必要となります。(ディスプレイドライバーのダウンロード手順は、メーカーのホームページをチェックしましょう)

ブラックリストに登録されている

f:id:rick1208:20200723163923p:plain
古いグラフィックボードとOSの組み合わせによっては、ChromewebGL動作に問題がある場合があります。webGLでは、その組み合わせをブラックリストとし、動作しないように設計しています。

残念なことに、Chromeブラックリストについては、公式資料がないためチェックが難しい状況です。ですが、WindowsXPなど古いOSやグラフィックボードで動作しなかったという症例が多いため、どうやら古いOSやグラフィックボードの組み合わせが対象のようです。

WebGLが有効化されているかチェックするサイトDoes My Browser Support WebGL?の使用方法

f:id:rick1208:20200723134157p:plain
webGLの動作が簡単にチェック可能なサイトがありますため、ご解説いたします。

NON、Nayが出ていたらWebGLが有効ではない

f:id:rick1208:20200723133608p:plain
Chromeで「Does My Browser Support WebGL?」にアクセスすることで、Chrome上でwebGLが有効であるかチェック可能です。Chromeでサイトにアクセスしたとき、画面に「Yay」あるいは「Nay」が表示されます。
f:id:rick1208:20200728133632p:plain
Chromeの画面に「Yay」が表示されればwebGLが有効、「Nay」が表示されればwebGLが無効です。もし、「Nay」が表示された場合はGoogle Chromeディスプレイ設定をチェックし、有効化しましょう。

Google Chromeディスプレイ設定でWebGLが有効かチェックする

f:id:rick1208:20200728134120p:plain
Chromeの画面右上にあるメニューボタンを押して表示されるメニューの「設定」を押してください。
f:id:rick1208:20200728134127p:plain
設定の画面が表示されたら最下部までスクロールし、「詳細設定」を押します。
f:id:rick1208:20200728134133p:plain
詳細設定が表示されたら、さらに下までスクロールし「ハードウェアアクセラレーションが使用可能な場合は使用する」の項目を探します。こちらの設定が有効であればWebGLを使うことが可能です。

Chromewebglがブロックされ動かないので有効にする方法

f:id:rick1208:20200722185603p:plain
Chromewebglがブロックされ動かないので有効にする方法を説明していきたいと思います。

Chromewebglを有効にする方法

f:id:rick1208:20200722185536p:plain

ChromewebGLを有効にするには、ハードウェアアクセラレーションの使用が必要です。ハードウェアアクセラレーションとは、画面の描画にGPUの力を借りる処理のことです。

webGLでコンテンツを処理するときは、GPUを使用するので、ハードウェアアクセラレーションを使用可能な状態にしておく必要があります。詳細設定の「ハードウェアアクセラレーションが使用可能な場合は使用する」が無効だった場合は、押して有効化しましょう。
f:id:rick1208:20200728134202p:plain
設定を切り替えたときは再起動のボタンが表示されます。再起動ボタンを押してChromeを再起動することで、設定終了です。

Chromewebglを無効にする方法

f:id:rick1208:20200722173030p:plain
また、webGLが不要で無効化したい場合は、有効化と同じ方法で無効にすることが可能です。スイッチのクリックで、有効と無効を切り替えられます。
f:id:rick1208:20200728134217p:plain
無効化する場合も有効化と同様にChromeの再起動が必要です。再起動ボタンを押して、Chromeを再起動しましょう。

Google Chrome バージョンアップ 方法

f:id:rick1208:20200722132845p:plain
Chromeは新しいバージョンが使用可能になると自動でダウンロードを行い、次回起動時にバージョンアップされます。パソコンやブラウザを常に起動させたままで、終了していない場合は、バージョンアップがされないままであるかもしれません。
f:id:rick1208:20200728134314p:plain
Chromeについて」でバージョンをチェックしたときに、上記の図のように表示された場合は、再起動を行いChromeを最新のバージョンに更新しましょう。「再起動」ボタンをクリックすることでChromeが再起動され、Chromeが更新されます。

Chromeを再起動後、再度webGLが動くかチェックしてみましょう。


webGLはブラウザの設定だけではなく、Chromeとデバイスとの相性や、Chromeの要求するパソコンのスペックなど、さまざまな環境によりうまく動作しないこともあります。

もし、今回解説の対処方法でwebGLが使えない場合は、IESafariなどの他のブラウザを試してみるのも手かもしれません。最後まで読んでいただきありがとうございます。