2016-08-21 8 views
0

私は最近、レンダリングがノーノーであるとimmediate modeを使用していることを発見しました。LWJGL - VBOとスプライトクラス

私はVBOとVAOを探し始めました。私が正しく理解していれば、VBOは位置、色などのデータを含むオブジェクト/バッファです。

次に、VBOをVAOに入れ、VAO内のすべてをレンダリングしますか?

これは非常に新しくて奇妙なので、私はそれをどのように使うのだろうかと思っていました。たとえば、スプライト/テクスチャクラスはどのように見えますか?そして、レンダリングを始めましたか?

私は周りを探索しましたが、私が把握できたことは何も見つかりませんでした。

ありがとうございます!質問は、かなり奇妙な配合されていても

+1

ガイド/チュートリアルを探す場所ではありません。しかし、LWJGL [wiki](http://wiki.lwjgl.org/wiki/Main_Page)とLWJGL 3 [demos](https://github.com/LWJGL/lwjgl3-demos)をチェックしてください。 – CConard96

答えて

0

、私はあなたがリストとしてVAOを考える必要はあり

(私はないなら、私を修正)私はあなたが望む結果を得ると思います。このリストには、位置、テクスチャ座標など(最大16個)の属性がいくつかあります。各属性は配列(VBO)として格納されます。この配列は、1つの属性(例えば、すべての頂点位置)のすべてのデータで満たされる。 glVertexAttribPointerには、1つの頂点、データタイプなどの1つのVBOのプロパティが記述されています。

一方、Uniformの変数があります。これらの変数は、描画呼び出しの前にシェーダで指定されたスロットにロードされます。これらの変数は、メッシュ全体で一定に保たれ、値に使用され、すべての頂点(投影、ビューなど)で同じままです。これらの変数は、テクスチャを表すSamplerというデータ型にすることもできます。

詳細については、いくつかのサンプル/チュートリアルを読むことをお勧めします。