WebGPU - WebGPU
Autor (es) original (is) | W3C |
---|---|
Desenvolvedor (s) | W3C , Apple Inc. , Mozilla , Microsoft , Google , comunidade de código aberto |
lançamento inicial | Inédita |
Repositório | |
Plataforma | Plataforma web |
Disponível em | inglês |
Modelo | API |
Local na rede Internet |
webgpu |
WebGPU é o nome de trabalho para um futuro padrão da web e API JavaScript para gráficos e computação acelerados , com o objetivo de fornecer "gráficos 3D modernos e recursos de computação". Ele é desenvolvido pela GPU W3C para o Web Community Group com engenheiros da Apple , Mozilla , Microsoft , Google e outros.
Ao contrário do WebGL , o WebGPU não é uma porta direta de nenhuma API nativa existente. Ele é baseado em APIs fornecidas por Vulkan , Metal e Direct3D 12 e se destina a fornecer alto desempenho em plataformas móveis e de desktop. As plataformas móveis serão limitadas na criação de WebGPUDevice
objetos que exigiriam APIs de gráficos modernos listados acima.
O primeiro protótipo conceitual chamado NXT foi apresentado no início de 2017 pela equipe do Chromium .
A equipe de desenvolvedores do Google Chrome o nomeou como um "sucessor" das APIs JavaScript WebGL / 2.
História
Em 8 de junho de 2016, o Google mostrou a apresentação "API de gráficos explícitos da web" para o grupo de trabalho WebGL (durante a reunião presencial semestral). A apresentação explorou as idéias e princípios básicos de construção de uma nova API para eventualmente substituir o WebGL, também conhecido como "WebGL Next".
Em 24 de janeiro de 2017, Khronos organizou uma reunião sem IP dedicada à discussão das idéias do "Próximo WebGL", que colidiu com a reunião do grupo de trabalho WebGL em Vancouver. A equipe do Google apresentou o protótipo NXT implementando uma nova API que poderia rodar em Chromium com OpenGL, ou autônomo com OpenGL e Metal. O NXT pegou conceitos emprestados de todas as APIs nativas Vulkan, Direct3D 12 e Metal. Os representantes da Apple e da Mozilla também mostraram seus protótipos construídos no Safari e no Servo correspondentemente, ambos replicando de perto o Metal API.
Grupo de Trabalho W3C
Em 7 de fevereiro de 2017, a equipe WebKit da Apple propôs a criação do grupo da comunidade W3C para projetar a API. Paralelamente, anunciaram uma prova técnica de conceito e proposta sob o nome "WebGPU", baseada em conceitos do Metal da Apple . O nome WebGPU foi posteriormente adotado pelo grupo da comunidade como um nome de trabalho para o padrão futuro, em vez de apenas a proposta inicial da Apple. A proposta inicial foi renomeada para "WebMetal" para evitar mais confusão.
O Grupo da Comunidade W3C "GPU para a Web" foi lançado em 16 de fevereiro de 2017. Nessa época, todos da Apple, Google e Mozilla tinham experimentos na área, mas apenas a proposta da Apple foi oficialmente submetida ao "gpuweb-propostas" repositório. Pouco depois, em 21 de março de 2017, a Mozilla apresentou uma proposta para WebGL Next dentro do repositório Khronos, com base no design Vulkan.
Em 1 de junho de 2018, citando "resolução para os problemas de mais alto nível" no esforço de padronização entre navegadores, a equipe do Chrome do Google anunciou a intenção de implementar o futuro padrão WebGPU.
Tecnologia
O WebGPU usa sua própria linguagem de sombreamento chamada WGSL, que é trivialmente traduzível para SPIR-V . Esta escolha é um compromisso entre três propostas: WebMetal textual da Apple, Web HLSL / WSL textual da Apple Safari e SPIR-V binário da Mozilla. Tint é um compilador feito pelo Google para WGSL.
Implementação
Tanto o Chrome quanto o Firefox suportam WebGPU com SPIR-V, com trabalho em andamento para o front-end WGSL. Safari oferece suporte a WebGPU com WSL.
Veja também
Notas
Referências
links externos
- Website oficial
- Especificação WebGPU
- gpuweb no GitHub
- Proposta de API WebGPU para Apple Webkit em 2017
- GPU no grupo da comunidade da Web no W3C