OpenGLにわりと新しく入った機能でテクスチャー・バッファー・オブジェクト(TBO)というものがある。 これが非常にわかりにくい機能で過不足なく明快に説明した文章を見たことがない。 まずTBOはテクスチャーバッファーという名前のオブジェクトではなく、 2Dテクスチャーやキューブテクスチャーなどのテクスチャーの1種である。 つまりTBOオブジェクトではなくTBOテクスチャーである。 通常の2Dテクスチャーが2次元の画像データから値を拾ってくるのに対して、 TBOは汎用のバッファーオブジェクトから値を拾ってくるテクスチャーである。 Texture・2Dの連想でTexture・BufferObjectと名前を付けたのだろうが、激しく誤解を受けそうなネーミングである。 素直にBufferObject・Textureにしておけばいいのに。。。。 GLSLの中では通常の2Dテクスチャーはsample