================================================================================
🎯 DIAGNOSTIC : Crosshair invisible en WebGL
================================================================================

SYMPTÔME :
----------
- ✅ Crosshair fonctionne en Unity Player
- ❌ Crosshair invisible en WebGL
- ⚠️ Seulement après changement de l'URL de l'image
- ✅ Tous les autres jeux de tir fonctionnent en WebGL

CAUSE IDENTIFIÉE :
------------------
1. Headers HTTP interdits en WebGL (User-Agent, Cache-Control)
   → Corrigé dans MacImageLoader.cs

2. Problème CORS avec CloudFront
   → Image sur domaine différent (d27dezxjuxsdf7.cloudfront.net)
   → Serveur ne renvoie pas Access-Control-Allow-Origin

POURQUOI ÇA MARCHE SUR LES AUTRES JEUX ?
-----------------------------------------
Images sur le MÊME domaine (ujsa.studioplc.fr) = pas de CORS
Image CloudFront (domaine différent) = CORS obligatoire en WebGL

Unity Player = ignore CORS ✅
WebGL = applique CORS strict ❌

================================================================================
✅ SOLUTION RAPIDE (5 minutes)
================================================================================

OPTION A : DÉPLACER L'IMAGE (RECOMMANDÉ)
-----------------------------------------
1. Télécharger :
   https://d27dezxjuxsdf7.cloudfront.net/media/2026/01/curseur-arrow-taxi-jaune_6964e52ae822e.png

2. Uploader sur :
   https://ujsa.studioplc.fr/datas/images/curseur-arrow-taxi-jaune.png

3. Modifier le JSON du jeu :
   {
     "assets": {
       "crosshair": "https://ujsa.studioplc.fr/datas/images/curseur-arrow-taxi-jaune.png"
     }
   }

4. Rebuild WebGL

→ ✅ RÉSOLU !


OPTION B : CONFIGURER CORS CLOUDFRONT (30 minutes)
---------------------------------------------------
AWS Console → CloudFront → Votre distribution → Behaviors
→ Response Headers Policy → Ajouter :
  - Access-Control-Allow-Origin: *
  - Access-Control-Allow-Methods: GET, OPTIONS

→ Attendre propagation (5-10 min)
→ Rebuild WebGL

================================================================================
🧪 TESTER LA CORRECTION
================================================================================

DANS UNITY :
------------
1. Créer GameObject vide
2. Ajouter script : CrosshairDebugTester
3. Entrer l'URL du crosshair
4. Compiler WebGL et lancer
5. F12 → Console

RÉSULTAT ATTENDU :
------------------
✅ SUCCÈS ! Texture chargée: XXXxXXX
✅ Sprite créé avec succès !
CONCLUSION: L'image se charge correctement.

SI ÉCHEC :
----------
❌ ÉCHEC DE LA REQUÊTE !
Code HTTP: 0
Result: ConnectionError
🌐 PROBLÈME WEBGL DÉTECTÉ

→ Configurer CORS ou déplacer l'image

================================================================================
📁 FICHIERS MODIFIÉS
================================================================================

✅ MacImageLoader.cs
   → Headers WebGL désactivés (User-Agent, Cache-Control)
   → Logs de diagnostic WebGL ajoutés

✅ CrosshairManager.cs
   → Logs d'erreur WebGL améliorés
   → Meilleur diagnostic CORS

✅ CrosshairDebugTester.cs (NOUVEAU)
   → Script de test pour diagnostiquer
   → Affiche logs détaillés en WebGL

✅ WebGLCursor.jslib (BONUS)
   → Masque le curseur HTML en WebGL
   → Résout aussi un autre problème potentiel

================================================================================
🎯 PROCHAINES ÉTAPES
================================================================================

1. [ ] Déplacer l'image vers ujsa.studioplc.fr (OU configurer CORS)
2. [ ] Modifier le JSON du jeu avec la nouvelle URL
3. [ ] Rebuild WebGL
4. [ ] Tester avec CrosshairDebugTester
5. [ ] Vérifier F12 → Console pour logs
6. [ ] Confirmer que le crosshair apparaît

================================================================================
📖 DOCUMENTATION COMPLÈTE
================================================================================

- SOLUTION_CROSSHAIR_WEBGL_CORS.md : Documentation détaillée
- GUIDE_RAPIDE_CROSSHAIR.md : Guide pas-à-pas
- DIAGNOSTIC_CROSSHAIR.txt : Ce fichier (résumé)

================================================================================
💡 RAPPEL
================================================================================

Ce n'est PAS un problème de code Unity.
C'est un problème de configuration serveur (CORS).

Unity Player = pas de restrictions
WebGL = restrictions navigateur

Solution la plus simple : héberger tous les assets sur le même domaine.

================================================================================
Date : 12 janvier 2026
================================================================================
