ANARI simplifica o desenvolvimento de aplicativos portáteis de visualização 3D
Alguns dias atrás Khronos, revelado postando o lançamento do ANARI 1.0, que define uma API para mecanismos de renderização multiplataforma e visa unificar interfaces de programação para visualização de dados.
ANARI está posicionada como a primeira API de mecanismo de renderização 3D independente que tem amplo suporte da indústria de desenvolvedores de visualização científica com integração nos principais aplicativos de código aberto, incluindo VMD, VTK/ParaView e VisIt.
No ANARI, é detalhado que ele fornece uma C-API (C99) com ligações de tipo seguro no código C++ para criar árvores de objetos hierárquicos na memória para representar totalmente uma cena 3D, geometria de superfície 3D e dados volumétricos.
Dentro principais funções da ANARI, destaca o compatibilidade de plugins para estender a funcionalidade dos mecanismos de renderização, bem como o poder receber informações sobre atualização de cena em modo assíncrono, trabalho eficiente com arrays no modo de cópia zero (sem alocar memória adicional, usando apenas o buffer fornecido inicialmente), bem como suporte para ferramentas de renderização no modo interativo que são fornecidos.
É mencionado no post de Khronos que ANARI ea foi implementado pela AMD, Intel e NVIDIA, que já prepararam implementações para que seus engines de renderização sejam compatíveis com o padrão, além de disponibilizar acesso aos seus engines de renderização RadeonProRender, OSPRay e VisRTX.
Além disso, é mencionado que Espera-se que a nova especificação simplifique bastante o desenvolvimento de aplicativos. Visualize dados científicos. É por isso que o ANARI fornece funcionalidade de alto nível pronta para uso para criar cenas 3D na memória, eliminando a necessidade de escrever código gráfico de baixo nível.
"Historicamente, os aplicativos de visualização exigiam renderizadores personalizados, mas os rápidos avanços em algoritmos de renderização, hardware e APIs de GPU de baixo nível associadas tornaram cada vez mais difícil para os especialistas do domínio acompanhar os métodos de renderização modernos", disse Jefferson Amstutz, ANARI Working Presidente do grupo e engenheiro de software sênior da NVIDIA.
Aplicativos que oferecem suporte a ANARI podem funcionar com qualquer mecanismo de renderização que forneça essa API. A especificação foi desenvolvida de acordo com os princípios de construção de padrões abertos e leva em consideração os desejos da comunidade (por exemplo, em resposta a sugestões da comunidade, foi adicionado suporte ao formato glTF para usar materiais baseados na representação física).
“Como resultado de um esforço de três anos dos principais especialistas do setor trabalhando juntos no Khronos, a ANARI agora simplifica o desenvolvimento de aplicativos portáteis de visualização 3D usando mecanismos de back-end para acessar a renderização de próxima geração. Agradecemos à comunidade de visualização científica por sua assistência inestimável no aprimoramento do design do ANARI e agora estamos empolgados em ver como outros domínios de aplicativos tiram proveito do primeiro ecossistema do setor e API de mecanismo de renderização independente de fornecedor."
Finalmente, deve ser mencionado que atualmente um SDK aberto já é oferecido para desenvolvimento de aplicativos, que inclui camadas de back-end que implementam funções comuns, como manipulação de parâmetros ou tempos de vida de objetos, um conjunto de testes de conformidade baseado em Python.
Também existe um plug-in Blender ANARI de teste de conceito no ANARI SDK e na implementação ANARI-USD da NVIDIA que permite que qualquer aplicativo ANARI gere resultados em USD para uso na plataforma Omniverse e, como já mencionado, o suporte ANARI é integrado aos pacotes de visualização de código aberto VMD, VTK/ParaView e VisIt.
Se você interessado em saber mais sobre isso, você pode verificar os detalhes no link a seguir