Буфер команд
Список команд GPU, заранее записанный на CPU и отправленный в графическую очередь одним пакетом, а не вызываемый по одной команде.
Старый OpenGL работал в «непосредственном режиме»: каждый вызов требовал от драйвера немедленного действия, что привязывало рендеринг к одному потоку и добавляло скрытые накладные расходы к каждому вызову. Vulkan, Direct3D 12 и Metal позволяют записать вызовы отрисовки и смены состояния в буфер (в D3D он называется command list) и передать его, когда он готов.
Запись и отправка разделены, поэтому несколько потоков могут параллельно собирать свои буферы — без этого современный GPU не накормить. Буферы можно переиспользовать между кадрами, если содержимое не менялось, а GPU-инстансинг сокращает число команд, которые вообще нужно записывать.