Any3DAny3D
·Any3D Team

¿OffscreenCanvas no disponible? Solución por plataforma y entorno

troubleshootingbrowser-compatibilityoffscreencanvas

Síntomas que ves

Any3D muestra "El navegador actual no soporta OffscreenCanvas". Es uno de los tres elementos clave del camino del Worker; sin él, procesos como la compresión de texturas que requieren codificación con WebGL2 dentro de un Worker no pueden ejecutarse completamente.

OffscreenCanvas permite crear un lienzo en un Web Worker y obtener un contexto WebGL, completando operaciones de GPU en segundo plano sin bloquear la página.

Causas comunes

CausaEscenario típico
Navegador/WebView desactualizadoChrome < 69, Safari < 16.4, Android WebView antiguo
Aceleración de hardware desactivadaWindows/macOS en modo de ahorro de energía o políticas que deshabilitan la GPU
Políticas empresarialesGPO que deshabilita la GPU, MDM que restringe capacidades gráficas
WebView embebidoWeChat, aplicaciones empresariales, entornos antiguos de Electron
Capa de redPoco común; generalmente es una falla en la carga del script, no en la API en sí

Verificación por plataforma

Windows

  1. Chrome / Edge: Configuración → Sistema → Activar "Usar aceleración de hardware" → Cerrar completamente y reiniciar el navegador.
  2. Controlador de tarjeta gráfica: En portátiles con gráficos duales, asegúrese de que el navegador use la tarjeta dedicada (Panel de control de NVIDIA / AMD Software).
  3. Directiva de grupo: Las políticas del tipo "Deshabilitar aceleración de hardware" causarán fallos en la creación del contexto WebGL de OffscreenCanvas.
  4. Escritorio remoto (RDP): Algunas sesiones de RDP tienen capacidades de GPU limitadas; pruebe iniciando sesión localmente para comparar.

macOS

  1. Safari 16.4+ o Chrome en su última versión.
  2. Configuración del sistema → Batería → El modo de bajo consumo puede reducir la programación de la GPU; reintente conectado a la corriente.
  3. Tiempo de uso de pantalla generalmente no deshabilita directamente OffscreenCanvas, pero si MDM restringe las API gráficas, contacte al departamenteo de TI.

Linux

  1. Confirme que Mesa/controladores propietarios funcionan correctamente; pruebe con la última versión de Chrome tanto en Wayland como en X11.
  2. Los servidores sin cabeza que usan navegadores de forma remota requieren una GPU virtual (escenario personal poco común).

iOS / iPadOS

  1. Safari se actualiza con el sistema (el soporte completo para OffscreenCanvas comienza en iOS 16.4+).
  2. El WebView dentro de una aplicación puede estar desactualizado respecto al Safari del sistema — abra el enlace en Safari directamente.
  3. Los iPads escolares en modo de supervisión pueden tener sistemas bloqueados; necesitarán que el administrador realice la actualización.

Android

  1. Actualice Chrome y el Android System WebView.
  2. Los núcleos de compatibilidad de navegadores nacionales no lo soportan → cambie al modo rápido o use Chrome.
  3. En dispositivos de gama baja con controladores GPU antiguos: intente desactivar "Modo de ahorro de energía" y reintente.

Red, VPN y entorno empresarial

OffscreenCanvas es una API local y normalmente no se ve afectada directamente por VPN. Sin embargo, si la VPN provoca que el navegador se degrade a "modo seguro" o cargue extensiones empresariales con scripts inyectados, puede fallar indirectamente:

  • Desconecte la VPN y compare;
  • Verifique si el navegador empresarial fuerza "renderizado por software";
  • Al usar iframe embebido, confirme que el nivel externo no bloquee el WebGL dentro del Worker.

Control parental y dispositivos supervisados

  • Family Link / Tiempo de uso de pantalla: Rara vez deshabilita OffscreenCanvas directamente; lo más común es que prohíba la instalación de actualizaciones del navegador, dejando la API desactualizada — permita que el sistema se actualice automáticamente.
  • Modo de examen/biblioteca: Puede usar un navegador personalizado; se recomienda cambiar a un dispositivo personal.

Solución paso a paso (general)

  1. Actualice el navegador a la versión mínima indicada en la tabla anterior.
  2. Active la aceleración de hardware y reinicie el navegador.
  3. Abra con el navegador del sistema, no con el WebView de una aplicación.
  4. Si también tiene errores de WebGL2, primero consulte la guía de solución de WebGL2.

Autoprueba rápida

typeof OffscreenCanvas !== "undefined"

Si devuelve false, significa que el entorno actual no soporta esta API.

Resumen

La ausencia de OffscreenCanvas es más común en navegadores/WebViews antiguos, aceleración de hardware desactivada, escritorio remoto en Windows o políticas empresariales de GPU. Habilitar la aceleración de GPU por plataforma, actualizar el WebView y cambiar al navegador del sistema suele restaurar la capacidad de codificación GPU dentro de Workers.

Apóyanos