はかせのラボ

私の頭の中を書いていく雑記ブログです

プログラミング ジオメトリインスタンシング⑤

あいさつ

どうも、はかせです。
今回は前回落としたサンプルから得た情報のまとめです。

レンダリング前にBufferを更新している

今私のプログラムでは開始時に
Buffer系をまるごと作ってあとはそれを使いまわしていたんですが、
サンプルではレンダリング処理前にBufferを作り直していました。

このBufferの更新で各フレームにおける各インスタンスの情報を
シェーダーに渡すってことっぽいです。

for文でレンダリングを回している

これはまだ読み込みが足りず理解できていないのですが、
DrawIndexedInstancedメソッドをfor文で複数回呼んでいました。
このInstanced系の描画命令は指定回数繰り返す機能があるはずなのに
for文で回している理由はまだわかりませんorz

描画するものごとにメソッドを分けている

今回のサンプルは木を描画しているんですが、
木は木でも葉っぱや幹みたいな分け方でグルーピングしていました。

これはジオメトリインスタンシング①でもいった
似たようなモデルをまとめるためにメソッドで分けているのだと思います。

あとがき

今回はサンプルを読んで得た知見のまとめでした。
イマイチ理解しきれていないことがありますが、
ぼんやりと全体像が見えてきた気がします。
もうちょい読み込んで理屈をちゃんと理解したいと思います。

それでは今回はこの辺でノシ