Vertex Array Object(VAO)について(文責-出村) VAOとは†一言でいうとVBO(Vertex Buffer Object)を便利にできる機能です(VBOについてはこちらを参照). VBOは情報を格納するためのバッファなので,描画のために複数種類の情報を利用する必要が出てきた場合は描画のタイミングで複数のVBOを紐づける必要があります.具体的には頂点情報と法線情報とインデックス情報と色情報のVBOをそれぞれ用意した場合,実際に描画する際にそれらすべてを関連付ける記述が必要になります. この問題を解決するために,あらかじめ紐づけておいた(一連の処理をカプセル化)したものがVAOです.使用することによってソースコードが見やすくなります. 使い方†基本的には3つの関数を使います. 手順として,まず作成したVAOに紐づけを行った状態でVBOの各種設定を行い,VAOの紐づけを解放します.そのあと描画の際にVAOを紐づけるだけで自動的に登録しておいた各種設定がGPUに送られます.
使用例†前提としてVBOはすでに作ってあるものとします.
|