語ります。

Objectをいっっっぱい出したい

のです!!

でもDrawコールは増やしたくない…

ということで、せっかく2D = 頂点情報がすべて同じなので…

インスタンス描画を実装しよう!!

インスタンス描画とは

1つの頂点情報に対して複数の変換行列を渡すことで、 Drawコールの回数を抑えてCPU<->GPUのやりとりを減らし描画にかかるCPU負荷を下げるとともにスループットを高速化する手法。

そもそも描画ってどういう機序で行われるの?

基本的にはデータを送って、送って、送って、最後に今のデータで描画してねという指令(これはDrawコール)を送って描画されます。

そしてDrawコールを送ると、レンダリングパイプラインと呼ばれるプロセスが走ります。

image.png

ざっくりこんな具合、パイプラインにはもっといろんな処理がありますが、大体の人が今回使ったのはこの程度のはず。