[{"data":1,"prerenderedAt":4743},["ShallowReactive",2],{"navigation":3,"\u002Fapi\u002Fmiscellaneous":498,"\u002Fapi\u002Fmiscellaneous-surround":523,"misc-list":528},[4,26],{"title":5,"path":6,"stem":7,"children":8},"Getting Started","\u002Fgetting-started","1.getting-started\u002F1.index",[9,10,14,18,22],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13},"Installation Guide","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F2.installation",{"title":15,"path":16,"stem":17},"Usage","\u002Fgetting-started\u002Fusage","1.getting-started\u002F3.usage",{"title":19,"path":20,"stem":21},"Loading Models","\u002Fgetting-started\u002Floading-models","1.getting-started\u002F4.loading-models",{"title":23,"path":24,"stem":25},"Upgrade Guide","\u002Fgetting-started\u002Fupgrade-guide","1.getting-started\u002F5.upgrade-guide",{"title":27,"path":28,"stem":29,"children":30},"Api","\u002Fapi","2.api",[31,34,96,126,168,210,308,334,368,418,464],{"title":32,"path":28,"stem":33},"All","2.api\u002Findex",{"title":35,"path":36,"stem":37,"children":38},"Abstractions","\u002Fapi\u002Fabstractions","2.api\u002F1.abstractions\u002Findex",[39,40,44,48,52,56,60,64,68,72,76,80,84,88,92],{"title":35,"path":36,"stem":37},{"title":41,"path":42,"stem":43},"Align","\u002Fapi\u002Fabstractions\u002Falign","2.api\u002F1.abstractions\u002Falign",{"title":45,"path":46,"stem":47},"Billboard","\u002Fapi\u002Fabstractions\u002Fbillboard","2.api\u002F1.abstractions\u002Fbillboard",{"title":49,"path":50,"stem":51},"Camera Shake","\u002Fapi\u002Fabstractions\u002Fcamera-shake","2.api\u002F1.abstractions\u002Fcamera-shake",{"title":53,"path":54,"stem":55},"Decal","\u002Fapi\u002Fabstractions\u002Fdecal","2.api\u002F1.abstractions\u002Fdecal",{"title":57,"path":58,"stem":59},"Edges","\u002Fapi\u002Fabstractions\u002Fedges","2.api\u002F1.abstractions\u002Fedges",{"title":61,"path":62,"stem":63},"Fit","\u002Fapi\u002Fabstractions\u002Ffit","2.api\u002F1.abstractions\u002Ffit",{"title":65,"path":66,"stem":67},"Instances","\u002Fapi\u002Fabstractions\u002Finstances","2.api\u002F1.abstractions\u002Finstances",{"title":69,"path":70,"stem":71},"Levioso (Float)","\u002Fapi\u002Fabstractions\u002Flevioso","2.api\u002F1.abstractions\u002Flevioso",{"title":73,"path":74,"stem":75},"Mask","\u002Fapi\u002Fabstractions\u002Fmask","2.api\u002F1.abstractions\u002Fmask",{"title":77,"path":78,"stem":79},"Merged","\u002Fapi\u002Fabstractions\u002Fmerged","2.api\u002F1.abstractions\u002Fmerged",{"title":81,"path":82,"stem":83},"Outline","\u002Fapi\u002Fabstractions\u002Foutline","2.api\u002F1.abstractions\u002Foutline",{"title":85,"path":86,"stem":87},"Sampler","\u002Fapi\u002Fabstractions\u002Fsampler","2.api\u002F1.abstractions\u002Fsampler",{"title":89,"path":90,"stem":91},"ScreenSizer","\u002Fapi\u002Fabstractions\u002Fscreen-sizer","2.api\u002F1.abstractions\u002Fscreen-sizer",{"title":93,"path":94,"stem":95},"ScreenSpace","\u002Fapi\u002Fabstractions\u002Fscreen-space","2.api\u002F1.abstractions\u002Fscreen-space",{"title":97,"path":98,"stem":99,"children":100},"Controls","\u002Fapi\u002Fcontrols","2.api\u002F2.controls\u002Findex",[101,102,106,110,114,118,122],{"title":97,"path":98,"stem":99},{"title":103,"path":104,"stem":105},"Camera Controls","\u002Fapi\u002Fcontrols\u002Fcamera-controls","2.api\u002F2.controls\u002Fcamera-controls",{"title":107,"path":108,"stem":109},"Keyboard Controls","\u002Fapi\u002Fcontrols\u002Fkeyboard-controls","2.api\u002F2.controls\u002Fkeyboard-controls",{"title":111,"path":112,"stem":113},"Map Controls","\u002Fapi\u002Fcontrols\u002Fmap-controls","2.api\u002F2.controls\u002Fmap-controls",{"title":115,"path":116,"stem":117},"Orbit Controls","\u002Fapi\u002Fcontrols\u002Forbit-controls","2.api\u002F2.controls\u002Forbit-controls",{"title":119,"path":120,"stem":121},"PointerLock Controls","\u002Fapi\u002Fcontrols\u002Fpointer-lock-controls","2.api\u002F2.controls\u002Fpointer-lock-controls",{"title":123,"path":124,"stem":125},"Transform Controls","\u002Fapi\u002Fcontrols\u002Ftransform-controls","2.api\u002F2.controls\u002Ftransform-controls",{"title":127,"path":128,"stem":129,"children":130},"Loaders","\u002Fapi\u002Floaders","2.api\u002F3.loaders\u002Findex",[131,132,136,140,144,148,152,156,160,164],{"title":127,"path":128,"stem":129},{"title":133,"path":134,"stem":135},"useGLTF","\u002Fapi\u002Floaders\u002Fuse-gltf","2.api\u002F3.loaders\u002F1.use-gltf",{"title":137,"path":138,"stem":139},"GLTFModel","\u002Fapi\u002Floaders\u002Fgltf-model","2.api\u002F3.loaders\u002F2.gltf-model",{"title":141,"path":142,"stem":143},"useFBX","\u002Fapi\u002Floaders\u002Fuse-fbx","2.api\u002F3.loaders\u002F3.use-fbx",{"title":145,"path":146,"stem":147},"FBXModel","\u002Fapi\u002Floaders\u002Ffbx-model","2.api\u002F3.loaders\u002F4.fbx-model",{"title":149,"path":150,"stem":151},"useTexture","\u002Fapi\u002Floaders\u002Fuse-texture","2.api\u002F3.loaders\u002F5.use-texture",{"title":153,"path":154,"stem":155},"useTextures","\u002Fapi\u002Floaders\u002Fuse-textures","2.api\u002F3.loaders\u002F6.use-textures",{"title":157,"path":158,"stem":159},"useSVG","\u002Fapi\u002Floaders\u002Fuse-svg","2.api\u002F3.loaders\u002F7.use-svg",{"title":161,"path":162,"stem":163},"useProgress","\u002Fapi\u002Floaders\u002Fuse-progress","2.api\u002F3.loaders\u002Fuse-progress",{"title":165,"path":166,"stem":167},"useVideoTexture","\u002Fapi\u002Floaders\u002Fuse-video-texture","2.api\u002F3.loaders\u002Fuse-video-texture",{"title":169,"path":170,"stem":171,"children":172},"Materials","\u002Fapi\u002Fmaterials","2.api\u002F4.materials\u002Findex",[173,174,178,182,186,190,194,198,202,206],{"title":169,"path":170,"stem":171},{"title":175,"path":176,"stem":177},"Custom Shader Material","\u002Fapi\u002Fmaterials\u002Fcustom-shader-material","2.api\u002F4.materials\u002Fcustom-shader-material",{"title":179,"path":180,"stem":181},"Mesh Glass Material","\u002Fapi\u002Fmaterials\u002Fglass-material","2.api\u002F4.materials\u002Fglass-material",{"title":183,"path":184,"stem":185},"Holographic Material","\u002Fapi\u002Fmaterials\u002Fholographic-material","2.api\u002F4.materials\u002Fholographic-material",{"title":187,"path":188,"stem":189},"Mesh Discard Material","\u002Fapi\u002Fmaterials\u002Fmesh-discard-material","2.api\u002F4.materials\u002Fmesh-discard-material",{"title":191,"path":192,"stem":193},"Mesh Portal Material","\u002Fapi\u002Fmaterials\u002Fmesh-portal-material","2.api\u002F4.materials\u002Fmesh-portal-material",{"title":195,"path":196,"stem":197},"Mesh Reflection Material","\u002Fapi\u002Fmaterials\u002Fmesh-reflection-material","2.api\u002F4.materials\u002Fmesh-reflection-material",{"title":199,"path":200,"stem":201},"Mesh Transmission Material","\u002Fapi\u002Fmaterials\u002Fmesh-transmission-material","2.api\u002F4.materials\u002Fmesh-transmission-material",{"title":203,"path":204,"stem":205},"Point Material","\u002Fapi\u002Fmaterials\u002Fpoint-material","2.api\u002F4.materials\u002Fpoint-material",{"title":207,"path":208,"stem":209},"Wobble Material","\u002Fapi\u002Fmaterials\u002Fwobble-material","2.api\u002F4.materials\u002Fwobble-material",{"title":211,"path":212,"stem":213,"children":214},"Shapes","\u002Fapi\u002Fshapes","2.api\u002F5.shapes\u002Findex",[215,216,220,224,228,232,236,240,244,248,252,256,260,264,268,272,276,280,284,288,292,296,300,304],{"title":211,"path":212,"stem":213},{"title":217,"path":218,"stem":219},"Box","\u002Fapi\u002Fshapes\u002Fbox","2.api\u002F5.shapes\u002Fbox",{"title":221,"path":222,"stem":223},"CatmullRomCurve3","\u002Fapi\u002Fshapes\u002Fcatmullromcurve3","2.api\u002F5.shapes\u002Fcatmullromcurve3",{"title":225,"path":226,"stem":227},"Circle","\u002Fapi\u002Fshapes\u002Fcircle","2.api\u002F5.shapes\u002Fcircle",{"title":229,"path":230,"stem":231},"Cone","\u002Fapi\u002Fshapes\u002Fcone","2.api\u002F5.shapes\u002Fcone",{"title":233,"path":234,"stem":235},"Cubic Bezier Line","\u002Fapi\u002Fshapes\u002Fcubic-bezier-line","2.api\u002F5.shapes\u002Fcubic-bezier-line",{"title":237,"path":238,"stem":239},"Cylinder","\u002Fapi\u002Fshapes\u002Fcylinder","2.api\u002F5.shapes\u002Fcylinder",{"title":241,"path":242,"stem":243},"Dodecahedron","\u002Fapi\u002Fshapes\u002Fdodecahedron","2.api\u002F5.shapes\u002Fdodecahedron",{"title":245,"path":246,"stem":247},"Grid","\u002Fapi\u002Fshapes\u002Fgrid","2.api\u002F5.shapes\u002Fgrid",{"title":249,"path":250,"stem":251},"Icosahedron","\u002Fapi\u002Fshapes\u002Ficosahedron","2.api\u002F5.shapes\u002Ficosahedron",{"title":253,"path":254,"stem":255},"Line2","\u002Fapi\u002Fshapes\u002Fline2","2.api\u002F5.shapes\u002Fline2",{"title":257,"path":258,"stem":259},"Octahedron","\u002Fapi\u002Fshapes\u002Foctahedron","2.api\u002F5.shapes\u002Foctahedron",{"title":261,"path":262,"stem":263},"Plane","\u002Fapi\u002Fshapes\u002Fplane","2.api\u002F5.shapes\u002Fplane",{"title":265,"path":266,"stem":267},"Quadratic Bezier Line","\u002Fapi\u002Fshapes\u002Fquadratic-bezier-line","2.api\u002F5.shapes\u002Fquadratic-bezier-line",{"title":269,"path":270,"stem":271},"Ring","\u002Fapi\u002Fshapes\u002Fring","2.api\u002F5.shapes\u002Fring",{"title":273,"path":274,"stem":275},"Rounded Box","\u002Fapi\u002Fshapes\u002Frounded-box","2.api\u002F5.shapes\u002Frounded-box",{"title":277,"path":278,"stem":279},"Rounded Plane","\u002Fapi\u002Fshapes\u002Frounded-plane","2.api\u002F5.shapes\u002Frounded-plane",{"title":281,"path":282,"stem":283},"Screen Quad","\u002Fapi\u002Fshapes\u002Fscreen-quad","2.api\u002F5.shapes\u002Fscreen-quad",{"title":285,"path":286,"stem":287},"Sphere","\u002Fapi\u002Fshapes\u002Fsphere","2.api\u002F5.shapes\u002Fsphere",{"title":289,"path":290,"stem":291},"Superformula","\u002Fapi\u002Fshapes\u002Fsuperformula","2.api\u002F5.shapes\u002Fsuperformula",{"title":293,"path":294,"stem":295},"Tetrahedron","\u002Fapi\u002Fshapes\u002Ftetrahedron","2.api\u002F5.shapes\u002Ftetrahedron",{"title":297,"path":298,"stem":299},"Torus","\u002Fapi\u002Fshapes\u002Ftorus","2.api\u002F5.shapes\u002Ftorus",{"title":301,"path":302,"stem":303},"Torus Knot","\u002Fapi\u002Fshapes\u002Ftorus-knot","2.api\u002F5.shapes\u002Ftorus-knot",{"title":305,"path":306,"stem":307},"Tube","\u002Fapi\u002Fshapes\u002Ftube","2.api\u002F5.shapes\u002Ftube",{"title":309,"path":310,"stem":311,"children":312},"Debug\u002FPerformance","\u002Fapi\u002Fdebug-performance","2.api\u002F6.debug-performance\u002Findex",[313,314,318,322,326,330],{"title":309,"path":310,"stem":311},{"title":315,"path":316,"stem":317},"Helper","\u002Fapi\u002Fdebug-performance\u002Fhelper","2.api\u002F6.debug-performance\u002Fhelper",{"title":319,"path":320,"stem":321},"LOD","\u002Fapi\u002Fdebug-performance\u002Flod","2.api\u002F6.debug-performance\u002Flod",{"title":323,"path":324,"stem":325},"Stats","\u002Fapi\u002Fdebug-performance\u002Fstats","2.api\u002F6.debug-performance\u002Fstats",{"title":327,"path":328,"stem":329},"StatsGl","\u002Fapi\u002Fdebug-performance\u002Fstats-gl","2.api\u002F6.debug-performance\u002Fstats-gl",{"title":331,"path":332,"stem":333},"useBVH","\u002Fapi\u002Fdebug-performance\u002Fuse-bvh","2.api\u002F6.debug-performance\u002Fuse-bvh",{"title":335,"path":336,"stem":337,"children":338},"Light\u002FShadow","\u002Fapi\u002Flight-shadow","2.api\u002F7.light-shadow\u002Findex",[339,340,344,348,352,356,360,364],{"title":335,"path":336,"stem":337},{"title":341,"path":342,"stem":343},"Accumulative Shadows","\u002Fapi\u002Flight-shadow\u002Faccumulative-shadows","2.api\u002F7.light-shadow\u002Faccumulative-shadows",{"title":345,"path":346,"stem":347},"Bake Shadows","\u002Fapi\u002Flight-shadow\u002Fbake-shadows","2.api\u002F7.light-shadow\u002Fbake-shadows",{"title":349,"path":350,"stem":351},"Circle Shadow","\u002Fapi\u002Flight-shadow\u002Fcircle-shadow","2.api\u002F7.light-shadow\u002Fcircle-shadow",{"title":353,"path":354,"stem":355},"Contact Shadows","\u002Fapi\u002Flight-shadow\u002Fcontact-shadows","2.api\u002F7.light-shadow\u002Fcontact-shadows",{"title":357,"path":358,"stem":359},"Lensflare","\u002Fapi\u002Flight-shadow\u002Flensflare","2.api\u002F7.light-shadow\u002Flensflare",{"title":361,"path":362,"stem":363},"Randomized Lights","\u002Fapi\u002Flight-shadow\u002Frandomized-lights","2.api\u002F7.light-shadow\u002Frandomized-lights",{"title":365,"path":366,"stem":367},"Soft Shadows","\u002Fapi\u002Flight-shadow\u002Fsoft-shadows","2.api\u002F7.light-shadow\u002Fsoft-shadows",{"title":369,"path":370,"stem":371,"children":372},"Staging","\u002Fapi\u002Fstaging","2.api\u002F8.staging\u002Findex",[373,374,378,382,386,390,394,398,402,406,410,414],{"title":369,"path":370,"stem":371},{"title":375,"path":376,"stem":377},"Environment","\u002Fapi\u002Fstaging\u002Fenvironment","2.api\u002F8.staging\u002F1.environment",{"title":379,"path":380,"stem":381},"useEnvironment","\u002Fapi\u002Fstaging\u002Fuse-environment","2.api\u002F8.staging\u002F2.use-environment",{"title":383,"path":384,"stem":385},"Lightformer","\u002Fapi\u002Fstaging\u002Flightformer","2.api\u002F8.staging\u002F3.lightformer",{"title":387,"path":388,"stem":389},"Backdrop","\u002Fapi\u002Fstaging\u002Fbackdrop","2.api\u002F8.staging\u002Fbackdrop",{"title":391,"path":392,"stem":393},"Ocean","\u002Fapi\u002Fstaging\u002Focean","2.api\u002F8.staging\u002Focean",{"title":395,"path":396,"stem":397},"Precipitation","\u002Fapi\u002Fstaging\u002Fprecipitation","2.api\u002F8.staging\u002Fprecipitation",{"title":399,"path":400,"stem":401},"Sky","\u002Fapi\u002Fstaging\u002Fsky","2.api\u002F8.staging\u002Fsky",{"title":403,"path":404,"stem":405},"Smoke","\u002Fapi\u002Fstaging\u002Fsmoke","2.api\u002F8.staging\u002Fsmoke",{"title":407,"path":408,"stem":409},"Sparkles","\u002Fapi\u002Fstaging\u002Fsparkles","2.api\u002F8.staging\u002Fsparkles",{"title":411,"path":412,"stem":413},"Stage","\u002Fapi\u002Fstaging\u002Fstage","2.api\u002F8.staging\u002Fstage",{"title":415,"path":416,"stem":417},"Stars","\u002Fapi\u002Fstaging\u002Fstars","2.api\u002F8.staging\u002Fstars",{"title":419,"path":420,"stem":421,"children":422},"Objects","\u002Fapi\u002Fobjects","2.api\u002F9.objects\u002Findex",[423,424,428,432,436,440,444,448,452,456,460],{"title":419,"path":420,"stem":421},{"title":425,"path":426,"stem":427},"AnimatedSprite","\u002Fapi\u002Fobjects\u002Fanimated-sprite","2.api\u002F9.objects\u002Fanimated-sprite",{"title":429,"path":430,"stem":431},"CubeCamera","\u002Fapi\u002Fobjects\u002Fcube-camera","2.api\u002F9.objects\u002Fcube-camera",{"title":433,"path":434,"stem":435},"Fbo","\u002Fapi\u002Fobjects\u002Ffbo","2.api\u002F9.objects\u002Ffbo",{"title":437,"path":438,"stem":439},"GradientTexture","\u002Fapi\u002Fobjects\u002Fgradient-texture","2.api\u002F9.objects\u002Fgradient-texture",{"title":441,"path":442,"stem":443},"HTML","\u002Fapi\u002Fobjects\u002Fhtml","2.api\u002F9.objects\u002Fhtml",{"title":445,"path":446,"stem":447},"Image","\u002Fapi\u002Fobjects\u002Fimage","2.api\u002F9.objects\u002Fimage",{"title":449,"path":450,"stem":451},"MarchingCubes","\u002Fapi\u002Fobjects\u002Fmarching-cubes","2.api\u002F9.objects\u002Fmarching-cubes",{"title":453,"path":454,"stem":455},"Reflector","\u002Fapi\u002Fobjects\u002Freflector","2.api\u002F9.objects\u002Freflector",{"title":457,"path":458,"stem":459},"Refractor","\u002Fapi\u002Fobjects\u002Frefractor","2.api\u002F9.objects\u002Frefractor",{"title":461,"path":462,"stem":463},"Text3D","\u002Fapi\u002Fobjects\u002Ftext-3d","2.api\u002F9.objects\u002Ftext-3d",{"title":465,"path":466,"stem":467,"children":468},"Miscellaneous","\u002Fapi\u002Fmiscellaneous","2.api\u002Fmiscellaneous\u002Findex",[469,470,474,478,482,486,490,494],{"title":465,"path":466,"stem":467},{"title":471,"path":472,"stem":473},"Bounds","\u002Fapi\u002Fmiscellaneous\u002Fbounds","2.api\u002Fmiscellaneous\u002Fbounds",{"title":475,"path":476,"stem":477},"GlobalAudio","\u002Fapi\u002Fmiscellaneous\u002Fglobal-audio","2.api\u002Fmiscellaneous\u002Fglobal-audio",{"title":479,"path":480,"stem":481},"MouseParallax","\u002Fapi\u002Fmiscellaneous\u002Fmouse-parallax","2.api\u002Fmiscellaneous\u002Fmouse-parallax",{"title":483,"path":484,"stem":485},"PositionalAudio","\u002Fapi\u002Fmiscellaneous\u002Fpositional-audio","2.api\u002Fmiscellaneous\u002Fpositional-audio",{"title":487,"path":488,"stem":489},"useAnimations","\u002Fapi\u002Fmiscellaneous\u002Fuse-animations","2.api\u002Fmiscellaneous\u002Fuse-animations",{"title":491,"path":492,"stem":493},"useGLTFExporter","\u002Fapi\u002Fmiscellaneous\u002Fuse-gltf-exporter","2.api\u002Fmiscellaneous\u002Fuse-gltf-exporter",{"title":495,"path":496,"stem":497},"useIntersect","\u002Fapi\u002Fmiscellaneous\u002Fuse-intersect","2.api\u002Fmiscellaneous\u002Fuse-intersect",{"id":499,"title":465,"body":500,"description":516,"extension":517,"links":518,"meta":519,"navigation":520,"path":466,"seo":521,"stem":467,"__hash__":522},"docs\u002F2.api\u002Fmiscellaneous\u002Findex.md",{"type":501,"value":502,"toc":511},"minimark",[503,507],[504,505,506],"p",{},"Utility components and composables for audio, animations, intersections, and more.",[508,509],"api-list",{"list-name":510},"misc-list",{"title":512,"searchDepth":513,"depth":514,"links":515},"",1,2,[],"Various utility components and composables","md",null,{},true,{"title":465,"description":516},"4eMaArcOfuKgECd4U-MWl3y1M65wxATYDIXn2bAcd9A",[524,526],{"title":461,"path":462,"stem":463,"description":525,"children":-1},"Render text in 3D using TextGeometry.",{"title":471,"path":472,"stem":473,"description":527,"children":-1},"Calculate boundary box and center camera accordingly.",[529,1239,1564,1993,3113,3770,4442],{"id":530,"title":471,"body":531,"description":527,"extension":517,"links":518,"meta":1236,"navigation":520,"path":472,"seo":1237,"stem":473,"__hash__":1238},"docs\u002F2.api\u002Fmiscellaneous\u002Fbounds.md",{"type":501,"value":532,"toc":1229},[533,539,547,580,584,1041,1045,1193,1196,1212,1217,1225],[534,535,536],"scene-wrapper",{},[537,538],"miscellaneous-bounds",{},[504,540,541,542,546],{},"Calculates a boundary box and centers the camera accordingly. Its ",[543,544,545],"code",{},"lookAt"," method accepts a target to look at imperatively e.g., after a click.",[548,549,550,553],"prose-note",{},[504,551,552],{},"If you are using other camera controls, be sure to make them the 'default'.",[554,555,559],"pre",{"className":556,"code":557,"language":558,"meta":512,"style":512},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003COrbitControls make-default \u002F>\n","vue",[543,560,561],{"__ignoreMap":512},[562,563,565,569,573,577],"span",{"class":564,"line":513},"line",[562,566,568],{"class":567},"sMK4o","\u003C",[562,570,572],{"class":571},"swJcz","OrbitControls",[562,574,576],{"class":575},"spNyl"," make-default",[562,578,579],{"class":567}," \u002F>\n",[581,582,15],"h2",{"id":583},"usage",[554,585,596],{"className":556,"code":586,"highlights":587,"language":558,"meta":512,"style":512},"\u003Cscript setup lang=\"ts\">\nimport { TresCanvas } from '@tresjs\u002Fcore'\nimport { Bounds, OrbitControls } from '@tresjs\u002Fcientos'\nimport { shallowRef } from 'vue'\n\nconst boundsRef = shallowRef()\nconst objectRef = shallowRef()\n\nfunction focusObject() {\n  boundsRef.value?.instance.lookAt(objectRef.value)\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CTresCanvas>\n    \u003CTresPerspectiveCamera :position=\"[0, 2, 5]\" \u002F>\n    \u003COrbitControls make-default \u002F>\n    \u003CBounds ref=\"boundsRef\" clip use-mounted :offset=\"0.75\">\n      \u003CTresMesh ref=\"objectRef\" @click=\"(e) => focusObject()\">\n        \u003CTresBoxGeometry \u002F>\n        \u003CTresMeshNormalMaterial \u002F>\n      \u003C\u002FTresMesh>\n    \u003C\u002FBounds>\n  \u003C\u002FTresCanvas>\n\u003C\u002Ftemplate>\n",[588,589,590,591,592,593,594,595],3,6,7,9,10,11,18,23,[543,597,598,626,654,682,702,708,725,739,744,759,794,800,810,815,825,836,880,891,932,981,992,1002,1012,1022,1032],{"__ignoreMap":512},[562,599,600,602,605,608,611,614,617,621,623],{"class":564,"line":513},[562,601,568],{"class":567},[562,603,604],{"class":571},"script",[562,606,607],{"class":575}," setup",[562,609,610],{"class":575}," lang",[562,612,613],{"class":567},"=",[562,615,616],{"class":567},"\"",[562,618,620],{"class":619},"sfazB","ts",[562,622,616],{"class":567},[562,624,625],{"class":567},">\n",[562,627,628,632,635,639,642,645,648,651],{"class":564,"line":514},[562,629,631],{"class":630},"s7zQu","import",[562,633,634],{"class":567}," {",[562,636,638],{"class":637},"sTEyZ"," TresCanvas",[562,640,641],{"class":567}," }",[562,643,644],{"class":630}," from",[562,646,647],{"class":567}," '",[562,649,650],{"class":619},"@tresjs\u002Fcore",[562,652,653],{"class":567},"'\n",[562,655,658,660,662,665,668,671,673,675,677,680],{"class":656,"line":588},[564,657],"highlight",[562,659,631],{"class":630},[562,661,634],{"class":567},[562,663,664],{"class":637}," Bounds",[562,666,667],{"class":567},",",[562,669,670],{"class":637}," OrbitControls",[562,672,641],{"class":567},[562,674,644],{"class":630},[562,676,647],{"class":567},[562,678,679],{"class":619},"@tresjs\u002Fcientos",[562,681,653],{"class":567},[562,683,685,687,689,692,694,696,698,700],{"class":564,"line":684},4,[562,686,631],{"class":630},[562,688,634],{"class":567},[562,690,691],{"class":637}," shallowRef",[562,693,641],{"class":567},[562,695,644],{"class":630},[562,697,647],{"class":567},[562,699,558],{"class":619},[562,701,653],{"class":567},[562,703,705],{"class":564,"line":704},5,[562,706,707],{"emptyLinePlaceholder":520},"\n",[562,709,711,714,717,719,722],{"class":710,"line":589},[564,657],[562,712,713],{"class":575},"const",[562,715,716],{"class":637}," boundsRef ",[562,718,613],{"class":567},[562,720,691],{"class":721},"s2Zo4",[562,723,724],{"class":637},"()\n",[562,726,728,730,733,735,737],{"class":727,"line":590},[564,657],[562,729,713],{"class":575},[562,731,732],{"class":637}," objectRef ",[562,734,613],{"class":567},[562,736,691],{"class":721},[562,738,724],{"class":637},[562,740,742],{"class":564,"line":741},8,[562,743,707],{"emptyLinePlaceholder":520},[562,745,747,750,753,756],{"class":746,"line":591},[564,657],[562,748,749],{"class":575},"function",[562,751,752],{"class":721}," focusObject",[562,754,755],{"class":567},"()",[562,757,758],{"class":567}," {\n",[562,760,762,765,768,771,774,777,779,781,784,787,789,791],{"class":761,"line":592},[564,657],[562,763,764],{"class":637},"  boundsRef",[562,766,767],{"class":567},".",[562,769,770],{"class":637},"value",[562,772,773],{"class":567},"?.",[562,775,776],{"class":637},"instance",[562,778,767],{"class":567},[562,780,545],{"class":721},[562,782,783],{"class":571},"(",[562,785,786],{"class":637},"objectRef",[562,788,767],{"class":567},[562,790,770],{"class":637},[562,792,793],{"class":571},")\n",[562,795,797],{"class":796,"line":593},[564,657],[562,798,799],{"class":567},"}\n",[562,801,803,806,808],{"class":564,"line":802},12,[562,804,805],{"class":567},"\u003C\u002F",[562,807,604],{"class":571},[562,809,625],{"class":567},[562,811,813],{"class":564,"line":812},13,[562,814,707],{"emptyLinePlaceholder":520},[562,816,818,820,823],{"class":564,"line":817},14,[562,819,568],{"class":567},[562,821,822],{"class":571},"template",[562,824,625],{"class":567},[562,826,828,831,834],{"class":564,"line":827},15,[562,829,830],{"class":567},"  \u003C",[562,832,833],{"class":571},"TresCanvas",[562,835,625],{"class":567},[562,837,839,842,845,848,851,853,855,858,862,865,868,870,873,876,878],{"class":564,"line":838},16,[562,840,841],{"class":567},"    \u003C",[562,843,844],{"class":571},"TresPerspectiveCamera",[562,846,847],{"class":567}," :",[562,849,850],{"class":575},"position",[562,852,613],{"class":567},[562,854,616],{"class":567},[562,856,857],{"class":567},"[",[562,859,861],{"class":860},"sbssI","0",[562,863,864],{"class":567},", ",[562,866,867],{"class":860},"2",[562,869,864],{"class":567},[562,871,872],{"class":860},"5",[562,874,875],{"class":567},"]",[562,877,616],{"class":567},[562,879,579],{"class":567},[562,881,883,885,887,889],{"class":564,"line":882},17,[562,884,841],{"class":567},[562,886,572],{"class":571},[562,888,576],{"class":575},[562,890,579],{"class":567},[562,892,894,896,898,901,903,905,908,910,913,916,918,921,923,925,928,930],{"class":893,"line":594},[564,657],[562,895,841],{"class":567},[562,897,471],{"class":571},[562,899,900],{"class":575}," ref",[562,902,613],{"class":567},[562,904,616],{"class":567},[562,906,907],{"class":619},"boundsRef",[562,909,616],{"class":567},[562,911,912],{"class":575}," clip",[562,914,915],{"class":575}," use-mounted",[562,917,847],{"class":567},[562,919,920],{"class":575},"offset",[562,922,613],{"class":567},[562,924,616],{"class":567},[562,926,927],{"class":860},"0.75",[562,929,616],{"class":567},[562,931,625],{"class":567},[562,933,935,938,941,943,945,947,949,951,954,957,959,961,963,967,970,973,975,977,979],{"class":564,"line":934},19,[562,936,937],{"class":567},"      \u003C",[562,939,940],{"class":571},"TresMesh",[562,942,900],{"class":575},[562,944,613],{"class":567},[562,946,616],{"class":567},[562,948,786],{"class":619},[562,950,616],{"class":567},[562,952,953],{"class":567}," @",[562,955,956],{"class":575},"click",[562,958,613],{"class":567},[562,960,616],{"class":567},[562,962,783],{"class":567},[562,964,966],{"class":965},"sHdIc","e",[562,968,969],{"class":567},") ",[562,971,972],{"class":575},"=>",[562,974,752],{"class":721},[562,976,755],{"class":567},[562,978,616],{"class":567},[562,980,625],{"class":567},[562,982,984,987,990],{"class":564,"line":983},20,[562,985,986],{"class":567},"        \u003C",[562,988,989],{"class":571},"TresBoxGeometry",[562,991,579],{"class":567},[562,993,995,997,1000],{"class":564,"line":994},21,[562,996,986],{"class":567},[562,998,999],{"class":571},"TresMeshNormalMaterial",[562,1001,579],{"class":567},[562,1003,1005,1008,1010],{"class":564,"line":1004},22,[562,1006,1007],{"class":567},"      \u003C\u002F",[562,1009,940],{"class":571},[562,1011,625],{"class":567},[562,1013,1015,1018,1020],{"class":1014,"line":595},[564,657],[562,1016,1017],{"class":567},"    \u003C\u002F",[562,1019,471],{"class":571},[562,1021,625],{"class":567},[562,1023,1025,1028,1030],{"class":564,"line":1024},24,[562,1026,1027],{"class":567},"  \u003C\u002F",[562,1029,833],{"class":571},[562,1031,625],{"class":567},[562,1033,1035,1037,1039],{"class":564,"line":1034},25,[562,1036,805],{"class":567},[562,1038,822],{"class":571},[562,1040,625],{"class":567},[581,1042,1044],{"id":1043},"props","Props",[1046,1047,1048,1065],"table",{},[1049,1050,1051],"thead",{},[1052,1053,1054,1059,1062],"tr",{},[1055,1056,1058],"th",{"align":1057},"left","Name",[1055,1060,1061],{"align":1057},"Description",[1055,1063,1064],{},"Default",[1066,1067,1068,1087,1111,1129,1149,1173],"tbody",{},[1052,1069,1070,1076,1082],{},[1071,1072,1073],"td",{"align":1057},[543,1074,1075],{},"duration",[1071,1077,1078,1079,1081],{"align":1057},"Duration of the ",[543,1080,545],{}," animation in seconds",[1071,1083,1084],{},[543,1085,1086],{},"1.0",[1052,1088,1089,1093,1106],{},[1071,1090,1091],{"align":1057},[543,1092,920],{},[1071,1094,1095,1096,1098,1099,1102,1103],{"align":1057},"Additional distance from the target when using ",[543,1097,545],{}," with a ",[543,1100,1101],{},"Box3"," or ",[543,1104,1105],{},"Object3D",[1071,1107,1108],{},[543,1109,1110],{},"0.2",[1052,1112,1113,1118,1124],{},[1071,1114,1115],{"align":1057},[543,1116,1117],{},"useResize",[1071,1119,1120,1121,1123],{"align":1057},"Whether to re",[543,1122,545],{}," the last target when the screen is resized",[1071,1125,1126],{},[543,1127,1128],{},"false",[1052,1130,1131,1136,1145],{},[1071,1132,1133],{"align":1057},[543,1134,1135],{},"useMounted",[1071,1137,1138,1139,1141,1142,1144],{"align":1057},"Whether to ",[543,1140,545],{}," the ",[543,1143,471],{}," object when the component is mounts",[1071,1146,1147],{},[543,1148,1128],{},[1052,1150,1151,1156,1169],{},[1071,1152,1153],{"align":1057},[543,1154,1155],{},"clip",[1071,1157,1158,1159,1162,1163,1166,1167],{"align":1057},"Whether to adjust the camera's ",[543,1160,1161],{},"near"," and ",[543,1164,1165],{},"far"," settings when using ",[543,1168,545],{},[1071,1170,1171],{},[543,1172,1128],{},[1052,1174,1175,1180,1190],{},[1071,1176,1177],{"align":1057},[543,1178,1179],{},"easing",[1071,1181,1182,1183,1186,1187],{"align":1057},"Animation's easing function. ",[543,1184,1185],{},"t"," and the returned value should be in the interval ",[543,1188,1189],{},"[0, 1]",[1071,1191,1192],{},"Cubic ease out",[581,1194,545],{"id":1195},"lookat",[504,1197,1198,1201,1202,1204,1205,864,1207,1102,1209,767],{},[543,1199,1200],{},"\u003CBounds \u002F>"," ",[543,1203,545],{}," points the camera at its first argument: an ",[543,1206,1105],{},[543,1208,1101],{},[543,1210,1211],{},"Vector3",[1213,1214,1216],"h3",{"id":1215},"method-signatures","Method Signatures",[554,1218,1223],{"className":1219,"code":1221,"language":1222},[1220],"language-text","\u002F**\n * Calculates a boundary box around an `Object3D` and centers the camera accordingly.\n *\u002F\nlookAt(object: Object3D): void\n\n\u002F**\n * Calculates a boundary box around an `Object3D` and centers the camera accordingly and animates the camera's `up` vector.\n *\u002F\nlookAt(object: Object3D, up: VectorFlexibleParams): void\n\n\u002F**\n * Centers the camera's viewport on a `Box3`.\n *\u002F\nlookAt(box3: Box3): void\n\n\u002F**\n * Centers the camera's viewport on a `Box3` and animates the camera's `up` vector.\n *\u002F\nlookAt(box3: Box3, up: VectorFlexibleParams): void\n\n\u002F**\n * Look at a `Vector3`.\n *\u002F\nlookAt(target: VectorFlexibleParams): void\n\n\u002F**\n * Look at a `Vector3`, if provided. Move the camera to `position`.\n *\u002F\nlookAt(target: VectorFlexibleParams | undefined | null, position: VectorFlexibleParams): void\n\n\u002F**\n * Look at a `Vector3`, if provided. Move the camera to `position` and animate the camera's `up` vector.\n *\u002F\nlookAt(target: VectorFlexibleParams | undefined | null, position: VectorFlexibleParams, up: VectorFlexibleParams): void\n\n\u002F**\n * Rerun `lookAt` using the prior arguments. If `lookAt` has never been called, uses the `Bounds` object.\n *\u002F\nlookAt(): void\n","text",[543,1224,1221],{"__ignoreMap":512},[1226,1227,1228],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}",{"title":512,"searchDepth":513,"depth":514,"links":1230},[1231,1232,1233],{"id":583,"depth":514,"text":15},{"id":1043,"depth":514,"text":1044},{"id":1195,"depth":514,"text":545,"children":1234},[1235],{"id":1215,"depth":588,"text":1216},{},{"title":471,"description":527},"99p1FD8mbl4hP9wZB60es2RXMg_34kRJyloKHcDBk80",{"id":1240,"title":475,"body":1241,"description":1560,"extension":517,"links":518,"meta":1561,"navigation":520,"path":476,"seo":1562,"stem":477,"__hash__":1563},"docs\u002F2.api\u002Fmiscellaneous\u002Fglobal-audio.md",{"type":501,"value":1242,"toc":1555},[1243,1254,1264,1266,1420,1426,1428,1525,1529,1552],[504,1244,1245,1246,1249,1250,1253],{},"The ",[543,1247,1248],{},"cientos"," package provides a ",[543,1251,1252],{},"\u003CGlobalAudio \u002F>"," component that serves to easily add a global sound to your scene.",[504,1255,1256,1257],{},"Reference: ",[1258,1259,1263],"a",{"href":1260,"rel":1261},"https:\u002F\u002Fthreejs.org\u002Fdocs\u002Findex.html?q=audio#api\u002Fen\u002Faudio\u002FAudio",[1262],"nofollow","Audio",[581,1265,15],{"id":583},[554,1267,1270],{"className":556,"code":1268,"highlights":1269,"language":558,"meta":512,"style":512},"\u003Cscript setup>\nimport { TresCanvas } from '@tresjs\u002Fcore'\nimport { GlobalAudio } from '@tresjs\u002Fcientos'\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CTresCanvas>\n    \u003CTresPerspectiveCamera :position=\"[0, 0, 7.5]\" \u002F>\n    \u003CGlobalAudio :src=\"exampleAudio\" \u002F>\n  \u003C\u002FTresCanvas>\n\u003C\u002Ftemplate>\n",[588,591],[543,1271,1272,1282,1300,1320,1328,1332,1340,1348,1381,1404,1412],{"__ignoreMap":512},[562,1273,1274,1276,1278,1280],{"class":564,"line":513},[562,1275,568],{"class":567},[562,1277,604],{"class":571},[562,1279,607],{"class":575},[562,1281,625],{"class":567},[562,1283,1284,1286,1288,1290,1292,1294,1296,1298],{"class":564,"line":514},[562,1285,631],{"class":630},[562,1287,634],{"class":567},[562,1289,638],{"class":637},[562,1291,641],{"class":567},[562,1293,644],{"class":630},[562,1295,647],{"class":567},[562,1297,650],{"class":619},[562,1299,653],{"class":567},[562,1301,1303,1305,1307,1310,1312,1314,1316,1318],{"class":1302,"line":588},[564,657],[562,1304,631],{"class":630},[562,1306,634],{"class":567},[562,1308,1309],{"class":637}," GlobalAudio",[562,1311,641],{"class":567},[562,1313,644],{"class":630},[562,1315,647],{"class":567},[562,1317,679],{"class":619},[562,1319,653],{"class":567},[562,1321,1322,1324,1326],{"class":564,"line":684},[562,1323,805],{"class":567},[562,1325,604],{"class":571},[562,1327,625],{"class":567},[562,1329,1330],{"class":564,"line":704},[562,1331,707],{"emptyLinePlaceholder":520},[562,1333,1334,1336,1338],{"class":564,"line":589},[562,1335,568],{"class":567},[562,1337,822],{"class":571},[562,1339,625],{"class":567},[562,1341,1342,1344,1346],{"class":564,"line":590},[562,1343,830],{"class":567},[562,1345,833],{"class":571},[562,1347,625],{"class":567},[562,1349,1350,1352,1354,1356,1358,1360,1362,1364,1366,1368,1370,1372,1375,1377,1379],{"class":564,"line":741},[562,1351,841],{"class":567},[562,1353,844],{"class":571},[562,1355,847],{"class":567},[562,1357,850],{"class":575},[562,1359,613],{"class":567},[562,1361,616],{"class":567},[562,1363,857],{"class":567},[562,1365,861],{"class":860},[562,1367,864],{"class":567},[562,1369,861],{"class":860},[562,1371,864],{"class":567},[562,1373,1374],{"class":860},"7.5",[562,1376,875],{"class":567},[562,1378,616],{"class":567},[562,1380,579],{"class":567},[562,1382,1384,1386,1388,1390,1393,1395,1397,1400,1402],{"class":1383,"line":591},[564,657],[562,1385,841],{"class":567},[562,1387,475],{"class":571},[562,1389,847],{"class":567},[562,1391,1392],{"class":575},"src",[562,1394,613],{"class":567},[562,1396,616],{"class":567},[562,1398,1399],{"class":637},"exampleAudio",[562,1401,616],{"class":567},[562,1403,579],{"class":567},[562,1405,1406,1408,1410],{"class":564,"line":592},[562,1407,1027],{"class":567},[562,1409,833],{"class":571},[562,1411,625],{"class":567},[562,1413,1414,1416,1418],{"class":564,"line":593},[562,1415,805],{"class":567},[562,1417,822],{"class":571},[562,1419,625],{"class":567},[504,1421,1422,1423,1425],{},"*The ",[543,1424,1392],{}," prop is required",[581,1427,1044],{"id":1043},[1046,1429,1430,1441],{},[1049,1431,1432],{},[1052,1433,1434,1437,1439],{},[1055,1435,1436],{"align":1057},"Prop",[1055,1438,1061],{"align":1057},[1055,1440,1064],{},[1066,1442,1443,1454,1469,1481,1495,1510],{},[1052,1444,1445,1449,1452],{},[1071,1446,1447],{"align":1057},[543,1448,1392],{},[1071,1450,1451],{"align":1057},"Path to your audio file",[1071,1453],{},[1052,1455,1456,1461,1464],{},[1071,1457,1458],{"align":1057},[543,1459,1460],{},"playTrigger",[1071,1462,1463],{"align":1057},"Id of the DOM element that triggers the play\u002Fpause state",[1071,1465,1466],{},[543,1467,1468],{},"renderer.domElement",[1052,1470,1471,1476,1479],{},[1071,1472,1473],{"align":1057},[543,1474,1475],{},"stopTrigger",[1071,1477,1478],{"align":1057},"Id of the DOM element that triggers the stop state",[1071,1480],{},[1052,1482,1483,1488,1491],{},[1071,1484,1485],{"align":1057},[543,1486,1487],{},"loop",[1071,1489,1490],{"align":1057},"If the audio must be replayed when ends",[1071,1492,1493],{},[543,1494,1128],{},[1052,1496,1497,1502,1505],{},[1071,1498,1499],{"align":1057},[543,1500,1501],{},"volume",[1071,1503,1504],{"align":1057},"Volume of the audio",[1071,1506,1507],{},[543,1508,1509],{},"0.5",[1052,1511,1512,1517,1520],{},[1071,1513,1514],{"align":1057},[543,1515,1516],{},"playbackRate",[1071,1518,1519],{"align":1057},"PlaybackRate of the audio",[1071,1521,1522],{},[543,1523,1524],{},"1",[581,1526,1528],{"id":1527},"events","Events",[1046,1530,1531,1540],{},[1049,1532,1533],{},[1052,1534,1535,1538],{},[1055,1536,1537],{"align":1057},"Event",[1055,1539,1061],{"align":1057},[1066,1541,1542],{},[1052,1543,1544,1549],{},[1071,1545,1546],{"align":1057},[543,1547,1548],{},"isPlaying",[1071,1550,1551],{"align":1057},"Dispatched when the Audio change its state (play, pause or stop)",[1226,1553,1554],{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":512,"searchDepth":513,"depth":514,"links":1556},[1557,1558,1559],{"id":583,"depth":514,"text":15},{"id":1043,"depth":514,"text":1044},{"id":1527,"depth":514,"text":1528},"Add global sound to your scene.",{},{"title":475,"description":1560},"XaoiVKl16tz4uOX0ZskSCuPQUgYB0CYUZjEEuh4q_uU",{"id":1565,"title":479,"body":1566,"description":1989,"extension":517,"links":518,"meta":1990,"navigation":520,"path":480,"seo":1991,"stem":481,"__hash__":1992},"docs\u002F2.api\u002Fmiscellaneous\u002Fmouse-parallax.md",{"type":501,"value":1567,"toc":1985},[1568,1574,1586,1588,1594,1603,1612,1618,1919,1921,1982],[1569,1570,1571],"scene-controls-wrapper",{},[1572,1573],"miscellaneous-mouse-parallax",{},[504,1575,1576,1579,1580,1585],{},[543,1577,1578],{},"\u003CMouseParallax \u002F>"," is a component that allows you to easily create a ",[1258,1581,1584],{"href":1582,"rel":1583},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FParallax",[1262],"parallax"," effect. The camera will update automatically according to the mouse position.",[581,1587,15],{"id":583},[504,1589,1590,1591,1593],{},"You only need to import and add it to your template as ",[543,1592,1578],{},". Additionally, you can pass the following props:",[504,1595,1596,1599,1600,767],{},[543,1597,1598],{},"factor"," is a number to increase the movement range of the camera. This could be an array of two values corresponding to the x and y values, in that order: ",[543,1601,1602],{},":factor=[x,y]",[504,1604,1605,1608,1609,767],{},[543,1606,1607],{},"ease"," is a number that smooths the movement. This could be an array of two values corresponding to the x and y values, in that order: ",[543,1610,1611],{},":ease=[x,y]",[504,1613,1614,1617],{},[543,1615,1616],{},"local"," is a boolean that enables movement based on the position of the mouse on the canvas rather than the window.",[554,1619,1622],{"className":556,"code":1620,"highlights":1621,"language":558,"meta":512,"style":512},"\u003Cscript setup lang=\"ts\">\nimport { MouseParallax, TorusKnot } from \"@tresjs\u002Fcientos\";\nimport { TresCanvas } from \"@tresjs\u002Fcore\";\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CTresCanvas clear-color=\"#82DBC5\">\n    \u003CTresPerspectiveCamera :position=\"[0, 0, 7.5]\" :fov=\"75\" \u002F>\n    \u003CTorusKnot>\n      \u003CTresMeshToonMaterial color=\"orange\" \u002F>\n    \u003C\u002FTorusKnot>\n    \u003CMouseParallax :factor=\"5\" :ease=\"[3, 0.1]\" \u002F>\n    \u003CTresAmbientLight \u002F>\n    \u003CTresDirectionalLight :position=\"[0, 2, 4]\" \u002F>\n  \u003C\u002FTresCanvas>\n\u003C\u002Ftemplate>\n",[514,802],[543,1623,1624,1644,1673,1693,1701,1705,1713,1733,1779,1788,1809,1817,1860,1869,1903,1911],{"__ignoreMap":512},[562,1625,1626,1628,1630,1632,1634,1636,1638,1640,1642],{"class":564,"line":513},[562,1627,568],{"class":567},[562,1629,604],{"class":571},[562,1631,607],{"class":575},[562,1633,610],{"class":575},[562,1635,613],{"class":567},[562,1637,616],{"class":567},[562,1639,620],{"class":619},[562,1641,616],{"class":567},[562,1643,625],{"class":567},[562,1645,1647,1649,1651,1654,1656,1659,1661,1663,1666,1668,1670],{"class":1646,"line":514},[564,657],[562,1648,631],{"class":630},[562,1650,634],{"class":567},[562,1652,1653],{"class":637}," MouseParallax",[562,1655,667],{"class":567},[562,1657,1658],{"class":637}," TorusKnot",[562,1660,641],{"class":567},[562,1662,644],{"class":630},[562,1664,1665],{"class":567}," \"",[562,1667,679],{"class":619},[562,1669,616],{"class":567},[562,1671,1672],{"class":567},";\n",[562,1674,1675,1677,1679,1681,1683,1685,1687,1689,1691],{"class":564,"line":588},[562,1676,631],{"class":630},[562,1678,634],{"class":567},[562,1680,638],{"class":637},[562,1682,641],{"class":567},[562,1684,644],{"class":630},[562,1686,1665],{"class":567},[562,1688,650],{"class":619},[562,1690,616],{"class":567},[562,1692,1672],{"class":567},[562,1694,1695,1697,1699],{"class":564,"line":684},[562,1696,805],{"class":567},[562,1698,604],{"class":571},[562,1700,625],{"class":567},[562,1702,1703],{"class":564,"line":704},[562,1704,707],{"emptyLinePlaceholder":520},[562,1706,1707,1709,1711],{"class":564,"line":589},[562,1708,568],{"class":567},[562,1710,822],{"class":571},[562,1712,625],{"class":567},[562,1714,1715,1717,1719,1722,1724,1726,1729,1731],{"class":564,"line":590},[562,1716,830],{"class":567},[562,1718,833],{"class":571},[562,1720,1721],{"class":575}," clear-color",[562,1723,613],{"class":567},[562,1725,616],{"class":567},[562,1727,1728],{"class":619},"#82DBC5",[562,1730,616],{"class":567},[562,1732,625],{"class":567},[562,1734,1735,1737,1739,1741,1743,1745,1747,1749,1751,1753,1755,1757,1759,1761,1763,1765,1768,1770,1772,1775,1777],{"class":564,"line":741},[562,1736,841],{"class":567},[562,1738,844],{"class":571},[562,1740,847],{"class":567},[562,1742,850],{"class":575},[562,1744,613],{"class":567},[562,1746,616],{"class":567},[562,1748,857],{"class":567},[562,1750,861],{"class":860},[562,1752,864],{"class":567},[562,1754,861],{"class":860},[562,1756,864],{"class":567},[562,1758,1374],{"class":860},[562,1760,875],{"class":567},[562,1762,616],{"class":567},[562,1764,847],{"class":567},[562,1766,1767],{"class":575},"fov",[562,1769,613],{"class":567},[562,1771,616],{"class":567},[562,1773,1774],{"class":860},"75",[562,1776,616],{"class":567},[562,1778,579],{"class":567},[562,1780,1781,1783,1786],{"class":564,"line":591},[562,1782,841],{"class":567},[562,1784,1785],{"class":571},"TorusKnot",[562,1787,625],{"class":567},[562,1789,1790,1792,1795,1798,1800,1802,1805,1807],{"class":564,"line":592},[562,1791,937],{"class":567},[562,1793,1794],{"class":571},"TresMeshToonMaterial",[562,1796,1797],{"class":575}," color",[562,1799,613],{"class":567},[562,1801,616],{"class":567},[562,1803,1804],{"class":619},"orange",[562,1806,616],{"class":567},[562,1808,579],{"class":567},[562,1810,1811,1813,1815],{"class":564,"line":593},[562,1812,1017],{"class":567},[562,1814,1785],{"class":571},[562,1816,625],{"class":567},[562,1818,1820,1822,1824,1826,1828,1830,1832,1834,1836,1838,1840,1842,1844,1846,1849,1851,1854,1856,1858],{"class":1819,"line":802},[564,657],[562,1821,841],{"class":567},[562,1823,479],{"class":571},[562,1825,847],{"class":567},[562,1827,1598],{"class":575},[562,1829,613],{"class":567},[562,1831,616],{"class":567},[562,1833,872],{"class":860},[562,1835,616],{"class":567},[562,1837,847],{"class":567},[562,1839,1607],{"class":575},[562,1841,613],{"class":567},[562,1843,616],{"class":567},[562,1845,857],{"class":567},[562,1847,1848],{"class":860},"3",[562,1850,864],{"class":567},[562,1852,1853],{"class":860},"0.1",[562,1855,875],{"class":567},[562,1857,616],{"class":567},[562,1859,579],{"class":567},[562,1861,1862,1864,1867],{"class":564,"line":812},[562,1863,841],{"class":567},[562,1865,1866],{"class":571},"TresAmbientLight",[562,1868,579],{"class":567},[562,1870,1871,1873,1876,1878,1880,1882,1884,1886,1888,1890,1892,1894,1897,1899,1901],{"class":564,"line":817},[562,1872,841],{"class":567},[562,1874,1875],{"class":571},"TresDirectionalLight",[562,1877,847],{"class":567},[562,1879,850],{"class":575},[562,1881,613],{"class":567},[562,1883,616],{"class":567},[562,1885,857],{"class":567},[562,1887,861],{"class":860},[562,1889,864],{"class":567},[562,1891,867],{"class":860},[562,1893,864],{"class":567},[562,1895,1896],{"class":860},"4",[562,1898,875],{"class":567},[562,1900,616],{"class":567},[562,1902,579],{"class":567},[562,1904,1905,1907,1909],{"class":564,"line":827},[562,1906,1027],{"class":567},[562,1908,833],{"class":571},[562,1910,625],{"class":567},[562,1912,1913,1915,1917],{"class":564,"line":838},[562,1914,805],{"class":567},[562,1916,822],{"class":571},[562,1918,625],{"class":567},[581,1920,1044],{"id":1043},[1046,1922,1923,1933],{},[1049,1924,1925],{},[1052,1926,1927,1929,1931],{},[1055,1928,1436],{"align":1057},[1055,1930,1061],{"align":1057},[1055,1932,1064],{},[1066,1934,1935,1948,1960,1971],{},[1052,1936,1937,1943,1946],{},[1071,1938,1939],{"align":1057},[1940,1941,1942],"strong",{},"disabled",[1071,1944,1945],{"align":1057},"Enable or disable the effect",[1071,1947,1128],{},[1052,1949,1950,1954,1957],{},[1071,1951,1952],{"align":1057},[1940,1953,1598],{},[1071,1955,1956],{"align":1057},"Increase the range of the parallax",[1071,1958,1959],{},"2.5",[1052,1961,1962,1966,1969],{},[1071,1963,1964],{"align":1057},[1940,1965,1607],{},[1071,1967,1968],{"align":1057},"Increase the camera movement speed",[1071,1970,1853],{},[1052,1972,1973,1977,1980],{},[1071,1974,1975],{"align":1057},[1940,1976,1616],{},[1071,1978,1979],{"align":1057},"Whether the mouse coordinates are calculated from the element or the window",[1071,1981,1128],{},[1226,1983,1984],{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":512,"searchDepth":513,"depth":514,"links":1986},[1987,1988],{"id":583,"depth":514,"text":15},{"id":1043,"depth":514,"text":1044},"Create parallax effects based on mouse movement.",{},{"title":479,"description":1989},"-wMRikeU1CMiiuet3URQZ7L0rwjhY5Q0pVMViyyOwK0",{"id":1994,"title":483,"body":1995,"description":3109,"extension":517,"links":518,"meta":3110,"navigation":520,"path":484,"seo":3111,"stem":485,"__hash__":3112},"docs\u002F2.api\u002Fmiscellaneous\u002Fpositional-audio.md",{"type":501,"value":1996,"toc":3102},[1997,2002,2016,2027,2029,2045,2336,2365,2369,2376,2378,2580,2584,2657,2905,3070,3072,3099],[1569,1998,1999],{},[2000,2001],"miscellaneous-positional-audio",{},[504,2003,1245,2004,2006,2007,2011,2012,2015],{},[543,2005,1248],{}," package provides an abstraction of the ",[1258,2008,483],{"href":2009,"rel":2010},"https:\u002F\u002Fthreejs.org\u002Fdocs\u002Findex.html?q=posi#api\u002Fen\u002Faudio\u002FPositionalAudio",[1262],".\n",[543,2013,2014],{},"\u003CPositionalAudio>"," is an object specifically designed for controlling sounds in a scene graph space. This allows, for the simulation of various audio environments, creating a more immersive user experience.",[504,2017,2018,2020,2021,2026],{},[543,2019,2014],{}," includes a helper 🛠️ that allows you to view the directional cone of te audio. The helper is based on the ",[1258,2022,2025],{"href":2023,"rel":2024},"https:\u002F\u002Fthreejs.org\u002Fdocs\u002F#examples\u002Fen\u002Fhelpers\u002FPositionalAudioHelper",[1262],"PositionalAudioHelper"," class.",[581,2028,15],{"id":583},[504,2030,1245,2031,2033,2034,2036,2037,2040,2041,2044],{},[543,2032,2014],{}," component is very simple to set up and use, allowing you to bring your 3D scenes to life.  All you need to do is call the ",[543,2035,2014],{}," component and set the ",[543,2038,2039],{},"url",". It must be wrapped around the ",[543,2042,2043],{},"\u003CSuspense>"," component to enable it to load your audio asynchronously. 💥",[554,2046,2049],{"className":556,"code":2047,"highlights":2048,"language":558,"meta":512,"style":512},"\u003Cscript setup lang=\"ts\">\nimport { Box, PositionalAudio } from '@tresjs\u002Fcientos'\nimport { onUnmounted, shallowRef } from 'vue'\n\nconst positionalAudioRef = shallowRef(null)\n\nonUnmounted(() => {\n  positionalAudioRef?.value?.dispose()\n})\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CTresCanvas>\n    \u003CBox :args=\"[1, 1, 1]\">\n      \u003CTresMeshNormalMaterial \u002F>\n      \u003CSuspense>\n        \u003CPositionalAudio\n          ref=\"positionalAudioRef\"\n          url=\"your-sound.mp3\"\n        \u002F>\n      \u003C\u002FSuspense>\n    \u003C\u002FBox>\n  \u003C\u002FTresCanvas>\n\u003C\u002Ftemplate>\n",[514,882,594,934],[543,2050,2051,2071,2096,2119,2123,2141,2145,2159,2175,2182,2190,2194,2202,2210,2243,2251,2260,2268,2284,2299,2304,2312,2320,2328],{"__ignoreMap":512},[562,2052,2053,2055,2057,2059,2061,2063,2065,2067,2069],{"class":564,"line":513},[562,2054,568],{"class":567},[562,2056,604],{"class":571},[562,2058,607],{"class":575},[562,2060,610],{"class":575},[562,2062,613],{"class":567},[562,2064,616],{"class":567},[562,2066,620],{"class":619},[562,2068,616],{"class":567},[562,2070,625],{"class":567},[562,2072,2074,2076,2078,2081,2083,2086,2088,2090,2092,2094],{"class":2073,"line":514},[564,657],[562,2075,631],{"class":630},[562,2077,634],{"class":567},[562,2079,2080],{"class":637}," Box",[562,2082,667],{"class":567},[562,2084,2085],{"class":637}," PositionalAudio",[562,2087,641],{"class":567},[562,2089,644],{"class":630},[562,2091,647],{"class":567},[562,2093,679],{"class":619},[562,2095,653],{"class":567},[562,2097,2098,2100,2102,2105,2107,2109,2111,2113,2115,2117],{"class":564,"line":588},[562,2099,631],{"class":630},[562,2101,634],{"class":567},[562,2103,2104],{"class":637}," onUnmounted",[562,2106,667],{"class":567},[562,2108,691],{"class":637},[562,2110,641],{"class":567},[562,2112,644],{"class":630},[562,2114,647],{"class":567},[562,2116,558],{"class":619},[562,2118,653],{"class":567},[562,2120,2121],{"class":564,"line":684},[562,2122,707],{"emptyLinePlaceholder":520},[562,2124,2125,2127,2130,2132,2134,2136,2139],{"class":564,"line":704},[562,2126,713],{"class":575},[562,2128,2129],{"class":637}," positionalAudioRef ",[562,2131,613],{"class":567},[562,2133,691],{"class":721},[562,2135,783],{"class":637},[562,2137,2138],{"class":567},"null",[562,2140,793],{"class":637},[562,2142,2143],{"class":564,"line":589},[562,2144,707],{"emptyLinePlaceholder":520},[562,2146,2147,2150,2152,2154,2157],{"class":564,"line":590},[562,2148,2149],{"class":721},"onUnmounted",[562,2151,783],{"class":637},[562,2153,755],{"class":567},[562,2155,2156],{"class":575}," =>",[562,2158,758],{"class":567},[562,2160,2161,2164,2166,2168,2170,2173],{"class":564,"line":741},[562,2162,2163],{"class":637},"  positionalAudioRef",[562,2165,773],{"class":567},[562,2167,770],{"class":637},[562,2169,773],{"class":567},[562,2171,2172],{"class":721},"dispose",[562,2174,724],{"class":571},[562,2176,2177,2180],{"class":564,"line":591},[562,2178,2179],{"class":567},"}",[562,2181,793],{"class":637},[562,2183,2184,2186,2188],{"class":564,"line":592},[562,2185,805],{"class":567},[562,2187,604],{"class":571},[562,2189,625],{"class":567},[562,2191,2192],{"class":564,"line":593},[562,2193,707],{"emptyLinePlaceholder":520},[562,2195,2196,2198,2200],{"class":564,"line":802},[562,2197,568],{"class":567},[562,2199,822],{"class":571},[562,2201,625],{"class":567},[562,2203,2204,2206,2208],{"class":564,"line":812},[562,2205,830],{"class":567},[562,2207,833],{"class":571},[562,2209,625],{"class":567},[562,2211,2212,2214,2216,2218,2221,2223,2225,2227,2229,2231,2233,2235,2237,2239,2241],{"class":564,"line":817},[562,2213,841],{"class":567},[562,2215,217],{"class":571},[562,2217,847],{"class":567},[562,2219,2220],{"class":575},"args",[562,2222,613],{"class":567},[562,2224,616],{"class":567},[562,2226,857],{"class":567},[562,2228,1524],{"class":860},[562,2230,864],{"class":567},[562,2232,1524],{"class":860},[562,2234,864],{"class":567},[562,2236,1524],{"class":860},[562,2238,875],{"class":567},[562,2240,616],{"class":567},[562,2242,625],{"class":567},[562,2244,2245,2247,2249],{"class":564,"line":827},[562,2246,937],{"class":567},[562,2248,999],{"class":571},[562,2250,579],{"class":567},[562,2252,2253,2255,2258],{"class":564,"line":838},[562,2254,937],{"class":567},[562,2256,2257],{"class":571},"Suspense",[562,2259,625],{"class":567},[562,2261,2263,2265],{"class":2262,"line":882},[564,657],[562,2264,986],{"class":567},[562,2266,2267],{"class":571},"PositionalAudio\n",[562,2269,2271,2274,2276,2278,2281],{"class":2270,"line":594},[564,657],[562,2272,2273],{"class":575},"          ref",[562,2275,613],{"class":567},[562,2277,616],{"class":567},[562,2279,2280],{"class":619},"positionalAudioRef",[562,2282,2283],{"class":567},"\"\n",[562,2285,2287,2290,2292,2294,2297],{"class":2286,"line":934},[564,657],[562,2288,2289],{"class":575},"          url",[562,2291,613],{"class":567},[562,2293,616],{"class":567},[562,2295,2296],{"class":619},"your-sound.mp3",[562,2298,2283],{"class":567},[562,2300,2301],{"class":564,"line":983},[562,2302,2303],{"class":567},"        \u002F>\n",[562,2305,2306,2308,2310],{"class":564,"line":994},[562,2307,1007],{"class":567},[562,2309,2257],{"class":571},[562,2311,625],{"class":567},[562,2313,2314,2316,2318],{"class":564,"line":1004},[562,2315,1017],{"class":567},[562,2317,217],{"class":571},[562,2319,625],{"class":567},[562,2321,2322,2324,2326],{"class":564,"line":595},[562,2323,1027],{"class":567},[562,2325,833],{"class":571},[562,2327,625],{"class":567},[562,2329,2330,2332,2334],{"class":564,"line":1024},[562,2331,805],{"class":567},[562,2333,822],{"class":571},[562,2335,625],{"class":567},[2337,2338,2339],"prose-warning",{},[504,2340,2341,2342,2345,2346,2353,2354,2357,2358,1162,2361,2364],{},"AudioContext is authorized when a user gesture has been made on the page. The property ",[543,2343,2344],{},":autoplay=\"true\""," cannot be activated if no user gesture has been made previously ",[1258,2347,2350],{"href":2348,"rel":2349},"https:\u002F\u002Fgoo.gl\u002F7K7WLu",[1262],[543,2351,2352],{},"read more",".\nIf you are sure that there will be a user gesture before your ",[543,2355,2356],{},"\u003CPositionAudio>"," component appears\u002Fis created, you can directly add ",[543,2359,2360],{},":ready=\"true\"",[543,2362,2363],{},"autoplay=\"true\""," for a direct launch.",[581,2366,2368],{"id":2367},"how-does-it-work","How does it work?",[2370,2371],"img",{"className":2372,"src":2374,"alt":2375},[2373],"mx-auto","\u002Fcientos\u002Fsketch.jpg","Diagram explaining how positional audio works",[581,2377,1044],{"id":1043},[1046,2379,2380,2390],{},[1049,2381,2382],{},[1052,2383,2384,2386,2388],{},[1055,2385,1436],{"align":1057},[1055,2387,1061],{"align":1057},[1055,2389,1064],{},[1066,2391,2392,2410,2434,2456,2489,2507,2522,2539,2559],{},[1052,2393,2394,2398,2408],{},[1071,2395,2396],{"align":1057},[1940,2397,2039],{},[1071,2399,2400,2403,2404,2407],{"align":1057},[543,2401,2402],{},"string"," - ",[1940,2405,2406],{},"required"," — The path or URL to the file.",[1071,2409],{},[1052,2411,2412,2417,2430],{},[1071,2413,2414],{"align":1057},[1940,2415,2416],{},"helper",[1071,2418,2419,2422,2423,1201,2426],{"align":1057},[543,2420,2421],{},"boolean"," — Selects whether helper mode is enabled. ",[2424,2425],"br",{},[2427,2428,2429],"em",{},"(Useful for visualising the angle of sound propagation)",[1071,2431,2432],{},[543,2433,1128],{},[1052,2435,2436,2441,2452],{},[1071,2437,2438],{"align":1057},[1940,2439,2440],{},"distance",[1071,2442,2443,2446,2447],{"align":1057},[543,2444,2445],{},"number"," — The distance at which the volume reduction starts taking effect. ",[2427,2448,2449],{},[1940,2450,2451],{},"A non-negative number.",[1071,2453,2454],{},[543,2455,1524],{},[1052,2457,2458,2463,2485],{},[1071,2459,2460],{"align":1057},[1940,2461,2462],{},"ready",[1071,2464,2465,2467,2468,2470,2471,2474,2475,2478,2479,2482,2483],{"align":1057},[543,2466,2421],{}," — Tells ",[543,2469,2014],{}," that ",[543,2472,2473],{},"AudioContext"," is authorised because an user gesture has been made on the page. This is imperative, as ",[543,2476,2477],{},"autoplay"," cannot be activated if no user gesture has been made previously (",[1258,2480,2348],{"href":2348,"rel":2481},[1262],"). ",[2424,2484],{},[1071,2486,2487],{},[543,2488,1128],{},[1052,2490,2491,2495,2503],{},[1071,2492,2493],{"align":1057},[1940,2494,2477],{},[1071,2496,2497,2499,2500,2502],{"align":1057},[543,2498,2421],{}," — Selects whether the audio is launched automatically. Please refer to the ",[543,2501,2462],{}," prop for a better understanding of how to use autoplay.",[1071,2504,2505],{},[543,2506,1128],{},[1052,2508,2509,2513,2518],{},[1071,2510,2511],{"align":1057},[1940,2512,1487],{},[1071,2514,2515,2517],{"align":1057},[543,2516,2421],{}," — Specifies whether the audio should loop.",[1071,2519,2520],{},[543,2521,1128],{},[1052,2523,2524,2529,2534],{},[1071,2525,2526],{"align":1057},[1940,2527,2528],{},"innerAngle",[1071,2530,2531,2533],{"align":1057},[543,2532,2445],{}," —  A parameter for directional audio sources, this is an angle, inside of which there will be no volume reduction.",[1071,2535,2536],{},[543,2537,2538],{},"360",[1052,2540,2541,2546,2555],{},[1071,2542,2543],{"align":1057},[1940,2544,2545],{},"outerAngle",[1071,2547,2548,2550,2551,2554],{"align":1057},[543,2549,2445],{}," —  A parameter for directional audio sources, this is an angle, outside of which the volume will be reduced to a constant value of ",[543,2552,2553],{},"outerGain"," prop.",[1071,2556,2557],{},[543,2558,861],{},[1052,2560,2561,2565,2576],{},[1071,2562,2563],{"align":1057},[1940,2564,2553],{},[1071,2566,2567,2569,2570,2572,2573,2575],{"align":1057},[543,2568,2445],{}," —  A parameter for directional audio sources, this is the amount of volume reduction outside of the ",[543,2571,2545],{}," prop. When the value is ",[543,2574,861],{}," no sound can be heard.",[1071,2577,2578],{},[543,2579,861],{},[581,2581,2583],{"id":2582},"exposed-properties","Exposed properties",[1046,2585,2586,2594],{},[1049,2587,2588],{},[1052,2589,2590,2592],{},[1055,2591,1537],{"align":1057},[1055,2593,1061],{"align":1057},[1066,2595,2596,2608,2621,2634,2647],{},[1052,2597,2598,2602],{},[1071,2599,2600],{"align":1057},[543,2601,776],{},[1071,2603,2604,2605,767],{"align":1057},"Instance reference — Inheritance of ",[1258,2606,483],{"href":2009,"rel":2607},[1262],[1052,2609,2610,2615],{},[1071,2611,2612],{"align":1057},[543,2613,2614],{},"play()",[1071,2616,2617,2618],{"align":1057},"Play audio — ",[2427,2619,2620],{},"Cannot be fired if audio is already running.",[1052,2622,2623,2628],{},[1071,2624,2625],{"align":1057},[543,2626,2627],{},"pause()",[1071,2629,2630,2631],{"align":1057},"Pause audio — ",[2427,2632,2633],{},"Cannot be fired if audio is already paused.",[1052,2635,2636,2641],{},[1071,2637,2638],{"align":1057},[543,2639,2640],{},"stop()",[1071,2642,2643,2644],{"align":1057},"Stop audio — ",[2427,2645,2646],{},"Cannot be fired if audio is already stopped.",[1052,2648,2649,2654],{},[1071,2650,2651],{"align":1057},[543,2652,2653],{},"dispose()",[1071,2655,2656],{"align":1057},"Dispose component — Deletion of the AudioListener in the camera, disconnection of the audio source and deletion of the PositionalAudioHelper (if it exists).",[554,2658,2662],{"className":2659,"code":2660,"language":2661,"meta":512,"style":512},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","const positionalAudioRef = shallowRef(null)\n\nconsole.log(positionalAudioRef.value.instance) \u002F\u002F instance properties\n\nconst handlerAudio = (action: string) => {\n  if (!positionalAudioRef.value) { return }\n\n  const { play, pause, stop } = positionalAudioRef.value\n\n  if (action === 'play') { play() }\n  else if (action === 'pause') { pause() }\n  else if (action === 'stop') { stop() }\n}\n","typescript",[543,2663,2664,2680,2684,2710,2714,2743,2770,2774,2807,2811,2841,2872,2901],{"__ignoreMap":512},[562,2665,2666,2668,2670,2672,2674,2676,2678],{"class":564,"line":513},[562,2667,713],{"class":575},[562,2669,2129],{"class":637},[562,2671,613],{"class":567},[562,2673,691],{"class":721},[562,2675,783],{"class":637},[562,2677,2138],{"class":567},[562,2679,793],{"class":637},[562,2681,2682],{"class":564,"line":514},[562,2683,707],{"emptyLinePlaceholder":520},[562,2685,2686,2689,2691,2694,2697,2699,2701,2703,2706],{"class":564,"line":588},[562,2687,2688],{"class":637},"console",[562,2690,767],{"class":567},[562,2692,2693],{"class":721},"log",[562,2695,2696],{"class":637},"(positionalAudioRef",[562,2698,767],{"class":567},[562,2700,770],{"class":637},[562,2702,767],{"class":567},[562,2704,2705],{"class":637},"instance) ",[562,2707,2709],{"class":2708},"sHwdD","\u002F\u002F instance properties\n",[562,2711,2712],{"class":564,"line":684},[562,2713,707],{"emptyLinePlaceholder":520},[562,2715,2716,2718,2721,2723,2726,2729,2732,2736,2739,2741],{"class":564,"line":704},[562,2717,713],{"class":575},[562,2719,2720],{"class":637}," handlerAudio ",[562,2722,613],{"class":567},[562,2724,2725],{"class":567}," (",[562,2727,2728],{"class":965},"action",[562,2730,2731],{"class":567},":",[562,2733,2735],{"class":2734},"sBMFI"," string",[562,2737,2738],{"class":567},")",[562,2740,2156],{"class":575},[562,2742,758],{"class":567},[562,2744,2745,2748,2750,2753,2755,2757,2759,2761,2764,2767],{"class":564,"line":589},[562,2746,2747],{"class":630},"  if",[562,2749,2725],{"class":571},[562,2751,2752],{"class":567},"!",[562,2754,2280],{"class":637},[562,2756,767],{"class":567},[562,2758,770],{"class":637},[562,2760,969],{"class":571},[562,2762,2763],{"class":567},"{",[562,2765,2766],{"class":630}," return",[562,2768,2769],{"class":567}," }\n",[562,2771,2772],{"class":564,"line":590},[562,2773,707],{"emptyLinePlaceholder":520},[562,2775,2776,2779,2781,2784,2786,2789,2791,2794,2796,2799,2802,2804],{"class":564,"line":741},[562,2777,2778],{"class":575},"  const",[562,2780,634],{"class":567},[562,2782,2783],{"class":637}," play",[562,2785,667],{"class":567},[562,2787,2788],{"class":637}," pause",[562,2790,667],{"class":567},[562,2792,2793],{"class":637}," stop",[562,2795,641],{"class":567},[562,2797,2798],{"class":567}," =",[562,2800,2801],{"class":637}," positionalAudioRef",[562,2803,767],{"class":567},[562,2805,2806],{"class":637},"value\n",[562,2808,2809],{"class":564,"line":591},[562,2810,707],{"emptyLinePlaceholder":520},[562,2812,2813,2815,2817,2819,2822,2824,2827,2830,2832,2834,2836,2839],{"class":564,"line":592},[562,2814,2747],{"class":630},[562,2816,2725],{"class":571},[562,2818,2728],{"class":637},[562,2820,2821],{"class":567}," ===",[562,2823,647],{"class":567},[562,2825,2826],{"class":619},"play",[562,2828,2829],{"class":567},"'",[562,2831,969],{"class":571},[562,2833,2763],{"class":567},[562,2835,2783],{"class":721},[562,2837,2838],{"class":571},"() ",[562,2840,799],{"class":567},[562,2842,2843,2846,2849,2851,2853,2855,2857,2860,2862,2864,2866,2868,2870],{"class":564,"line":593},[562,2844,2845],{"class":630},"  else",[562,2847,2848],{"class":630}," if",[562,2850,2725],{"class":571},[562,2852,2728],{"class":637},[562,2854,2821],{"class":567},[562,2856,647],{"class":567},[562,2858,2859],{"class":619},"pause",[562,2861,2829],{"class":567},[562,2863,969],{"class":571},[562,2865,2763],{"class":567},[562,2867,2788],{"class":721},[562,2869,2838],{"class":571},[562,2871,799],{"class":567},[562,2873,2874,2876,2878,2880,2882,2884,2886,2889,2891,2893,2895,2897,2899],{"class":564,"line":802},[562,2875,2845],{"class":630},[562,2877,2848],{"class":630},[562,2879,2725],{"class":571},[562,2881,2728],{"class":637},[562,2883,2821],{"class":567},[562,2885,647],{"class":567},[562,2887,2888],{"class":619},"stop",[562,2890,2829],{"class":567},[562,2892,969],{"class":571},[562,2894,2763],{"class":567},[562,2896,2793],{"class":721},[562,2898,2838],{"class":571},[562,2900,799],{"class":567},[562,2902,2903],{"class":564,"line":812},[562,2904,799],{"class":567},[554,2906,2908],{"className":556,"code":2907,"language":558,"meta":512,"style":512},"\u003Ctemplate>\n  \u003Cbutton @click=\"handlerAudio('play')\">play\u003C\u002Fbutton>\n  \u003Cbutton @click=\"handlerAudio('pause')\">pause\u003C\u002Fbutton>\n  \u003Cbutton @click=\"handlerAudio('stop')\">stop\u003C\u002Fbutton>\n\n  \u003CTresCanvas>\n    \u003CSphere>\n      \u003CSuspense>\n        \u003CPositionalAudio \u002F>\n      \u003C\u002FSuspense>\n    \u003C\u002FSphere>\n  \u003C\u002FTresCanvas>\n\u003C\u002Ftemplate>\n",[543,2909,2910,2918,2948,2975,3002,3006,3014,3022,3030,3038,3046,3054,3062],{"__ignoreMap":512},[562,2911,2912,2914,2916],{"class":564,"line":513},[562,2913,568],{"class":567},[562,2915,822],{"class":571},[562,2917,625],{"class":567},[562,2919,2920,2922,2925,2928,2930,2932,2935,2937,2940,2942,2944,2946],{"class":564,"line":514},[562,2921,830],{"class":567},[562,2923,2924],{"class":571},"button",[562,2926,2927],{"class":575}," @click",[562,2929,613],{"class":567},[562,2931,616],{"class":567},[562,2933,2934],{"class":619},"handlerAudio('play')",[562,2936,616],{"class":567},[562,2938,2939],{"class":567},">",[562,2941,2826],{"class":637},[562,2943,805],{"class":567},[562,2945,2924],{"class":571},[562,2947,625],{"class":567},[562,2949,2950,2952,2954,2956,2958,2960,2963,2965,2967,2969,2971,2973],{"class":564,"line":588},[562,2951,830],{"class":567},[562,2953,2924],{"class":571},[562,2955,2927],{"class":575},[562,2957,613],{"class":567},[562,2959,616],{"class":567},[562,2961,2962],{"class":619},"handlerAudio('pause')",[562,2964,616],{"class":567},[562,2966,2939],{"class":567},[562,2968,2859],{"class":637},[562,2970,805],{"class":567},[562,2972,2924],{"class":571},[562,2974,625],{"class":567},[562,2976,2977,2979,2981,2983,2985,2987,2990,2992,2994,2996,2998,3000],{"class":564,"line":684},[562,2978,830],{"class":567},[562,2980,2924],{"class":571},[562,2982,2927],{"class":575},[562,2984,613],{"class":567},[562,2986,616],{"class":567},[562,2988,2989],{"class":619},"handlerAudio('stop')",[562,2991,616],{"class":567},[562,2993,2939],{"class":567},[562,2995,2888],{"class":637},[562,2997,805],{"class":567},[562,2999,2924],{"class":571},[562,3001,625],{"class":567},[562,3003,3004],{"class":564,"line":704},[562,3005,707],{"emptyLinePlaceholder":520},[562,3007,3008,3010,3012],{"class":564,"line":589},[562,3009,830],{"class":567},[562,3011,833],{"class":571},[562,3013,625],{"class":567},[562,3015,3016,3018,3020],{"class":564,"line":590},[562,3017,841],{"class":567},[562,3019,285],{"class":571},[562,3021,625],{"class":567},[562,3023,3024,3026,3028],{"class":564,"line":741},[562,3025,937],{"class":567},[562,3027,2257],{"class":571},[562,3029,625],{"class":567},[562,3031,3032,3034,3036],{"class":564,"line":591},[562,3033,986],{"class":567},[562,3035,483],{"class":571},[562,3037,579],{"class":567},[562,3039,3040,3042,3044],{"class":564,"line":592},[562,3041,1007],{"class":567},[562,3043,2257],{"class":571},[562,3045,625],{"class":567},[562,3047,3048,3050,3052],{"class":564,"line":593},[562,3049,1017],{"class":567},[562,3051,285],{"class":571},[562,3053,625],{"class":567},[562,3055,3056,3058,3060],{"class":564,"line":802},[562,3057,1027],{"class":567},[562,3059,833],{"class":571},[562,3061,625],{"class":567},[562,3063,3064,3066,3068],{"class":564,"line":812},[562,3065,805],{"class":567},[562,3067,822],{"class":571},[562,3069,625],{"class":567},[581,3071,1528],{"id":1527},[1046,3073,3074,3082],{},[1049,3075,3076],{},[1052,3077,3078,3080],{},[1055,3079,1537],{"align":1057},[1055,3081,1061],{"align":1057},[1066,3083,3084],{},[1052,3085,3086,3091],{},[1071,3087,3088],{"align":1057},[543,3089,3090],{},"is-playing",[1071,3092,3093,3094,1201,3096],{"align":1057},"Triggered when the audio changes its state (play, pause, or stop) ",[2424,3095],{},[543,3097,3098],{},"@is-playing=\"(e) => yourIsPlayingRef = e\"",[1226,3100,3101],{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}",{"title":512,"searchDepth":513,"depth":514,"links":3103},[3104,3105,3106,3107,3108],{"id":583,"depth":514,"text":15},{"id":2367,"depth":514,"text":2368},{"id":1043,"depth":514,"text":1044},{"id":2582,"depth":514,"text":2583},{"id":1527,"depth":514,"text":1528},"Spatially positioned audio in 3D space.",{},{"title":483,"description":3109},"xH_wsh1QVfRcpinn-pgaEOd1Zj41KzkcipRCSY1fSvA",{"id":3114,"title":487,"body":3115,"description":3766,"extension":517,"links":518,"meta":3767,"navigation":520,"path":488,"seo":3768,"stem":489,"__hash__":3769},"docs\u002F2.api\u002Fmiscellaneous\u002Fuse-animations.md",{"type":501,"value":3116,"toc":3759},[3117,3131,3133,3137,3147,3382,3386,3393,3731,3735,3756],[504,3118,3119,3121,3122,3125,3126,2026],{},[543,3120,487],{}," is a composable that returns a ",[543,3123,3124],{},"shallowReactive"," with all the models actions based on the animations provided. It is a wrapper around the ",[1258,3127,3130],{"href":3128,"rel":3129},"https:\u002F\u002Fthreejs.org\u002Fdocs\u002F#api\u002Fen\u002Fanimation\u002FAnimationMixer",[1262],"AnimationMixer",[581,3132,15],{"id":583},[1213,3134,3136],{"id":3135},"basic-usage-automatic-updates","Basic Usage (Automatic Updates)",[504,3138,3139,3140,3142,3143,3146],{},"By default, ",[543,3141,487],{}," automatically updates the animation mixer on each frame using the ",[543,3144,3145],{},"useLoop"," composable:",[554,3148,3152],{"className":3149,"code":3150,"highlights":3151,"language":620,"meta":512,"style":512},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { useAnimations, useGLTF } from '@tresjs\u002Fcientos'\n\nconst { state } = useGLTF('\u002Fmodels\u002Fugly-naked-bunny.gltf')\n\nconst animations = computed(() => state.value?.animations || [])\nconst model = computed(() => state?.value?.scene)\nconst { actions } = useAnimations(animations, model)\n\nconst currentAction = ref()\n\nwatch(actions, (newActions) => {\n  currentAction.value = newActions.Greeting\n  currentAction.value.play()\n})\n",[513,590],[543,3153,3154,3179,3183,3209,3213,3249,3277,3301,3305,3318,3322,3343,3362,3376],{"__ignoreMap":512},[562,3155,3157,3159,3161,3164,3166,3169,3171,3173,3175,3177],{"class":3156,"line":513},[564,657],[562,3158,631],{"class":630},[562,3160,634],{"class":567},[562,3162,3163],{"class":637}," useAnimations",[562,3165,667],{"class":567},[562,3167,3168],{"class":637}," useGLTF",[562,3170,641],{"class":567},[562,3172,644],{"class":630},[562,3174,647],{"class":567},[562,3176,679],{"class":619},[562,3178,653],{"class":567},[562,3180,3181],{"class":564,"line":514},[562,3182,707],{"emptyLinePlaceholder":520},[562,3184,3185,3187,3189,3192,3194,3196,3198,3200,3202,3205,3207],{"class":564,"line":588},[562,3186,713],{"class":575},[562,3188,634],{"class":567},[562,3190,3191],{"class":637}," state ",[562,3193,2179],{"class":567},[562,3195,2798],{"class":567},[562,3197,3168],{"class":721},[562,3199,783],{"class":637},[562,3201,2829],{"class":567},[562,3203,3204],{"class":619},"\u002Fmodels\u002Fugly-naked-bunny.gltf",[562,3206,2829],{"class":567},[562,3208,793],{"class":637},[562,3210,3211],{"class":564,"line":684},[562,3212,707],{"emptyLinePlaceholder":520},[562,3214,3215,3217,3220,3222,3225,3227,3229,3231,3234,3236,3238,3240,3243,3246],{"class":564,"line":704},[562,3216,713],{"class":575},[562,3218,3219],{"class":637}," animations ",[562,3221,613],{"class":567},[562,3223,3224],{"class":721}," computed",[562,3226,783],{"class":637},[562,3228,755],{"class":567},[562,3230,2156],{"class":575},[562,3232,3233],{"class":637}," state",[562,3235,767],{"class":567},[562,3237,770],{"class":637},[562,3239,773],{"class":567},[562,3241,3242],{"class":637},"animations ",[562,3244,3245],{"class":567},"||",[562,3247,3248],{"class":637}," [])\n",[562,3250,3251,3253,3256,3258,3260,3262,3264,3266,3268,3270,3272,3274],{"class":564,"line":589},[562,3252,713],{"class":575},[562,3254,3255],{"class":637}," model ",[562,3257,613],{"class":567},[562,3259,3224],{"class":721},[562,3261,783],{"class":637},[562,3263,755],{"class":567},[562,3265,2156],{"class":575},[562,3267,3233],{"class":637},[562,3269,773],{"class":567},[562,3271,770],{"class":637},[562,3273,773],{"class":567},[562,3275,3276],{"class":637},"scene)\n",[562,3278,3280,3282,3284,3287,3289,3291,3293,3296,3298],{"class":3279,"line":590},[564,657],[562,3281,713],{"class":575},[562,3283,634],{"class":567},[562,3285,3286],{"class":637}," actions ",[562,3288,2179],{"class":567},[562,3290,2798],{"class":567},[562,3292,3163],{"class":721},[562,3294,3295],{"class":637},"(animations",[562,3297,667],{"class":567},[562,3299,3300],{"class":637}," model)\n",[562,3302,3303],{"class":564,"line":741},[562,3304,707],{"emptyLinePlaceholder":520},[562,3306,3307,3309,3312,3314,3316],{"class":564,"line":591},[562,3308,713],{"class":575},[562,3310,3311],{"class":637}," currentAction ",[562,3313,613],{"class":567},[562,3315,900],{"class":721},[562,3317,724],{"class":637},[562,3319,3320],{"class":564,"line":592},[562,3321,707],{"emptyLinePlaceholder":520},[562,3323,3324,3327,3330,3332,3334,3337,3339,3341],{"class":564,"line":593},[562,3325,3326],{"class":721},"watch",[562,3328,3329],{"class":637},"(actions",[562,3331,667],{"class":567},[562,3333,2725],{"class":567},[562,3335,3336],{"class":965},"newActions",[562,3338,2738],{"class":567},[562,3340,2156],{"class":575},[562,3342,758],{"class":567},[562,3344,3345,3348,3350,3352,3354,3357,3359],{"class":564,"line":802},[562,3346,3347],{"class":637},"  currentAction",[562,3349,767],{"class":567},[562,3351,770],{"class":637},[562,3353,2798],{"class":567},[562,3355,3356],{"class":637}," newActions",[562,3358,767],{"class":567},[562,3360,3361],{"class":637},"Greeting\n",[562,3363,3364,3366,3368,3370,3372,3374],{"class":564,"line":812},[562,3365,3347],{"class":637},[562,3367,767],{"class":567},[562,3369,770],{"class":637},[562,3371,767],{"class":567},[562,3373,2826],{"class":721},[562,3375,724],{"class":571},[562,3377,3378,3380],{"class":564,"line":817},[562,3379,2179],{"class":567},[562,3381,793],{"class":637},[1213,3383,3385],{"id":3384},"manual-updates","Manual Updates",[504,3387,3388,3389,3392],{},"To gain finer control over animation mixer updates, enable ",[543,3390,3391],{},"manualUpdate: true"," and manage the update cycle manually.",[554,3394,3397],{"className":3149,"code":3395,"highlights":3396,"language":620,"meta":512,"style":512},"import { useAnimations, useGLTF } from '@tresjs\u002Fcientos'\nimport { useLoop } from '@tresjs\u002Fcore'\n\nconst { state } = useGLTF('\u002Fmodels\u002Fugly-naked-bunny.gltf')\n\nconst animations = computed(() => state.value?.animations || [])\nconst model = computed(() => state?.value?.scene)\nconst { actions, mixer } = useAnimations(animations, model, {\n  manualUpdate: true,\n})\n\n\u002F\u002F Handle updates manually\nconst { onBeforeRender } = useLoop()\nonBeforeRender(({ delta }) => {\n  mixer.value.update(delta)\n})\n\nconst currentAction = ref()\n\nwatch(actions, (newActions) => {\n  currentAction.value = newActions.Greeting\n  currentAction.value.play()\n})\n",[513,741,591,592,827],[543,3398,3399,3422,3441,3445,3469,3473,3503,3529,3561,3576,3583,3587,3592,3609,3629,3651,3657,3661,3673,3677,3695,3711,3725],{"__ignoreMap":512},[562,3400,3402,3404,3406,3408,3410,3412,3414,3416,3418,3420],{"class":3401,"line":513},[564,657],[562,3403,631],{"class":630},[562,3405,634],{"class":567},[562,3407,3163],{"class":637},[562,3409,667],{"class":567},[562,3411,3168],{"class":637},[562,3413,641],{"class":567},[562,3415,644],{"class":630},[562,3417,647],{"class":567},[562,3419,679],{"class":619},[562,3421,653],{"class":567},[562,3423,3424,3426,3428,3431,3433,3435,3437,3439],{"class":564,"line":514},[562,3425,631],{"class":630},[562,3427,634],{"class":567},[562,3429,3430],{"class":637}," useLoop",[562,3432,641],{"class":567},[562,3434,644],{"class":630},[562,3436,647],{"class":567},[562,3438,650],{"class":619},[562,3440,653],{"class":567},[562,3442,3443],{"class":564,"line":588},[562,3444,707],{"emptyLinePlaceholder":520},[562,3446,3447,3449,3451,3453,3455,3457,3459,3461,3463,3465,3467],{"class":564,"line":684},[562,3448,713],{"class":575},[562,3450,634],{"class":567},[562,3452,3191],{"class":637},[562,3454,2179],{"class":567},[562,3456,2798],{"class":567},[562,3458,3168],{"class":721},[562,3460,783],{"class":637},[562,3462,2829],{"class":567},[562,3464,3204],{"class":619},[562,3466,2829],{"class":567},[562,3468,793],{"class":637},[562,3470,3471],{"class":564,"line":704},[562,3472,707],{"emptyLinePlaceholder":520},[562,3474,3475,3477,3479,3481,3483,3485,3487,3489,3491,3493,3495,3497,3499,3501],{"class":564,"line":589},[562,3476,713],{"class":575},[562,3478,3219],{"class":637},[562,3480,613],{"class":567},[562,3482,3224],{"class":721},[562,3484,783],{"class":637},[562,3486,755],{"class":567},[562,3488,2156],{"class":575},[562,3490,3233],{"class":637},[562,3492,767],{"class":567},[562,3494,770],{"class":637},[562,3496,773],{"class":567},[562,3498,3242],{"class":637},[562,3500,3245],{"class":567},[562,3502,3248],{"class":637},[562,3504,3505,3507,3509,3511,3513,3515,3517,3519,3521,3523,3525,3527],{"class":564,"line":590},[562,3506,713],{"class":575},[562,3508,3255],{"class":637},[562,3510,613],{"class":567},[562,3512,3224],{"class":721},[562,3514,783],{"class":637},[562,3516,755],{"class":567},[562,3518,2156],{"class":575},[562,3520,3233],{"class":637},[562,3522,773],{"class":567},[562,3524,770],{"class":637},[562,3526,773],{"class":567},[562,3528,3276],{"class":637},[562,3530,3532,3534,3536,3539,3541,3544,3546,3548,3550,3552,3554,3557,3559],{"class":3531,"line":741},[564,657],[562,3533,713],{"class":575},[562,3535,634],{"class":567},[562,3537,3538],{"class":637}," actions",[562,3540,667],{"class":567},[562,3542,3543],{"class":637}," mixer ",[562,3545,2179],{"class":567},[562,3547,2798],{"class":567},[562,3549,3163],{"class":721},[562,3551,3295],{"class":637},[562,3553,667],{"class":567},[562,3555,3556],{"class":637}," model",[562,3558,667],{"class":567},[562,3560,758],{"class":567},[562,3562,3564,3567,3569,3573],{"class":3563,"line":591},[564,657],[562,3565,3566],{"class":571},"  manualUpdate",[562,3568,2731],{"class":567},[562,3570,3572],{"class":3571},"sfNiH"," true",[562,3574,3575],{"class":567},",\n",[562,3577,3579,3581],{"class":3578,"line":592},[564,657],[562,3580,2179],{"class":567},[562,3582,793],{"class":637},[562,3584,3585],{"class":564,"line":593},[562,3586,707],{"emptyLinePlaceholder":520},[562,3588,3589],{"class":564,"line":802},[562,3590,3591],{"class":2708},"\u002F\u002F Handle updates manually\n",[562,3593,3594,3596,3598,3601,3603,3605,3607],{"class":564,"line":812},[562,3595,713],{"class":575},[562,3597,634],{"class":567},[562,3599,3600],{"class":637}," onBeforeRender ",[562,3602,2179],{"class":567},[562,3604,2798],{"class":567},[562,3606,3430],{"class":721},[562,3608,724],{"class":637},[562,3610,3611,3614,3616,3619,3622,3625,3627],{"class":564,"line":817},[562,3612,3613],{"class":721},"onBeforeRender",[562,3615,783],{"class":637},[562,3617,3618],{"class":567},"({",[562,3620,3621],{"class":965}," delta",[562,3623,3624],{"class":567}," })",[562,3626,2156],{"class":575},[562,3628,758],{"class":567},[562,3630,3632,3635,3637,3639,3641,3644,3646,3649],{"class":3631,"line":827},[564,657],[562,3633,3634],{"class":637},"  mixer",[562,3636,767],{"class":567},[562,3638,770],{"class":637},[562,3640,767],{"class":567},[562,3642,3643],{"class":721},"update",[562,3645,783],{"class":571},[562,3647,3648],{"class":637},"delta",[562,3650,793],{"class":571},[562,3652,3653,3655],{"class":564,"line":838},[562,3654,2179],{"class":567},[562,3656,793],{"class":637},[562,3658,3659],{"class":564,"line":882},[562,3660,707],{"emptyLinePlaceholder":520},[562,3662,3663,3665,3667,3669,3671],{"class":564,"line":594},[562,3664,713],{"class":575},[562,3666,3311],{"class":637},[562,3668,613],{"class":567},[562,3670,900],{"class":721},[562,3672,724],{"class":637},[562,3674,3675],{"class":564,"line":934},[562,3676,707],{"emptyLinePlaceholder":520},[562,3678,3679,3681,3683,3685,3687,3689,3691,3693],{"class":564,"line":983},[562,3680,3326],{"class":721},[562,3682,3329],{"class":637},[562,3684,667],{"class":567},[562,3686,2725],{"class":567},[562,3688,3336],{"class":965},[562,3690,2738],{"class":567},[562,3692,2156],{"class":575},[562,3694,758],{"class":567},[562,3696,3697,3699,3701,3703,3705,3707,3709],{"class":564,"line":994},[562,3698,3347],{"class":637},[562,3700,767],{"class":567},[562,3702,770],{"class":637},[562,3704,2798],{"class":567},[562,3706,3356],{"class":637},[562,3708,767],{"class":567},[562,3710,3361],{"class":637},[562,3712,3713,3715,3717,3719,3721,3723],{"class":564,"line":1004},[562,3714,3347],{"class":637},[562,3716,767],{"class":567},[562,3718,770],{"class":637},[562,3720,767],{"class":567},[562,3722,2826],{"class":721},[562,3724,724],{"class":571},[562,3726,3727,3729],{"class":564,"line":595},[562,3728,2179],{"class":567},[562,3730,793],{"class":637},[581,3732,3734],{"id":3733},"options","Options",[3736,3737,3738],"ul",{},[3739,3740,3741,3744,3745,3747,3748,3751,3752,3755],"li",{},[543,3742,3743],{},"manualUpdate"," (optional): Default is ",[543,3746,1128],{},". If set to ",[543,3749,3750],{},"true",", disables automatic animation mixer updates. You'll need to call ",[543,3753,3754],{},"mixer.value.update(delta)"," manually.",[1226,3757,3758],{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}",{"title":512,"searchDepth":513,"depth":514,"links":3760},[3761,3765],{"id":583,"depth":514,"text":15,"children":3762},[3763,3764],{"id":3135,"depth":588,"text":3136},{"id":3384,"depth":588,"text":3385},{"id":3733,"depth":514,"text":3734},"Composable for managing model animations with AnimationMixer.",{},{"title":487,"description":3766},"TJcEqtFqnepbieID3hzHGMd0QylrwTz-3E1RokTEGoY",{"id":3771,"title":491,"body":3772,"description":4438,"extension":517,"links":518,"meta":4439,"navigation":520,"path":492,"seo":4440,"stem":493,"__hash__":4441},"docs\u002F2.api\u002Fmiscellaneous\u002Fuse-gltf-exporter.md",{"type":501,"value":3773,"toc":4432},[3774,3792,3796,4225,4229,4281,4283,4429],[504,3775,3776,3781,3782,3787,3788,3791],{},[1258,3777,3780],{"href":3778,"rel":3779},"https:\u002F\u002Fthreejs.org\u002Fdocs\u002Findex.html?q=expo#examples\u002Fen\u002Fexporters\u002FGLTFExporter",[1262],"GLTFExporter"," is an addon in Three.js that allows you to download any object3D in a ",[1258,3783,3786],{"href":3784,"rel":3785},"https:\u002F\u002Fwww.khronos.org\u002Fgltf",[1262],"GLTF"," format. ",[1940,3789,3790],{},"TresJS"," provides a composable that simplifies this process with just a few lines of code.",[581,3793,3795],{"id":3794},"basic-usage","Basic usage",[554,3797,3800],{"className":556,"code":3798,"highlights":3799,"language":558,"meta":512,"style":512},"\u003Cscript setup lang=\"ts\">\nimport { TresCanvas } from '@tresjs\u002Fcore'\nimport { useGLTFExporter } from '@tresjs\u002Fcientos'\nimport { shallowRef } from 'vue'\n\nconst boxRef = shallowRef()\n\n\u002F\u002F the second argument – options – is not required\nconst downloadBox = () => {\n  useGLTFExporter(boxRef.value, { fileName: 'cube', binary: true })\n}\n\u003C\u002Fscript>\n\u003Ctemplate>\n  \u003CTresCanvas clear-color=\"#82DBC5\" window-size >\n    \u003CTresPerspectiveCamera :position=\"[0, 2, 5]\" \u002F>\n    \u003CTresMesh\n      ref=\"boxRef\"\n      :position-z=\"30\"\n      :scale=\"10\"\n      @click=\"downloadBox\"\n    >\n      \u003CTresBoxGeometry :args=\"[1, 1, 1]\" \u002F>\n      \u003CTresMeshStandardMaterial :color=\"0x00ff00\" \u002F>\n    \u003C\u002FTresMesh>\n    \u003CTresDirectionalLight :position=\"[0, 10, 10]\" \u002F>\n  \u003C\u002FTresCanvas>\n\u003C\u002Ftemplate>\n\n",[588,592],[543,3801,3802,3822,3840,3860,3878,3882,3895,3899,3904,3920,3964,3968,3976,3984,4006,4038,4045,4058,4075,4091,4107,4112,4144,4167,4175,4207,4216],{"__ignoreMap":512},[562,3803,3804,3806,3808,3810,3812,3814,3816,3818,3820],{"class":564,"line":513},[562,3805,568],{"class":567},[562,3807,604],{"class":571},[562,3809,607],{"class":575},[562,3811,610],{"class":575},[562,3813,613],{"class":567},[562,3815,616],{"class":567},[562,3817,620],{"class":619},[562,3819,616],{"class":567},[562,3821,625],{"class":567},[562,3823,3824,3826,3828,3830,3832,3834,3836,3838],{"class":564,"line":514},[562,3825,631],{"class":630},[562,3827,634],{"class":567},[562,3829,638],{"class":637},[562,3831,641],{"class":567},[562,3833,644],{"class":630},[562,3835,647],{"class":567},[562,3837,650],{"class":619},[562,3839,653],{"class":567},[562,3841,3843,3845,3847,3850,3852,3854,3856,3858],{"class":3842,"line":588},[564,657],[562,3844,631],{"class":630},[562,3846,634],{"class":567},[562,3848,3849],{"class":637}," useGLTFExporter",[562,3851,641],{"class":567},[562,3853,644],{"class":630},[562,3855,647],{"class":567},[562,3857,679],{"class":619},[562,3859,653],{"class":567},[562,3861,3862,3864,3866,3868,3870,3872,3874,3876],{"class":564,"line":684},[562,3863,631],{"class":630},[562,3865,634],{"class":567},[562,3867,691],{"class":637},[562,3869,641],{"class":567},[562,3871,644],{"class":630},[562,3873,647],{"class":567},[562,3875,558],{"class":619},[562,3877,653],{"class":567},[562,3879,3880],{"class":564,"line":704},[562,3881,707],{"emptyLinePlaceholder":520},[562,3883,3884,3886,3889,3891,3893],{"class":564,"line":589},[562,3885,713],{"class":575},[562,3887,3888],{"class":637}," boxRef ",[562,3890,613],{"class":567},[562,3892,691],{"class":721},[562,3894,724],{"class":637},[562,3896,3897],{"class":564,"line":590},[562,3898,707],{"emptyLinePlaceholder":520},[562,3900,3901],{"class":564,"line":741},[562,3902,3903],{"class":2708},"\u002F\u002F the second argument – options – is not required\n",[562,3905,3906,3908,3911,3913,3916,3918],{"class":564,"line":591},[562,3907,713],{"class":575},[562,3909,3910],{"class":637}," downloadBox ",[562,3912,613],{"class":567},[562,3914,3915],{"class":567}," ()",[562,3917,2156],{"class":575},[562,3919,758],{"class":567},[562,3921,3923,3926,3928,3931,3933,3935,3937,3939,3942,3944,3946,3949,3951,3953,3956,3958,3960,3962],{"class":3922,"line":592},[564,657],[562,3924,3925],{"class":721},"  useGLTFExporter",[562,3927,783],{"class":571},[562,3929,3930],{"class":637},"boxRef",[562,3932,767],{"class":567},[562,3934,770],{"class":637},[562,3936,667],{"class":567},[562,3938,634],{"class":567},[562,3940,3941],{"class":571}," fileName",[562,3943,2731],{"class":567},[562,3945,647],{"class":567},[562,3947,3948],{"class":619},"cube",[562,3950,2829],{"class":567},[562,3952,667],{"class":567},[562,3954,3955],{"class":571}," binary",[562,3957,2731],{"class":567},[562,3959,3572],{"class":3571},[562,3961,641],{"class":567},[562,3963,793],{"class":571},[562,3965,3966],{"class":564,"line":593},[562,3967,799],{"class":567},[562,3969,3970,3972,3974],{"class":564,"line":802},[562,3971,805],{"class":567},[562,3973,604],{"class":571},[562,3975,625],{"class":567},[562,3977,3978,3980,3982],{"class":564,"line":812},[562,3979,568],{"class":567},[562,3981,822],{"class":571},[562,3983,625],{"class":567},[562,3985,3986,3988,3990,3992,3994,3996,3998,4000,4003],{"class":564,"line":817},[562,3987,830],{"class":567},[562,3989,833],{"class":571},[562,3991,1721],{"class":575},[562,3993,613],{"class":567},[562,3995,616],{"class":567},[562,3997,1728],{"class":619},[562,3999,616],{"class":567},[562,4001,4002],{"class":575}," window-size",[562,4004,4005],{"class":567}," >\n",[562,4007,4008,4010,4012,4014,4016,4018,4020,4022,4024,4026,4028,4030,4032,4034,4036],{"class":564,"line":827},[562,4009,841],{"class":567},[562,4011,844],{"class":571},[562,4013,847],{"class":567},[562,4015,850],{"class":575},[562,4017,613],{"class":567},[562,4019,616],{"class":567},[562,4021,857],{"class":567},[562,4023,861],{"class":860},[562,4025,864],{"class":567},[562,4027,867],{"class":860},[562,4029,864],{"class":567},[562,4031,872],{"class":860},[562,4033,875],{"class":567},[562,4035,616],{"class":567},[562,4037,579],{"class":567},[562,4039,4040,4042],{"class":564,"line":838},[562,4041,841],{"class":567},[562,4043,4044],{"class":571},"TresMesh\n",[562,4046,4047,4050,4052,4054,4056],{"class":564,"line":882},[562,4048,4049],{"class":575},"      ref",[562,4051,613],{"class":567},[562,4053,616],{"class":567},[562,4055,3930],{"class":619},[562,4057,2283],{"class":567},[562,4059,4060,4063,4066,4068,4070,4073],{"class":564,"line":594},[562,4061,4062],{"class":567},"      :",[562,4064,4065],{"class":575},"position-z",[562,4067,613],{"class":567},[562,4069,616],{"class":567},[562,4071,4072],{"class":860},"30",[562,4074,2283],{"class":567},[562,4076,4077,4079,4082,4084,4086,4089],{"class":564,"line":934},[562,4078,4062],{"class":567},[562,4080,4081],{"class":575},"scale",[562,4083,613],{"class":567},[562,4085,616],{"class":567},[562,4087,4088],{"class":860},"10",[562,4090,2283],{"class":567},[562,4092,4093,4096,4098,4100,4102,4105],{"class":564,"line":983},[562,4094,4095],{"class":567},"      @",[562,4097,956],{"class":575},[562,4099,613],{"class":567},[562,4101,616],{"class":567},[562,4103,4104],{"class":637},"downloadBox",[562,4106,2283],{"class":567},[562,4108,4109],{"class":564,"line":994},[562,4110,4111],{"class":567},"    >\n",[562,4113,4114,4116,4118,4120,4122,4124,4126,4128,4130,4132,4134,4136,4138,4140,4142],{"class":564,"line":1004},[562,4115,937],{"class":567},[562,4117,989],{"class":571},[562,4119,847],{"class":567},[562,4121,2220],{"class":575},[562,4123,613],{"class":567},[562,4125,616],{"class":567},[562,4127,857],{"class":567},[562,4129,1524],{"class":860},[562,4131,864],{"class":567},[562,4133,1524],{"class":860},[562,4135,864],{"class":567},[562,4137,1524],{"class":860},[562,4139,875],{"class":567},[562,4141,616],{"class":567},[562,4143,579],{"class":567},[562,4145,4146,4148,4151,4153,4156,4158,4160,4163,4165],{"class":564,"line":595},[562,4147,937],{"class":567},[562,4149,4150],{"class":571},"TresMeshStandardMaterial",[562,4152,847],{"class":567},[562,4154,4155],{"class":575},"color",[562,4157,613],{"class":567},[562,4159,616],{"class":567},[562,4161,4162],{"class":860},"0x00ff00",[562,4164,616],{"class":567},[562,4166,579],{"class":567},[562,4168,4169,4171,4173],{"class":564,"line":1024},[562,4170,1017],{"class":567},[562,4172,940],{"class":571},[562,4174,625],{"class":567},[562,4176,4177,4179,4181,4183,4185,4187,4189,4191,4193,4195,4197,4199,4201,4203,4205],{"class":564,"line":1034},[562,4178,841],{"class":567},[562,4180,1875],{"class":571},[562,4182,847],{"class":567},[562,4184,850],{"class":575},[562,4186,613],{"class":567},[562,4188,616],{"class":567},[562,4190,857],{"class":567},[562,4192,861],{"class":860},[562,4194,864],{"class":567},[562,4196,4088],{"class":860},[562,4198,864],{"class":567},[562,4200,4088],{"class":860},[562,4202,875],{"class":567},[562,4204,616],{"class":567},[562,4206,579],{"class":567},[562,4208,4210,4212,4214],{"class":564,"line":4209},26,[562,4211,1027],{"class":567},[562,4213,833],{"class":571},[562,4215,625],{"class":567},[562,4217,4219,4221,4223],{"class":564,"line":4218},27,[562,4220,805],{"class":567},[562,4222,822],{"class":571},[562,4224,625],{"class":567},[581,4226,4228],{"id":4227},"arguments","Arguments",[1046,4230,4231,4244],{},[1049,4232,4233],{},[1052,4234,4235,4237,4240,4242],{},[1055,4236,1058],{"align":1057},[1055,4238,4239],{},"Type",[1055,4241,1064],{},[1055,4243,1061],{},[1066,4245,4246,4263],{},[1052,4247,4248,4253,4257,4260],{},[1071,4249,4250],{"align":1057},[1940,4251,4252],{},"Selector",[1071,4254,4255],{},[543,4256,1105],{},[1071,4258,4259],{},"Required",[1071,4261,4262],{},"The object to download. Could be an array of objects",[1052,4264,4265,4269,4273,4278],{},[1071,4266,4267],{"align":1057},[1940,4268,3734],{},[1071,4270,4271],{},[543,4272,3734],{},[1071,4274,4275],{},[543,4276,4277],{},"undefined",[1071,4279,4280],{},"Description below",[1213,4282,3734],{"id":3733},[1046,4284,4285,4297],{},[1049,4286,4287],{},[1052,4288,4289,4291,4293,4295],{},[1055,4290,1058],{"align":1057},[1055,4292,4239],{"align":1057},[1055,4294,1064],{"align":1057},[1055,4296,1061],{"align":1057},[1066,4298,4299,4318,4336,4354,4373,4392,4410],{},[1052,4300,4301,4306,4311,4315],{},[1071,4302,4303],{"align":1057},[1940,4304,4305],{},"trs",[1071,4307,4308],{"align":1057},[543,4309,4310],{},"bool",[1071,4312,4313],{"align":1057},[543,4314,1128],{},[1071,4316,4317],{"align":1057},"Export position, rotation and scale instead of matrix per node",[1052,4319,4320,4325,4329,4333],{},[1071,4321,4322],{"align":1057},[1940,4323,4324],{},"onlyVisible",[1071,4326,4327],{"align":1057},[543,4328,4310],{},[1071,4330,4331],{"align":1057},[543,4332,3750],{},[1071,4334,4335],{"align":1057},"Export only visible objects",[1052,4337,4338,4343,4347,4351],{},[1071,4339,4340],{"align":1057},[1940,4341,4342],{},"binary",[1071,4344,4345],{"align":1057},[543,4346,4310],{},[1071,4348,4349],{"align":1057},[543,4350,1128],{},[1071,4352,4353],{"align":1057},"Export in binary (.glb) format, returning an ArrayBuffer",[1052,4355,4356,4361,4365,4370],{},[1071,4357,4358],{"align":1057},[1940,4359,4360],{},"maxTextureSize",[1071,4362,4363],{"align":1057},[543,4364,2445],{},[1071,4366,4367],{"align":1057},[543,4368,4369],{},"Infinity",[1071,4371,4372],{"align":1057},"Restricts the image maximum size (both width and height) to the given value",[1052,4374,4375,4380,4385,4389],{},[1071,4376,4377],{"align":1057},[1940,4378,4379],{},"animations",[1071,4381,4382],{"align":1057},[543,4383,4384],{},"Array\u003CAnimationClip>",[1071,4386,4387],{"align":1057},[543,4388,4277],{},[1071,4390,4391],{"align":1057},"List of animations to be included in the export",[1052,4393,4394,4399,4403,4407],{},[1071,4395,4396],{"align":1057},[1940,4397,4398],{},"includeCustomExtensions",[1071,4400,4401],{"align":1057},[543,4402,4310],{},[1071,4404,4405],{"align":1057},[543,4406,1128],{},[1071,4408,4409],{"align":1057},"Export custom glTF extensions defined on an object's userData.gltfExtensions",[1052,4411,4412,4417,4421,4426],{},[1071,4413,4414],{"align":1057},[1940,4415,4416],{},"fileName",[1071,4418,4419],{"align":1057},[543,4420,2402],{},[1071,4422,4423],{"align":1057},[543,4424,4425],{},"Object name",[1071,4427,4428],{"align":1057},"Name of the generated file",[1226,4430,4431],{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":512,"searchDepth":513,"depth":514,"links":4433},[4434,4435],{"id":3794,"depth":514,"text":3795},{"id":4227,"depth":514,"text":4228,"children":4436},[4437],{"id":3733,"depth":588,"text":3734},"Export 3D objects to GLTF format.",{},{"title":491,"description":4438},"RMYlhgEenD2JjVSHoqXD_ilu6cdNNok5afbVcapEUPE",{"id":4443,"title":495,"body":4444,"description":4739,"extension":517,"links":518,"meta":4740,"navigation":520,"path":496,"seo":4741,"stem":497,"__hash__":4742},"docs\u002F2.api\u002Fmiscellaneous\u002Fuse-intersect.md",{"type":501,"value":4445,"toc":4734},[4446,4465,4467,4483,4628,4630,4659,4663,4731],[504,4447,4448,4450,4451,4454,4455,4458,4459,4464],{},[543,4449,495],{}," is a function that returns ",[543,4452,4453],{},"intersect",", a ",[543,4456,4457],{},"Ref\u003Cboolean>"," that's updated when the observed object enters or leaves the screen. This relies on ",[1258,4460,4463],{"href":4461,"rel":4462},"https:\u002F\u002Fthreejs.org\u002Fdocs\u002F#api\u002Fen\u002Fcore\u002FObject3D.onBeforeRender",[1262],"THREE.Object3D.onBeforeRender"," so it only works on objects that are effectively rendered, like meshes, lines, sprites. It won't work on other types like group, object3d, bone, etc.",[581,4466,15],{"id":583},[2337,4468,4469],{},[504,4470,4471,4473,4474,4476,4477,4479,4480,767],{},[543,4472,495],{}," requires a ",[543,4475,833],{}," context, so it is only available in ",[543,4478,833],{}," descendant components' ",[543,4481,4482],{},"\u003Cscript setup>",[554,4484,4487],{"className":556,"code":4485,"highlights":4486,"language":558,"meta":512,"style":512},"\u003Cscript setup lang=\"ts\">\nimport { Torus, useIntersect } from '@tresjs\u002Fcientos'\n\nconst { ref, intersect, off } = useIntersect()\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CTorus ref=\"ref\">\n    \u003CTresMeshNormalMaterial \u002F>\n  \u003C\u002FTorus>\n\u003C\u002Ftemplate>\n",[514,684],[543,4488,4489,4509,4534,4538,4565,4573,4577,4585,4604,4612,4620],{"__ignoreMap":512},[562,4490,4491,4493,4495,4497,4499,4501,4503,4505,4507],{"class":564,"line":513},[562,4492,568],{"class":567},[562,4494,604],{"class":571},[562,4496,607],{"class":575},[562,4498,610],{"class":575},[562,4500,613],{"class":567},[562,4502,616],{"class":567},[562,4504,620],{"class":619},[562,4506,616],{"class":567},[562,4508,625],{"class":567},[562,4510,4512,4514,4516,4519,4521,4524,4526,4528,4530,4532],{"class":4511,"line":514},[564,657],[562,4513,631],{"class":630},[562,4515,634],{"class":567},[562,4517,4518],{"class":637}," Torus",[562,4520,667],{"class":567},[562,4522,4523],{"class":637}," useIntersect",[562,4525,641],{"class":567},[562,4527,644],{"class":630},[562,4529,647],{"class":567},[562,4531,679],{"class":619},[562,4533,653],{"class":567},[562,4535,4536],{"class":564,"line":588},[562,4537,707],{"emptyLinePlaceholder":520},[562,4539,4541,4543,4545,4547,4549,4552,4554,4557,4559,4561,4563],{"class":4540,"line":684},[564,657],[562,4542,713],{"class":575},[562,4544,634],{"class":567},[562,4546,900],{"class":637},[562,4548,667],{"class":567},[562,4550,4551],{"class":637}," intersect",[562,4553,667],{"class":567},[562,4555,4556],{"class":637}," off ",[562,4558,2179],{"class":567},[562,4560,2798],{"class":567},[562,4562,4523],{"class":721},[562,4564,724],{"class":637},[562,4566,4567,4569,4571],{"class":564,"line":704},[562,4568,805],{"class":567},[562,4570,604],{"class":571},[562,4572,625],{"class":567},[562,4574,4575],{"class":564,"line":589},[562,4576,707],{"emptyLinePlaceholder":520},[562,4578,4579,4581,4583],{"class":564,"line":590},[562,4580,568],{"class":567},[562,4582,822],{"class":571},[562,4584,625],{"class":567},[562,4586,4587,4589,4591,4593,4595,4597,4600,4602],{"class":564,"line":741},[562,4588,830],{"class":567},[562,4590,297],{"class":571},[562,4592,900],{"class":575},[562,4594,613],{"class":567},[562,4596,616],{"class":567},[562,4598,4599],{"class":619},"ref",[562,4601,616],{"class":567},[562,4603,625],{"class":567},[562,4605,4606,4608,4610],{"class":564,"line":591},[562,4607,841],{"class":567},[562,4609,999],{"class":571},[562,4611,579],{"class":567},[562,4613,4614,4616,4618],{"class":564,"line":592},[562,4615,1027],{"class":567},[562,4617,297],{"class":571},[562,4619,625],{"class":567},[562,4621,4622,4624,4626],{"class":564,"line":593},[562,4623,805],{"class":567},[562,4625,822],{"class":571},[562,4627,625],{"class":567},[581,4629,4228],{"id":4227},[1046,4631,4632,4642],{},[1049,4633,4634],{},[1052,4635,4636,4638,4640],{},[1055,4637,1058],{"align":1057},[1055,4639,1061],{},[1055,4641,4239],{},[1066,4643,4644],{},[1052,4645,4646,4651,4654],{},[1071,4647,4648],{"align":1057},[1940,4649,4650],{},"onChange",[1071,4652,4653],{},"Optional callback function triggered when the observed object enters or leaves the screen.",[1071,4655,4656],{},[543,4657,4658],{},"(isIntersected: boolean) => void",[581,4660,4662],{"id":4661},"return","Return",[1046,4664,4665,4675],{},[1049,4666,4667],{},[1052,4668,4669,4671,4673],{},[1055,4670,1058],{"align":1057},[1055,4672,1061],{},[1055,4674,4239],{},[1066,4676,4677,4695,4710],{},[1052,4678,4679,4683,4690],{},[1071,4680,4681],{"align":1057},[1940,4682,4599],{},[1071,4684,4685,4686,4689],{},"Vue ",[543,4687,4688],{},"ShallowRef"," to pass to the object to be observed.",[1071,4691,4692],{},[543,4693,4694],{},"ShallowRef\u003CObject3D>",[1052,4696,4697,4702,4705],{},[1071,4698,4699],{"align":1057},[1940,4700,4701],{},"intersects",[1071,4703,4704],{},"Updates when the observed object's intersect status changes.",[1071,4706,4707],{},[543,4708,4709],{},"ShallowRef\u003Cboolean>",[1052,4711,4712,4717,4726],{},[1071,4713,4714],{"align":1057},[1940,4715,4716],{},"off",[1071,4718,4719,4720,4722,4723,4725],{},"Calling this function stops ",[543,4721,495],{}," until ",[543,4724,4599],{}," changes.",[1071,4727,4728],{},[543,4729,4730],{},"() => void",[1226,4732,4733],{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":512,"searchDepth":513,"depth":514,"links":4735},[4736,4737,4738],{"id":583,"depth":514,"text":15},{"id":4227,"depth":514,"text":4228},{"id":4661,"depth":514,"text":4662},"Detect when objects enter or leave the screen.",{},{"title":495,"description":4739},"QAcMQnGWf_fxqwXEeZxQJtNfPCiyyVyBtXuwXAh1Cg4",1791549577506]