WebGL™ブラウザとは何ですか?
a webgl™ブラウザーは、オンラインの基本的なハイパーテキストマークアップ言語(HTML)、JavaScript®、およびカスケードスタイルシート(CSS)ドキュメントを表示するだけでなく、WebGL™として知られるこれらの仕様の特別なサブセットを解釈するために設計されたプログラムです。技術的には、WebGL™はスタンドアロン言語ではなく、ブラウザレンダリングエンジンのキャンバス要素を使用してWebGL™コード、グラフィックハードウェア、ブラウザの間にブリッジを作成するグラフィックライブラリです。これにより、WebGl™ブラウザは、ブラウザ内で別々にコンパイルされたプログラムを使用する場合よりも、他のタイプのプラグインを使用して、より便利に使用するよりもはるかに高速に高度な3次元(3D)グラフィックをレンダリングする機能を提供します。ほとんどすべての主要なWebブラウザーはWebGL™をネイティブにサポートしていますが、ネイティブサポートを実装していないブラウザには、一般に必要なHTMLコンポーネントを公開するサードパーティのプラグインがあります。 WebGL™ブラウザは可能ですがコンピューターグラフィックスカードに直接アクセスできるため、3Dグラフィックスをすばやくレンダリングします。これは、悪意のあるプログラムがリモートコンピューターで有害なコードを実行できる可能性のある潜在的に大きなセキュリティホールのソースでもあります。
本質的に、WebGL™ブラウザには、グラフィックライブラリに含まれる関数をある程度リンクするコードが含まれているため、JavaScript®を介してアクセスできます。 HTML言語標準バージョン5(HTML5)には、プラグインを使用せずに画面の領域に直接描画するために、または必要に応じて正確ではないHTMLまたはCSSタグを使用するために使用できるキャンバスとして知られる特別な要素があります。 Compliant WebGL™ブラウザー内で、JavaScript®は低レベルのグラフィックスライブラリにバインドされ、HTML5 Canvas要素に直接描画され、グラフィックスカードから直接プッシュできるグラフィックスのプラットフォームを提供します。ディスプレイデバイスに。
使用されるライブラリは、モバイルデバイスで動作するように設計された標準のOpenGL®ライブラリ機能のサブセットであるOpenGL®EmbeddedSystemsライブラリ(OpenGLES®)です。 WebGL™ブラウザが可能である理由の1つは、WebGL™ライブラリの軽量性です。これは、大量のリソースを消費せず、完全なOpenGL®実装のよりプロセッサ集約型機能の一部を含んでいません。ただし、WebGL™ブラウザの繰り返しの問題は、コンピューターまたはデバイスのドライバーとハードウェアがOpenGLES®アプリケーションを実行できる必要があることです。一部のオペレーティングシステム、デバイス、ハードウェア、さらにはドライバーには、WebGL™プログラムを実行する機能がなく、グラフィックスハードウェアをインストールしたものを交換する以外の簡単なソリューションもありません。
WebGL™ブラウザの安全性とセキュリティに関する主要な懸念により、一部の主要なブラウザ開発者が完全に実装できなくなりましたWebGL™のサポート。これは主に、ブラウザがWebGL™コードに提供する直接アクセスに帰着します。悪意を持って使用すると、グラフィックカードを操作してホストシステムを介して損傷を引き起こすか、最悪のシナリオでは、有害なコンピューターコードを実行または植えるためのゲートウェイとして使用できます。