As ferramentas experimentais do Qt Shader atualmente permitem o condicionamento gráfico e computacional do shader. Portanto, elas são usadas pela camada de abstração gráfica do Qt em desenvolvimento para dar suporte às APIs Vulkan, Metal, Direct3D e OpenGL. Agora, o Qt Shader Tools parece se tornar o módulo Qt6 oficial.
O Qt Shader Tools oferece vários recursos de shader para prepará-los para consumo por diferentes APIs de gráficos. Atualmente, o Qt Shader Tools é usado antecipadamente no QtGUI com o Qt 5.14+. No entanto, para o Qt 6.0, o Qt Shader Tools está executando as etapas apropriadas para se tornar um módulo formal do Qt 6 para compilar e traduzir shaders entre interfaces.
Qt Shader Tools deve ser padrão no Qt6
Eu gostaria de sugerir a promoção do Qt Shader Tools (atualmente qt-labs ou qtshadertools) em um módulo Qt adequado para o Qt 6.0.
O Qt 5.x não está no escopo, o que significa que o novo repositório qt / qtshadertools começaria apenas com uma ramificação de desenvolvimento e deve ser ignorado nas versões e compilações do Qt 5.x.
Conforme descrito nesta postagem anterior do blog [2], as APIs e ferramentas deste módulo fornecem a funcionalidade de produtor para o novo pipeline de shader que permite ao Qt Quick e, eventualmente, ao Qt Quick 3D, operar no Vulkan, Metal e Direct3D, além do OpenGL. Os bits do consumidor já fazem parte do QtGui no 5.14.
Para abrir a possibilidade de os módulos e aplicativos Qt executarem as etapas de condicionamento necessárias em seus sombreadores, offline ou em tempo de execução, o módulo precisa fazer parte e ser enviado com o Qt na versão 6.0. (a integração do sistema de compilação também está planejada, mas esse é um exercício futuro separado)
Além disso, alguns dos gráficos em andamento do Qt 6.0 funcionam, como a habilitação do Qt Quick 3D para operar sobre a abstração gráfica do QRhi, requer vinculação ao módulo qtshadertools (por enquanto, pelo menos). E assim, para permitir que esse trabalho ocorra no dev, o qtshadertools precisa estar presente como um módulo adequado, afirma o desenvolvedor Laszlo Agocs.
Envio deve acontecer logo
As ferramentas Qt Shader podem preparar shaders antecipadamente e em tempo de execução, e o plano da The Qt Company é enviá-lo como parte do Qt 6.0 com a preparação para uma boa cobertura das APIs gráficas modernas.
Então, o Qt Shader Tools está agora passando pelas formalidades para tornar-se um módulo oficial começando no Qt 6.0 para manipulação de gráficos / computadores de sombreamento.
O Qt 6.0 está previsto para ser lançado antes do final de 2020, se tudo correr bem.
Fonte: Phoronix