Lista de comandos

Uma lista de comandos é uma sequência de comandos de GPU que podem ser gravados e reproduzidos. Uma lista de comandos pode melhorar o desempenho reduzindo a quantidade de sobrecarga gerada pelo runtime.

Use uma lista de comandos nos seguintes cenários:

  • Em um único quadro, renderize parte da cena em um thread enquanto grava outra parte da cena em um segundo thread. No final do quadro, reproduza a lista de comandos gravados no primeiro thread. Use essa abordagem para dimensionar tarefas de renderização complexas em vários threads ou núcleos.
  • Registre previamente uma lista de comandos antes de você precisar renderizá-la (por exemplo, enquanto um nível estiver carregando) e reproduzi-la com eficiência mais tarde em sua cena. Essa otimização funciona bem quando você precisa renderizar algo com frequência.

Uma lista de comandos é imutável e foi projetada para ser gravada e reproduzida durante uma única execução de um aplicativo. Uma lista de comandos não foi projetada para ser previamente gravada antes da execução do jogo e carregada de sua mídia, pois não há como persistir a lista.

Uma lista de comandos deve ser registrada por um contexto adiado, mas só pode ser reproduzida em um contexto imediato. Contextos adiados podem gerar listas de comandos simultaneamente.

Renderização imediata e adiada

Multithreading