Documentation de Needle Engine
Downloads
  • What is Needle Engine?
  • Témoignages
  • Get an overview

    • Samples and Showcase
    • Notre Vision 🔮
    • Aperçu des fonctionnalités
    • Vue d'ensemble technique
  • Resources

    • Pricing and Plans
    • Changelog
    • API Documentation
    • Support & Community
  • Integrations

    • Needle Engine pour Unity
    • Needle Engine pour Blender
    • Needle Engine en tant que composant web
    • Needle Engine sur votre site Web
    • Needle Cloud
  • Topics

    • Structure de projet Web
    • Everywhere Actions
    • Exporter des Assets vers glTF
    • Frameworks, Bundlers, HTML
    • Tester sur les appareils locaux
    • Déploiement et Optimisation
  • Advanced

    • Réseau
    • VR & AR (WebXR)
    • Utiliser Needle Engine directement depuis HTML
    • Synchronisation de l'Editor (Editor Sync)
  • Troubleshooting

    • Comment déboguer
    • Questions et Réponses (FAQ) 💡
    • Get Help
  • Videos

    • Tutorials on Youtube
    • Interviews on Youtube
  • Scripting Overview

    • Scripting in Needle Engine
    • Introduction au Scripting pour les Développeurs Unity
    • Composants principaux de Needle
    • Everywhere Actions
  • Components and Lifecycle

    • Créer et utiliser des Components
    • @serializable et autres décorateurs
    • Génération automatique de composants
    • Exemples de Scripting
    • Community Contributions
    • Modules supplémentaires
  • Settings and APIs

    • <needle-engine> Configuration
    • needle.config.json
    • Needle Engine API
    • three.js API
Help
Samples
Pricing
  • Needle Website
  • Needle Cloud
  • Support Community
  • Discord Server
  • X/Twitter
  • YouTube
  • Newsletter
  • Email
  • Feedback
  • Github
  • English
  • 简体中文
  • Español
  • Português
  • Français
  • हिन्दी
  • 日本語
  • Deutsch
  • Tiếng Việt
Downloads
  • What is Needle Engine?
  • Témoignages
  • Get an overview

    • Samples and Showcase
    • Notre Vision 🔮
    • Aperçu des fonctionnalités
    • Vue d'ensemble technique
  • Resources

    • Pricing and Plans
    • Changelog
    • API Documentation
    • Support & Community
  • Integrations

    • Needle Engine pour Unity
    • Needle Engine pour Blender
    • Needle Engine en tant que composant web
    • Needle Engine sur votre site Web
    • Needle Cloud
  • Topics

    • Structure de projet Web
    • Everywhere Actions
    • Exporter des Assets vers glTF
    • Frameworks, Bundlers, HTML
    • Tester sur les appareils locaux
    • Déploiement et Optimisation
  • Advanced

    • Réseau
    • VR & AR (WebXR)
    • Utiliser Needle Engine directement depuis HTML
    • Synchronisation de l'Editor (Editor Sync)
  • Troubleshooting

    • Comment déboguer
    • Questions et Réponses (FAQ) 💡
    • Get Help
  • Videos

    • Tutorials on Youtube
    • Interviews on Youtube
  • Scripting Overview

    • Scripting in Needle Engine
    • Introduction au Scripting pour les Développeurs Unity
    • Composants principaux de Needle
    • Everywhere Actions
  • Components and Lifecycle

    • Créer et utiliser des Components
    • @serializable et autres décorateurs
    • Génération automatique de composants
    • Exemples de Scripting
    • Community Contributions
    • Modules supplémentaires
  • Settings and APIs

    • <needle-engine> Configuration
    • needle.config.json
    • Needle Engine API
    • three.js API
Help
Samples
Pricing
  • Needle Website
  • Needle Cloud
  • Support Community
  • Discord Server
  • X/Twitter
  • YouTube
  • Newsletter
  • Email
  • Feedback
  • Github
  • English
  • 简体中文
  • Español
  • Português
  • Français
  • हिन्दी
  • 日本語
  • Deutsch
  • Tiếng Việt
  • Getting Started

    • Downloads
    • Needle Engine for Unity
    • Needle Engine for Blender
    • Needle Engine as Web Component
    • Needle Engine on your Website
    • Needle Cloud
    • Custom integrations
    • Support and Community
  • Core Concepts

    • Structure de projet Web
    • Everywhere Actions
    • Exporter des Assets vers glTF
    • Frameworks, Bundlers, HTML
    • Tester sur les appareils locaux
    • Déploiement et Optimisation
    • Comment déboguer
    • Questions et Réponses (FAQ) 💡
  • Scripting

    • Scripting in Needle Engine
    • Introduction au Scripting pour les Développeurs Unity
    • Créer et utiliser des Components
    • Génération automatique de composants
    • Exemples de Scripting
    • Community Contributions
  • Advanced

    • VR & AR (WebXR)
    • Réseau
    • Synchronisation de l'Editor (Editor Sync)
  • Reference

    • Aperçu des fonctionnalités
    • Vue d'ensemble technique
    • Composants principaux de Needle
    • needle.config.json
    • <needle-engine> Configuration
    • @serializable et autres décorateurs

Le composant web <needle-engine> est livré avec une belle collection d'attributs intégrés qui peuvent être utilisés pour modifier l'apparence et la convivialité de la scène chargée sans avoir besoin d'ajouter ou de modifier la scène three.js directement. Le tableau ci-dessous présente une liste des plus importants :

AttributDescription
Chargement
srcChemin vers un ou plusieurs fichiers glTF ou glb.
Les types pris en charge sont string, string[] ou un tableau sous forme de chaîne de caractères (séparés par ,)
dracoDecoderPathURL du décodeur draco
dracoDecoderTypeType de décodeur draco. Les options sont wasm ou js. Voir la documentation three.js
ktx2DecoderPathURL du décodeur KTX2
Rendu
background-coloroptionnel, couleur hexadécimale à utiliser comme couleur de fond. Exemples : rgb(255, 200, 100), #dddd00
background-imageoptionnel, URL d'une image de skybox (image de fond) ou une chaîne de préréglage : studio, blurred-skybox, quicklook, quicklook-ar
background-blurrinessoptionnel, valeur de flou entre 0 (pas de flou) et 1 (flou max) pour l'background-image. Exemple : background-blurriness="0.5"
environment-imageoptionnel, URL d'une image d'environnement (lumière d'environnement) ou une chaîne de préréglage : studio, blurred-skybox, quicklook, quicklook-ar
contactshadowsoptionnel, rend les ombres de contact
tone-mappingoptionnel, les valeurs prises en charge sont none, linear, neutral, agx
tone-mapping-exposurenombre optionnel, par exemple augmente l'exposition avec tone-mapping-exposure="1.5", nécessite que tone-mapping soit défini
Interaction
autoplayajouter ou définir sur true pour lire automatiquement les animations, par exemple <needle-engine autoplay
camera-controlsajouter ou définir sur true pour ajouter automatiquement des OrbitControls si aucun contrôle de caméra n'est trouvé dans la scène
auto-rotateajouter pour activer la rotation automatique (uniquement utilisé avec camera-controls)
Événements
loadstartNom de la fonction à appeler lorsque le chargement commence. Notez que les arguments sont (ctx:Context, evt:Event). Vous pouvez appeler evt.preventDefault() pour masquer l'overlay de chargement par défaut
progressNom de la fonction à appeler lors des mises à jour de chargement. onProgress(ctx:Context, evt: {detail: {context:Context, name:string, index:number, count:number, totalProgress01:number}) { ... }
loadfinishedNom de la fonction à appeler lorsque le chargement est terminé
Affichage de ChargementOptions disponibles pour modifier l'apparence de l'affichage de chargement de Needle Engine. Utilisez ?debugloadingrendering pour faciliter l'édition
loading-styleLes options sont light ou dark
loading-background-colorPRO — Change la couleur de fond du chargement (par exemple =#dd5500)
loading-text-colorPRO — Change la couleur du texte de chargement
loading-logo-srcPRO — Change l'image du logo de chargement
primary-colorPRO — Change la couleur primaire de chargement
secondary-colorPRO — Change la couleur secondaire de chargement
hide-loading-overlayPRO — Ne pas afficher l'overlay de chargement, ajouté dans Needle Engine > 3.17.1
Interne
hashUtilisé en interne, est ajouté aux fichiers chargés pour forcer une mise à jour (par exemple, lorsque le navigateur a mis en cache un fichier glb). Ne devrait pas être modifié manuellement.

Exemples

<!-- Définition du chemin vers un glb personnalisé à charger -->
<needle-engine src="path/to/your.glb"></needle-engine>
<!-- Remplacement de l'emplacement du décodeur draco -->
<needle-engine src="path/to/your.glb" dracoDecoderPath="path/to/draco/folder"></needle-engine>

Définition des images d'environnement, lecture d'animation et contrôles automatiques de la caméra. Voir en direct sur stackblitz

<needle-engine
      camera-controls
      auto-rotate
      autoplay
      skybox-image="https://dl.polyhaven.org/file/ph-assets/HDRIs/hdr/1k/industrial_sunset_puresky_1k.hdr"
      environment-image="https://dl.polyhaven.org/file/ph-assets/HDRIs/hdr/1k/industrial_sunset_puresky_1k.hdr"
      src="https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/DamagedHelmet/glTF-Embedded/DamagedHelmet.gltf"
      >
      </needle-engine>

Réception d'un événement lorsque le contexte needle-engine a terminé le chargement :

<needle-engine loadfinished="onLoadFinished"> </needle-engine>
<script>
    function onLoadFinished() {
        console.log("Needle Engine has finished loading");
    }
</script>

Style de chargement personnalisé (PRO)

Vous pouvez facilement modifier l'apparence de Needle Engine en définissant les attributs appropriés sur le composant web <needle-engine>. Veuillez consulter le tableau ci-dessus pour plus de détails.

custom loadingVoir le code sur github

Page traduite automatiquement par l'IA

Suggest changes
Dernière mise à jour:: 22/04/2025 11:01
Prev
needle.config.json
Next
@serializable et autres décorateurs