Kris

createImageBitmap indisponible ? Diagnostic par plateforme et environnement

DépannageCompatibilité navigateurcreateImageBitmap

Ce que vous observez

Any3D affiche le message « Le navigateur actuel ne supporte pas createImageBitmap ». C'est l'un des trois éléments du chemin Worker, utilisé pour décoder efficacement les pixels d'image en arrière-plan. Sans lui, les flux de compression de texture, de conversion d'image en modèle, etc., ne peuvent pas emprunter le chemin Worker complet, et les fichiers volumineux risquent davantage de ralentir.

Causes fréquentes

CauseScénario typique
Navigateur/WebView trop ancienAncien Android WebView, pages intégrées dans une app
Contexte non sécuriséSite HTTP (hors localhost), file://
Ressources cross-origin mal configuréesCDN/CORS d'entreprise entraînant un échec de décodage d'image (se manifeste par un dysfonctionnement)
Limitation mémoire/ongletAppareil mobile à faible mémoire, politique « un seul onglet » en entreprise
Interférence d'extensionPlugin de confidentialité modifiant le comportement de l'API Image

Diagnostic par plateforme

Windows / macOS (desktop)

  1. Utilisez la dernière version stable de Chrome, Edge, Firefox ou Safari.
  2. Ouvrez Any3D impérativement via HTTPS.
  3. Temps d'écran macOS ou Sécurité familiale Windows : si le téléchargement ou l'accès aux médias est restreint, cela peut affecter le décodage des grandes images — testez avec un compte administrateur.
  4. Bureau à distance : les textures très haute résolution peuvent échouer dans un environnement GPU faible ; commencez par une petite image pour valider.

Linux

  1. Mettez à jour Chrome/Firefox ; sous Wayland, si le décodage GPU est anormal, vous pouvez essayer une session X11 pour comparaison (rare).

iOS / iPadOS

  1. Safari 14+ offre un bon support ; maintenez iOS à jour.
  2. Le navigateur intégré à WhatsApp / Facebook Messenger (ou autre app) a souvent un moteur obsolète → ouvrez dans Safari.
  3. Relais privé iCloud / Restrictions de contenu ne bloquent généralement pas createImageBitmap, mais peuvent bloquer les images cross-origin — assurez-vous que les textures du modèle sont sur la même origine ou accessibles.

Android

  1. Mettez à jour Chrome et Android System WebView (Paramètres → Applications → Afficher les applications système).
  2. Navigateurs alternatifs en mode compatibilité → passez à Chrome.
  3. Bien-être numérique / Family Link : les restrictions d'activité en arrière-plan n'affectent pas directement l'API, mais peuvent empêcher le téléchargement de gros fichiers.

Réseau, VPN et intranet d'entreprise

ScénarioExplication
VPN d'entrepriseSi les textures du modèle passent par un CDN interne, une erreur CORS ou de certificat peut entraîner un échec de décodage — la Console affichera une erreur réseau
Proxy transparentLorsque la réponse de l'image est modifiée ou corrompue, createImageBitmap peut rejeter
Intranet en HTTP uniquementContexte non sécurisé, l'API peut être indisponible ou avoir un comportement limité
Zero Trust / SSL inspectionLes certificats auto-signés doivent être importés comme de confiance, sinon le chargement des ressources échoue

Recommandation : déconnectez le VPN, passez sur un point d'accès mobile, testez avec un modèle purement géométrique sans texture externe — si le modèle géométrique fonctionne mais que le modèle texturé échoue, vérifiez d'abord le réseau/CORS.

Politiques d'entreprise et contrôle parental

  • Intune App Protection peut restreindre « Enregistrer sous / Télécharger », ce qui affecte indirectement le flux de sélection d'image, mais l'API elle-même devrait toujours exister — vérifiez avec la Console pour distinguer.
  • iPad supervisé à l'école : l'interdiction de l'application « Fichiers » n'affecte pas l'API, mais a un impact sur le mode de téléversement ; utilisez un canal de téléversement pris en charge.
  • DNS du contrôle parental du routeur : si le nom de domaine Any3D est bloqué, l'ensemble du site est indisponible, pas seulement createImageBitmap.

Réparation pas à pas (générique)

  1. HTTPS + navigateur à jour + redémarrage.
  2. Fenêtre privée pour exclure les extensions.
  3. Ouvrir dans le navigateur système, pas dans une WebView d'application.
  4. Vérifiez également si Web Worker et OffscreenCanvas signalent aussi des alertes.

Auto-test rapide

typeof createImageBitmap !== "undefined";

Avancé (nécessite HTTPS et une URL d'image accessible) :

fetch("https://example.com/favicon.ico")
  .then((r) => r.blob())
  .then((b) => createImageBitmap(b))
  .then(() => console.log("ok"))
  .catch(console.error);

Résumé

Les problèmes de createImageBitmap sont souvent dus à un WebView obsolète, un contexte non HTTPS, ou un échec de chargement de ressources lié au VPN/intranet. Après avoir mis à jour le WebView selon la plateforme, changé de réseau pour vérification et exclu les extensions, le chemin Worker de traitement d'image est généralement rétabli.

Nous soutenir