Kris

OffscreenCanvas indisponível? Diagnóstico por plataforma e ambiente

Solução de problemasCompatibilidade de navegadorOffscreenCanvas

O sintoma que você vê

O Any3D exibe a mensagem "O navegador atual não suporta OffscreenCanvas". Esse é um dos três componentes essenciais do caminho Worker; sem ele, processos como compressão de texturas que precisam usar WebGL2 para codificação dentro do Worker não podem ser executados por completo.

OffscreenCanvas permite criar uma tela e obter um contexto WebGL em um Web Worker, realizando operações GPU em segundo plano sem bloquear a página.

Causas comuns

CausaCenário típico
Navegador/WebView muito antigoChrome < 69, Safari < 16.4, Android WebView antigo
Aceleração de hardware desligadaEconomia de energia ou política no Windows/macOS desabilitando a GPU
Política corporativaGPO desabilitando GPU, MDM limitando a capacidade gráfica
WebView embutidoWebView do WhatsApp, app corporativo, Electron com versão antiga
Camada de redeRaro; geralmente é falha de carregamento de script, não da API em si

Diagnóstico por plataforma

Windows

  1. Chrome / Edge: Configurações → Sistema → Ativar "Usar aceleração de hardware" → Feche e reinicie o navegador completamente.
  2. Driver de vídeo: Em notebooks com placa de vídeo dupla, garanta que o navegador use a placa dedicada (Painel de Controle NVIDIA / AMD Software).
  3. Política de grupo: Políticas como "Desabilitar aceleração de hardware" podem impedir a criação de contexto WebGL do OffscreenCanvas.
  4. Área de Trabalho Remota (RDP): Algumas sessões RDP têm capacidade GPU limitada; teste com login local para comparar.

macOS

  1. Safari 16.4+ ou Chrome mais recente.
  2. Ajustes do Sistema → Bateria → O modo de baixa energia pode reduzir a escalação da GPU; teste com o carregador conectado.
  3. Tempo de Uso geralmente não desabilita diretamente o OffscreenCanvas, mas se a MDM restringir APIs gráficas, entre em contato com a TI.

Linux

  1. Verifique se os drivers Mesa/proprietários estão funcionando; teste com o Chrome mais recente tanto no Wayland quanto no X11.
  2. Navegador remoto em servidor headless precisa de GPU virtual (raro em cenário pessoal).

iOS / iPadOS

  1. Safari acompanha a atualização do sistema (a partir do iOS 16.4 o suporte a OffscreenCanvas é mais completo).
  2. WebView dentro de apps pode estar desatualizado em relação ao Safari do sistema — abra o link no Safari.
  3. iPads em modo de supervisão escolar podem estar travados em versão antiga do sistema; é necessário administrador para atualizar.

Android

  1. Atualize o Chrome e o Android System WebView.
  2. Navegadores alternativos (como Opera Mini, UC Browser) podem não ter suporte no modo de compatibilidade — mude para o modo rápido ou use o Chrome.
  3. Aparelhos de baixo custo com driver GPU muito antigo: tente desligar o "Modo de economia de energia" e teste novamente.

Rede, VPN e ambiente corporativo

OffscreenCanvas é uma API local, normalmente não é afetada diretamente pela VPN. No entanto, se a VPN fizer o navegador entrar em "modo de segurança" ou carregar extensões corporativas que injetem scripts, pode falhar indiretamente:

  • Desconecte a VPN e compare;
  • Verifique se o navegador corporativo está forçando "renderização por software";
  • Se estiver embutido em um iframe, confirme se a página pai não está bloqueando WebGL no Worker.

Controle dos pais e dispositivos supervisionados

  • Family Link / Tempo de Uso: raramente desabilitam diretamente o OffscreenCanvas; o mais comum é impedir a instalação de atualizações do navegador, deixando a API desatualizada — permita que o sistema atualize automaticamente.
  • Modo vestibular/biblioteca: pode usar navegadores personalizados; nesse caso, use um dispositivo pessoal.

Correção passo a passo (genérica)

  1. Atualize o navegador para pelo menos a versão mínima indicada na tabela acima.
  2. Ative a aceleração de hardware e reinicie o navegador.
  3. Abra o link no navegador do sistema, não em WebView de app.
  4. Se houver também erro de WebGL2, resolva primeiro o Guia de correção do WebGL2.

Teste rápido

typeof OffscreenCanvas !== "undefined";

Retornar false significa que o ambiente atual não suporta a API.

Resumo

A ausência de OffscreenCanvas geralmente está relacionada a navegador/WebView antigo, aceleração de hardware desligada, sessão remota Windows ou política corporativa de GPU. Habilitar a aceleração GPU, atualizar o WebView e usar o navegador do sistema normalmente restaura a capacidade de codificação GPU dentro do Worker.

Apoie-nos