Draw Call Batching (ドローコールバッチング)は、ゲームグラフィックスのレンダリングや最適化(テクニカルアート)において極めて重要となる技術用語です。同じマテリアルやテクスチャを共有する複数のオブジェクトへの描画命令を自動で1つにまとめ、CPUからGPUへの通信回数を劇的に削減する最適化技術。
現実世界での例え:1枚の紙を運ぶために、トラックを何千回も往復させるのではなく、バルク貨物として『1台の大型トラックにまとめて輸送する』効率化
ドローコールバッチングは、「配送センター(CPU)から建築現場(GPU)へ、資材(3Dモデル)を届ける輸送ルートの超効率化」です。バッチングがない状態は、ネジ1本(1ポリゴン)届けるために、毎回1台のトラック(Draw Call発信)を往復させている極めて非効率な状態です。バッチングは、同じ現場宛てで同じ部品(同じマテリアル)であれば、巨大なコンテナトラック(バッチ)に山積みにして一度にまとめてドカンと輸送するため、高速道路の渋滞(CPUオーバーヘッド)が完全に消滅します。
詳細な仕組みと動作原理
テクスチャアトラス化(複数のテクスチャを1枚にまとめる)を行ってマテリアルを統一し、静的バッチング(Static Batching)や動的バッチング(Dynamic Batching)、GPU Instancingを有効にして命令を統合します。