[{"data":1,"prerenderedAt":1022},["ShallowReactive",2],{"navigation":3,"/getting-started/upgrade-guide":498,"/getting-started/upgrade-guide-surround":1017},[4,26],{"title":5,"path":6,"stem":7,"children":8},"Getting Started","/getting-started","1.getting-started/1.index",[9,10,14,18,22],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13},"Installation Guide","/getting-started/installation","1.getting-started/2.installation",{"title":15,"path":16,"stem":17},"Usage","/getting-started/usage","1.getting-started/3.usage",{"title":19,"path":20,"stem":21},"Loading Models","/getting-started/loading-models","1.getting-started/4.loading-models",{"title":23,"path":24,"stem":25},"Upgrade Guide","/getting-started/upgrade-guide","1.getting-started/5.upgrade-guide",{"title":27,"path":28,"stem":29,"children":30},"Api","/api","2.api",[31,34,96,126,168,210,308,334,368,418,464],{"title":32,"path":28,"stem":33},"All","2.api/index",{"title":35,"path":36,"stem":37,"children":38},"Abstractions","/api/abstractions","2.api/1.abstractions/index",[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","/api/abstractions/align","2.api/1.abstractions/align",{"title":45,"path":46,"stem":47},"Billboard","/api/abstractions/billboard","2.api/1.abstractions/billboard",{"title":49,"path":50,"stem":51},"Camera Shake","/api/abstractions/camera-shake","2.api/1.abstractions/camera-shake",{"title":53,"path":54,"stem":55},"Decal","/api/abstractions/decal","2.api/1.abstractions/decal",{"title":57,"path":58,"stem":59},"Edges","/api/abstractions/edges","2.api/1.abstractions/edges",{"title":61,"path":62,"stem":63},"Fit","/api/abstractions/fit","2.api/1.abstractions/fit",{"title":65,"path":66,"stem":67},"Instances","/api/abstractions/instances","2.api/1.abstractions/instances",{"title":69,"path":70,"stem":71},"Levioso (Float)","/api/abstractions/levioso","2.api/1.abstractions/levioso",{"title":73,"path":74,"stem":75},"Mask","/api/abstractions/mask","2.api/1.abstractions/mask",{"title":77,"path":78,"stem":79},"Merged","/api/abstractions/merged","2.api/1.abstractions/merged",{"title":81,"path":82,"stem":83},"Outline","/api/abstractions/outline","2.api/1.abstractions/outline",{"title":85,"path":86,"stem":87},"Sampler","/api/abstractions/sampler","2.api/1.abstractions/sampler",{"title":89,"path":90,"stem":91},"ScreenSizer","/api/abstractions/screen-sizer","2.api/1.abstractions/screen-sizer",{"title":93,"path":94,"stem":95},"ScreenSpace","/api/abstractions/screen-space","2.api/1.abstractions/screen-space",{"title":97,"path":98,"stem":99,"children":100},"Controls","/api/controls","2.api/2.controls/index",[101,102,106,110,114,118,122],{"title":97,"path":98,"stem":99},{"title":103,"path":104,"stem":105},"Camera Controls","/api/controls/camera-controls","2.api/2.controls/camera-controls",{"title":107,"path":108,"stem":109},"Keyboard Controls","/api/controls/keyboard-controls","2.api/2.controls/keyboard-controls",{"title":111,"path":112,"stem":113},"Map Controls","/api/controls/map-controls","2.api/2.controls/map-controls",{"title":115,"path":116,"stem":117},"Orbit Controls","/api/controls/orbit-controls","2.api/2.controls/orbit-controls",{"title":119,"path":120,"stem":121},"PointerLock Controls","/api/controls/pointer-lock-controls","2.api/2.controls/pointer-lock-controls",{"title":123,"path":124,"stem":125},"Transform Controls","/api/controls/transform-controls","2.api/2.controls/transform-controls",{"title":127,"path":128,"stem":129,"children":130},"Loaders","/api/loaders","2.api/3.loaders/index",[131,132,136,140,144,148,152,156,160,164],{"title":127,"path":128,"stem":129},{"title":133,"path":134,"stem":135},"useGLTF","/api/loaders/use-gltf","2.api/3.loaders/1.use-gltf",{"title":137,"path":138,"stem":139},"GLTFModel","/api/loaders/gltf-model","2.api/3.loaders/2.gltf-model",{"title":141,"path":142,"stem":143},"useFBX","/api/loaders/use-fbx","2.api/3.loaders/3.use-fbx",{"title":145,"path":146,"stem":147},"FBXModel","/api/loaders/fbx-model","2.api/3.loaders/4.fbx-model",{"title":149,"path":150,"stem":151},"useTexture","/api/loaders/use-texture","2.api/3.loaders/5.use-texture",{"title":153,"path":154,"stem":155},"useTextures","/api/loaders/use-textures","2.api/3.loaders/6.use-textures",{"title":157,"path":158,"stem":159},"useSVG","/api/loaders/use-svg","2.api/3.loaders/7.use-svg",{"title":161,"path":162,"stem":163},"useProgress","/api/loaders/use-progress","2.api/3.loaders/use-progress",{"title":165,"path":166,"stem":167},"useVideoTexture","/api/loaders/use-video-texture","2.api/3.loaders/use-video-texture",{"title":169,"path":170,"stem":171,"children":172},"Materials","/api/materials","2.api/4.materials/index",[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","/api/materials/custom-shader-material","2.api/4.materials/custom-shader-material",{"title":179,"path":180,"stem":181},"Mesh Glass Material","/api/materials/glass-material","2.api/4.materials/glass-material",{"title":183,"path":184,"stem":185},"Holographic Material","/api/materials/holographic-material","2.api/4.materials/holographic-material",{"title":187,"path":188,"stem":189},"Mesh Discard Material","/api/materials/mesh-discard-material","2.api/4.materials/mesh-discard-material",{"title":191,"path":192,"stem":193},"Mesh Portal Material","/api/materials/mesh-portal-material","2.api/4.materials/mesh-portal-material",{"title":195,"path":196,"stem":197},"Mesh Reflection Material","/api/materials/mesh-reflection-material","2.api/4.materials/mesh-reflection-material",{"title":199,"path":200,"stem":201},"Mesh Transmission Material","/api/materials/mesh-transmission-material","2.api/4.materials/mesh-transmission-material",{"title":203,"path":204,"stem":205},"Point Material","/api/materials/point-material","2.api/4.materials/point-material",{"title":207,"path":208,"stem":209},"Wobble Material","/api/materials/wobble-material","2.api/4.materials/wobble-material",{"title":211,"path":212,"stem":213,"children":214},"Shapes","/api/shapes","2.api/5.shapes/index",[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","/api/shapes/box","2.api/5.shapes/box",{"title":221,"path":222,"stem":223},"CatmullRomCurve3","/api/shapes/catmullromcurve3","2.api/5.shapes/catmullromcurve3",{"title":225,"path":226,"stem":227},"Circle","/api/shapes/circle","2.api/5.shapes/circle",{"title":229,"path":230,"stem":231},"Cone","/api/shapes/cone","2.api/5.shapes/cone",{"title":233,"path":234,"stem":235},"Cubic Bezier Line","/api/shapes/cubic-bezier-line","2.api/5.shapes/cubic-bezier-line",{"title":237,"path":238,"stem":239},"Cylinder","/api/shapes/cylinder","2.api/5.shapes/cylinder",{"title":241,"path":242,"stem":243},"Dodecahedron","/api/shapes/dodecahedron","2.api/5.shapes/dodecahedron",{"title":245,"path":246,"stem":247},"Grid","/api/shapes/grid","2.api/5.shapes/grid",{"title":249,"path":250,"stem":251},"Icosahedron","/api/shapes/icosahedron","2.api/5.shapes/icosahedron",{"title":253,"path":254,"stem":255},"Line2","/api/shapes/line2","2.api/5.shapes/line2",{"title":257,"path":258,"stem":259},"Octahedron","/api/shapes/octahedron","2.api/5.shapes/octahedron",{"title":261,"path":262,"stem":263},"Plane","/api/shapes/plane","2.api/5.shapes/plane",{"title":265,"path":266,"stem":267},"Quadratic Bezier Line","/api/shapes/quadratic-bezier-line","2.api/5.shapes/quadratic-bezier-line",{"title":269,"path":270,"stem":271},"Ring","/api/shapes/ring","2.api/5.shapes/ring",{"title":273,"path":274,"stem":275},"Rounded Box","/api/shapes/rounded-box","2.api/5.shapes/rounded-box",{"title":277,"path":278,"stem":279},"Rounded Plane","/api/shapes/rounded-plane","2.api/5.shapes/rounded-plane",{"title":281,"path":282,"stem":283},"Screen Quad","/api/shapes/screen-quad","2.api/5.shapes/screen-quad",{"title":285,"path":286,"stem":287},"Sphere","/api/shapes/sphere","2.api/5.shapes/sphere",{"title":289,"path":290,"stem":291},"Superformula","/api/shapes/superformula","2.api/5.shapes/superformula",{"title":293,"path":294,"stem":295},"Tetrahedron","/api/shapes/tetrahedron","2.api/5.shapes/tetrahedron",{"title":297,"path":298,"stem":299},"Torus","/api/shapes/torus","2.api/5.shapes/torus",{"title":301,"path":302,"stem":303},"Torus Knot","/api/shapes/torus-knot","2.api/5.shapes/torus-knot",{"title":305,"path":306,"stem":307},"Tube","/api/shapes/tube","2.api/5.shapes/tube",{"title":309,"path":310,"stem":311,"children":312},"Debug/Performance","/api/debug-performance","2.api/6.debug-performance/index",[313,314,318,322,326,330],{"title":309,"path":310,"stem":311},{"title":315,"path":316,"stem":317},"Helper","/api/debug-performance/helper","2.api/6.debug-performance/helper",{"title":319,"path":320,"stem":321},"LOD","/api/debug-performance/lod","2.api/6.debug-performance/lod",{"title":323,"path":324,"stem":325},"Stats","/api/debug-performance/stats","2.api/6.debug-performance/stats",{"title":327,"path":328,"stem":329},"StatsGl","/api/debug-performance/stats-gl","2.api/6.debug-performance/stats-gl",{"title":331,"path":332,"stem":333},"useBVH","/api/debug-performance/use-bvh","2.api/6.debug-performance/use-bvh",{"title":335,"path":336,"stem":337,"children":338},"Light/Shadow","/api/light-shadow","2.api/7.light-shadow/index",[339,340,344,348,352,356,360,364],{"title":335,"path":336,"stem":337},{"title":341,"path":342,"stem":343},"Accumulative Shadows","/api/light-shadow/accumulative-shadows","2.api/7.light-shadow/accumulative-shadows",{"title":345,"path":346,"stem":347},"Bake Shadows","/api/light-shadow/bake-shadows","2.api/7.light-shadow/bake-shadows",{"title":349,"path":350,"stem":351},"Circle Shadow","/api/light-shadow/circle-shadow","2.api/7.light-shadow/circle-shadow",{"title":353,"path":354,"stem":355},"Contact Shadows","/api/light-shadow/contact-shadows","2.api/7.light-shadow/contact-shadows",{"title":357,"path":358,"stem":359},"Lensflare","/api/light-shadow/lensflare","2.api/7.light-shadow/lensflare",{"title":361,"path":362,"stem":363},"Randomized Lights","/api/light-shadow/randomized-lights","2.api/7.light-shadow/randomized-lights",{"title":365,"path":366,"stem":367},"Soft Shadows","/api/light-shadow/soft-shadows","2.api/7.light-shadow/soft-shadows",{"title":369,"path":370,"stem":371,"children":372},"Staging","/api/staging","2.api/8.staging/index",[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","/api/staging/environment","2.api/8.staging/1.environment",{"title":379,"path":380,"stem":381},"useEnvironment","/api/staging/use-environment","2.api/8.staging/2.use-environment",{"title":383,"path":384,"stem":385},"Lightformer","/api/staging/lightformer","2.api/8.staging/3.lightformer",{"title":387,"path":388,"stem":389},"Backdrop","/api/staging/backdrop","2.api/8.staging/backdrop",{"title":391,"path":392,"stem":393},"Ocean","/api/staging/ocean","2.api/8.staging/ocean",{"title":395,"path":396,"stem":397},"Precipitation","/api/staging/precipitation","2.api/8.staging/precipitation",{"title":399,"path":400,"stem":401},"Sky","/api/staging/sky","2.api/8.staging/sky",{"title":403,"path":404,"stem":405},"Smoke","/api/staging/smoke","2.api/8.staging/smoke",{"title":407,"path":408,"stem":409},"Sparkles","/api/staging/sparkles","2.api/8.staging/sparkles",{"title":411,"path":412,"stem":413},"Stage","/api/staging/stage","2.api/8.staging/stage",{"title":415,"path":416,"stem":417},"Stars","/api/staging/stars","2.api/8.staging/stars",{"title":419,"path":420,"stem":421,"children":422},"Objects","/api/objects","2.api/9.objects/index",[423,424,428,432,436,440,444,448,452,456,460],{"title":419,"path":420,"stem":421},{"title":425,"path":426,"stem":427},"AnimatedSprite","/api/objects/animated-sprite","2.api/9.objects/animated-sprite",{"title":429,"path":430,"stem":431},"CubeCamera","/api/objects/cube-camera","2.api/9.objects/cube-camera",{"title":433,"path":434,"stem":435},"Fbo","/api/objects/fbo","2.api/9.objects/fbo",{"title":437,"path":438,"stem":439},"GradientTexture","/api/objects/gradient-texture","2.api/9.objects/gradient-texture",{"title":441,"path":442,"stem":443},"HTML","/api/objects/html","2.api/9.objects/html",{"title":445,"path":446,"stem":447},"Image","/api/objects/image","2.api/9.objects/image",{"title":449,"path":450,"stem":451},"MarchingCubes","/api/objects/marching-cubes","2.api/9.objects/marching-cubes",{"title":453,"path":454,"stem":455},"Reflector","/api/objects/reflector","2.api/9.objects/reflector",{"title":457,"path":458,"stem":459},"Refractor","/api/objects/refractor","2.api/9.objects/refractor",{"title":461,"path":462,"stem":463},"Text3D","/api/objects/text-3d","2.api/9.objects/text-3d",{"title":465,"path":466,"stem":467,"children":468},"Miscellaneous","/api/miscellaneous","2.api/miscellaneous/index",[469,470,474,478,482,486,490,494],{"title":465,"path":466,"stem":467},{"title":471,"path":472,"stem":473},"Bounds","/api/miscellaneous/bounds","2.api/miscellaneous/bounds",{"title":475,"path":476,"stem":477},"GlobalAudio","/api/miscellaneous/global-audio","2.api/miscellaneous/global-audio",{"title":479,"path":480,"stem":481},"MouseParallax","/api/miscellaneous/mouse-parallax","2.api/miscellaneous/mouse-parallax",{"title":483,"path":484,"stem":485},"PositionalAudio","/api/miscellaneous/positional-audio","2.api/miscellaneous/positional-audio",{"title":487,"path":488,"stem":489},"useAnimations","/api/miscellaneous/use-animations","2.api/miscellaneous/use-animations",{"title":491,"path":492,"stem":493},"useGLTFExporter","/api/miscellaneous/use-gltf-exporter","2.api/miscellaneous/use-gltf-exporter",{"title":495,"path":496,"stem":497},"useIntersect","/api/miscellaneous/use-intersect","2.api/miscellaneous/use-intersect",{"id":499,"title":23,"body":500,"description":1011,"extension":1012,"links":1013,"meta":1014,"navigation":659,"path":24,"seo":1015,"stem":25,"__hash__":1016},"docs/1.getting-started/5.upgrade-guide.md",{"type":501,"value":502,"toc":1002},"minimark",[503,508,519,523,526,531,551,844,847,857,865,869,876,894,901,905,911,943,946,974,978,991,998],[504,505,507],"h2",{"id":506},"from-v4-to-v5","From v4 to v5",[509,510,511,512,518],"p",{},"Cientos doesn't have any breaking changes from v4 to v5 but please check the ",[513,514,23],"a",{"href":515,"rel":516},"https://docs.tresjs.org/getting-started/upgrade-guide",[517],"nofollow"," of the core.",[504,520,522],{"id":521},"migration-guide-from-v3","Migration Guide from v3",[509,524,525],{},"The following are the breaking changes introduced in v4. We recommend reading through all of them to ensure a smooth transition.",[527,528,530],"h3",{"id":529},"updated-defineexport-properties","Updated defineExport properties",[509,532,533,534,538,539,542,543,546,547,550],{},"Since the beginning we exported our components' underlying ",[535,536,537],"code",{},"Three.js"," instances using the name ",[535,540,541],{},"value",". This created a very ambiguous situation with some components. When we access them using a ",[535,544,545],{},"ref"," in the ",[535,548,549],{},"\u003Ctemplate>",", we ended up with something like:",[552,553,558],"pre",{"className":554,"code":555,"language":556,"meta":557,"style":557},"language-html shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript>\n  import { shallowRef, watch } from 'vue'\n  import { TresCanvas } from '@tresjs/core'\n  import { Stars } from '@tresjs/cientos'\n\n  const starsRef = shallowRef()\n\n  watch(starsRef, () => {\n    // to access the instance we have a nested `value.value`\n    console.log(starsRef.value.value)\n    // Wrong in v4 ❌\n  })\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CTresCanvas>\n    ...\n    \u003CStars ref=\"starsRef\" />\n    ...\n  \u003C/TresCanvas>\n\u003C/template>\n","html","",[535,559,560,576,612,633,654,661,680,685,705,712,741,747,755,765,770,780,791,797,820,825,835],{"__ignoreMap":557},[561,562,565,569,573],"span",{"class":563,"line":564},"line",1,[561,566,568],{"class":567},"sMK4o","\u003C",[561,570,572],{"class":571},"swJcz","script",[561,574,575],{"class":567},">\n",[561,577,579,583,586,590,593,596,599,602,605,609],{"class":563,"line":578},2,[561,580,582],{"class":581},"s7zQu","  import",[561,584,585],{"class":567}," {",[561,587,589],{"class":588},"sTEyZ"," shallowRef",[561,591,592],{"class":567},",",[561,594,595],{"class":588}," watch",[561,597,598],{"class":567}," }",[561,600,601],{"class":581}," from",[561,603,604],{"class":567}," '",[561,606,608],{"class":607},"sfazB","vue",[561,610,611],{"class":567},"'\n",[561,613,615,617,619,622,624,626,628,631],{"class":563,"line":614},3,[561,616,582],{"class":581},[561,618,585],{"class":567},[561,620,621],{"class":588}," TresCanvas",[561,623,598],{"class":567},[561,625,601],{"class":581},[561,627,604],{"class":567},[561,629,630],{"class":607},"@tresjs/core",[561,632,611],{"class":567},[561,634,636,638,640,643,645,647,649,652],{"class":563,"line":635},4,[561,637,582],{"class":581},[561,639,585],{"class":567},[561,641,642],{"class":588}," Stars",[561,644,598],{"class":567},[561,646,601],{"class":581},[561,648,604],{"class":567},[561,650,651],{"class":607},"@tresjs/cientos",[561,653,611],{"class":567},[561,655,657],{"class":563,"line":656},5,[561,658,660],{"emptyLinePlaceholder":659},true,"\n",[561,662,664,668,671,674,677],{"class":563,"line":663},6,[561,665,667],{"class":666},"spNyl","  const",[561,669,670],{"class":588}," starsRef ",[561,672,673],{"class":567},"=",[561,675,589],{"class":676},"s2Zo4",[561,678,679],{"class":588},"()\n",[561,681,683],{"class":563,"line":682},7,[561,684,660],{"emptyLinePlaceholder":659},[561,686,688,691,694,696,699,702],{"class":563,"line":687},8,[561,689,690],{"class":676},"  watch",[561,692,693],{"class":588},"(starsRef",[561,695,592],{"class":567},[561,697,698],{"class":567}," ()",[561,700,701],{"class":666}," =>",[561,703,704],{"class":567}," {\n",[561,706,708],{"class":563,"line":707},9,[561,709,711],{"class":710},"sHwdD","    // to access the instance we have a nested `value.value`\n",[561,713,715,718,721,724,727,730,732,734,736,738],{"class":563,"line":714},10,[561,716,717],{"class":588},"    console",[561,719,720],{"class":567},".",[561,722,723],{"class":676},"log",[561,725,726],{"class":571},"(",[561,728,729],{"class":588},"starsRef",[561,731,720],{"class":567},[561,733,541],{"class":588},[561,735,720],{"class":567},[561,737,541],{"class":588},[561,739,740],{"class":571},")\n",[561,742,744],{"class":563,"line":743},11,[561,745,746],{"class":710},"    // Wrong in v4 ❌\n",[561,748,750,753],{"class":563,"line":749},12,[561,751,752],{"class":567},"  }",[561,754,740],{"class":588},[561,756,758,761,763],{"class":563,"line":757},13,[561,759,760],{"class":567},"\u003C/",[561,762,572],{"class":571},[561,764,575],{"class":567},[561,766,768],{"class":563,"line":767},14,[561,769,660],{"emptyLinePlaceholder":659},[561,771,773,775,778],{"class":563,"line":772},15,[561,774,568],{"class":567},[561,776,777],{"class":571},"template",[561,779,575],{"class":567},[561,781,783,786,789],{"class":563,"line":782},16,[561,784,785],{"class":567},"  \u003C",[561,787,788],{"class":571},"TresCanvas",[561,790,575],{"class":567},[561,792,794],{"class":563,"line":793},17,[561,795,796],{"class":588},"    ...\n",[561,798,800,803,805,808,810,813,815,817],{"class":563,"line":799},18,[561,801,802],{"class":567},"    \u003C",[561,804,415],{"class":571},[561,806,807],{"class":666}," ref",[561,809,673],{"class":567},[561,811,812],{"class":567},"\"",[561,814,729],{"class":607},[561,816,812],{"class":567},[561,818,819],{"class":567}," />\n",[561,821,823],{"class":563,"line":822},19,[561,824,796],{"class":588},[561,826,828,831,833],{"class":563,"line":827},20,[561,829,830],{"class":567},"  \u003C/",[561,832,788],{"class":571},[561,834,575],{"class":567},[561,836,838,840,842],{"class":563,"line":837},21,[561,839,760],{"class":567},[561,841,777],{"class":571},[561,843,575],{"class":567},[509,845,846],{},"This behavior caused confusion and resulted in a poor developer experience. To address it properly, we needed to introduce a breaking change, and we felt this was the right moment to do so.",[509,848,849,850,852,853,856],{},"The new implementation remains very similar conceptually. However, instead of having two ambiguous ",[535,851,541],{}," references, we have standardized all components around ",[535,854,855],{},"instance",". To access the component, you should now use:",[552,858,863],{"className":859,"code":861,"language":862},[860],"language-text","// Correct in v4 ✅\nconsole.log(starsRef.value.instance)\n","text",[535,864,861],{"__ignoreMap":557},[527,866,868],{"id":867},"remove-tweakpane-from-deps","Remove TweakPane from deps",[509,870,871,872,875],{},"We removed the built-in ",[535,873,874],{},"useTweakPane"," integration because it was adding overhead and friction:",[877,878,879,888,891],"ul",{},[880,881,882,883],"li",{},"Incompatible with ",[513,884,887],{"href":885,"rel":886},"https://tweakpane.github.io/docs/",[517],"Tweakpane v4",[880,889,890],{},"Large bundle impact",[880,892,893],{},"Repetitive boilerplate and not very intuitive",[509,895,896,897],{},"If you still want to use Tweakpane with Tres, you can follow the cookbook recipe: ",[513,898,899],{"href":899,"rel":900},"https://docs.tresjs.org/cookbook/tweakpane",[517],[527,902,904],{"id":903},"move-directives-to-core","Move directives to core",[509,906,907,908,910],{},"Community adoption of directives has been solid, so they now live in the core package. Import them from ",[535,909,630],{},":",[552,912,916],{"className":913,"code":914,"language":915,"meta":557,"style":557},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","// Correct ✅\nimport { vLog } from '@tresjs/core'\n","ts",[535,917,918,923],{"__ignoreMap":557},[561,919,920],{"class":563,"line":564},[561,921,922],{"class":710},"// Correct ✅\n",[561,924,925,928,930,933,935,937,939,941],{"class":563,"line":578},[561,926,927],{"class":581},"import",[561,929,585],{"class":567},[561,931,932],{"class":588}," vLog",[561,934,598],{"class":567},[561,936,601],{"class":581},[561,938,604],{"class":567},[561,940,630],{"class":607},[561,942,611],{"class":567},[509,944,945],{},"Instead of:",[552,947,949],{"className":913,"code":948,"language":915,"meta":557,"style":557},"// Wrong ❌\nimport { vLog } from '@tresjs/cientos'\n",[535,950,951,956],{"__ignoreMap":557},[561,952,953],{"class":563,"line":564},[561,954,955],{"class":710},"// Wrong ❌\n",[561,957,958,960,962,964,966,968,970,972],{"class":563,"line":578},[561,959,927],{"class":581},[561,961,585],{"class":567},[561,963,932],{"class":588},[561,965,598],{"class":567},[561,967,601],{"class":581},[561,969,604],{"class":567},[561,971,651],{"class":607},[561,973,611],{"class":567},[527,975,977],{"id":976},"changes-in-keyboardcontrols","Changes in KeyboardControls",[509,979,980,983,984,987,988,990],{},[535,981,982],{},"KeyboardControls"," was redesigned to provide floating controls similar to the Unreal Engine, which better matches the component’s intent. We also bundled ",[535,985,986],{},"PointerLockControls"," inside ",[535,989,982],{},", so you don’t need to wire it manually anymore.",[509,992,993],{},[513,994,997],{"href":995,"rel":996},"https://cientos.tresjs.org/api/controls/keyboard-controls",[517],"Learn more",[999,1000,1001],"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 .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 .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 .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 .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":557,"searchDepth":564,"depth":578,"links":1003},[1004,1005],{"id":506,"depth":578,"text":507},{"id":521,"depth":578,"text":522,"children":1006},[1007,1008,1009,1010],{"id":529,"depth":614,"text":530},{"id":867,"depth":614,"text":868},{"id":903,"depth":614,"text":904},{"id":976,"depth":614,"text":977},"Migration guide for cientos","md",null,{},{"title":23,"description":1011},"P5By0YCa0NxILxPs60lLEJM9nF1Gp68ExB17owrQ57k",[1018,1020],{"title":19,"path":20,"stem":21,"description":1019,"children":-1},"The three ways to bring a glTF model into a TresJS scene, and when to use each one.",{"title":32,"path":28,"stem":33,"description":1021,"children":-1},"Explore the complete API reference",1786474289066]