Batch sprite adalah metode pengiriman beberapa sprite ke GPU dengan satu panggilan undian.
Tidak satu pun dari jawaban lain menunjukkan poin sebenarnya dari melakukan ini: meminimalkan perubahan status dan pengiriman perintah GPU. Jika Anda memiliki 100 sprite yang saya gambar, masing-masing dengan teksturnya sendiri, perangkat keras hanya dapat memproses satu sprite pada satu waktu. Lusinan atau bahkan ribuan inti shader akhirnya hampir tidak digunakan, dan GPU menghabiskan terlalu banyak waktu untuk mengkonfigurasi status render-nya untuk sakelar tekstur.
Jika Anda meletakkan semua gambar sprite Anda ke dalam atlas, Anda dapat meminimalkan perubahan kondisi yang diperlukan untuk menggambar. Pengemudi mungkin bahkan dapat secara otomatis menggabungkan permintaan menggambar sprite ke dalam satu batch sehingga perangkat keras dapat dimanfaatkan sepenuhnya, tetapi ini tidak dijamin atau tidak mungkin.
Jika Anda menggunakan sprite atlas dan kemudian membuat VBO tunggal dengan semua paha sprite Anda diisi ke dalamnya, sebuah permintaan undian tunggal dengan data itu, Anda dijamin bahwa perangkat keras sepenuhnya digunakan dan semua sprite Anda disajikan secara paralel.
Batch sprite kemudian melakukan hal yang sama: menempatkan sebanyak mungkin sprite Anda ke dalam VBO menggunakan atlas tunggal yang dikirimkan ke GPU dengan satu kali draw draw, memaksimalkan penggunaan GPU.
Ada cara lain untuk melakukan batching sprite (seperti pemasangan perangkat keras, menggunakan geometri shaders, dll), dan manfaat lain untuk melakukannya, tetapi intinya adalah bahwa batching berarti menggambar beberapa objek per panggilan panggilan.