¿Web Worker no disponible? Diagnóstico por plataforma y entorno
Síntoma que observas
En la parte inferior de Any3D aparece una advertencia amarilla: «El navegador actual no es compatible con Web Worker». La vista previa puede seguir funcionando, pero el procesamiento de archivos grandes tiende a bloquear la página y las rutas de Worker como compresión de texturas o conversión de imágenes a modelos no se activan.
Web Worker permite que los cálculos pesados se ejecuten en un hilo en segundo plano. La compresión de texturas y algunos flujos de conversión de Any3D dependen del trío Worker + OffscreenCanvas + createImageBitmap.
Causas comunes
| Causa | Escenario típico |
|---|---|
| Contexto no seguro | Abrir con file://, página HTTP interna (no localhost) |
| Navegador/WebView desactualizado | Navegador antiguo del sistema, páginas incrustadas en apps |
| Restricción CSP | Portal empresarial en iframe, inyección de worker-src por cliente Zero Trust |
| Bloqueo por extensión | Plugins de privacidad que bloquean Worker o URLs blob: |
| Anomalía de caché de red | Proxy/VPN que devuelve scripts Worker incompletos |
| Control parental del dispositivo | Perfil administrado que deshabilita scripts en segundo plano |
Diagnóstico por plataforma
Windows
- Accede siempre mediante HTTPS (
https://any3d.cc), no uses archivos HTML locales. - Política empresarial de Edge: en
Computer Configuration → Administrative Templates → Microsoft Edgeverifica si está limitado Worker o cookies de terceros (afectan indirectamente la carga de algunos Workers). - Seguridad familiar de Windows: las restricciones web en cuentas infantiles pueden impedir la creación de Workers.
macOS
- Tanto Safari como Chrome requieren macOS 12+ y versiones recientes del navegador.
- Tiempo de uso → Contenido y privacidad → si está activado «Limitar sitios web para adultos» o filtros personalizados, podrían bloquear el dominio del script Worker.
- Los perfiles MDM corporativos que deshabilitan capacidades de scripts más allá del «seguimiento entre sitios» deben ser revisados por TI.
Linux
- Asegúrate de que la URL sea HTTPS; el proxy Squid corporativo debe permitir peticiones relacionadas con
blob:yworker-src.
iOS / Android
- No uses el navegador integrado de WhatsApp/Telegram/Slack para procesar archivos grandes; abre con el navegador del sistema.
- El modo de bajo consumo en iOS normalmente no bloquea Workers, pero WebKit antiguo puede carecer de la API; mantén el sistema actualizado.
- Versión de WebView en Android demasiado antigua (WebView del sistema sin actualizar) puede inhabilitar Workers: actualiza «Android System WebView» desde Play Store.
Red, VPN y red interna corporativa
| Escenario | Explicación |
|---|---|
| VPN corporativa | Algunas VPN fuerzan descifrado HTTPS e inyectan CSP; TI debe autorizar Worker |
| Portal SSO intranet en iframe | La CSP de la página externa puede prohibir worker-src blob:; configurar aparte o abrir Any3D en nueva pestaña |
| Proxy inverso | Configuración incorrecta de Nginx/gateway puede causar tipo MIME incorrecto para scripts Worker |
| Filtro DNS de router parental | Poco común en Workers, pero si el sitio completo se degrada a espejo HTTP, Worker fallará |
Autoverificación: desconecta la VPN, cambia a 4G/5G y comprueba si la advertencia desaparece.
Referencia de CSP empresarial (para TI)
Si Any3D se incrusta en un iframe, se recomienda permitir:
worker-src 'self' blob:;
script-src 'self' 'unsafe-eval' blob:;
Los usuarios particulares no necesitan modificar el CSP manualmente.
Solución paso a paso (general)
- Asegúrate de que accedes por HTTPS y recarga la página (Ctrl+F5 / Cmd+Shift+R).
- Abre una ventana de incógnito para descartar extensiones.
- Actualiza el navegador y (en Android) el WebView del sistema.
- Abre Any3D directamente en una nueva pestaña, evitando el iframe del portal corporativo.
Autocomprobación rápida
typeof Worker !== "undefined";
Si devuelve true solo indica que la API existe; Any3D además necesita OffscreenCanvas y createImageBitmap para activar la ruta completa del Worker.
Impacto sin Worker
| Función | Impacto |
|---|---|
| Compresión de vértices (Draco, etc.) | Normalmente sigue disponible (hilo principal + WASM) |
| Compresión de texturas / KTX2 | Ruta Worker no disponible; archivos grandes tienden a bloquearse |
| Conversión imagen a modelo | Puede degradarse o el rendimiento cae significativamente |
Resumen
La advertencia de Web Worker suele deberse a HTTPS no seguro, WebView antiguo, CSP/VPN corporativa o bloqueo por extensiones. Actualiza el navegador según la plataforma, cambia de red para verificar, y pide a TI que revise iframe/CSP. Generalmente se recupera la capacidad de procesamiento en segundo plano.