David Airlie conseguiu hackear o suporte de sombreador de tarefa/malha dentro do Lavapipe, a implementação Vulkan de software baseada em CPU dentro do Mesa.
O sombreamento de malha para Vulkan é uma das adições empolgantes feitas no ano passado à especificação com VK_EXT_mesh_shader e semelhante à funcionalidade já encontrada no DirectX 12. Já há suporte para sombreamento de malha em alguns drivers Vulkan de hardware dentro do Mesa, como RADV em GPUs compatíveis, mas uma implementação de software para Lavapipe foi um pouco complicada. David Airlie, da Red Hat, explicou na solicitação de mesclagem:
“Isso adiciona suporte a VK_EXT_mesh_shader ao lavapipe, escrevendo algumas interfaces de gálio para ele e conectando-o dentro do llvmpipe como variantes de shader computacional.
O as saídas dos sombreadores de computação são canalizadas de volta para o módulo de desenho para recorte e coleta de estatísticas.
Atualmente passa em todos os testes CTS.”
Este MR vem com mais de duas mil linhas de novo código e agora está no Git para o lançamento do Mesa 23.2 do próximo trimestre.