A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from http://developer.mozilla.org/ja/docs/Web/API/WebGL_API/Using_Extensions below:

WebGL 拡張機能の使用 - Web API

WebGL 拡張機能の使用

WebGL は姉妹 API (OpenGL や OpenGL ES) と同様に、拡張機能に対応しています。拡張機能の完全な一覧は Khronos WebGL Extension レジストリーで確認できます。

メモ: 他の GL API とは異なり、WebGL の拡張機能は明示的に要求した場合に限り使用できます。

正規拡張機能名とベンダー接頭辞と設定

拡張機能は公式に認められる前に、ブラウザーベンダーが対応する場合があります(ただし、草案段階にあるときに限ります)。このとき、拡張機能名にベンダー接頭辞(MOZ_ や WEBKIT_ など)を付加するか、ブラウザーの設定を切り替えた場合に限り使用できるようにする可能性があります。

最先端の拡張機能を使用したい場合、および公認されたときにも動作し続けるようにしたい(もちろん、その拡張機能が互換性を失うように変更されていないものとします)場合は、ベンダー拡張機能名だけでなく正規拡張機能名も問い合わせます。例えば以下のようにします。

var ext =
  gl.getExtension("OES_vertex_array_object") ||
  gl.getExtension("MOZ_OES_vertex_array_object") ||
  gl.getExtension("WEBKIT_OES_vertex_array_object");

ベンダー接頭辞は次第に採用されなくなっており、ほとんどのブラウザーは実験的な拡張機能をベンダー接頭辞ではなく機能フラグで制御するように実装しています。

機能フラグは以下のようなものです。

名前付けの慣習

WebGL 拡張機能には、 "ANGLE", "OES", "EXT", "WEBGL" という接頭辞が付きます。これらの接頭辞は、由来や意図を反映しています。

利用可能な拡張機能の問い合わせ

WebGL コンテキストは、利用できる拡張機能を問い合わせる機能に対応しています。

var available_extensions = gl.getSupportedExtensions();

WebGLRenderingContext.getSupportedExtensions() メソッドは、サポートする拡張機能を収めた文字列配列を返します。

拡張機能一覧

現行の拡張機能の一覧:

拡張機能 拡張機能の有効化

拡張機能を使用する前に、 WebGLRenderingContext.getExtension() を使用して機能を有効化しなければなりません。例えば以下のようにします。

var float_texture_ext = gl.getExtension("OES_texture_float");

拡張機能に対応していない場合の戻り値は null、対応している場合の返値は拡張機能オブジェクトです。

拡張機能オブジェクト

WebGL のコア仕様で使用できないシンボルや関数を拡張機能で定義している場合は、gl.getExtension() の呼び出しによって返される拡張機能オブジェクトでそれらを使用できます。

関連情報

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4