Webgl-sample-application
WebGL-サンプルアプリケーション
WebGLとWebGLパイプライン(グラフィックアプリケーションをレンダリングするための手順)の基本について説明しました。 この章では、サンプルアプリケーションを使用して、WebGLを使用して三角形を作成し、アプリケーションで実行される手順を観察します。
WebGLアプリケーションの構造
WebGLアプリケーションコードは、JavaScriptとOpenGLシェーダー言語の組み合わせです。
- CPUと通信するにはJavaScriptが必要です
- GPUとの通信にはOpenGLシェーダー言語が必要です。
サンプルアプリケーション
次に、WebGLを使用して2D座標を持つ単純な三角形を描画する方法を学ぶために、簡単な例を見てみましょう。
それは次の結果を生成します-
上記のプログラムを注意深く観察すると、WebGLを使用して単純な三角形を描くために5つの連続した手順を実行しました。 手順は次のとおりです-
ステップ1-キャンバスを準備し、WebGLレンダリングコンテキストを取得します
現在のHTMLキャンバスオブジェクトを取得し、そのWebGLレンダリングコンテキストを取得します。
ステップ2-ジオメトリを定義し、バッファオブジェクトに保存します
頂点、インデックス、色などのジオメトリの属性を定義し、JavaScript配列に保存します。 次に、1つ以上のバッファーオブジェクトを作成し、データを含む配列をそれぞれのバッファーオブジェクトに渡します。 この例では、三角形の頂点をJavaScript配列に保存し、この配列を頂点バッファーオブジェクトに渡します。
ステップ3-シェーダープログラムの作成とコンパイル
頂点シェーダーおよびフラグメントシェーダープログラムを作成し、コンパイルし、これら2つのプログラムをリンクすることにより、結合プログラムを作成します。
ステップ4-シェーダープログラムをバッファオブジェクトに関連付ける
バッファーオブジェクトと結合されたシェーダープログラムを関連付けます。
ステップ5-必要なオブジェクト(三角形)の描画
この手順には、色のクリア、バッファビットのクリア、深度テストの有効化、ビューポートの設定などの操作が含まれます。 最後に、* drawArrays()または drawElements()*のいずれかのメソッドを使用して、必要なプリミティブを描画する必要があります。
これらのすべての手順については、このチュートリアルでさらに説明します。