[{"data":1,"prerenderedAt":8114},["ShallowReactive",2],{"docs-catalog":3,"docs-/docs/installation":7925},{"items":4,"byPath":6795,"searchItems":6796},[5,238,510,1006,1247,1402,1623,2039,2210,2533,2875,3249,3677,4094,4600,4981,5316,5483,5650,5906,6060,6247,6323,6450,6537,6596,6644,6725],{"path":6,"title":7,"description":8,"kind":9,"section":10,"order":11,"group":-1,"parentPath":-1,"status":-1,"integration":-1,"publicExport":-1,"activation":-1,"package":-1,"aliases":12,"attrs":16,"events":17,"cssVars":18,"related":19,"body":24},"/docs/overview","Overview","Reference-first map of StringTune-3D, its CSS-first runtime model, and the docs structure.","guide","Start Here",10,[13,14,15],"StringTune-3D docs","overview","st3d",[],[],[],[20,21,22,23],"/docs/installation","/docs/quick-start","/docs/objects/overview","/docs/api/overview",{"type":25,"value":26,"toc":230},"minimark",[27,32,41,64,69,99,103,154,158,164,182,185,189,192,227],[28,29,31],"h1",{"id":30},"stringtune-3d","StringTune-3D",[33,34,35,36,40],"p",{},"StringTune-3D is a ",[37,38,39],"code",{},"StringTune"," module that turns DOM elements into a synchronized 3D scene. The public integration surface is intentionally small:",[42,43,44,48,55,61],"ul",{},[45,46,47],"li",{},"register one provider",[45,49,50,51,54],{},"register the ",[37,52,53],{},"String3D"," module",[45,56,57,58],{},"mark up elements with ",[37,59,60],{},"string=\"3d\"",[45,62,63],{},"drive transforms, materials, lights, text, SVG, and filters through CSS custom properties",[65,66,68],"h2",{"id":67},"what-matters-first","What matters first",[42,70,71,85,90,96],{},[45,72,73,76,77,80,81,84],{},[37,74,75],{},"string-tune-3d"," depends on ",[37,78,79],{},"@fiddle-digital/string-tune"," and a renderer implementation such as ",[37,82,83],{},"three",".",[45,86,87,88,84],{},"The main runtime export is ",[37,89,53],{},[45,91,92,93,84],{},"The default engine bridge is ",[37,94,95],{},"ThreeJSProvider",[45,97,98],{},"Most day-to-day authoring happens in HTML attributes and CSS variables, not in imperative scene code.",[65,100,102],{"id":101},"how-to-read-this-docs-site","How to read this docs site",[104,105,106,122,130,141,148],"ol",{},[45,107,108,109,113,114,117,118,84],{},"Start with ",[110,111,112],"a",{"href":20},"Installation",", ",[110,115,116],{"href":21},"Quick Start",", and ",[110,119,121],{"href":120},"/docs/three-provider","Three.js Provider",[45,123,124,125,129],{},"Read the ",[110,126,128],{"href":127},"/docs/runtime-model","Concepts"," section if you need to understand how DOM objects become scene nodes.",[45,131,132,133,136,137,140],{},"Use ",[110,134,135],{"href":22},"Objects Overview"," when you need the contract for a specific ",[37,138,139],{},"string-3d"," type.",[45,142,132,143,147],{},[110,144,146],{"href":145},"/docs/rendering/materials","Rendering"," for materials, textures, filters, and registry-based extensions.",[45,149,132,150,153],{},[110,151,152],{"href":23},"API Overview"," for exact exports and class boundaries.",[65,155,157],{"id":156},"runtime-model","Runtime model",[33,159,160,161,163],{},"At runtime, ",[37,162,53],{}," owns four major pieces:",[42,165,166,169,172,179],{},[45,167,168],{},"a renderer container attached to the page",[45,170,171],{},"a camera",[45,173,174,175,178],{},"a scene graph of ",[37,176,177],{},"String3DObject"," instances",[45,180,181],{},"a synchronizer that reads DOM state and applies it to 3D objects every frame",[33,183,184],{},"That means you do not manually position meshes in normal usage. The DOM remains the source of truth.",[65,186,188],{"id":187},"public-boundary","Public boundary",[33,190,191],{},"The supported public surface comes from package exports such as:",[42,193,194,198,202,207,212,217,222],{},[45,195,196],{},[37,197,53],{},[45,199,200],{},[37,201,95],{},[45,203,204],{},[37,205,206],{},"String3DScene",[45,208,209],{},[37,210,211],{},"String3DCustomMaterialRegistry",[45,213,214],{},[37,215,216],{},"String3DCustomFilterRegistry",[45,218,219],{},[37,220,221],{},"String3DFontRegistry",[45,223,224],{},[37,225,226],{},"SVGParser",[33,228,229],{},"Everything else should be treated as internal unless it is exported by the package root.",{"title":231,"searchDepth":232,"depth":232,"links":233},"",2,[234,235,236,237],{"id":67,"depth":232,"text":68},{"id":101,"depth":232,"text":102},{"id":156,"depth":232,"text":157},{"id":187,"depth":232,"text":188},{"path":20,"title":112,"description":239,"kind":9,"section":10,"order":240,"group":-1,"parentPath":-1,"status":-1,"integration":-1,"publicExport":-1,"activation":-1,"package":-1,"aliases":241,"attrs":244,"events":245,"cssVars":246,"related":247,"body":249},"Install StringTune-3D with its required peer dependencies and understand the minimum runtime requirements.",20,[242,243],"npm install","setup",[],[],[],[21,120,248],"/docs/api/provider",{"type":25,"value":250,"toc":503},[251,254,262,266,296,300,319,323,331,335,484,488,499],[28,252,112],{"id":253},"installation",[33,255,256,258,259,261],{},[37,257,75],{}," is not a standalone runtime. It sits on top of ",[37,260,39],{}," and needs a rendering backend.",[65,263,265],{"id":264},"required-packages","Required packages",[267,268,272],"pre",{"className":269,"code":270,"language":271,"meta":231,"style":231},"language-bash shiki shiki-themes github-light github-dark","npm i @fiddle-digital/string-tune string-tune-3d three\n","bash",[37,273,274],{"__ignoreMap":231},[275,276,279,283,287,290,293],"span",{"class":277,"line":278},"line",1,[275,280,282],{"class":281},"sScJk","npm",[275,284,286],{"class":285},"sZZnC"," i",[275,288,289],{"class":285}," @fiddle-digital/string-tune",[275,291,292],{"class":285}," string-tune-3d",[275,294,295],{"class":285}," three\n",[65,297,299],{"id":298},"what-each-package-does","What each package does",[42,301,302,307,312],{},[45,303,304,306],{},[37,305,79],{}," provides the module system, DOM scanning, frame loop, and object lifecycle.",[45,308,309,311],{},[37,310,75],{}," provides the 3D module, scene runtime, synchronizers, registries, and provider contract.",[45,313,314,316,317,84],{},[37,315,83],{}," is the default renderer backend used by ",[37,318,95],{},[65,320,322],{"id":321},"version-rule","Version rule",[33,324,325,327,328,330],{},[37,326,75],{}," declares ",[37,329,79],{}," as a peer dependency. Keep those packages aligned so the module base classes and runtime hooks match.",[65,332,334],{"id":333},"minimum-setup-shape","Minimum setup shape",[267,336,340],{"className":337,"code":338,"language":339,"meta":231,"style":231},"language-ts shiki shiki-themes github-light github-dark","import StringTune from '@fiddle-digital/string-tune';\nimport { String3D, ThreeJSProvider } from 'string-tune-3d';\nimport * as THREE from 'three';\n\nString3D.setProvider(new ThreeJSProvider(THREE));\n\nconst stringTune = StringTune.getInstance();\nstringTune.use(String3D);\nstringTune.start(60);\n","ts",[37,341,342,361,375,397,404,430,435,456,468],{"__ignoreMap":231},[275,343,344,348,352,355,358],{"class":277,"line":278},[275,345,347],{"class":346},"szBVR","import",[275,349,351],{"class":350},"sVt8B"," StringTune ",[275,353,354],{"class":346},"from",[275,356,357],{"class":285}," '@fiddle-digital/string-tune'",[275,359,360],{"class":350},";\n",[275,362,363,365,368,370,373],{"class":277,"line":232},[275,364,347],{"class":346},[275,366,367],{"class":350}," { String3D, ThreeJSProvider } ",[275,369,354],{"class":346},[275,371,372],{"class":285}," 'string-tune-3d'",[275,374,360],{"class":350},[275,376,378,380,384,387,390,392,395],{"class":277,"line":377},3,[275,379,347],{"class":346},[275,381,383],{"class":382},"sj4cs"," *",[275,385,386],{"class":346}," as",[275,388,389],{"class":350}," THREE ",[275,391,354],{"class":346},[275,393,394],{"class":285}," 'three'",[275,396,360],{"class":350},[275,398,400],{"class":277,"line":399},4,[275,401,403],{"emptyLinePlaceholder":402},true,"\n",[275,405,407,410,413,416,419,422,424,427],{"class":277,"line":406},5,[275,408,409],{"class":350},"String3D.",[275,411,412],{"class":281},"setProvider",[275,414,415],{"class":350},"(",[275,417,418],{"class":346},"new",[275,420,421],{"class":281}," ThreeJSProvider",[275,423,415],{"class":350},[275,425,426],{"class":382},"THREE",[275,428,429],{"class":350},"));\n",[275,431,433],{"class":277,"line":432},6,[275,434,403],{"emptyLinePlaceholder":402},[275,436,438,441,444,447,450,453],{"class":277,"line":437},7,[275,439,440],{"class":346},"const",[275,442,443],{"class":382}," stringTune",[275,445,446],{"class":346}," =",[275,448,449],{"class":350}," StringTune.",[275,451,452],{"class":281},"getInstance",[275,454,455],{"class":350},"();\n",[275,457,459,462,465],{"class":277,"line":458},8,[275,460,461],{"class":350},"stringTune.",[275,463,464],{"class":281},"use",[275,466,467],{"class":350},"(String3D);\n",[275,469,471,473,476,478,481],{"class":277,"line":470},9,[275,472,461],{"class":350},[275,474,475],{"class":281},"start",[275,477,415],{"class":350},[275,479,480],{"class":382},"60",[275,482,483],{"class":350},");\n",[65,485,487],{"id":486},"browser-expectations","Browser expectations",[42,489,490,493,496],{},[45,491,492],{},"You need a browser environment with WebGL support.",[45,494,495],{},"CSS custom properties are part of the normal authoring flow.",[45,497,498],{},"Typed CSS property registration is optional. The module guards that feature and still runs when it is unavailable.",[500,501,502],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":231,"searchDepth":232,"depth":232,"links":504},[505,506,507,508,509],{"id":264,"depth":232,"text":265},{"id":298,"depth":232,"text":299},{"id":321,"depth":232,"text":322},{"id":333,"depth":232,"text":334},{"id":486,"depth":232,"text":487},{"path":21,"title":116,"description":511,"kind":9,"section":10,"order":512,"group":-1,"parentPath":-1,"status":-1,"integration":-1,"publicExport":-1,"activation":-1,"package":-1,"aliases":513,"attrs":516,"events":517,"cssVars":518,"related":519,"body":521},"Register the provider, mount the String3D module, and render your first CSS-controlled 3D object.",30,[514,515],"getting started","first scene",[],[],[],[20,120,520],"/docs/objects/primitives",{"type":25,"value":522,"toc":998},[523,526,530,615,619,644,648,821,825,944,948,985,989,995],[28,524,116],{"id":525},"quick-start",[65,527,529],{"id":528},"_1-create-the-provider","1. Create the provider",[267,531,533],{"className":337,"code":532,"language":339,"meta":231,"style":231},"import StringTune from '@fiddle-digital/string-tune';\nimport { String3D, ThreeJSProvider } from 'string-tune-3d';\nimport * as THREE from 'three';\n\nString3D.setProvider(new ThreeJSProvider(THREE));\n\nconst stringTune = StringTune.getInstance();\n",[37,534,535,547,559,575,579,597,601],{"__ignoreMap":231},[275,536,537,539,541,543,545],{"class":277,"line":278},[275,538,347],{"class":346},[275,540,351],{"class":350},[275,542,354],{"class":346},[275,544,357],{"class":285},[275,546,360],{"class":350},[275,548,549,551,553,555,557],{"class":277,"line":232},[275,550,347],{"class":346},[275,552,367],{"class":350},[275,554,354],{"class":346},[275,556,372],{"class":285},[275,558,360],{"class":350},[275,560,561,563,565,567,569,571,573],{"class":277,"line":377},[275,562,347],{"class":346},[275,564,383],{"class":382},[275,566,386],{"class":346},[275,568,389],{"class":350},[275,570,354],{"class":346},[275,572,394],{"class":285},[275,574,360],{"class":350},[275,576,577],{"class":277,"line":399},[275,578,403],{"emptyLinePlaceholder":402},[275,580,581,583,585,587,589,591,593,595],{"class":277,"line":406},[275,582,409],{"class":350},[275,584,412],{"class":281},[275,586,415],{"class":350},[275,588,418],{"class":346},[275,590,421],{"class":281},[275,592,415],{"class":350},[275,594,426],{"class":382},[275,596,429],{"class":350},[275,598,599],{"class":277,"line":432},[275,600,403],{"emptyLinePlaceholder":402},[275,602,603,605,607,609,611,613],{"class":277,"line":437},[275,604,440],{"class":346},[275,606,443],{"class":382},[275,608,446],{"class":346},[275,610,449],{"class":350},[275,612,452],{"class":281},[275,614,455],{"class":350},[65,616,618],{"id":617},"_2-register-the-module","2. Register the module",[267,620,622],{"className":337,"code":621,"language":339,"meta":231,"style":231},"stringTune.use(String3D);\nstringTune.start(60);\n",[37,623,624,632],{"__ignoreMap":231},[275,625,626,628,630],{"class":277,"line":278},[275,627,461],{"class":350},[275,629,464],{"class":281},[275,631,467],{"class":350},[275,633,634,636,638,640,642],{"class":277,"line":232},[275,635,461],{"class":350},[275,637,475],{"class":281},[275,639,415],{"class":350},[275,641,480],{"class":382},[275,643,483],{"class":350},[65,645,647],{"id":646},"_3-add-one-light-and-one-object","3. Add one light and one object",[267,649,653],{"className":650,"code":651,"language":652,"meta":231,"style":231},"language-html shiki shiki-themes github-light github-dark","\u003Cdiv\n  string=\"3d\"\n  string-3d=\"directionalLight\"\n  style=\"--light-intensity: 1.25; --translate-x: -160; --translate-y: -120; --translate-z: 320\"\n>\u003C/div>\n\n\u003Cdiv\n  string=\"3d\"\n  string-id=\"quick-start-orb\"\n  string-3d=\"sphere\"\n  style=\"\n    width: 168px;\n    height: 168px;\n    --material-type: standard;\n    --material-color: #d4dde7;\n    --material-metalness: 0.18;\n    --material-roughness: 0.34;\n    --rotate-x: -14;\n    --rotate-y: 18;\n    --translate-z: 72;\n  \"\n>\u003C/div>\n","html",[37,654,655,664,675,685,695,706,710,716,724,734,743,753,759,765,771,777,783,789,795,801,806,812],{"__ignoreMap":231},[275,656,657,660],{"class":277,"line":278},[275,658,659],{"class":350},"\u003C",[275,661,663],{"class":662},"s9eBZ","div\n",[275,665,666,669,672],{"class":277,"line":232},[275,667,668],{"class":281},"  string",[275,670,671],{"class":350},"=",[275,673,674],{"class":285},"\"3d\"\n",[275,676,677,680,682],{"class":277,"line":377},[275,678,679],{"class":281},"  string-3d",[275,681,671],{"class":350},[275,683,684],{"class":285},"\"directionalLight\"\n",[275,686,687,690,692],{"class":277,"line":399},[275,688,689],{"class":281},"  style",[275,691,671],{"class":350},[275,693,694],{"class":285},"\"--light-intensity: 1.25; --translate-x: -160; --translate-y: -120; --translate-z: 320\"\n",[275,696,697,700,703],{"class":277,"line":406},[275,698,699],{"class":350},">\u003C/",[275,701,702],{"class":662},"div",[275,704,705],{"class":350},">\n",[275,707,708],{"class":277,"line":432},[275,709,403],{"emptyLinePlaceholder":402},[275,711,712,714],{"class":277,"line":437},[275,713,659],{"class":350},[275,715,663],{"class":662},[275,717,718,720,722],{"class":277,"line":458},[275,719,668],{"class":281},[275,721,671],{"class":350},[275,723,674],{"class":285},[275,725,726,729,731],{"class":277,"line":470},[275,727,728],{"class":281},"  string-id",[275,730,671],{"class":350},[275,732,733],{"class":285},"\"quick-start-orb\"\n",[275,735,736,738,740],{"class":277,"line":11},[275,737,679],{"class":281},[275,739,671],{"class":350},[275,741,742],{"class":285},"\"sphere\"\n",[275,744,746,748,750],{"class":277,"line":745},11,[275,747,689],{"class":281},[275,749,671],{"class":350},[275,751,752],{"class":285},"\"\n",[275,754,756],{"class":277,"line":755},12,[275,757,758],{"class":285},"    width: 168px;\n",[275,760,762],{"class":277,"line":761},13,[275,763,764],{"class":285},"    height: 168px;\n",[275,766,768],{"class":277,"line":767},14,[275,769,770],{"class":285},"    --material-type: standard;\n",[275,772,774],{"class":277,"line":773},15,[275,775,776],{"class":285},"    --material-color: #d4dde7;\n",[275,778,780],{"class":277,"line":779},16,[275,781,782],{"class":285},"    --material-metalness: 0.18;\n",[275,784,786],{"class":277,"line":785},17,[275,787,788],{"class":285},"    --material-roughness: 0.34;\n",[275,790,792],{"class":277,"line":791},18,[275,793,794],{"class":285},"    --rotate-x: -14;\n",[275,796,798],{"class":277,"line":797},19,[275,799,800],{"class":285},"    --rotate-y: 18;\n",[275,802,803],{"class":277,"line":240},[275,804,805],{"class":285},"    --translate-z: 72;\n",[275,807,809],{"class":277,"line":808},21,[275,810,811],{"class":285},"  \"\n",[275,813,815,817,819],{"class":277,"line":814},22,[275,816,699],{"class":350},[275,818,702],{"class":662},[275,820,705],{"class":350},[65,822,824],{"id":823},"_4-drive-it-with-css","4. Drive it with CSS",[267,826,830],{"className":827,"code":828,"language":829,"meta":231,"style":231},"language-css shiki shiki-themes github-light github-dark","[string-id='quick-start-orb'] {\n  transition:\n    --rotate-y 280ms ease,\n    --translate-z 280ms ease;\n}\n\n[string-id='quick-start-orb']:hover {\n  --rotate-y: 40;\n  --translate-z: 96;\n}\n","css",[37,831,832,848,856,873,886,891,895,914,928,940],{"__ignoreMap":231},[275,833,834,837,840,842,845],{"class":277,"line":278},[275,835,836],{"class":350},"[",[275,838,839],{"class":281},"string-id",[275,841,671],{"class":346},[275,843,844],{"class":285},"'quick-start-orb'",[275,846,847],{"class":350},"] {\n",[275,849,850,853],{"class":277,"line":232},[275,851,852],{"class":382},"  transition",[275,854,855],{"class":350},":\n",[275,857,858,861,864,867,870],{"class":277,"line":377},[275,859,860],{"class":350},"    --rotate-y ",[275,862,863],{"class":382},"280",[275,865,866],{"class":346},"ms",[275,868,869],{"class":382}," ease",[275,871,872],{"class":350},",\n",[275,874,875,878,880,882,884],{"class":277,"line":399},[275,876,877],{"class":350},"    --translate-z ",[275,879,863],{"class":382},[275,881,866],{"class":346},[275,883,869],{"class":382},[275,885,360],{"class":350},[275,887,888],{"class":277,"line":406},[275,889,890],{"class":350},"}\n",[275,892,893],{"class":277,"line":432},[275,894,403],{"emptyLinePlaceholder":402},[275,896,897,899,901,903,905,908,911],{"class":277,"line":437},[275,898,836],{"class":350},[275,900,839],{"class":281},[275,902,671],{"class":346},[275,904,844],{"class":285},[275,906,907],{"class":350},"]",[275,909,910],{"class":281},":hover",[275,912,913],{"class":350}," {\n",[275,915,916,920,923,926],{"class":277,"line":458},[275,917,919],{"class":918},"s4XuR","  --rotate-y",[275,921,922],{"class":350},": ",[275,924,925],{"class":382},"40",[275,927,360],{"class":350},[275,929,930,933,935,938],{"class":277,"line":470},[275,931,932],{"class":918},"  --translate-z",[275,934,922],{"class":350},[275,936,937],{"class":382},"96",[275,939,360],{"class":350},[275,941,942],{"class":277,"line":11},[275,943,890],{"class":350},[65,945,947],{"id":946},"what-happens-behind-the-scenes","What happens behind the scenes",[42,949,950,961,973,979],{},[45,951,952,954,955,957,958,84],{},[37,953,39],{}," discovers the element because ",[37,956,60],{}," matches the module ",[37,959,960],{},"htmlKey",[45,962,963,965,966,969,970,84],{},[37,964,206],{}," creates a sphere object for ",[37,967,968],{},"string-3d=\"sphere\""," and a directional light for ",[37,971,972],{},"string-3d=\"directionalLight\"",[45,974,975,978],{},[37,976,977],{},"String3DSynchronizer"," reads the element box and computed styles.",[45,980,981,984],{},[37,982,983],{},"String3DRenderer"," renders the scene into the fixed overlay container.",[65,986,988],{"id":987},"common-mistake","Common mistake",[33,990,991,992,994],{},"Do not expect the module to work before the provider is set. ",[37,993,53],{}," exits early during initialization when no provider has been registered.",[500,996,997],{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}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 .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":231,"searchDepth":232,"depth":232,"links":999},[1000,1001,1002,1003,1004,1005],{"id":528,"depth":232,"text":529},{"id":617,"depth":232,"text":618},{"id":646,"depth":232,"text":647},{"id":823,"depth":232,"text":824},{"id":946,"depth":232,"text":947},{"id":987,"depth":232,"text":988},{"path":120,"title":121,"description":1007,"kind":9,"section":10,"order":1008,"group":-1,"parentPath":-1,"status":-1,"integration":-1,"publicExport":-1,"activation":-1,"package":-1,"aliases":1009,"attrs":1012,"events":1013,"cssVars":1014,"related":1015,"body":1016},"How the ThreeJSProvider bridges StringTune-3D to Three.js and where you can swap loaders or engine features.",40,[95,1010,1011],"Three.js setup","provider",[],[],[],[20,21,248],{"type":25,"value":1017,"toc":1241},[1018,1021,1037,1041,1096,1100,1103,1182,1186,1215,1219,1222,1238],[28,1019,121],{"id":1020},"threejs-provider",[33,1022,1023,1025,1026,1028,1029,1032,1033,1036],{},[37,1024,95],{}," is the default engine bridge shipped by the package. It adapts ",[37,1027,83],{}," to the ",[37,1030,1031],{},"I3DEngineProvider"," and ",[37,1034,1035],{},"I3DEngine"," contracts used by the runtime.",[65,1038,1040],{"id":1039},"base-setup","Base setup",[267,1042,1044],{"className":337,"code":1043,"language":339,"meta":231,"style":231},"import { String3D, ThreeJSProvider } from 'string-tune-3d';\nimport * as THREE from 'three';\n\nString3D.setProvider(new ThreeJSProvider(THREE));\n",[37,1045,1046,1058,1074,1078],{"__ignoreMap":231},[275,1047,1048,1050,1052,1054,1056],{"class":277,"line":278},[275,1049,347],{"class":346},[275,1051,367],{"class":350},[275,1053,354],{"class":346},[275,1055,372],{"class":285},[275,1057,360],{"class":350},[275,1059,1060,1062,1064,1066,1068,1070,1072],{"class":277,"line":232},[275,1061,347],{"class":346},[275,1063,383],{"class":382},[275,1065,386],{"class":346},[275,1067,389],{"class":350},[275,1069,354],{"class":346},[275,1071,394],{"class":285},[275,1073,360],{"class":350},[275,1075,1076],{"class":277,"line":377},[275,1077,403],{"emptyLinePlaceholder":402},[275,1079,1080,1082,1084,1086,1088,1090,1092,1094],{"class":277,"line":399},[275,1081,409],{"class":350},[275,1083,412],{"class":281},[275,1085,415],{"class":350},[275,1087,418],{"class":346},[275,1089,421],{"class":281},[275,1091,415],{"class":350},[275,1093,426],{"class":382},[275,1095,429],{"class":350},[65,1097,1099],{"id":1098},"optional-loader-map","Optional loader map",[33,1101,1102],{},"If you need custom loaders, pass them to the provider constructor.",[267,1104,1106],{"className":337,"code":1105,"language":339,"meta":231,"style":231},"import { GLTFLoader } from 'three/examples/jsm/loaders/GLTFLoader.js';\nimport { FontLoader } from 'three/examples/jsm/loaders/FontLoader.js';\n\nString3D.setProvider(\n  new ThreeJSProvider(THREE, {\n    gltf: GLTFLoader,\n    font: FontLoader,\n  }),\n);\n",[37,1107,1108,1122,1136,1140,1149,1163,1168,1173,1178],{"__ignoreMap":231},[275,1109,1110,1112,1115,1117,1120],{"class":277,"line":278},[275,1111,347],{"class":346},[275,1113,1114],{"class":350}," { GLTFLoader } ",[275,1116,354],{"class":346},[275,1118,1119],{"class":285}," 'three/examples/jsm/loaders/GLTFLoader.js'",[275,1121,360],{"class":350},[275,1123,1124,1126,1129,1131,1134],{"class":277,"line":232},[275,1125,347],{"class":346},[275,1127,1128],{"class":350}," { FontLoader } ",[275,1130,354],{"class":346},[275,1132,1133],{"class":285}," 'three/examples/jsm/loaders/FontLoader.js'",[275,1135,360],{"class":350},[275,1137,1138],{"class":277,"line":377},[275,1139,403],{"emptyLinePlaceholder":402},[275,1141,1142,1144,1146],{"class":277,"line":399},[275,1143,409],{"class":350},[275,1145,412],{"class":281},[275,1147,1148],{"class":350},"(\n",[275,1150,1151,1154,1156,1158,1160],{"class":277,"line":406},[275,1152,1153],{"class":346},"  new",[275,1155,421],{"class":281},[275,1157,415],{"class":350},[275,1159,426],{"class":382},[275,1161,1162],{"class":350},", {\n",[275,1164,1165],{"class":277,"line":432},[275,1166,1167],{"class":350},"    gltf: GLTFLoader,\n",[275,1169,1170],{"class":277,"line":437},[275,1171,1172],{"class":350},"    font: FontLoader,\n",[275,1174,1175],{"class":277,"line":458},[275,1176,1177],{"class":350},"  }),\n",[275,1179,1180],{"class":277,"line":470},[275,1181,483],{"class":350},[65,1183,1185],{"id":1184},"what-the-provider-supplies","What the provider supplies",[42,1187,1188,1191,1194,1197,1200,1203,1206,1209,1212],{},[45,1189,1190],{},"scene creation",[45,1192,1193],{},"camera creation",[45,1195,1196],{},"geometry factories",[45,1198,1199],{},"material factories",[45,1201,1202],{},"texture loading",[45,1204,1205],{},"model loading",[45,1207,1208],{},"font loading",[45,1210,1211],{},"post-process runtime hooks",[45,1213,1214],{},"capability reporting",[65,1216,1218],{"id":1217},"when-to-look-deeper","When to look deeper",[33,1220,1221],{},"Use the provider page as the boundary line:",[42,1223,1224,1230,1235],{},[45,1225,1226,1227,1229],{},"if you only need normal Three.js usage, ",[37,1228,95],{}," is enough",[45,1231,1232,1233],{},"if you want another backend, you implement ",[37,1234,1031],{},[45,1236,1237],{},"if you want custom materials or custom filters on top of Three.js, stay in the registry APIs instead of rewriting the provider",[500,1239,1240],{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}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":231,"searchDepth":232,"depth":232,"links":1242},[1243,1244,1245,1246],{"id":1039,"depth":232,"text":1040},{"id":1098,"depth":232,"text":1099},{"id":1184,"depth":232,"text":1185},{"id":1217,"depth":232,"text":1218},{"path":127,"title":1248,"description":1249,"kind":1250,"section":128,"order":11,"group":1251,"parentPath":-1,"status":-1,"integration":-1,"publicExport":-1,"activation":-1,"package":-1,"aliases":1252,"attrs":1255,"events":1256,"cssVars":1257,"related":1258,"body":1262},"Runtime Model","How one String3D module instance manages the renderer, scene, synchronizer, and DOM-connected objects.","concept","Core Concepts",[1253,1254],"renderer lifecycle","String3D runtime",[],[],[],[1259,1260,1261],"/docs/dom-to-scene","/docs/api/string3d","/docs/api/scene-runtime",{"type":25,"value":1263,"toc":1395},[1264,1266,1274,1278,1306,1310,1329,1333,1336,1350,1354,1357,1365,1369],[28,1265,1248],{"id":156},[33,1267,1268,1270,1271,1273],{},[37,1269,53],{}," is one module instance inside the ",[37,1272,39],{}," runtime, not a separate app-level scene manager you create by hand.",[65,1275,1277],{"id":1276},"main-participants","Main participants",[42,1279,1280,1285,1290,1295,1300],{},[45,1281,1282,1284],{},[37,1283,53],{}," owns settings, provider bootstrap, and the frame hook.",[45,1286,1287,1289],{},[37,1288,983],{}," owns the render surface and frame output.",[45,1291,1292,1294],{},[37,1293,206],{}," owns created 3D objects.",[45,1296,1297,1299],{},[37,1298,977],{}," translates DOM state into 3D transforms and style-driven changes.",[45,1301,1302,1305],{},[37,1303,1304],{},"DirtySyncManager"," optionally narrows updates to changed elements.",[65,1307,1309],{"id":1308},"initialization-flow","Initialization flow",[104,1311,1312,1317,1323,1326],{},[45,1313,1314,1316],{},[37,1315,39],{}," starts.",[45,1318,1319,1322],{},[37,1320,1321],{},"String3D.onInit()"," runs.",[45,1324,1325],{},"The module bootstraps the provider and creates the renderer, camera, scene, and synchronizer.",[45,1327,1328],{},"Connected DOM objects are flushed into the scene.",[65,1330,1332],{"id":1331},"frame-flow","Frame flow",[33,1334,1335],{},"Each frame:",[104,1337,1338,1341,1344,1347],{},[45,1339,1340],{},"the module batches layout reads",[45,1342,1343],{},"synchronizers update root objects and children",[45,1345,1346],{},"filter targets are collected",[45,1348,1349],{},"the renderer draws the final frame",[65,1351,1353],{"id":1352},"why-this-matters","Why this matters",[33,1355,1356],{},"This explains two important behaviors:",[42,1358,1359,1362],{},[45,1360,1361],{},"DOM size and computed style are the input contract",[45,1363,1364],{},"scene mutations are derived from markup instead of being authored as independent mesh code",[65,1366,1368],{"id":1367},"when-settings-take-effect","When settings take effect",[33,1370,1371,1372,113,1375,113,1378,113,1381,117,1384,1387,1388,1391,1392,84],{},"Module settings such as ",[37,1373,1374],{},"container",[37,1376,1377],{},"zIndex",[37,1379,1380],{},"useDirtySync",[37,1382,1383],{},"styleReadIntervalMs",[37,1385,1386],{},"layoutReadIntervalMs"," are read from ",[37,1389,1390],{},"this.settings"," and can be re-applied through ",[37,1393,1394],{},"onSettingsChange()",{"title":231,"searchDepth":232,"depth":232,"links":1396},[1397,1398,1399,1400,1401],{"id":1276,"depth":232,"text":1277},{"id":1308,"depth":232,"text":1309},{"id":1331,"depth":232,"text":1332},{"id":1352,"depth":232,"text":1353},{"id":1367,"depth":232,"text":1368},{"path":1259,"title":1403,"description":1404,"kind":1250,"section":128,"order":240,"group":1251,"parentPath":-1,"status":-1,"integration":-1,"publicExport":-1,"activation":-1,"package":-1,"aliases":1405,"attrs":1409,"events":1410,"cssVars":1411,"related":1412,"body":1414},"DOM To Scene Mapping","How string-id, nesting, and string-3d type selection become a live 3D scene graph.",[1406,1407,1408],"group nesting","parentId","scene graph",[],[],[],[127,1413,1261],"/docs/objects/group",{"type":25,"value":1415,"toc":1617},[1416,1419,1424,1428,1438,1488,1492,1501,1505,1508,1587,1593,1597,1614],[28,1417,1403],{"id":1418},"dom-to-scene-mapping",[33,1420,1421,1422,84],{},"The DOM remains the authoring surface. StringTune-3D maps elements to scene nodes based on ",[37,1423,139],{},[65,1425,1427],{"id":1426},"type-selection","Type selection",[33,1429,1430,1431,1434,1435,1437],{},"The runtime reads the mapped ",[37,1432,1433],{},"3d"," property from ",[37,1436,139],{}," and dispatches to a scene factory:",[42,1439,1440,1445,1450,1455,1460,1465,1470,1475,1480,1485],{},[45,1441,1442],{},[37,1443,1444],{},"group",[45,1446,1447],{},[37,1448,1449],{},"box",[45,1451,1452],{},[37,1453,1454],{},"sphere",[45,1456,1457],{},[37,1458,1459],{},"plane",[45,1461,1462],{},[37,1463,1464],{},"cylinder",[45,1466,1467],{},[37,1468,1469],{},"model",[45,1471,1472],{},[37,1473,1474],{},"particles",[45,1476,1477],{},[37,1478,1479],{},"text",[45,1481,1482],{},[37,1483,1484],{},"svg",[45,1486,1487],{},"light types",[65,1489,1491],{"id":1490},"identity","Identity",[33,1493,1494,1495,1497,1498,1500],{},"Each object still belongs to the ",[37,1496,39],{}," object model, so ",[37,1499,839],{}," remains the stable identity anchor.",[65,1502,1504],{"id":1503},"parent-child-nesting","Parent-child nesting",[33,1506,1507],{},"Nested groups are discovered through the nearest parent matching:",[267,1509,1511],{"className":650,"code":1510,"language":652,"meta":231,"style":231},"\u003Cdiv string=\"3d\" string-id=\"root\" string-3d=\"group\">\n  \u003Cdiv string=\"3d\" string-id=\"child\" string-3d=\"box\">\u003C/div>\n\u003C/div>\n",[37,1512,1513,1545,1578],{"__ignoreMap":231},[275,1514,1515,1517,1519,1522,1524,1527,1530,1532,1535,1538,1540,1543],{"class":277,"line":278},[275,1516,659],{"class":350},[275,1518,702],{"class":662},[275,1520,1521],{"class":281}," string",[275,1523,671],{"class":350},[275,1525,1526],{"class":285},"\"3d\"",[275,1528,1529],{"class":281}," string-id",[275,1531,671],{"class":350},[275,1533,1534],{"class":285},"\"root\"",[275,1536,1537],{"class":281}," string-3d",[275,1539,671],{"class":350},[275,1541,1542],{"class":285},"\"group\"",[275,1544,705],{"class":350},[275,1546,1547,1550,1552,1554,1556,1558,1560,1562,1565,1567,1569,1572,1574,1576],{"class":277,"line":232},[275,1548,1549],{"class":350},"  \u003C",[275,1551,702],{"class":662},[275,1553,1521],{"class":281},[275,1555,671],{"class":350},[275,1557,1526],{"class":285},[275,1559,1529],{"class":281},[275,1561,671],{"class":350},[275,1563,1564],{"class":285},"\"child\"",[275,1566,1537],{"class":281},[275,1568,671],{"class":350},[275,1570,1571],{"class":285},"\"box\"",[275,1573,699],{"class":350},[275,1575,702],{"class":662},[275,1577,705],{"class":350},[275,1579,1580,1583,1585],{"class":277,"line":377},[275,1581,1582],{"class":350},"\u003C/",[275,1584,702],{"class":662},[275,1586,705],{"class":350},[33,1588,1589,1590,1592],{},"When the parent is a group and has ",[37,1591,839],{},", the child object stores that parent id and is attached below it in the scene graph.",[65,1594,1596],{"id":1595},"practical-rule","Practical rule",[42,1598,1599,1605,1608],{},[45,1600,1601,1602,1604],{},"use ",[37,1603,1444],{}," when you need hierarchical transforms",[45,1606,1607],{},"use regular object types when you need visible geometry or light sources",[45,1609,1610,1611,1613],{},"keep ",[37,1612,839],{}," stable if outside code references the object",[500,1615,1616],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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":231,"searchDepth":232,"depth":232,"links":1618},[1619,1620,1621,1622],{"id":1426,"depth":232,"text":1427},{"id":1490,"depth":232,"text":1491},{"id":1503,"depth":232,"text":1504},{"id":1595,"depth":232,"text":1596},{"path":1624,"title":1625,"description":1626,"kind":1250,"section":128,"order":512,"group":1251,"parentPath":-1,"status":-1,"integration":-1,"publicExport":-1,"activation":-1,"package":-1,"aliases":1627,"attrs":1632,"events":1633,"cssVars":1634,"related":1641,"body":1643},"/docs/transforms-and-css","Transforms And CSS","The CSS custom property contract for transforms, opacity, materials, and typed property registration.",[1628,1629,1630,1631],"CSS variables","--translate-z","--rotate-x","--material-color",[],[],[1635,1636,1629,1630,1637,1638,1639,1640],"--translate-x","--translate-y","--rotate-y","--rotate-z","--scale","--opacity",[145,1642,1260],"/docs/rendering/textures",{"type":25,"value":1644,"toc":2032},[1645,1648,1654,1658,1825,1829,1832,1899,1902,1906,1909,1913,1916,2015,2022,2026,2029],[28,1646,1625],{"id":1647},"transforms-and-css",[33,1649,1650,1651,84],{},"StringTune-3D is CSS-first by design. The module injects a base stylesheet and registers typed properties when the browser supports ",[37,1652,1653],{},"CSS.registerProperty",[65,1655,1657],{"id":1656},"core-transform-inputs","Core transform inputs",[1659,1660,1661,1677],"table",{},[1662,1663,1664],"thead",{},[1665,1666,1667,1671,1674],"tr",{},[1668,1669,1670],"th",{},"Variable",[1668,1672,1673],{},"Default",[1668,1675,1676],{},"Effect",[1678,1679,1680,1695,1708,1721,1734,1746,1758,1772,1786,1799,1812],"tbody",{},[1665,1681,1682,1687,1692],{},[1683,1684,1685],"td",{},[37,1686,1635],{},[1683,1688,1689],{},[37,1690,1691],{},"0",[1683,1693,1694],{},"X offset in pixels",[1665,1696,1697,1701,1705],{},[1683,1698,1699],{},[37,1700,1636],{},[1683,1702,1703],{},[37,1704,1691],{},[1683,1706,1707],{},"Y offset in pixels",[1665,1709,1710,1714,1718],{},[1683,1711,1712],{},[37,1713,1629],{},[1683,1715,1716],{},[37,1717,1691],{},[1683,1719,1720],{},"Z offset in pixels",[1665,1722,1723,1727,1731],{},[1683,1724,1725],{},[37,1726,1630],{},[1683,1728,1729],{},[37,1730,1691],{},[1683,1732,1733],{},"Rotation in degrees",[1665,1735,1736,1740,1744],{},[1683,1737,1738],{},[37,1739,1637],{},[1683,1741,1742],{},[37,1743,1691],{},[1683,1745,1733],{},[1665,1747,1748,1752,1756],{},[1683,1749,1750],{},[37,1751,1638],{},[1683,1753,1754],{},[37,1755,1691],{},[1683,1757,1733],{},[1665,1759,1760,1764,1769],{},[1683,1761,1762],{},[37,1763,1639],{},[1683,1765,1766],{},[37,1767,1768],{},"1",[1683,1770,1771],{},"Uniform scale multiplier",[1665,1773,1774,1779,1783],{},[1683,1775,1776],{},[37,1777,1778],{},"--scale-x",[1683,1780,1781],{},[37,1782,1768],{},[1683,1784,1785],{},"Per-axis scale multiplier",[1665,1787,1788,1793,1797],{},[1683,1789,1790],{},[37,1791,1792],{},"--scale-y",[1683,1794,1795],{},[37,1796,1768],{},[1683,1798,1785],{},[1665,1800,1801,1806,1810],{},[1683,1802,1803],{},[37,1804,1805],{},"--scale-z",[1683,1807,1808],{},[37,1809,1768],{},[1683,1811,1785],{},[1665,1813,1814,1818,1822],{},[1683,1815,1816],{},[37,1817,1640],{},[1683,1819,1820],{},[37,1821,1768],{},[1683,1823,1824],{},"Material opacity",[65,1826,1828],{"id":1827},"visual-dom-helper","Visual DOM helper",[33,1830,1831],{},"The injected CSS also defines a visual helper selector:",[267,1833,1835],{"className":827,"code":1834,"language":829,"meta":231,"style":231},"[string-3d-visual='true'] {\n  transform:\n    translate3d(...)\n    rotateX(...)\n    rotateY(...)\n    rotateZ(...)\n    scale3d(...);\n}\n",[37,1836,1837,1851,1858,1866,1873,1880,1887,1895],{"__ignoreMap":231},[275,1838,1839,1841,1844,1846,1849],{"class":277,"line":278},[275,1840,836],{"class":350},[275,1842,1843],{"class":281},"string-3d-visual",[275,1845,671],{"class":346},[275,1847,1848],{"class":285},"'true'",[275,1850,847],{"class":350},[275,1852,1853,1856],{"class":277,"line":232},[275,1854,1855],{"class":382},"  transform",[275,1857,855],{"class":350},[275,1859,1860,1863],{"class":277,"line":377},[275,1861,1862],{"class":382},"    translate3d",[275,1864,1865],{"class":350},"(...)\n",[275,1867,1868,1871],{"class":277,"line":399},[275,1869,1870],{"class":382},"    rotateX",[275,1872,1865],{"class":350},[275,1874,1875,1878],{"class":277,"line":406},[275,1876,1877],{"class":382},"    rotateY",[275,1879,1865],{"class":350},[275,1881,1882,1885],{"class":277,"line":432},[275,1883,1884],{"class":382},"    rotateZ",[275,1886,1865],{"class":350},[275,1888,1889,1892],{"class":277,"line":437},[275,1890,1891],{"class":382},"    scale3d",[275,1893,1894],{"class":350},"(...);\n",[275,1896,1897],{"class":277,"line":458},[275,1898,890],{"class":350},[33,1900,1901],{},"That helper is separate from the 3D scene. It exists for DOM-side visual syncing where needed.",[65,1903,1905],{"id":1904},"typed-property-rule","Typed property rule",[33,1907,1908],{},"Typed registration improves CSS transitions on custom properties, but the runtime does not require it to function.",[65,1910,1912],{"id":1911},"css-transitions-are-the-animation-layer","CSS transitions are the animation layer",[33,1914,1915],{},"For transforms, the intended animation path is plain CSS on the same custom properties that drive the scene.",[267,1917,1919],{"className":827,"code":1918,"language":829,"meta":231,"style":231},"[string-id='card'] {\n  transition:\n    --rotate-y 360ms ease,\n    --translate-z 360ms ease;\n}\n\n[string-id='card']:hover {\n  --rotate-y: 10;\n  --translate-z: 120;\n}\n",[37,1920,1921,1934,1940,1953,1965,1969,1973,1989,2000,2011],{"__ignoreMap":231},[275,1922,1923,1925,1927,1929,1932],{"class":277,"line":278},[275,1924,836],{"class":350},[275,1926,839],{"class":281},[275,1928,671],{"class":346},[275,1930,1931],{"class":285},"'card'",[275,1933,847],{"class":350},[275,1935,1936,1938],{"class":277,"line":232},[275,1937,852],{"class":382},[275,1939,855],{"class":350},[275,1941,1942,1944,1947,1949,1951],{"class":277,"line":377},[275,1943,860],{"class":350},[275,1945,1946],{"class":382},"360",[275,1948,866],{"class":346},[275,1950,869],{"class":382},[275,1952,872],{"class":350},[275,1954,1955,1957,1959,1961,1963],{"class":277,"line":399},[275,1956,877],{"class":350},[275,1958,1946],{"class":382},[275,1960,866],{"class":346},[275,1962,869],{"class":382},[275,1964,360],{"class":350},[275,1966,1967],{"class":277,"line":406},[275,1968,890],{"class":350},[275,1970,1971],{"class":277,"line":432},[275,1972,403],{"emptyLinePlaceholder":402},[275,1974,1975,1977,1979,1981,1983,1985,1987],{"class":277,"line":437},[275,1976,836],{"class":350},[275,1978,839],{"class":281},[275,1980,671],{"class":346},[275,1982,1931],{"class":285},[275,1984,907],{"class":350},[275,1986,910],{"class":281},[275,1988,913],{"class":350},[275,1990,1991,1993,1995,1998],{"class":277,"line":458},[275,1992,919],{"class":918},[275,1994,922],{"class":350},[275,1996,1997],{"class":382},"10",[275,1999,360],{"class":350},[275,2001,2002,2004,2006,2009],{"class":277,"line":470},[275,2003,932],{"class":918},[275,2005,922],{"class":350},[275,2007,2008],{"class":382},"120",[275,2010,360],{"class":350},[275,2012,2013],{"class":277,"line":11},[275,2014,890],{"class":350},[33,2016,2017,2018,2021],{},"StringTune-3D then reads the animated values through ",[37,2019,2020],{},"getComputedStyle()"," during synchronization. In practice, that means you animate the DOM contract and the 3D object follows it.",[65,2023,2025],{"id":2024},"material-variables-live-in-the-same-contract","Material variables live in the same contract",[33,2027,2028],{},"The module also registers material, light, texture, particle, text, and SVG variables. That is why many runtime features can be animated with pure CSS transitions.",[500,2030,2031],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":231,"searchDepth":232,"depth":232,"links":2033},[2034,2035,2036,2037,2038],{"id":1656,"depth":232,"text":1657},{"id":1827,"depth":232,"text":1828},{"id":1904,"depth":232,"text":1905},{"id":1911,"depth":232,"text":1912},{"id":2024,"depth":232,"text":2025},{"path":2040,"title":2041,"description":2042,"kind":1250,"section":128,"order":1008,"group":2043,"parentPath":-1,"status":-1,"integration":-1,"publicExport":-1,"activation":-1,"package":-1,"aliases":2044,"attrs":2049,"events":2050,"cssVars":2051,"related":2052,"body":2054},"/docs/model-loading","Model Loading","Loader selection, fit modes, centering, texture remapping, and when model materials are overridden by CSS.","Asset Pipeline",[2045,2046,2047,2048],"GLTF","GLB","loader factory","model textures",[],[],[],[2053,1642,248],"/docs/objects/model",{"type":25,"value":2055,"toc":2203},[2056,2059,2062,2066,2104,2111,2115,2118,2142,2146,2166,2170,2173,2185,2188,2192,2201],[28,2057,2041],{"id":2058},"model-loading",[33,2060,2061],{},"Models are the object type with the most moving parts, because they combine provider loaders, scene import, material override, and fit logic.",[65,2063,2065],{"id":2064},"required-attribute","Required attribute",[267,2067,2069],{"className":650,"code":2068,"language":652,"meta":231,"style":231},"\u003Cdiv string=\"3d\" string-3d=\"model\" string-3d-model=\"/models/robot.glb\">\u003C/div>\n",[37,2070,2071],{"__ignoreMap":231},[275,2072,2073,2075,2077,2079,2081,2083,2085,2087,2090,2093,2095,2098,2100,2102],{"class":277,"line":278},[275,2074,659],{"class":350},[275,2076,702],{"class":662},[275,2078,1521],{"class":281},[275,2080,671],{"class":350},[275,2082,1526],{"class":285},[275,2084,1537],{"class":281},[275,2086,671],{"class":350},[275,2088,2089],{"class":285},"\"model\"",[275,2091,2092],{"class":281}," string-3d-model",[275,2094,671],{"class":350},[275,2096,2097],{"class":285},"\"/models/robot.glb\"",[275,2099,699],{"class":350},[275,2101,702],{"class":662},[275,2103,705],{"class":350},[33,2105,2106,2107,2110],{},"Without ",[37,2108,2109],{},"string-3d-model",", the scene runtime does not create the model object.",[65,2112,2114],{"id":2113},"loader-selection","Loader selection",[33,2116,2117],{},"There are three ways model loading can be decided:",[104,2119,2120,2126,2132],{},[45,2121,2122,2123],{},"a direct module setting ",[37,2124,2125],{},"modelLoader",[45,2127,2128,2129],{},"a module setting ",[37,2130,2131],{},"modelLoaderFactory",[45,2133,2134,2135,2138,2139],{},"a type name from ",[37,2136,2137],{},"modelLoaderType"," or ",[37,2140,2141],{},"string-3d-model-loader",[65,2143,2145],{"id":2144},"fit-and-centering","Fit and centering",[42,2147,2148,2154,2160],{},[45,2149,2150,2153],{},[37,2151,2152],{},"string-3d-model-fit"," controls how the imported model is fit to the DOM box",[45,2155,2156,2159],{},[37,2157,2158],{},"string-3d-model-scale"," applies an extra scale factor",[45,2161,2162,2165],{},[37,2163,2164],{},"string-3d-model-center"," recenters the loaded root around its bounding box",[65,2167,2169],{"id":2168},"texture-remapping","Texture remapping",[33,2171,2172],{},"Two attributes affect loader-side texture resolution:",[42,2174,2175,2180],{},[45,2176,2177],{},[37,2178,2179],{},"string-3d-model-texture-base",[45,2181,2182],{},[37,2183,2184],{},"string-3d-model-textures",[33,2186,2187],{},"The second one is expected to be JSON.",[65,2189,2191],{"id":2190},"material-override-rule","Material override rule",[33,2193,2194,2195,2138,2197,2200],{},"If the model element defines material-related CSS such as ",[37,2196,1631],{},[37,2198,2199],{},"--texture-map",", the runtime treats that as an override signal and replaces imported mesh materials with the CSS-driven material pipeline.",[500,2202,1616],{},{"title":231,"searchDepth":232,"depth":232,"links":2204},[2205,2206,2207,2208,2209],{"id":2064,"depth":232,"text":2065},{"id":2113,"depth":232,"text":2114},{"id":2144,"depth":232,"text":2145},{"id":2168,"depth":232,"text":2169},{"id":2190,"depth":232,"text":2191},{"path":22,"title":135,"description":2211,"kind":9,"section":2212,"order":406,"group":-1,"parentPath":-1,"status":-1,"integration":-1,"publicExport":-1,"activation":-1,"package":-1,"aliases":2213,"attrs":2214,"events":2215,"cssVars":2216,"related":2217,"body":2218},"Reference map of the supported string-3d object types and when each one should be used.","Objects",[],[],[],[],[21,145,1260],{"type":25,"value":2219,"toc":2522},[2220,2223,2226,2256,2262,2266,2271,2279,2283,2297,2301,2310,2314,2337,2341,2346,2349,2357,2362,2367,2372,2376,2399,2403,2517,2520],[28,2221,135],{"id":2222},"objects-overview",[33,2224,2225],{},"Every scene node in StringTune-3D starts from the same contract:",[267,2227,2229],{"className":650,"code":2228,"language":652,"meta":231,"style":231},"\u003Cdiv string=\"3d\" string-3d=\"...\">\u003C/div>\n",[37,2230,2231],{"__ignoreMap":231},[275,2232,2233,2235,2237,2239,2241,2243,2245,2247,2250,2252,2254],{"class":277,"line":278},[275,2234,659],{"class":350},[275,2236,702],{"class":662},[275,2238,1521],{"class":281},[275,2240,671],{"class":350},[275,2242,1526],{"class":285},[275,2244,1537],{"class":281},[275,2246,671],{"class":350},[275,2248,2249],{"class":285},"\"...\"",[275,2251,699],{"class":350},[275,2253,702],{"class":662},[275,2255,705],{"class":350},[33,2257,2258,2259,2261],{},"The ",[37,2260,139],{}," value decides which runtime object is created. After that, the object is driven through the element box, computed styles, and object-specific CSS variables.",[65,2263,2265],{"id":2264},"the-object-families","The object families",[2267,2268,2270],"h3",{"id":2269},"structure","Structure",[42,2272,2273],{},[45,2274,2275,2278],{},[110,2276,2277],{"href":1413},"Group",": transform-only parent node for hierarchy and shared motion",[2267,2280,2282],{"id":2281},"geometry","Geometry",[42,2284,2285,2291],{},[45,2286,2287,2290],{},[110,2288,2289],{"href":520},"Primitives",": fast built-in geometry for boxes, spheres, planes, and cylinders",[45,2292,2293,2296],{},[110,2294,2295],{"href":2053},"Model",": imported 3D assets through the active provider and loaders",[2267,2298,2300],{"id":2299},"lighting","Lighting",[42,2302,2303],{},[45,2304,2305,2309],{},[110,2306,2308],{"href":2307},"/docs/objects/lights","Lights",": ambient, directional, point, spot, and hemisphere lights",[2267,2311,2313],{"id":2312},"procedural-and-content-driven","Procedural and content-driven",[42,2315,2316,2323,2330],{},[45,2317,2318,2322],{},[110,2319,2321],{"href":2320},"/docs/objects/particles","Particles",": emitter systems and instanced distributions, including model-backed layouts",[45,2324,2325,2329],{},[110,2326,2328],{"href":2327},"/docs/objects/text","Text",": 3D text built from the element text content",[45,2331,2332,2336],{},[110,2333,2335],{"href":2334},"/docs/objects/svg","SVG",": extruded vector geometry built from inline or external SVG",[65,2338,2340],{"id":2339},"how-to-choose","How to choose",[33,2342,132,2343,2345],{},[37,2344,1444],{}," when you need parent-child transforms but no visible mesh.",[33,2347,2348],{},"Use primitives when you want the simplest possible geometry, fast setup, and no external assets.",[33,2350,132,2351,2353,2354,84],{},[37,2352,1469],{}," when the source of truth is already a 3D asset such as ",[37,2355,2356],{},".glb",[33,2358,132,2359,2361],{},[37,2360,1479],{}," when the source of truth is still text content and you want extrusion, depth, and material control without leaving the DOM contract.",[33,2363,132,2364,2366],{},[37,2365,1484],{}," when the source of truth is vector artwork and you want to keep it path-based.",[33,2368,132,2369,2371],{},[37,2370,1474],{}," when the effect is procedural, distributed, or morph-driven rather than mesh-driven.",[65,2373,2375],{"id":2374},"shared-rules-across-all-objects","Shared rules across all objects",[42,2377,2378,2381,2393,2396],{},[45,2379,2380],{},"All object types read the element box as their layout anchor.",[45,2382,2383,2384,113,2387,117,2390,84],{},"All object types participate in the shared transform contract such as ",[37,2385,2386],{},"--translate-*",[37,2388,2389],{},"--rotate-*",[37,2391,2392],{},"--scale*",[45,2394,2395],{},"Most visible object types also participate in the shared material pipeline.",[45,2397,2398],{},"CSS transitions on the relevant custom properties are the intended animation layer.",[65,2400,2402],{"id":2401},"minimal-shape-of-a-scene","Minimal shape of a scene",[267,2404,2406],{"className":650,"code":2405,"language":652,"meta":231,"style":231},"\u003Cdiv string=\"3d\" string-3d=\"ambientLight\" style=\"--light-intensity: 0.4\">\u003C/div>\n\n\u003Cdiv\n  string=\"3d\"\n  string-3d=\"box\"\n  style=\"\n    width: 180px;\n    height: 180px;\n    --material-type: standard;\n    --material-color: #ff6b2b;\n    --rotate-y: 20;\n    --translate-z: 80;\n  \"\n>\u003C/div>\n",[37,2407,2408,2441,2445,2451,2459,2468,2476,2481,2486,2490,2495,2500,2505,2509],{"__ignoreMap":231},[275,2409,2410,2412,2414,2416,2418,2420,2422,2424,2427,2430,2432,2435,2437,2439],{"class":277,"line":278},[275,2411,659],{"class":350},[275,2413,702],{"class":662},[275,2415,1521],{"class":281},[275,2417,671],{"class":350},[275,2419,1526],{"class":285},[275,2421,1537],{"class":281},[275,2423,671],{"class":350},[275,2425,2426],{"class":285},"\"ambientLight\"",[275,2428,2429],{"class":281}," style",[275,2431,671],{"class":350},[275,2433,2434],{"class":285},"\"--light-intensity: 0.4\"",[275,2436,699],{"class":350},[275,2438,702],{"class":662},[275,2440,705],{"class":350},[275,2442,2443],{"class":277,"line":232},[275,2444,403],{"emptyLinePlaceholder":402},[275,2446,2447,2449],{"class":277,"line":377},[275,2448,659],{"class":350},[275,2450,663],{"class":662},[275,2452,2453,2455,2457],{"class":277,"line":399},[275,2454,668],{"class":281},[275,2456,671],{"class":350},[275,2458,674],{"class":285},[275,2460,2461,2463,2465],{"class":277,"line":406},[275,2462,679],{"class":281},[275,2464,671],{"class":350},[275,2466,2467],{"class":285},"\"box\"\n",[275,2469,2470,2472,2474],{"class":277,"line":432},[275,2471,689],{"class":281},[275,2473,671],{"class":350},[275,2475,752],{"class":285},[275,2477,2478],{"class":277,"line":437},[275,2479,2480],{"class":285},"    width: 180px;\n",[275,2482,2483],{"class":277,"line":458},[275,2484,2485],{"class":285},"    height: 180px;\n",[275,2487,2488],{"class":277,"line":470},[275,2489,770],{"class":285},[275,2491,2492],{"class":277,"line":11},[275,2493,2494],{"class":285},"    --material-color: #ff6b2b;\n",[275,2496,2497],{"class":277,"line":745},[275,2498,2499],{"class":285},"    --rotate-y: 20;\n",[275,2501,2502],{"class":277,"line":755},[275,2503,2504],{"class":285},"    --translate-z: 80;\n",[275,2506,2507],{"class":277,"line":761},[275,2508,811],{"class":285},[275,2510,2511,2513,2515],{"class":277,"line":767},[275,2512,699],{"class":350},[275,2514,702],{"class":662},[275,2516,705],{"class":350},[33,2518,2519],{},"That same pattern scales upward to every other object page in this section.",[500,2521,1616],{},{"title":231,"searchDepth":232,"depth":232,"links":2523},[2524,2530,2531,2532],{"id":2264,"depth":232,"text":2265,"children":2525},[2526,2527,2528,2529],{"id":2269,"depth":377,"text":2270},{"id":2281,"depth":377,"text":2282},{"id":2299,"depth":377,"text":2300},{"id":2312,"depth":377,"text":2313},{"id":2339,"depth":232,"text":2340},{"id":2374,"depth":232,"text":2375},{"id":2401,"depth":232,"text":2402},{"path":1413,"title":2277,"description":2534,"kind":2535,"section":2212,"order":11,"group":2270,"parentPath":-1,"status":2536,"integration":2537,"publicExport":402,"activation":2538,"package":75,"aliases":2539,"attrs":2541,"events":2542,"cssVars":2543,"related":2544,"body":2545},"Structural object that creates parent-child transforms for nested 3D content without adding visible geometry.","object-type","stable","element","string=\"3d\" string-3d=\"group\"",[1444,2540],"parent object",[139],[],[1635,1636,1629,1630,1637,1638,1639],[1259,520,2307],{"type":25,"value":2546,"toc":2865},[2547,2549,2554,2557,2561,2566,2580,2586,2590,2594,2623,2627,2632,2674,2678,2835,2839,2853,2856,2860,2863],[28,2548,2277],{"id":1444},[33,2550,2551,2553],{},[37,2552,1444],{}," is the structural object type. It creates a real scene node, but it does not create visible geometry on its own.",[33,2555,2556],{},"Use it when several child objects should move as one unit.",[65,2558,2560],{"id":2559},"when-to-use-it","When to use it",[33,2562,132,2563,2565],{},[37,2564,1444],{}," for:",[42,2567,2568,2571,2574,2577],{},[45,2569,2570],{},"orbital layouts",[45,2572,2573],{},"shared rotation or scale",[45,2575,2576],{},"packaging several objects under one local coordinate space",[45,2578,2579],{},"separating scene structure from visible meshes",[33,2581,2582,2583,2585],{},"Do not use ",[37,2584,1444],{}," when a visible mesh would already solve the problem. If the element itself should be rendered, use a visible object type instead.",[65,2587,2589],{"id":2588},"runtime-contract","Runtime contract",[2267,2591,2593],{"id":2592},"required-activation","Required activation",[267,2595,2597],{"className":650,"code":2596,"language":652,"meta":231,"style":231},"\u003Cdiv string=\"3d\" string-3d=\"group\">\u003C/div>\n",[37,2598,2599],{"__ignoreMap":231},[275,2600,2601,2603,2605,2607,2609,2611,2613,2615,2617,2619,2621],{"class":277,"line":278},[275,2602,659],{"class":350},[275,2604,702],{"class":662},[275,2606,1521],{"class":281},[275,2608,671],{"class":350},[275,2610,1526],{"class":285},[275,2612,1537],{"class":281},[275,2614,671],{"class":350},[275,2616,1542],{"class":285},[275,2618,699],{"class":350},[275,2620,702],{"class":662},[275,2622,705],{"class":350},[2267,2624,2626],{"id":2625},"shared-transform-inputs","Shared transform inputs",[33,2628,2629,2631],{},[37,2630,1444],{}," uses the common transform variables:",[42,2633,2634,2638,2642,2646,2650,2654,2658,2662,2666,2670],{},[45,2635,2636],{},[37,2637,1635],{},[45,2639,2640],{},[37,2641,1636],{},[45,2643,2644],{},[37,2645,1629],{},[45,2647,2648],{},[37,2649,1630],{},[45,2651,2652],{},[37,2653,1637],{},[45,2655,2656],{},[37,2657,1638],{},[45,2659,2660],{},[37,2661,1639],{},[45,2663,2664],{},[37,2665,1778],{},[45,2667,2668],{},[37,2669,1792],{},[45,2671,2672],{},[37,2673,1805],{},[65,2675,2677],{"id":2676},"example","Example",[267,2679,2681],{"className":650,"code":2680,"language":652,"meta":231,"style":231},"\u003Cdiv\n  string=\"3d\"\n  string-id=\"orbit\"\n  string-3d=\"group\"\n  style=\"\n    --rotate-y: 30;\n    --translate-z: 40;\n  \"\n>\n  \u003Cdiv\n    string=\"3d\"\n    string-3d=\"box\"\n    style=\"width: 120px; height: 120px; --translate-x: -90\"\n  >\u003C/div>\n\n  \u003Cdiv\n    string=\"3d\"\n    string-3d=\"sphere\"\n    style=\"width: 90px; height: 90px; --translate-x: 90\"\n  >\u003C/div>\n\u003C/div>\n",[37,2682,2683,2689,2697,2706,2715,2723,2728,2733,2737,2741,2747,2756,2765,2775,2784,2788,2794,2802,2810,2819,2827],{"__ignoreMap":231},[275,2684,2685,2687],{"class":277,"line":278},[275,2686,659],{"class":350},[275,2688,663],{"class":662},[275,2690,2691,2693,2695],{"class":277,"line":232},[275,2692,668],{"class":281},[275,2694,671],{"class":350},[275,2696,674],{"class":285},[275,2698,2699,2701,2703],{"class":277,"line":377},[275,2700,728],{"class":281},[275,2702,671],{"class":350},[275,2704,2705],{"class":285},"\"orbit\"\n",[275,2707,2708,2710,2712],{"class":277,"line":399},[275,2709,679],{"class":281},[275,2711,671],{"class":350},[275,2713,2714],{"class":285},"\"group\"\n",[275,2716,2717,2719,2721],{"class":277,"line":406},[275,2718,689],{"class":281},[275,2720,671],{"class":350},[275,2722,752],{"class":285},[275,2724,2725],{"class":277,"line":432},[275,2726,2727],{"class":285},"    --rotate-y: 30;\n",[275,2729,2730],{"class":277,"line":437},[275,2731,2732],{"class":285},"    --translate-z: 40;\n",[275,2734,2735],{"class":277,"line":458},[275,2736,811],{"class":285},[275,2738,2739],{"class":277,"line":470},[275,2740,705],{"class":350},[275,2742,2743,2745],{"class":277,"line":11},[275,2744,1549],{"class":350},[275,2746,663],{"class":662},[275,2748,2749,2752,2754],{"class":277,"line":745},[275,2750,2751],{"class":281},"    string",[275,2753,671],{"class":350},[275,2755,674],{"class":285},[275,2757,2758,2761,2763],{"class":277,"line":755},[275,2759,2760],{"class":281},"    string-3d",[275,2762,671],{"class":350},[275,2764,2467],{"class":285},[275,2766,2767,2770,2772],{"class":277,"line":761},[275,2768,2769],{"class":281},"    style",[275,2771,671],{"class":350},[275,2773,2774],{"class":285},"\"width: 120px; height: 120px; --translate-x: -90\"\n",[275,2776,2777,2780,2782],{"class":277,"line":767},[275,2778,2779],{"class":350},"  >\u003C/",[275,2781,702],{"class":662},[275,2783,705],{"class":350},[275,2785,2786],{"class":277,"line":773},[275,2787,403],{"emptyLinePlaceholder":402},[275,2789,2790,2792],{"class":277,"line":779},[275,2791,1549],{"class":350},[275,2793,663],{"class":662},[275,2795,2796,2798,2800],{"class":277,"line":785},[275,2797,2751],{"class":281},[275,2799,671],{"class":350},[275,2801,674],{"class":285},[275,2803,2804,2806,2808],{"class":277,"line":791},[275,2805,2760],{"class":281},[275,2807,671],{"class":350},[275,2809,742],{"class":285},[275,2811,2812,2814,2816],{"class":277,"line":797},[275,2813,2769],{"class":281},[275,2815,671],{"class":350},[275,2817,2818],{"class":285},"\"width: 90px; height: 90px; --translate-x: 90\"\n",[275,2820,2821,2823,2825],{"class":277,"line":240},[275,2822,2779],{"class":350},[275,2824,702],{"class":662},[275,2826,705],{"class":350},[275,2828,2829,2831,2833],{"class":277,"line":808},[275,2830,1582],{"class":350},[275,2832,702],{"class":662},[275,2834,705],{"class":350},[65,2836,2838],{"id":2837},"what-the-runtime-does","What the runtime does",[42,2840,2841,2847,2850],{},[45,2842,2843,2844,84],{},"During object initialization, StringTune-3D looks upward for the nearest ancestor with ",[37,2845,2846],{},"string-3d=\"group\"",[45,2848,2849],{},"The child stores that parent reference and is attached below the group in the 3D scene graph.",[45,2851,2852],{},"Transform values on the group are applied before child-local transforms.",[33,2854,2855],{},"That means the group behaves exactly like a normal parent node in a 3D engine, but the relationship is declared through DOM nesting.",[65,2857,2859],{"id":2858},"practical-note","Practical note",[33,2861,2862],{},"If motion should belong to the whole composition, put it on the group. If motion should belong only to one child, keep it on that child. The cleanest scenes usually use groups sparingly and intentionally.",[500,2864,1616],{},{"title":231,"searchDepth":232,"depth":232,"links":2866},[2867,2868,2872,2873,2874],{"id":2559,"depth":232,"text":2560},{"id":2588,"depth":232,"text":2589,"children":2869},[2870,2871],{"id":2592,"depth":377,"text":2593},{"id":2625,"depth":377,"text":2626},{"id":2676,"depth":232,"text":2677},{"id":2837,"depth":232,"text":2838},{"id":2858,"depth":232,"text":2859},{"path":520,"title":2289,"description":2876,"kind":2535,"section":2212,"order":240,"group":2282,"parentPath":-1,"status":2536,"integration":2537,"publicExport":402,"activation":2877,"package":75,"aliases":2878,"attrs":2879,"events":2883,"cssVars":2884,"related":2889,"body":2890},"Built-in mesh primitives for box, sphere, plane, and cylinder with CSS-driven transforms and materials.","string=\"3d\" string-3d=\"box|sphere|plane|cylinder\"",[1449,1454,1459,1464],[139,2880,2881,2882],"string-3d-segments","string-3d-segments-width","string-3d-segments-height",[],[2885,1631,2886,2887,1640,2888],"--material-type","--material-metalness","--material-roughness","--geometry-quality",[1624,145,1642],{"type":25,"value":2891,"toc":3231},[2892,2895,2898,2901,2905,2923,2927,2930,2944,2946,2950,2979,2983,3051,3055,3084,3086,3170,3174,3177,3180,3183,3186,3189,3192,3195,3198,3200,3219,3221,3229],[28,2893,2289],{"id":2894},"primitives",[33,2896,2897],{},"Primitives are the fastest way to prove your setup and the cleanest way to build geometric UI surfaces without external assets.",[33,2899,2900],{},"They are the right default when your scene language is still simple: panels, discs, badges, capsules, plates, blocks.",[65,2902,2904],{"id":2903},"supported-types","Supported types",[42,2906,2907,2911,2915,2919],{},[45,2908,2909],{},[37,2910,1449],{},[45,2912,2913],{},[37,2914,1454],{},[45,2916,2917],{},[37,2918,1459],{},[45,2920,2921],{},[37,2922,1464],{},[65,2924,2926],{"id":2925},"when-to-use-them","When to use them",[33,2928,2929],{},"Use primitives when:",[42,2931,2932,2935,2938,2941],{},[45,2933,2934],{},"you want zero asset loading",[45,2936,2937],{},"the DOM box should define the visible form",[45,2939,2940],{},"you are testing transforms, lights, materials, and filters first",[45,2942,2943],{},"the scene is intentionally abstract or UI-like",[65,2945,2589],{"id":2588},[2267,2947,2949],{"id":2948},"activation","Activation",[267,2951,2953],{"className":650,"code":2952,"language":652,"meta":231,"style":231},"\u003Cdiv string=\"3d\" string-3d=\"box\">\u003C/div>\n",[37,2954,2955],{"__ignoreMap":231},[275,2956,2957,2959,2961,2963,2965,2967,2969,2971,2973,2975,2977],{"class":277,"line":278},[275,2958,659],{"class":350},[275,2960,702],{"class":662},[275,2962,1521],{"class":281},[275,2964,671],{"class":350},[275,2966,1526],{"class":285},[275,2968,1537],{"class":281},[275,2970,671],{"class":350},[275,2972,1571],{"class":285},[275,2974,699],{"class":350},[275,2976,702],{"class":662},[275,2978,705],{"class":350},[2267,2980,2982],{"id":2981},"attributes","Attributes",[1659,2984,2985,2996],{},[1662,2986,2987],{},[1665,2988,2989,2992,2994],{},[1668,2990,2991],{},"Attribute",[1668,2993,1673],{},[1668,2995,1676],{},[1678,2997,2998,3011,3025,3038],{},[1665,2999,3000,3004,3008],{},[1683,3001,3002],{},[37,3003,139],{},[1683,3005,3006],{},[37,3007,1449],{},[1683,3009,3010],{},"Chooses the primitive type",[1665,3012,3013,3017,3022],{},[1683,3014,3015],{},[37,3016,2880],{},[1683,3018,3019],{},[37,3020,3021],{},"32",[1683,3023,3024],{},"Generic segment hint where supported",[1665,3026,3027,3031,3035],{},[1683,3028,3029],{},[37,3030,2881],{},[1683,3032,3033],{},[37,3034,3021],{},[1683,3036,3037],{},"Width segment hint",[1665,3039,3040,3044,3048],{},[1683,3041,3042],{},[37,3043,2882],{},[1683,3045,3046],{},[37,3047,3021],{},[1683,3049,3050],{},"Height segment hint",[2267,3052,3054],{"id":3053},"important-css-inputs","Important CSS inputs",[42,3056,3057,3064,3075],{},[45,3058,3059,3060,1032,3062],{},"shared transforms such as ",[37,3061,1629],{},[37,3063,1637],{},[45,3065,3066,3067,113,3069,113,3071,113,3073],{},"shared material inputs such as ",[37,3068,2885],{},[37,3070,1631],{},[37,3072,2886],{},[37,3074,2887],{},[45,3076,3077,3078,1032,3081],{},"shadow flags such as ",[37,3079,3080],{},"--shadow-cast",[37,3082,3083],{},"--shadow-receive",[65,3085,2677],{"id":2676},[267,3087,3089],{"className":650,"code":3088,"language":652,"meta":231,"style":231},"\u003Cdiv\n  string=\"3d\"\n  string-3d=\"box\"\n  style=\"\n    width: 160px;\n    height: 160px;\n    --material-type: standard;\n    --material-color: #ff6b2b;\n    --material-metalness: 0.5;\n    --material-roughness: 0.2;\n    --rotate-y: 20;\n    --translate-z: 60;\n  \"\n>\u003C/div>\n",[37,3090,3091,3097,3105,3113,3121,3126,3131,3135,3139,3144,3149,3153,3158,3162],{"__ignoreMap":231},[275,3092,3093,3095],{"class":277,"line":278},[275,3094,659],{"class":350},[275,3096,663],{"class":662},[275,3098,3099,3101,3103],{"class":277,"line":232},[275,3100,668],{"class":281},[275,3102,671],{"class":350},[275,3104,674],{"class":285},[275,3106,3107,3109,3111],{"class":277,"line":377},[275,3108,679],{"class":281},[275,3110,671],{"class":350},[275,3112,2467],{"class":285},[275,3114,3115,3117,3119],{"class":277,"line":399},[275,3116,689],{"class":281},[275,3118,671],{"class":350},[275,3120,752],{"class":285},[275,3122,3123],{"class":277,"line":406},[275,3124,3125],{"class":285},"    width: 160px;\n",[275,3127,3128],{"class":277,"line":432},[275,3129,3130],{"class":285},"    height: 160px;\n",[275,3132,3133],{"class":277,"line":437},[275,3134,770],{"class":285},[275,3136,3137],{"class":277,"line":458},[275,3138,2494],{"class":285},[275,3140,3141],{"class":277,"line":470},[275,3142,3143],{"class":285},"    --material-metalness: 0.5;\n",[275,3145,3146],{"class":277,"line":11},[275,3147,3148],{"class":285},"    --material-roughness: 0.2;\n",[275,3150,3151],{"class":277,"line":745},[275,3152,2499],{"class":285},[275,3154,3155],{"class":277,"line":755},[275,3156,3157],{"class":285},"    --translate-z: 60;\n",[275,3159,3160],{"class":277,"line":761},[275,3161,811],{"class":285},[275,3163,3164,3166,3168],{"class":277,"line":767},[275,3165,699],{"class":350},[275,3167,702],{"class":662},[275,3169,705],{"class":350},[65,3171,3173],{"id":3172},"per-type-mental-model","Per-type mental model",[2267,3175,3176],{"id":1449},"Box",[33,3178,3179],{},"Best for cards, blocks, device-like surfaces, and any DOM rectangle that should keep its panel logic in 3D.",[2267,3181,3182],{"id":1454},"Sphere",[33,3184,3185],{},"Best for badges, blobs, tokens, or obviously volumetric accents.",[2267,3187,3188],{"id":1459},"Plane",[33,3190,3191],{},"Best for flat surfaces that should still receive perspective, light, and filter treatment.",[2267,3193,3194],{"id":1464},"Cylinder",[33,3196,3197],{},"Best for pills, rounded capsules, and soft industrial forms.",[65,3199,2838],{"id":2837},[42,3201,3202,3209,3216],{},[45,3203,3204,1032,3206,3208],{},[37,3205,1449],{},[37,3207,1459],{}," are mapped from the DOM box directly.",[45,3210,3211,1032,3213,3215],{},[37,3212,1454],{},[37,3214,1464],{}," use the DOM size as their layout anchor but build different underlying geometry.",[45,3217,3218],{},"Material generation is shared with the rest of the rendering system, so primitives are not second-class test objects. They are full participants in the pipeline.",[65,3220,2859],{"id":2858},[33,3222,3223,3224,1032,3226,3228],{},"If you are not sure where to start, start with a primitive. In most projects, ",[37,3225,1449],{},[37,3227,1459],{}," cover the first 80% of scene experimentation.",[500,3230,1616],{},{"title":231,"searchDepth":232,"depth":232,"links":3232},[3233,3234,3235,3240,3241,3247,3248],{"id":2903,"depth":232,"text":2904},{"id":2925,"depth":232,"text":2926},{"id":2588,"depth":232,"text":2589,"children":3236},[3237,3238,3239],{"id":2948,"depth":377,"text":2949},{"id":2981,"depth":377,"text":2982},{"id":3053,"depth":377,"text":3054},{"id":2676,"depth":232,"text":2677},{"id":3172,"depth":232,"text":3173,"children":3242},[3243,3244,3245,3246],{"id":1449,"depth":377,"text":3176},{"id":1454,"depth":377,"text":3182},{"id":1459,"depth":377,"text":3188},{"id":1464,"depth":377,"text":3194},{"id":2837,"depth":232,"text":2838},{"id":2858,"depth":232,"text":2859},{"path":2307,"title":2308,"description":3250,"kind":2535,"section":2212,"order":512,"group":2300,"parentPath":-1,"status":2536,"integration":2537,"publicExport":402,"activation":3251,"package":75,"aliases":3252,"attrs":3258,"events":3259,"cssVars":3260,"related":3269,"body":3270},"Ambient, directional, point, spot, and hemisphere lights configured through CSS variables on string-3d elements.","string=\"3d\" string-3d=\"ambientLight|directionalLight|pointLight|spotLight|hemisphereLight\"",[3253,3254,3255,3256,3257],"ambientLight","directionalLight","pointLight","spotLight","hemisphereLight",[139],[],[3261,3262,3263,3264,3265,3266,3267,3268],"--light-color","--light-intensity","--light-distance","--light-decay","--light-angle","--light-penumbra","--light-ground-color","--light-target",[1413,145,1261],{"type":25,"value":3271,"toc":3660},[3272,3275,3284,3287,3289,3311,3315,3319,3322,3326,3329,3333,3336,3340,3343,3347,3350,3352,3354,3384,3388,3506,3512,3514,3634,3636,3653,3655,3658],[28,3273,2308],{"id":3274},"lights",[33,3276,3277,3278,3280,3281,3283],{},"Lights are not a separate subsystem with a different authoring model. They are normal ",[37,3279,60],{}," objects with light-specific ",[37,3282,139],{}," values.",[33,3285,3286],{},"That keeps scene composition consistent: geometry, groups, and lights all enter through the same DOM contract.",[65,3288,2904],{"id":2903},[42,3290,3291,3295,3299,3303,3307],{},[45,3292,3293],{},[37,3294,3253],{},[45,3296,3297],{},[37,3298,3254],{},[45,3300,3301],{},[37,3302,3255],{},[45,3304,3305],{},[37,3306,3256],{},[45,3308,3309],{},[37,3310,3257],{},[65,3312,3314],{"id":3313},"when-to-use-each-one","When to use each one",[2267,3316,3318],{"id":3317},"ambient-light","Ambient light",[33,3320,3321],{},"Use it for baseline visibility. It is the easiest way to keep the dark side of the scene readable.",[2267,3323,3325],{"id":3324},"directional-light","Directional light",[33,3327,3328],{},"Use it for form definition and shadow direction. This is usually the main \"sun\" light in a simple setup.",[2267,3330,3332],{"id":3331},"point-light","Point light",[33,3334,3335],{},"Use it for localized glow, accents, or stage lighting around a subject.",[2267,3337,3339],{"id":3338},"spot-light","Spot light",[33,3341,3342],{},"Use it when you want an obvious cone of influence and stronger art direction.",[2267,3344,3346],{"id":3345},"hemisphere-light","Hemisphere light",[33,3348,3349],{},"Use it when the scene needs a soft sky/ground split instead of a single flat fill.",[65,3351,2589],{"id":2588},[2267,3353,2949],{"id":2948},[267,3355,3357],{"className":650,"code":3356,"language":652,"meta":231,"style":231},"\u003Cdiv string=\"3d\" string-3d=\"directionalLight\">\u003C/div>\n",[37,3358,3359],{"__ignoreMap":231},[275,3360,3361,3363,3365,3367,3369,3371,3373,3375,3378,3380,3382],{"class":277,"line":278},[275,3362,659],{"class":350},[275,3364,702],{"class":662},[275,3366,1521],{"class":281},[275,3368,671],{"class":350},[275,3370,1526],{"class":285},[275,3372,1537],{"class":281},[275,3374,671],{"class":350},[275,3376,3377],{"class":285},"\"directionalLight\"",[275,3379,699],{"class":350},[275,3381,702],{"class":662},[275,3383,705],{"class":350},[2267,3385,3387],{"id":3386},"key-css-variables","Key CSS variables",[1659,3389,3390,3400],{},[1662,3391,3392],{},[1665,3393,3394,3396,3398],{},[1668,3395,1670],{},[1668,3397,1673],{},[1668,3399,1676],{},[1678,3401,3402,3416,3429,3441,3452,3466,3479,3492],{},[1665,3403,3404,3408,3413],{},[1683,3405,3406],{},[37,3407,3261],{},[1683,3409,3410],{},[37,3411,3412],{},"#ffffff",[1683,3414,3415],{},"Main light color",[1665,3417,3418,3422,3426],{},[1683,3419,3420],{},[37,3421,3262],{},[1683,3423,3424],{},[37,3425,1768],{},[1683,3427,3428],{},"Intensity",[1665,3430,3431,3435,3438],{},[1683,3432,3433],{},[37,3434,3263],{},[1683,3436,3437],{},"type-specific",[1683,3439,3440],{},"Range for point and spot lights",[1665,3442,3443,3447,3449],{},[1683,3444,3445],{},[37,3446,3264],{},[1683,3448,3437],{},[1683,3450,3451],{},"Falloff for point and spot lights",[1665,3453,3454,3458,3463],{},[1683,3455,3456],{},[37,3457,3265],{},[1683,3459,3460],{},[37,3461,3462],{},"1.0472",[1683,3464,3465],{},"Spot cone angle",[1665,3467,3468,3472,3476],{},[1683,3469,3470],{},[37,3471,3266],{},[1683,3473,3474],{},[37,3475,1691],{},[1683,3477,3478],{},"Spot softness",[1665,3480,3481,3485,3489],{},[1683,3482,3483],{},[37,3484,3267],{},[1683,3486,3487],{},[37,3488,3412],{},[1683,3490,3491],{},"Hemisphere ground color",[1665,3493,3494,3498,3503],{},[1683,3495,3496],{},[37,3497,3268],{},[1683,3499,3500],{},[37,3501,3502],{},"none",[1683,3504,3505],{},"Optional target object id",[33,3507,3508,3509,3511],{},"Light objects also use the shared transform variables. A point or spot light can be positioned with the same ",[37,3510,2386],{}," inputs used by visible objects.",[65,3513,2677],{"id":2676},[267,3515,3517],{"className":650,"code":3516,"language":652,"meta":231,"style":231},"\u003Cdiv\n  string=\"3d\"\n  string-id=\"sun\"\n  string-3d=\"directionalLight\"\n  style=\"\n    --light-intensity: 1.2;\n    --translate-z: 300;\n    --translate-x: -120;\n    --translate-y: -80;\n  \"\n>\u003C/div>\n\n\u003Cdiv\n  string=\"3d\"\n  string-3d=\"ambientLight\"\n  style=\"--light-intensity: 0.35\"\n>\u003C/div>\n",[37,3518,3519,3525,3533,3542,3550,3558,3563,3568,3573,3578,3582,3590,3594,3600,3608,3617,3626],{"__ignoreMap":231},[275,3520,3521,3523],{"class":277,"line":278},[275,3522,659],{"class":350},[275,3524,663],{"class":662},[275,3526,3527,3529,3531],{"class":277,"line":232},[275,3528,668],{"class":281},[275,3530,671],{"class":350},[275,3532,674],{"class":285},[275,3534,3535,3537,3539],{"class":277,"line":377},[275,3536,728],{"class":281},[275,3538,671],{"class":350},[275,3540,3541],{"class":285},"\"sun\"\n",[275,3543,3544,3546,3548],{"class":277,"line":399},[275,3545,679],{"class":281},[275,3547,671],{"class":350},[275,3549,684],{"class":285},[275,3551,3552,3554,3556],{"class":277,"line":406},[275,3553,689],{"class":281},[275,3555,671],{"class":350},[275,3557,752],{"class":285},[275,3559,3560],{"class":277,"line":432},[275,3561,3562],{"class":285},"    --light-intensity: 1.2;\n",[275,3564,3565],{"class":277,"line":437},[275,3566,3567],{"class":285},"    --translate-z: 300;\n",[275,3569,3570],{"class":277,"line":458},[275,3571,3572],{"class":285},"    --translate-x: -120;\n",[275,3574,3575],{"class":277,"line":470},[275,3576,3577],{"class":285},"    --translate-y: -80;\n",[275,3579,3580],{"class":277,"line":11},[275,3581,811],{"class":285},[275,3583,3584,3586,3588],{"class":277,"line":745},[275,3585,699],{"class":350},[275,3587,702],{"class":662},[275,3589,705],{"class":350},[275,3591,3592],{"class":277,"line":755},[275,3593,403],{"emptyLinePlaceholder":402},[275,3595,3596,3598],{"class":277,"line":761},[275,3597,659],{"class":350},[275,3599,663],{"class":662},[275,3601,3602,3604,3606],{"class":277,"line":767},[275,3603,668],{"class":281},[275,3605,671],{"class":350},[275,3607,674],{"class":285},[275,3609,3610,3612,3614],{"class":277,"line":773},[275,3611,679],{"class":281},[275,3613,671],{"class":350},[275,3615,3616],{"class":285},"\"ambientLight\"\n",[275,3618,3619,3621,3623],{"class":277,"line":779},[275,3620,689],{"class":281},[275,3622,671],{"class":350},[275,3624,3625],{"class":285},"\"--light-intensity: 0.35\"\n",[275,3627,3628,3630,3632],{"class":277,"line":785},[275,3629,699],{"class":350},[275,3631,702],{"class":662},[275,3633,705],{"class":350},[65,3635,2838],{"id":2837},[42,3637,3638,3641,3644,3650],{},[45,3639,3640],{},"The light type decides which engine light object is created.",[45,3642,3643],{},"Position and rotation are synchronized from computed styles just like any other object.",[45,3645,3646,3647,3649],{},"If ",[37,3648,3268],{}," is set, the runtime resolves it by object id.",[45,3651,3652],{},"Shadow options are read from the same CSS surface rather than from an imperative light setup API.",[65,3654,2859],{"id":2858},[33,3656,3657],{},"Most scenes start well with only two lights: one ambient light and one directional or point light. Add more only when the scene actually needs clearer separation or stronger mood.",[500,3659,1616],{},{"title":231,"searchDepth":232,"depth":232,"links":3661},[3662,3663,3670,3674,3675,3676],{"id":2903,"depth":232,"text":2904},{"id":3313,"depth":232,"text":3314,"children":3664},[3665,3666,3667,3668,3669],{"id":3317,"depth":377,"text":3318},{"id":3324,"depth":377,"text":3325},{"id":3331,"depth":377,"text":3332},{"id":3338,"depth":377,"text":3339},{"id":3345,"depth":377,"text":3346},{"id":2588,"depth":232,"text":2589,"children":3671},[3672,3673],{"id":2948,"depth":377,"text":2949},{"id":3386,"depth":377,"text":3387},{"id":2676,"depth":232,"text":2677},{"id":2837,"depth":232,"text":2838},{"id":2858,"depth":232,"text":2859},{"path":2053,"title":2295,"description":3678,"kind":2535,"section":2212,"order":1008,"group":2282,"parentPath":-1,"status":3679,"integration":2537,"publicExport":402,"activation":3680,"package":75,"aliases":3681,"attrs":3684,"events":3685,"cssVars":3686,"related":3688,"body":3689},"External 3D model object with loader selection, fit controls, centering, and optional CSS material override.","advanced","string=\"3d\" string-3d=\"model\"",[1469,3682,3683],"gltf","glb",[2109,2141,2158,2152,2164,2179,2184],[],[2885,1631,2199,3687],"--texture-normal",[2040,1642,248],{"type":25,"value":3690,"toc":4082},[3691,3693,3700,3703,3705,3710,3724,3726,3728,3757,3759,3859,3863,3866,3868,3980,3984,3987,4055,4057,4071,4073,4079],[28,3692,2295],{"id":1469},[33,3694,3695,3697,3698,84],{},[37,3696,1469],{}," is the object type for external 3D assets such as ",[37,3699,2356],{},[33,3701,3702],{},"Use it when the shape already exists as authored geometry and you want StringTune-3D to place, fit, light, and optionally restyle that asset inside the same CSS-first runtime.",[65,3704,2560],{"id":2559},[33,3706,132,3707,3709],{},[37,3708,1469],{}," when:",[42,3711,3712,3715,3718,3721],{},[45,3713,3714],{},"the visual source of truth is already a 3D file",[45,3716,3717],{},"primitives are too abstract",[45,3719,3720],{},"you need authored topology, silhouettes, or details",[45,3722,3723],{},"the scene should still be positioned and animated from the DOM layer",[65,3725,2589],{"id":2588},[2267,3727,2949],{"id":2948},[267,3729,3731],{"className":650,"code":3730,"language":652,"meta":231,"style":231},"\u003Cdiv string=\"3d\" string-3d=\"model\">\u003C/div>\n",[37,3732,3733],{"__ignoreMap":231},[275,3734,3735,3737,3739,3741,3743,3745,3747,3749,3751,3753,3755],{"class":277,"line":278},[275,3736,659],{"class":350},[275,3738,702],{"class":662},[275,3740,1521],{"class":281},[275,3742,671],{"class":350},[275,3744,1526],{"class":285},[275,3746,1537],{"class":281},[275,3748,671],{"class":350},[275,3750,2089],{"class":285},[275,3752,699],{"class":350},[275,3754,702],{"class":662},[275,3756,705],{"class":350},[2267,3758,2982],{"id":2981},[1659,3760,3761,3771],{},[1662,3762,3763],{},[1665,3764,3765,3767,3769],{},[1668,3766,2991],{},[1668,3768,1673],{},[1668,3770,1676],{},[1678,3772,3773,3785,3796,3809,3823,3837,3848],{},[1665,3774,3775,3779,3782],{},[1683,3776,3777],{},[37,3778,2109],{},[1683,3780,3781],{},"empty",[1683,3783,3784],{},"Model URL",[1665,3786,3787,3791,3793],{},[1683,3788,3789],{},[37,3790,2141],{},[1683,3792,3781],{},[1683,3794,3795],{},"Loader type key resolved by the provider",[1665,3797,3798,3802,3806],{},[1683,3799,3800],{},[37,3801,2158],{},[1683,3803,3804],{},[37,3805,1768],{},[1683,3807,3808],{},"Extra model scale multiplier",[1665,3810,3811,3815,3820],{},[1683,3812,3813],{},[37,3814,2152],{},[1683,3816,3817],{},[37,3818,3819],{},"contain",[1683,3821,3822],{},"Fit mode",[1665,3824,3825,3829,3834],{},[1683,3826,3827],{},[37,3828,2164],{},[1683,3830,3831],{},[37,3832,3833],{},"false",[1683,3835,3836],{},"Recenters imported content around its bounds",[1665,3838,3839,3843,3845],{},[1683,3840,3841],{},[37,3842,2179],{},[1683,3844,3781],{},[1683,3846,3847],{},"Base path for texture remapping",[1665,3849,3850,3854,3856],{},[1683,3851,3852],{},[37,3853,2184],{},[1683,3855,3781],{},[1683,3857,3858],{},"Texture remap table",[2267,3860,3862],{"id":3861},"shared-css-inputs","Shared CSS inputs",[33,3864,3865],{},"Models still participate in the normal transform and material contract. If CSS material properties are present, the imported model may be visually overridden through the same surface used by primitives.",[65,3867,2677],{"id":2676},[267,3869,3871],{"className":650,"code":3870,"language":652,"meta":231,"style":231},"\u003Cdiv\n  string=\"3d\"\n  string-3d=\"model\"\n  string-3d-model=\"/models/robot.glb\"\n  string-3d-model-loader=\"gltf\"\n  string-3d-model-fit=\"contain\"\n  string-3d-model-center=\"true\"\n  style=\"\n    width: 260px;\n    height: 260px;\n    --rotate-y: 24;\n    --translate-z: 60;\n    --material-color: #f5f0e8;\n  \"\n>\u003C/div>\n",[37,3872,3873,3879,3887,3896,3906,3916,3926,3936,3944,3949,3954,3959,3963,3968,3972],{"__ignoreMap":231},[275,3874,3875,3877],{"class":277,"line":278},[275,3876,659],{"class":350},[275,3878,663],{"class":662},[275,3880,3881,3883,3885],{"class":277,"line":232},[275,3882,668],{"class":281},[275,3884,671],{"class":350},[275,3886,674],{"class":285},[275,3888,3889,3891,3893],{"class":277,"line":377},[275,3890,679],{"class":281},[275,3892,671],{"class":350},[275,3894,3895],{"class":285},"\"model\"\n",[275,3897,3898,3901,3903],{"class":277,"line":399},[275,3899,3900],{"class":281},"  string-3d-model",[275,3902,671],{"class":350},[275,3904,3905],{"class":285},"\"/models/robot.glb\"\n",[275,3907,3908,3911,3913],{"class":277,"line":406},[275,3909,3910],{"class":281},"  string-3d-model-loader",[275,3912,671],{"class":350},[275,3914,3915],{"class":285},"\"gltf\"\n",[275,3917,3918,3921,3923],{"class":277,"line":432},[275,3919,3920],{"class":281},"  string-3d-model-fit",[275,3922,671],{"class":350},[275,3924,3925],{"class":285},"\"contain\"\n",[275,3927,3928,3931,3933],{"class":277,"line":437},[275,3929,3930],{"class":281},"  string-3d-model-center",[275,3932,671],{"class":350},[275,3934,3935],{"class":285},"\"true\"\n",[275,3937,3938,3940,3942],{"class":277,"line":458},[275,3939,689],{"class":281},[275,3941,671],{"class":350},[275,3943,752],{"class":285},[275,3945,3946],{"class":277,"line":470},[275,3947,3948],{"class":285},"    width: 260px;\n",[275,3950,3951],{"class":277,"line":11},[275,3952,3953],{"class":285},"    height: 260px;\n",[275,3955,3956],{"class":277,"line":745},[275,3957,3958],{"class":285},"    --rotate-y: 24;\n",[275,3960,3961],{"class":277,"line":755},[275,3962,3157],{"class":285},[275,3964,3965],{"class":277,"line":761},[275,3966,3967],{"class":285},"    --material-color: #f5f0e8;\n",[275,3969,3970],{"class":277,"line":767},[275,3971,811],{"class":285},[275,3973,3974,3976,3978],{"class":277,"line":773},[275,3975,699],{"class":350},[275,3977,702],{"class":662},[275,3979,705],{"class":350},[65,3981,3983],{"id":3982},"provider-requirement","Provider requirement",[33,3985,3986],{},"The provider must know how to load the model type you reference. For example, a GLTF workflow usually means passing a GLTF loader into the provider.",[267,3988,3990],{"className":337,"code":3989,"language":339,"meta":231,"style":231},"import * as THREE from 'three';\nimport { GLTFLoader } from 'three/examples/jsm/loaders/GLTFLoader.js';\nimport { String3D, ThreeJSProvider } from 'string-tune-3d';\n\nString3D.setProvider(new ThreeJSProvider(THREE, { gltf: GLTFLoader }));\n",[37,3991,3992,4008,4020,4032,4036],{"__ignoreMap":231},[275,3993,3994,3996,3998,4000,4002,4004,4006],{"class":277,"line":278},[275,3995,347],{"class":346},[275,3997,383],{"class":382},[275,3999,386],{"class":346},[275,4001,389],{"class":350},[275,4003,354],{"class":346},[275,4005,394],{"class":285},[275,4007,360],{"class":350},[275,4009,4010,4012,4014,4016,4018],{"class":277,"line":232},[275,4011,347],{"class":346},[275,4013,1114],{"class":350},[275,4015,354],{"class":346},[275,4017,1119],{"class":285},[275,4019,360],{"class":350},[275,4021,4022,4024,4026,4028,4030],{"class":277,"line":377},[275,4023,347],{"class":346},[275,4025,367],{"class":350},[275,4027,354],{"class":346},[275,4029,372],{"class":285},[275,4031,360],{"class":350},[275,4033,4034],{"class":277,"line":399},[275,4035,403],{"emptyLinePlaceholder":402},[275,4037,4038,4040,4042,4044,4046,4048,4050,4052],{"class":277,"line":406},[275,4039,409],{"class":350},[275,4041,412],{"class":281},[275,4043,415],{"class":350},[275,4045,418],{"class":346},[275,4047,421],{"class":281},[275,4049,415],{"class":350},[275,4051,426],{"class":382},[275,4053,4054],{"class":350},", { gltf: GLTFLoader }));\n",[65,4056,2838],{"id":2837},[42,4058,4059,4062,4065,4068],{},[45,4060,4061],{},"The object asks the active engine for a loader matching the selected loader key.",[45,4063,4064],{},"The imported root is fitted to the element box according to the selected fit mode.",[45,4066,4067],{},"Optional centering is applied after bounds are known.",[45,4069,4070],{},"Material overrides are not a separate mode. They are inferred from the CSS values you provide.",[65,4072,2859],{"id":2858},[33,4074,4075,4076,4078],{},"Keep ",[37,4077,1469],{}," for authored forms and keep scene logic outside the asset when possible. It is usually better to animate the host element through CSS variables than to bury motion inside the model file.",[500,4080,4081],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":231,"searchDepth":232,"depth":232,"links":4083},[4084,4085,4090,4091,4092,4093],{"id":2559,"depth":232,"text":2560},{"id":2588,"depth":232,"text":2589,"children":4086},[4087,4088,4089],{"id":2948,"depth":377,"text":2949},{"id":2981,"depth":377,"text":2982},{"id":3861,"depth":377,"text":3862},{"id":2676,"depth":232,"text":2677},{"id":3982,"depth":232,"text":3983},{"id":2837,"depth":232,"text":2838},{"id":2858,"depth":232,"text":2859},{"path":2320,"title":2321,"description":4095,"kind":2535,"section":2212,"order":4096,"group":4097,"parentPath":-1,"status":3679,"integration":2537,"publicExport":402,"activation":4098,"package":75,"aliases":4099,"attrs":4102,"events":4103,"cssVars":4104,"related":4112,"body":4114},"Emitter and instanced particle systems controlled entirely through CSS custom properties and model-backed distributions.",50,"Procedural","string=\"3d\" string-3d=\"particles\"",[1474,4100,4101],"emitter","instanced particles",[139],[],[4105,4106,4107,4108,4109,4110,4111],"--particles-mode","--particles-count","--particles-size","--emit-rate","--particle-life","--instance-shape","--instance-model",[145,4113,1261],"/docs/rendering/filters",{"type":25,"value":4115,"toc":4589},[4116,4118,4123,4131,4137,4139,4143,4157,4159,4161,4191,4195,4295,4299,4397,4463,4467,4564,4566,4582,4584,4587],[28,4117,2321],{"id":1474},[33,4119,4120,4122],{},[37,4121,1474],{}," is the most parameter-heavy built-in object type. It covers two different modes:",[42,4124,4125,4128],{},[45,4126,4127],{},"emitter-style motion",[45,4129,4130],{},"instanced layouts and model-backed distributions",[33,4132,4133,4134,4136],{},"If the goal is a field, swarm, morph, or distributed silhouette rather than one solid mesh, ",[37,4135,1474],{}," is usually the right object.",[65,4138,2560],{"id":2559},[33,4140,132,4141,3709],{},[37,4142,1474],{},[42,4144,4145,4148,4151,4154],{},[45,4146,4147],{},"motion is procedural rather than skeletal",[45,4149,4150],{},"the shape should disperse, gather, or morph",[45,4152,4153],{},"you want an instanced cloud driven by a model or primitive distribution",[45,4155,4156],{},"a single mesh would feel too rigid",[65,4158,2589],{"id":2588},[2267,4160,2949],{"id":2948},[267,4162,4164],{"className":650,"code":4163,"language":652,"meta":231,"style":231},"\u003Cdiv string=\"3d\" string-3d=\"particles\">\u003C/div>\n",[37,4165,4166],{"__ignoreMap":231},[275,4167,4168,4170,4172,4174,4176,4178,4180,4182,4185,4187,4189],{"class":277,"line":278},[275,4169,659],{"class":350},[275,4171,702],{"class":662},[275,4173,1521],{"class":281},[275,4175,671],{"class":350},[275,4177,1526],{"class":285},[275,4179,1537],{"class":281},[275,4181,671],{"class":350},[275,4183,4184],{"class":285},"\"particles\"",[275,4186,699],{"class":350},[275,4188,702],{"class":662},[275,4190,705],{"class":350},[2267,4192,4194],{"id":4193},"core-css-variables","Core CSS variables",[42,4196,4197,4201,4205,4209,4214,4219,4224,4228,4233,4237,4242,4247,4252,4256,4260,4265,4270,4275,4280,4285,4290],{},[45,4198,4199],{},[37,4200,4105],{},[45,4202,4203],{},[37,4204,4106],{},[45,4206,4207],{},[37,4208,4107],{},[45,4210,4211],{},[37,4212,4213],{},"--particles-color",[45,4215,4216],{},[37,4217,4218],{},"--particles-opacity",[45,4220,4221],{},[37,4222,4223],{},"--particles-spread",[45,4225,4226],{},[37,4227,4108],{},[45,4229,4230],{},[37,4231,4232],{},"--emit-burst",[45,4234,4235],{},[37,4236,4109],{},[45,4238,4239],{},[37,4240,4241],{},"--particle-speed",[45,4243,4244],{},[37,4245,4246],{},"--particle-direction",[45,4248,4249],{},[37,4250,4251],{},"--particle-gravity",[45,4253,4254],{},[37,4255,4110],{},[45,4257,4258],{},[37,4259,4111],{},[45,4261,4262],{},[37,4263,4264],{},"--instance-scale",[45,4266,4267],{},[37,4268,4269],{},"--instance-scale-variation",[45,4271,4272],{},[37,4273,4274],{},"--instance-rotation-speed",[45,4276,4277],{},[37,4278,4279],{},"--instance-jitter",[45,4281,4282],{},[37,4283,4284],{},"--instance-flow",[45,4286,4287],{},[37,4288,4289],{},"--instance-disperse",[45,4291,4292],{},[37,4293,4294],{},"--instance-scatter",[65,4296,4298],{"id":4297},"instanced-model-example","Instanced model example",[267,4300,4302],{"className":650,"code":4301,"language":652,"meta":231,"style":231},"\u003Cdiv\n  string=\"3d\"\n  string-3d=\"particles\"\n  style=\"\n    width: 65%;\n    aspect-ratio: 2.5 / 1;\n    --particles-mode: instanced;\n    --particles-count: 4000;\n    --particles-fit: 1;\n    --instance-shape: model;\n    --instance-model: 'https://hls.penev.tech/blasters/blaster-a.glb';\n    transition:\n      --instance-model 0.8s ease,\n      --rotate-y 1.2s cubic-bezier(.16, 1, .3, 1);\n  \"\n>\u003C/div>\n",[37,4303,4304,4310,4318,4327,4335,4340,4345,4350,4355,4360,4365,4370,4375,4380,4385,4389],{"__ignoreMap":231},[275,4305,4306,4308],{"class":277,"line":278},[275,4307,659],{"class":350},[275,4309,663],{"class":662},[275,4311,4312,4314,4316],{"class":277,"line":232},[275,4313,668],{"class":281},[275,4315,671],{"class":350},[275,4317,674],{"class":285},[275,4319,4320,4322,4324],{"class":277,"line":377},[275,4321,679],{"class":281},[275,4323,671],{"class":350},[275,4325,4326],{"class":285},"\"particles\"\n",[275,4328,4329,4331,4333],{"class":277,"line":399},[275,4330,689],{"class":281},[275,4332,671],{"class":350},[275,4334,752],{"class":285},[275,4336,4337],{"class":277,"line":406},[275,4338,4339],{"class":285},"    width: 65%;\n",[275,4341,4342],{"class":277,"line":432},[275,4343,4344],{"class":285},"    aspect-ratio: 2.5 / 1;\n",[275,4346,4347],{"class":277,"line":437},[275,4348,4349],{"class":285},"    --particles-mode: instanced;\n",[275,4351,4352],{"class":277,"line":458},[275,4353,4354],{"class":285},"    --particles-count: 4000;\n",[275,4356,4357],{"class":277,"line":470},[275,4358,4359],{"class":285},"    --particles-fit: 1;\n",[275,4361,4362],{"class":277,"line":11},[275,4363,4364],{"class":285},"    --instance-shape: model;\n",[275,4366,4367],{"class":277,"line":745},[275,4368,4369],{"class":285},"    --instance-model: 'https://hls.penev.tech/blasters/blaster-a.glb';\n",[275,4371,4372],{"class":277,"line":755},[275,4373,4374],{"class":285},"    transition:\n",[275,4376,4377],{"class":277,"line":761},[275,4378,4379],{"class":285},"      --instance-model 0.8s ease,\n",[275,4381,4382],{"class":277,"line":767},[275,4383,4384],{"class":285},"      --rotate-y 1.2s cubic-bezier(.16, 1, .3, 1);\n",[275,4386,4387],{"class":277,"line":773},[275,4388,811],{"class":285},[275,4390,4391,4393,4395],{"class":277,"line":779},[275,4392,699],{"class":350},[275,4394,702],{"class":662},[275,4396,705],{"class":350},[267,4398,4399],{"className":337,"code":3989,"language":339,"meta":231,"style":231},[37,4400,4401,4417,4429,4441,4445],{"__ignoreMap":231},[275,4402,4403,4405,4407,4409,4411,4413,4415],{"class":277,"line":278},[275,4404,347],{"class":346},[275,4406,383],{"class":382},[275,4408,386],{"class":346},[275,4410,389],{"class":350},[275,4412,354],{"class":346},[275,4414,394],{"class":285},[275,4416,360],{"class":350},[275,4418,4419,4421,4423,4425,4427],{"class":277,"line":232},[275,4420,347],{"class":346},[275,4422,1114],{"class":350},[275,4424,354],{"class":346},[275,4426,1119],{"class":285},[275,4428,360],{"class":350},[275,4430,4431,4433,4435,4437,4439],{"class":277,"line":377},[275,4432,347],{"class":346},[275,4434,367],{"class":350},[275,4436,354],{"class":346},[275,4438,372],{"class":285},[275,4440,360],{"class":350},[275,4442,4443],{"class":277,"line":399},[275,4444,403],{"emptyLinePlaceholder":402},[275,4446,4447,4449,4451,4453,4455,4457,4459,4461],{"class":277,"line":406},[275,4448,409],{"class":350},[275,4450,412],{"class":281},[275,4452,415],{"class":350},[275,4454,418],{"class":346},[275,4456,421],{"class":281},[275,4458,415],{"class":350},[275,4460,426],{"class":382},[275,4462,4054],{"class":350},[65,4464,4466],{"id":4465},"emitter-example","Emitter example",[267,4468,4470],{"className":650,"code":4469,"language":652,"meta":231,"style":231},"\u003Cdiv\n  string=\"3d\"\n  string-3d=\"particles\"\n  style=\"\n    width: 320px;\n    height: 320px;\n    --particles-mode: emitter;\n    --particles-count: 220;\n    --particles-size: 4;\n    --particles-color: #ff6b2b;\n    --particles-spread: 140;\n    --emit-rate: 36;\n    --particle-life: 2.2;\n    --particle-speed: 40;\n  \"\n>\u003C/div>\n",[37,4471,4472,4478,4486,4494,4502,4507,4512,4517,4522,4527,4532,4537,4542,4547,4552,4556],{"__ignoreMap":231},[275,4473,4474,4476],{"class":277,"line":278},[275,4475,659],{"class":350},[275,4477,663],{"class":662},[275,4479,4480,4482,4484],{"class":277,"line":232},[275,4481,668],{"class":281},[275,4483,671],{"class":350},[275,4485,674],{"class":285},[275,4487,4488,4490,4492],{"class":277,"line":377},[275,4489,679],{"class":281},[275,4491,671],{"class":350},[275,4493,4326],{"class":285},[275,4495,4496,4498,4500],{"class":277,"line":399},[275,4497,689],{"class":281},[275,4499,671],{"class":350},[275,4501,752],{"class":285},[275,4503,4504],{"class":277,"line":406},[275,4505,4506],{"class":285},"    width: 320px;\n",[275,4508,4509],{"class":277,"line":432},[275,4510,4511],{"class":285},"    height: 320px;\n",[275,4513,4514],{"class":277,"line":437},[275,4515,4516],{"class":285},"    --particles-mode: emitter;\n",[275,4518,4519],{"class":277,"line":458},[275,4520,4521],{"class":285},"    --particles-count: 220;\n",[275,4523,4524],{"class":277,"line":470},[275,4525,4526],{"class":285},"    --particles-size: 4;\n",[275,4528,4529],{"class":277,"line":11},[275,4530,4531],{"class":285},"    --particles-color: #ff6b2b;\n",[275,4533,4534],{"class":277,"line":745},[275,4535,4536],{"class":285},"    --particles-spread: 140;\n",[275,4538,4539],{"class":277,"line":755},[275,4540,4541],{"class":285},"    --emit-rate: 36;\n",[275,4543,4544],{"class":277,"line":761},[275,4545,4546],{"class":285},"    --particle-life: 2.2;\n",[275,4548,4549],{"class":277,"line":767},[275,4550,4551],{"class":285},"    --particle-speed: 40;\n",[275,4553,4554],{"class":277,"line":773},[275,4555,811],{"class":285},[275,4557,4558,4560,4562],{"class":277,"line":779},[275,4559,699],{"class":350},[275,4561,702],{"class":662},[275,4563,705],{"class":350},[65,4565,2838],{"id":2837},[42,4567,4568,4571,4574,4577],{},[45,4569,4570],{},"In emitter mode, the particle system updates state every frame.",[45,4572,4573],{},"In instanced mode, the runtime distributes instances from a primitive or imported model geometry.",[45,4575,4576],{},"The synchronizer reads particle config from computed styles, not from a separate imperative particle API.",[45,4578,4579,4580,84],{},"Model morph timing is keyed off the CSS transition declared for ",[37,4581,4111],{},[65,4583,2859],{"id":2858},[33,4585,4586],{},"If the particles are meant to describe a recognizable silhouette, start with instanced mode. If the particles are meant to describe energy, atmosphere, or flow, start with emitter mode.",[500,4588,4081],{},{"title":231,"searchDepth":232,"depth":232,"links":4590},[4591,4592,4596,4597,4598,4599],{"id":2559,"depth":232,"text":2560},{"id":2588,"depth":232,"text":2589,"children":4593},[4594,4595],{"id":2948,"depth":377,"text":2949},{"id":4193,"depth":377,"text":4194},{"id":4297,"depth":232,"text":4298},{"id":4465,"depth":232,"text":4466},{"id":2837,"depth":232,"text":2838},{"id":2858,"depth":232,"text":2859},{"path":2327,"title":2328,"description":4601,"kind":2535,"section":2212,"order":4602,"group":4097,"parentPath":-1,"status":3679,"integration":2537,"publicExport":402,"activation":4603,"package":75,"aliases":4604,"attrs":4607,"events":4608,"cssVars":4609,"related":4615,"body":4618},"3D text object built from the element text content and registered fonts, with depth, bevel, and fit controls in CSS.",60,"string=\"3d\" string-3d=\"text\"",[1479,4605,4606],"fonts","extruded text",[139],[],[4610,4611,4612,4613,4614],"--text-depth","--text-curve-segments","--text-bevel-size","--text-bevel-thickness","--text-fit",[145,4616,4617],"/docs/api/registries","/docs/api/svg-parser",{"type":25,"value":4619,"toc":4970},[4620,4622,4627,4630,4632,4636,4650,4652,4654,4685,4689,4692,4740,4742,4850,4853,4855,4942,4944,4958,4960,4968],[28,4621,2328],{"id":1479},[33,4623,4624,4626],{},[37,4625,1479],{}," turns the element text content into 3D geometry.",[33,4628,4629],{},"Use it when the source of truth should remain text, but the final result needs depth, lighting, material response, or spatial composition.",[65,4631,2560],{"id":2559},[33,4633,132,4634,3709],{},[37,4635,1479],{},[42,4637,4638,4641,4644,4647],{},[45,4639,4640],{},"the content is still text, not an image",[45,4642,4643],{},"copy may change over time",[45,4645,4646],{},"typography should become part of the 3D composition",[45,4648,4649],{},"you want to keep layout and authoring close to the DOM layer",[65,4651,2589],{"id":2588},[2267,4653,2949],{"id":2948},[267,4655,4657],{"className":650,"code":4656,"language":652,"meta":231,"style":231},"\u003Ch1 string=\"3d\" string-3d=\"text\">ST3D\u003C/h1>\n",[37,4658,4659],{"__ignoreMap":231},[275,4660,4661,4663,4665,4667,4669,4671,4673,4675,4678,4681,4683],{"class":277,"line":278},[275,4662,659],{"class":350},[275,4664,28],{"class":662},[275,4666,1521],{"class":281},[275,4668,671],{"class":350},[275,4670,1526],{"class":285},[275,4672,1537],{"class":281},[275,4674,671],{"class":350},[275,4676,4677],{"class":285},"\"text\"",[275,4679,4680],{"class":350},">ST3D\u003C/",[275,4682,28],{"class":662},[275,4684,705],{"class":350},[2267,4686,4688],{"id":4687},"font-registration","Font registration",[33,4690,4691],{},"Before using custom fonts, register them through the static API:",[267,4693,4695],{"className":337,"code":4694,"language":339,"meta":231,"style":231},"import { String3D } from 'string-tune-3d';\n\nString3D.registerFont('Display', '/fonts/display.ttf', { default: true });\n",[37,4696,4697,4710,4714],{"__ignoreMap":231},[275,4698,4699,4701,4704,4706,4708],{"class":277,"line":278},[275,4700,347],{"class":346},[275,4702,4703],{"class":350}," { String3D } ",[275,4705,354],{"class":346},[275,4707,372],{"class":285},[275,4709,360],{"class":350},[275,4711,4712],{"class":277,"line":232},[275,4713,403],{"emptyLinePlaceholder":402},[275,4715,4716,4718,4721,4723,4726,4728,4731,4734,4737],{"class":277,"line":377},[275,4717,409],{"class":350},[275,4719,4720],{"class":281},"registerFont",[275,4722,415],{"class":350},[275,4724,4725],{"class":285},"'Display'",[275,4727,113],{"class":350},[275,4729,4730],{"class":285},"'/fonts/display.ttf'",[275,4732,4733],{"class":350},", { default: ",[275,4735,4736],{"class":382},"true",[275,4738,4739],{"class":350}," });\n",[2267,4741,3387],{"id":3386},[1659,4743,4744,4754],{},[1662,4745,4746],{},[1665,4747,4748,4750,4752],{},[1668,4749,1670],{},[1668,4751,1673],{},[1668,4753,1676],{},[1678,4755,4756,4770,4783,4796,4809,4823,4837],{},[1665,4757,4758,4762,4767],{},[1683,4759,4760],{},[37,4761,4610],{},[1683,4763,4764],{},[37,4765,4766],{},"8",[1683,4768,4769],{},"Extrusion depth",[1665,4771,4772,4776,4780],{},[1683,4773,4774],{},[37,4775,4611],{},[1683,4777,4778],{},[37,4779,4766],{},[1683,4781,4782],{},"Curve detail",[1665,4784,4785,4789,4793],{},[1683,4786,4787],{},[37,4788,4612],{},[1683,4790,4791],{},[37,4792,1691],{},[1683,4794,4795],{},"Bevel size",[1665,4797,4798,4802,4806],{},[1683,4799,4800],{},[37,4801,4613],{},[1683,4803,4804],{},[37,4805,1691],{},[1683,4807,4808],{},"Bevel thickness",[1665,4810,4811,4816,4820],{},[1683,4812,4813],{},[37,4814,4815],{},"--text-bevel-offset",[1683,4817,4818],{},[37,4819,1691],{},[1683,4821,4822],{},"Bevel offset",[1665,4824,4825,4830,4834],{},[1683,4826,4827],{},[37,4828,4829],{},"--text-bevel-steps",[1683,4831,4832],{},[37,4833,1691],{},[1683,4835,4836],{},"Bevel segments",[1665,4838,4839,4843,4847],{},[1683,4840,4841],{},[37,4842,4614],{},[1683,4844,4845],{},[37,4846,3819],{},[1683,4848,4849],{},"Fit behavior inside the DOM box",[33,4851,4852],{},"Text also participates in the shared transform and material contract.",[65,4854,2677],{"id":2676},[267,4856,4858],{"className":650,"code":4857,"language":652,"meta":231,"style":231},"\u003Ch1\n  string=\"3d\"\n  string-3d=\"text\"\n  style=\"\n    width: 360px;\n    height: 120px;\n    --text-depth: 12;\n    --text-bevel-size: 0.5;\n    --material-color: #f8f1df;\n    --rotate-y: 18;\n  \"\n>\n  ST3D\n\u003C/h1>\n",[37,4859,4860,4867,4875,4884,4892,4897,4902,4907,4912,4917,4921,4925,4929,4934],{"__ignoreMap":231},[275,4861,4862,4864],{"class":277,"line":278},[275,4863,659],{"class":350},[275,4865,4866],{"class":662},"h1\n",[275,4868,4869,4871,4873],{"class":277,"line":232},[275,4870,668],{"class":281},[275,4872,671],{"class":350},[275,4874,674],{"class":285},[275,4876,4877,4879,4881],{"class":277,"line":377},[275,4878,679],{"class":281},[275,4880,671],{"class":350},[275,4882,4883],{"class":285},"\"text\"\n",[275,4885,4886,4888,4890],{"class":277,"line":399},[275,4887,689],{"class":281},[275,4889,671],{"class":350},[275,4891,752],{"class":285},[275,4893,4894],{"class":277,"line":406},[275,4895,4896],{"class":285},"    width: 360px;\n",[275,4898,4899],{"class":277,"line":432},[275,4900,4901],{"class":285},"    height: 120px;\n",[275,4903,4904],{"class":277,"line":437},[275,4905,4906],{"class":285},"    --text-depth: 12;\n",[275,4908,4909],{"class":277,"line":458},[275,4910,4911],{"class":285},"    --text-bevel-size: 0.5;\n",[275,4913,4914],{"class":277,"line":470},[275,4915,4916],{"class":285},"    --material-color: #f8f1df;\n",[275,4918,4919],{"class":277,"line":11},[275,4920,800],{"class":285},[275,4922,4923],{"class":277,"line":745},[275,4924,811],{"class":285},[275,4926,4927],{"class":277,"line":755},[275,4928,705],{"class":350},[275,4930,4931],{"class":277,"line":761},[275,4932,4933],{"class":350},"  ST3D\n",[275,4935,4936,4938,4940],{"class":277,"line":767},[275,4937,1582],{"class":350},[275,4939,28],{"class":662},[275,4941,705],{"class":350},[65,4943,2838],{"id":2837},[42,4945,4946,4949,4952,4955],{},[45,4947,4948],{},"It reads the actual text content from the element.",[45,4950,4951],{},"It resolves the active font through the font registry and provider.",[45,4953,4954],{},"It builds 3D text geometry through the engine abstraction.",[45,4956,4957],{},"It fits that geometry back into the element-defined layout box.",[65,4959,2859],{"id":2858},[33,4961,4962,4964,4965,4967],{},[37,4963,1479],{}," is strongest when the wording itself matters. If the visual source is already vector artwork rather than actual copy, ",[37,4966,1484],{}," is usually the cleaner object type.",[500,4969,4081],{},{"title":231,"searchDepth":232,"depth":232,"links":4971},[4972,4973,4978,4979,4980],{"id":2559,"depth":232,"text":2560},{"id":2588,"depth":232,"text":2589,"children":4974},[4975,4976,4977],{"id":2948,"depth":377,"text":2949},{"id":4687,"depth":377,"text":4688},{"id":3386,"depth":377,"text":3387},{"id":2676,"depth":232,"text":2677},{"id":2837,"depth":232,"text":2838},{"id":2858,"depth":232,"text":2859},{"path":2334,"title":2335,"description":4982,"kind":2535,"section":2212,"order":4983,"group":4097,"parentPath":-1,"status":3679,"integration":2537,"publicExport":402,"activation":4984,"package":75,"aliases":4985,"attrs":4988,"events":4989,"cssVars":4990,"related":4996,"body":4997},"Extruded SVG object generated from inline SVG or external data-svg-src content with live geometry and morph support.",70,"string=\"3d\" string-3d=\"svg\"",[1484,4986,4987],"data-svg-src","SVG morph",[139,4986],[],[4991,4992,4993,4994,4995],"--svg-depth","--svg-curve-segments","--svg-bevel-size","--svg-bevel-thickness","--svg-morph-duration",[145,4617,1261],{"type":25,"value":4998,"toc":5305},[4999,5001,5006,5009,5011,5015,5029,5033,5036,5050,5052,5054,5084,5086,5190,5196,5198,5276,5278,5292,5294,5303],[28,5000,2335],{"id":1484},[33,5002,5003,5005],{},[37,5004,1484],{}," extrudes vector paths into 3D geometry.",[33,5007,5008],{},"Use it when the source of truth should remain vector artwork rather than a polygon model.",[65,5010,2560],{"id":2559},[33,5012,132,5013,3709],{},[37,5014,1484],{},[42,5016,5017,5020,5023,5026],{},[45,5018,5019],{},"the asset already exists as SVG",[45,5021,5022],{},"the artwork is logo-like, icon-like, or path-driven",[45,5024,5025],{},"you want depth and lighting without rebuilding the asset as a 3D model",[45,5027,5028],{},"the DOM or URL source should stay easy to swap",[65,5030,5032],{"id":5031},"input-sources","Input sources",[33,5034,5035],{},"StringTune-3D supports two common sources:",[42,5037,5038,5045],{},[45,5039,5040,5041,5044],{},"inline ",[37,5042,5043],{},"\u003Csvg>"," inside the host element",[45,5046,5047,5048],{},"external source through ",[37,5049,4986],{},[65,5051,2589],{"id":2588},[2267,5053,2949],{"id":2948},[267,5055,5057],{"className":650,"code":5056,"language":652,"meta":231,"style":231},"\u003Cdiv string=\"3d\" string-3d=\"svg\">\u003C/div>\n",[37,5058,5059],{"__ignoreMap":231},[275,5060,5061,5063,5065,5067,5069,5071,5073,5075,5078,5080,5082],{"class":277,"line":278},[275,5062,659],{"class":350},[275,5064,702],{"class":662},[275,5066,1521],{"class":281},[275,5068,671],{"class":350},[275,5070,1526],{"class":285},[275,5072,1537],{"class":281},[275,5074,671],{"class":350},[275,5076,5077],{"class":285},"\"svg\"",[275,5079,699],{"class":350},[275,5081,702],{"class":662},[275,5083,705],{"class":350},[2267,5085,3387],{"id":3386},[1659,5087,5088,5098],{},[1662,5089,5090],{},[1665,5091,5092,5094,5096],{},[1668,5093,1670],{},[1668,5095,1673],{},[1668,5097,1676],{},[1678,5099,5100,5112,5125,5137,5149,5162,5176],{},[1665,5101,5102,5106,5110],{},[1683,5103,5104],{},[37,5105,4991],{},[1683,5107,5108],{},[37,5109,1997],{},[1683,5111,4769],{},[1665,5113,5114,5118,5123],{},[1683,5115,5116],{},[37,5117,4992],{},[1683,5119,5120],{},[37,5121,5122],{},"12",[1683,5124,4782],{},[1665,5126,5127,5131,5135],{},[1683,5128,5129],{},[37,5130,4993],{},[1683,5132,5133],{},[37,5134,1691],{},[1683,5136,4795],{},[1665,5138,5139,5143,5147],{},[1683,5140,5141],{},[37,5142,4994],{},[1683,5144,5145],{},[37,5146,1691],{},[1683,5148,4808],{},[1665,5150,5151,5156,5160],{},[1683,5152,5153],{},[37,5154,5155],{},"--svg-bevel-offset",[1683,5157,5158],{},[37,5159,1691],{},[1683,5161,4822],{},[1665,5163,5164,5169,5174],{},[1683,5165,5166],{},[37,5167,5168],{},"--svg-bevel-steps",[1683,5170,5171],{},[37,5172,5173],{},"3",[1683,5175,4836],{},[1665,5177,5178,5182,5187],{},[1683,5179,5180],{},[37,5181,4995],{},[1683,5183,5184],{},[37,5185,5186],{},"600",[1683,5188,5189],{},"Morph timing",[33,5191,5192,5193,5195],{},"Like other visible object types, ",[37,5194,1484],{}," also uses the shared transform and material surface.",[65,5197,2677],{"id":2676},[267,5199,5201],{"className":650,"code":5200,"language":652,"meta":231,"style":231},"\u003Cdiv\n  string=\"3d\"\n  string-3d=\"svg\"\n  data-svg-src=\"/icons/logo.svg\"\n  style=\"\n    width: 220px;\n    height: 220px;\n    --svg-depth: 14;\n    --rotate-y: 16;\n  \"\n>\u003C/div>\n",[37,5202,5203,5209,5217,5226,5236,5244,5249,5254,5259,5264,5268],{"__ignoreMap":231},[275,5204,5205,5207],{"class":277,"line":278},[275,5206,659],{"class":350},[275,5208,663],{"class":662},[275,5210,5211,5213,5215],{"class":277,"line":232},[275,5212,668],{"class":281},[275,5214,671],{"class":350},[275,5216,674],{"class":285},[275,5218,5219,5221,5223],{"class":277,"line":377},[275,5220,679],{"class":281},[275,5222,671],{"class":350},[275,5224,5225],{"class":285},"\"svg\"\n",[275,5227,5228,5231,5233],{"class":277,"line":399},[275,5229,5230],{"class":281},"  data-svg-src",[275,5232,671],{"class":350},[275,5234,5235],{"class":285},"\"/icons/logo.svg\"\n",[275,5237,5238,5240,5242],{"class":277,"line":406},[275,5239,689],{"class":281},[275,5241,671],{"class":350},[275,5243,752],{"class":285},[275,5245,5246],{"class":277,"line":432},[275,5247,5248],{"class":285},"    width: 220px;\n",[275,5250,5251],{"class":277,"line":437},[275,5252,5253],{"class":285},"    height: 220px;\n",[275,5255,5256],{"class":277,"line":458},[275,5257,5258],{"class":285},"    --svg-depth: 14;\n",[275,5260,5261],{"class":277,"line":470},[275,5262,5263],{"class":285},"    --rotate-y: 16;\n",[275,5265,5266],{"class":277,"line":11},[275,5267,811],{"class":285},[275,5269,5270,5272,5274],{"class":277,"line":745},[275,5271,699],{"class":350},[275,5273,702],{"class":662},[275,5275,705],{"class":350},[65,5277,2838],{"id":2837},[42,5279,5280,5283,5286,5289],{},[45,5281,5282],{},"Inline SVG is parsed from the current DOM.",[45,5284,5285],{},"External SVG is fetched and cached by source URL.",[45,5287,5288],{},"Paths are converted into extrudable geometry and rebuilt when the SVG source changes.",[45,5290,5291],{},"Morph timing is controlled through the SVG-specific CSS duration variable rather than a separate JS animation API.",[65,5293,2859],{"id":2858},[33,5295,5296,5297,5299,5300,5302],{},"Reach for ",[37,5298,1484],{}," when the artwork is still fundamentally vector. Reach for ",[37,5301,1469],{}," when the asset is already authored as 3D geometry. That split tends to keep both the asset pipeline and the docs clearer.",[500,5304,1616],{},{"title":231,"searchDepth":232,"depth":232,"links":5306},[5307,5308,5309,5313,5314,5315],{"id":2559,"depth":232,"text":2560},{"id":5031,"depth":232,"text":5032},{"id":2588,"depth":232,"text":2589,"children":5310},[5311,5312],{"id":2948,"depth":377,"text":2949},{"id":3386,"depth":377,"text":3387},{"id":2676,"depth":232,"text":2677},{"id":2837,"depth":232,"text":2838},{"id":2858,"depth":232,"text":2859},{"path":145,"title":5317,"description":5318,"kind":5319,"section":146,"order":11,"group":5320,"parentPath":-1,"status":2536,"integration":2537,"publicExport":402,"activation":5321,"package":75,"aliases":5322,"attrs":5326,"events":5327,"cssVars":5328,"related":5330,"body":5332},"Materials","The CSS material contract for basic and standard materials, opacity, emissive color, and model overrides.","rendering-feature","Surface","CSS custom properties on [string-3d]",[5323,5324,5325],"material-type","standard material","basic material",[],[],[2885,1631,2886,2887,5329,1640],"--material-emissive",[1642,5331,520],"/docs/rendering/custom-materials",{"type":25,"value":5333,"toc":5476},[5334,5337,5340,5344,5348,5442,5446,5464,5468],[28,5335,5317],{"id":5336},"materials",[33,5338,5339],{},"The runtime builds materials from computed CSS on the source element.",[65,5341,5343],{"id":5342},"public-surface","Public Surface",[2267,5345,5347],{"id":5346},"core-variables","Core variables",[1659,5349,5350,5360],{},[1662,5351,5352],{},[1665,5353,5354,5356,5358],{},[1668,5355,1670],{},[1668,5357,1673],{},[1668,5359,1676],{},[1678,5361,5362,5376,5389,5402,5415,5429],{},[1665,5363,5364,5368,5373],{},[1683,5365,5366],{},[37,5367,2885],{},[1683,5369,5370],{},[37,5371,5372],{},"basic",[1683,5374,5375],{},"Chooses the material pipeline",[1665,5377,5378,5382,5386],{},[1683,5379,5380],{},[37,5381,1631],{},[1683,5383,5384],{},[37,5385,3412],{},[1683,5387,5388],{},"Base color",[1665,5390,5391,5395,5399],{},[1683,5392,5393],{},[37,5394,2886],{},[1683,5396,5397],{},[37,5398,1691],{},[1683,5400,5401],{},"Standard material metalness",[1665,5403,5404,5408,5412],{},[1683,5405,5406],{},[37,5407,2887],{},[1683,5409,5410],{},[37,5411,1768],{},[1683,5413,5414],{},"Standard material roughness",[1665,5416,5417,5421,5426],{},[1683,5418,5419],{},[37,5420,5329],{},[1683,5422,5423],{},[37,5424,5425],{},"#000000",[1683,5427,5428],{},"Emissive color",[1665,5430,5431,5435,5439],{},[1683,5432,5433],{},[37,5434,1640],{},[1683,5436,5437],{},[37,5438,1768],{},[1683,5440,5441],{},"Opacity and transparency toggle",[65,5443,5445],{"id":5444},"material-selection-rule","Material selection rule",[42,5447,5448,5453,5459],{},[45,5449,5450,5452],{},[37,5451,5372],{}," uses the unlit path",[45,5454,5455,5458],{},[37,5456,5457],{},"standard"," uses the PBR path",[45,5460,5461,5462],{},"custom material names are resolved through ",[37,5463,211],{},[65,5465,5467],{"id":5466},"detailed-behavior","Detailed Behavior",[33,5469,5470,5471,5473,5474,84],{},"If the runtime sees texture maps or standard-only properties, it upgrades the final material path to ",[37,5472,5457],{}," even if the raw type was not ",[37,5475,5457],{},{"title":231,"searchDepth":232,"depth":232,"links":5477},[5478,5481,5482],{"id":5342,"depth":232,"text":5343,"children":5479},[5480],{"id":5346,"depth":377,"text":5347},{"id":5444,"depth":232,"text":5445},{"id":5466,"depth":232,"text":5467},{"path":1642,"title":5484,"description":5485,"kind":5319,"section":146,"order":240,"group":5320,"parentPath":-1,"status":3679,"integration":2537,"publicExport":402,"activation":5321,"package":75,"aliases":5486,"attrs":5490,"events":5491,"cssVars":5492,"related":5498,"body":5499},"Textures","How texture maps, flipY, color space, and model texture remapping are resolved from CSS and attributes.",[5487,5488,5489],"texture-map","normalMap","aoMap",[],[],[2199,3687,5493,5494,5495,5496,5497],"--texture-roughness","--texture-metalness","--texture-ao","--texture-flip-y","--texture-color-space",[2040,145,2053],{"type":25,"value":5500,"toc":5643},[5501,5504,5507,5509,5513,5543,5547,5553,5620,5622,5640],[28,5502,5484],{"id":5503},"textures",[33,5505,5506],{},"Textures are declared through CSS, not through per-object imperative material code.",[65,5508,5343],{"id":5342},[2267,5510,5512],{"id":5511},"texture-variables","Texture variables",[42,5514,5515,5519,5523,5527,5531,5535,5539],{},[45,5516,5517],{},[37,5518,2199],{},[45,5520,5521],{},[37,5522,3687],{},[45,5524,5525],{},[37,5526,5493],{},[45,5528,5529],{},[37,5530,5494],{},[45,5532,5533],{},[37,5534,5495],{},[45,5536,5537],{},[37,5538,5496],{},[45,5540,5541],{},[37,5542,5497],{},[65,5544,5546],{"id":5545},"value-shape","Value shape",[33,5548,5549,5550,84],{},"Texture URLs are typically supplied as ",[37,5551,5552],{},"url(...)",[267,5554,5556],{"className":827,"code":5555,"language":829,"meta":231,"style":231},"[string-id='hero-model'] {\n  --texture-map: url('/textures/albedo.jpg');\n  --texture-normal: url('/textures/normal.jpg');\n  --texture-color-space: srgb;\n}\n",[37,5557,5558,5571,5588,5604,5616],{"__ignoreMap":231},[275,5559,5560,5562,5564,5566,5569],{"class":277,"line":278},[275,5561,836],{"class":350},[275,5563,839],{"class":281},[275,5565,671],{"class":346},[275,5567,5568],{"class":285},"'hero-model'",[275,5570,847],{"class":350},[275,5572,5573,5576,5578,5581,5583,5586],{"class":277,"line":232},[275,5574,5575],{"class":918},"  --texture-map",[275,5577,922],{"class":350},[275,5579,5580],{"class":382},"url",[275,5582,415],{"class":350},[275,5584,5585],{"class":285},"'/textures/albedo.jpg'",[275,5587,483],{"class":350},[275,5589,5590,5593,5595,5597,5599,5602],{"class":277,"line":377},[275,5591,5592],{"class":918},"  --texture-normal",[275,5594,922],{"class":350},[275,5596,5580],{"class":382},[275,5598,415],{"class":350},[275,5600,5601],{"class":285},"'/textures/normal.jpg'",[275,5603,483],{"class":350},[275,5605,5606,5609,5611,5614],{"class":277,"line":399},[275,5607,5608],{"class":918},"  --texture-color-space",[275,5610,922],{"class":350},[275,5612,5613],{"class":382},"srgb",[275,5615,360],{"class":350},[275,5617,5618],{"class":277,"line":406},[275,5619,890],{"class":350},[65,5621,5467],{"id":5466},[42,5623,5624,5627,5633],{},[45,5625,5626],{},"The scene runtime parses URL-style values into plain paths.",[45,5628,5629,5632],{},[37,5630,5631],{},"flipY"," and color space are applied after texture load.",[45,5634,5635,5636,1032,5638,84],{},"Model texture remapping is handled separately through ",[37,5637,2179],{},[37,5639,2184],{},[500,5641,5642],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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":231,"searchDepth":232,"depth":232,"links":5644},[5645,5648,5649],{"id":5342,"depth":232,"text":5343,"children":5646},[5647],{"id":5511,"depth":377,"text":5512},{"id":5545,"depth":232,"text":5546},{"id":5466,"depth":232,"text":5467},{"path":4113,"title":5651,"description":5652,"kind":5319,"section":146,"order":512,"group":5653,"parentPath":-1,"status":3679,"integration":2537,"publicExport":402,"activation":5654,"package":75,"aliases":5655,"attrs":5660,"events":5661,"cssVars":5662,"related":5664,"body":5666},"Filters","Post-process and object-level filter pipeline driven by the --filter CSS property, including animation behavior.","Effects","--filter on [string-3d]",[5656,5657,5658,5659],"blur","bloom","pixel","hue-rotate",[],[],[5663],"--filter",[5665,2320,4616],"/docs/rendering/custom-filters",{"type":25,"value":5667,"toc":5900},[5668,5671,5677,5681,5733,5735,5782,5784,5798,5802,5898],[28,5669,5651],{"id":5670},"filters",[33,5672,5673,5674,5676],{},"StringTune-3D parses ",[37,5675,5663],{}," into a chain of effects.",[65,5678,5680],{"id":5679},"supported-built-in-filters","Supported built-in filters",[42,5682,5683,5688,5693,5698,5703,5708,5713,5718,5723,5728],{},[45,5684,5685],{},[37,5686,5687],{},"blur(...)",[45,5689,5690],{},[37,5691,5692],{},"pixel(...)",[45,5694,5695],{},[37,5696,5697],{},"bloom(...)",[45,5699,5700],{},[37,5701,5702],{},"brightness(...)",[45,5704,5705],{},[37,5706,5707],{},"contrast(...)",[45,5709,5710],{},[37,5711,5712],{},"saturate(...)",[45,5714,5715],{},[37,5716,5717],{},"grayscale(...)",[45,5719,5720],{},[37,5721,5722],{},"sepia(...)",[45,5724,5725],{},[37,5726,5727],{},"invert(...)",[45,5729,5730],{},[37,5731,5732],{},"hue-rotate(...)",[65,5734,2677],{"id":2676},[267,5736,5738],{"className":827,"code":5737,"language":829,"meta":231,"style":231},"[string-id='hero-box'] {\n  --filter: bloom(0.8, 0.35) saturate(1.2);\n}\n",[37,5739,5740,5753,5778],{"__ignoreMap":231},[275,5741,5742,5744,5746,5748,5751],{"class":277,"line":278},[275,5743,836],{"class":350},[275,5745,839],{"class":281},[275,5747,671],{"class":346},[275,5749,5750],{"class":285},"'hero-box'",[275,5752,847],{"class":350},[275,5754,5755,5758,5761,5764,5766,5769,5772,5775],{"class":277,"line":232},[275,5756,5757],{"class":918},"  --filter",[275,5759,5760],{"class":350},": bloom(",[275,5762,5763],{"class":382},"0.8",[275,5765,113],{"class":350},[275,5767,5768],{"class":382},"0.35",[275,5770,5771],{"class":350},") ",[275,5773,5774],{"class":382},"saturate",[275,5776,5777],{"class":350},"(1.2);\n",[275,5779,5780],{"class":277,"line":377},[275,5781,890],{"class":350},[65,5783,5467],{"id":5466},[42,5785,5786,5789,5795],{},[45,5787,5788],{},"The filter parser resolves the CSS string into typed effect objects.",[45,5790,5791,5792,5794],{},"Transition timing for ",[37,5793,5663],{}," is read from the element's CSS transitions.",[45,5796,5797],{},"Unknown filter names are ignored with runtime warnings instead of hard crashes.",[65,5799,5801],{"id":5800},"transition-example","Transition Example",[267,5803,5805],{"className":827,"code":5804,"language":829,"meta":231,"style":231},"[string-id='panel'] {\n  --filter: bloom(0.4, 0.4);\n  transition: --filter 520ms ease;\n}\n\n[string-id='panel']:hover {\n  --filter: bloom(1, 0.28) saturate(1.2);\n}\n",[37,5806,5807,5820,5835,5851,5855,5859,5875,5894],{"__ignoreMap":231},[275,5808,5809,5811,5813,5815,5818],{"class":277,"line":278},[275,5810,836],{"class":350},[275,5812,839],{"class":281},[275,5814,671],{"class":346},[275,5816,5817],{"class":285},"'panel'",[275,5819,847],{"class":350},[275,5821,5822,5824,5826,5829,5831,5833],{"class":277,"line":232},[275,5823,5757],{"class":918},[275,5825,5760],{"class":350},[275,5827,5828],{"class":382},"0.4",[275,5830,113],{"class":350},[275,5832,5828],{"class":382},[275,5834,483],{"class":350},[275,5836,5837,5839,5842,5845,5847,5849],{"class":277,"line":377},[275,5838,852],{"class":382},[275,5840,5841],{"class":350},": --filter ",[275,5843,5844],{"class":382},"520",[275,5846,866],{"class":346},[275,5848,869],{"class":382},[275,5850,360],{"class":350},[275,5852,5853],{"class":277,"line":399},[275,5854,890],{"class":350},[275,5856,5857],{"class":277,"line":406},[275,5858,403],{"emptyLinePlaceholder":402},[275,5860,5861,5863,5865,5867,5869,5871,5873],{"class":277,"line":432},[275,5862,836],{"class":350},[275,5864,839],{"class":281},[275,5866,671],{"class":346},[275,5868,5817],{"class":285},[275,5870,907],{"class":350},[275,5872,910],{"class":281},[275,5874,913],{"class":350},[275,5876,5877,5879,5881,5883,5885,5888,5890,5892],{"class":277,"line":437},[275,5878,5757],{"class":918},[275,5880,5760],{"class":350},[275,5882,1768],{"class":382},[275,5884,113],{"class":350},[275,5886,5887],{"class":382},"0.28",[275,5889,5771],{"class":350},[275,5891,5774],{"class":382},[275,5893,5777],{"class":350},[275,5895,5896],{"class":277,"line":458},[275,5897,890],{"class":350},[500,5899,5642],{},{"title":231,"searchDepth":232,"depth":232,"links":5901},[5902,5903,5904,5905],{"id":5679,"depth":232,"text":5680},{"id":2676,"depth":232,"text":2677},{"id":5466,"depth":232,"text":5467},{"id":5800,"depth":232,"text":5801},{"path":5331,"title":5907,"description":5908,"kind":5319,"section":146,"order":1008,"group":5909,"parentPath":-1,"status":3679,"integration":5910,"publicExport":402,"activation":5911,"package":75,"aliases":5912,"attrs":5915,"events":5916,"cssVars":5917,"related":5918,"body":5920},"Custom Materials","Register shader-based or extended materials and bind uniform values to CSS variables through the material registry.","Extensibility","api-only","String3DCustomMaterialRegistry.register(...)",[5913,5914],"shader material","uniform css mapping",[],[],[],[145,4616,5919],"/docs/api/engine-abstraction",{"type":25,"value":5921,"toc":6055},[5922,5925,5928,5932,6027,6031,6042,6044,6052],[28,5923,5907],{"id":5924},"custom-materials",[33,5926,5927],{},"Custom materials let you keep the CSS-first authoring model while extending the underlying shader or material definition.",[65,5929,5931],{"id":5930},"registration","Registration",[267,5933,5935],{"className":337,"code":5934,"language":339,"meta":231,"style":231},"import { String3DCustomMaterialRegistry } from 'string-tune-3d';\n\nString3DCustomMaterialRegistry.register({\n  name: 'rim',\n  extends: 'standard',\n  uniforms: {\n    rimStrength: { type: 'float', value: 1, css: '--rim-strength' },\n  },\n  injections: [],\n});\n",[37,5936,5937,5950,5954,5965,5975,5985,5990,6012,6017,6022],{"__ignoreMap":231},[275,5938,5939,5941,5944,5946,5948],{"class":277,"line":278},[275,5940,347],{"class":346},[275,5942,5943],{"class":350}," { String3DCustomMaterialRegistry } ",[275,5945,354],{"class":346},[275,5947,372],{"class":285},[275,5949,360],{"class":350},[275,5951,5952],{"class":277,"line":232},[275,5953,403],{"emptyLinePlaceholder":402},[275,5955,5956,5959,5962],{"class":277,"line":377},[275,5957,5958],{"class":350},"String3DCustomMaterialRegistry.",[275,5960,5961],{"class":281},"register",[275,5963,5964],{"class":350},"({\n",[275,5966,5967,5970,5973],{"class":277,"line":399},[275,5968,5969],{"class":350},"  name: ",[275,5971,5972],{"class":285},"'rim'",[275,5974,872],{"class":350},[275,5976,5977,5980,5983],{"class":277,"line":406},[275,5978,5979],{"class":350},"  extends: ",[275,5981,5982],{"class":285},"'standard'",[275,5984,872],{"class":350},[275,5986,5987],{"class":277,"line":432},[275,5988,5989],{"class":350},"  uniforms: {\n",[275,5991,5992,5995,5998,6001,6003,6006,6009],{"class":277,"line":437},[275,5993,5994],{"class":350},"    rimStrength: { type: ",[275,5996,5997],{"class":285},"'float'",[275,5999,6000],{"class":350},", value: ",[275,6002,1768],{"class":382},[275,6004,6005],{"class":350},", css: ",[275,6007,6008],{"class":285},"'--rim-strength'",[275,6010,6011],{"class":350}," },\n",[275,6013,6014],{"class":277,"line":458},[275,6015,6016],{"class":350},"  },\n",[275,6018,6019],{"class":277,"line":470},[275,6020,6021],{"class":350},"  injections: [],\n",[275,6023,6024],{"class":277,"line":11},[275,6025,6026],{"class":350},"});\n",[65,6028,6030],{"id":6029},"what-the-registry-provides","What the registry provides",[42,6032,6033,6036,6039],{},[45,6034,6035],{},"lookup by material name",[45,6037,6038],{},"CSS variable registration for declared uniforms",[45,6040,6041],{},"compatibility with the engine material factory",[65,6043,1596],{"id":1595},[33,6045,6046,6047,1032,6049,6051],{},"Use a custom material when the built-in ",[37,6048,5372],{},[37,6050,5457],{}," contracts are not enough, but you still want users to work through CSS variables.",[500,6053,6054],{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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":231,"searchDepth":232,"depth":232,"links":6056},[6057,6058,6059],{"id":5930,"depth":232,"text":5931},{"id":6029,"depth":232,"text":6030},{"id":1595,"depth":232,"text":1596},{"path":5665,"title":6061,"description":6062,"kind":5319,"section":146,"order":4096,"group":5909,"parentPath":-1,"status":3679,"integration":5910,"publicExport":402,"activation":6063,"package":75,"aliases":6064,"attrs":6067,"events":6068,"cssVars":6069,"related":6070,"body":6071},"Custom Filters","Define custom post-process filters and expose parsed arguments to the runtime through the filter registry.","String3DCustomFilterRegistry.register(...)",[6065,6066],"custom shader filter","post process registry",[],[],[],[4113,4616,5919],{"type":25,"value":6072,"toc":6243},[6073,6076,6082,6084,6221,6223,6240],[28,6074,6061],{"id":6075},"custom-filters",[33,6077,6078,6079,6081],{},"Custom filters extend the ",[37,6080,5663],{}," grammar with your own names.",[65,6083,5931],{"id":5930},[267,6085,6087],{"className":337,"code":6086,"language":339,"meta":231,"style":231},"import { String3DCustomFilterRegistry } from 'string-tune-3d';\n\nString3DCustomFilterRegistry.register({\n  name: 'heat',\n  implementations: {\n    webgl: {\n      kind: 'shader',\n      language: 'glsl',\n      stage: 'fragment',\n      code: 'void main() {}',\n    },\n  },\n  parse: (args) => ({ amount: Number.parseFloat(args) || 0 }),\n});\n",[37,6088,6089,6102,6106,6115,6124,6129,6134,6144,6154,6164,6174,6179,6183,6217],{"__ignoreMap":231},[275,6090,6091,6093,6096,6098,6100],{"class":277,"line":278},[275,6092,347],{"class":346},[275,6094,6095],{"class":350}," { String3DCustomFilterRegistry } ",[275,6097,354],{"class":346},[275,6099,372],{"class":285},[275,6101,360],{"class":350},[275,6103,6104],{"class":277,"line":232},[275,6105,403],{"emptyLinePlaceholder":402},[275,6107,6108,6111,6113],{"class":277,"line":377},[275,6109,6110],{"class":350},"String3DCustomFilterRegistry.",[275,6112,5961],{"class":281},[275,6114,5964],{"class":350},[275,6116,6117,6119,6122],{"class":277,"line":399},[275,6118,5969],{"class":350},[275,6120,6121],{"class":285},"'heat'",[275,6123,872],{"class":350},[275,6125,6126],{"class":277,"line":406},[275,6127,6128],{"class":350},"  implementations: {\n",[275,6130,6131],{"class":277,"line":432},[275,6132,6133],{"class":350},"    webgl: {\n",[275,6135,6136,6139,6142],{"class":277,"line":437},[275,6137,6138],{"class":350},"      kind: ",[275,6140,6141],{"class":285},"'shader'",[275,6143,872],{"class":350},[275,6145,6146,6149,6152],{"class":277,"line":458},[275,6147,6148],{"class":350},"      language: ",[275,6150,6151],{"class":285},"'glsl'",[275,6153,872],{"class":350},[275,6155,6156,6159,6162],{"class":277,"line":470},[275,6157,6158],{"class":350},"      stage: ",[275,6160,6161],{"class":285},"'fragment'",[275,6163,872],{"class":350},[275,6165,6166,6169,6172],{"class":277,"line":11},[275,6167,6168],{"class":350},"      code: ",[275,6170,6171],{"class":285},"'void main() {}'",[275,6173,872],{"class":350},[275,6175,6176],{"class":277,"line":745},[275,6177,6178],{"class":350},"    },\n",[275,6180,6181],{"class":277,"line":755},[275,6182,6016],{"class":350},[275,6184,6185,6188,6191,6194,6196,6199,6202,6205,6208,6211,6214],{"class":277,"line":761},[275,6186,6187],{"class":281},"  parse",[275,6189,6190],{"class":350},": (",[275,6192,6193],{"class":918},"args",[275,6195,5771],{"class":350},[275,6197,6198],{"class":346},"=>",[275,6200,6201],{"class":350}," ({ amount: Number.",[275,6203,6204],{"class":281},"parseFloat",[275,6206,6207],{"class":350},"(args) ",[275,6209,6210],{"class":346},"||",[275,6212,6213],{"class":382}," 0",[275,6215,6216],{"class":350}," }),\n",[275,6218,6219],{"class":277,"line":767},[275,6220,6026],{"class":350},[65,6222,5467],{"id":5466},[42,6224,6225,6231,6237],{},[45,6226,6227,6228,6230],{},"Filter names are matched during ",[37,6229,5663],{}," parsing.",[45,6232,6233,6236],{},[37,6234,6235],{},"parse()"," turns the CSS argument string into uniforms.",[45,6238,6239],{},"Backend-specific implementations are resolved through the engine runtime.",[500,6241,6242],{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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":231,"searchDepth":232,"depth":232,"links":6244},[6245,6246],{"id":5930,"depth":232,"text":5931},{"id":5466,"depth":232,"text":5467},{"path":23,"title":152,"description":6248,"kind":6249,"section":6250,"order":11,"group":6251,"parentPath":-1,"status":-1,"integration":-1,"publicExport":-1,"activation":-1,"package":-1,"aliases":6252,"attrs":6253,"events":6254,"cssVars":6255,"related":6256,"body":6257},"Map of the public StringTune-3D exports, runtime classes, registries, and abstraction layers.","api-reference","API Reference","Core API",[],[],[],[],[1260,248,1261],{"type":25,"value":6258,"toc":6317},[6259,6262,6265,6268,6280,6284,6291,6294,6306,6310],[28,6260,152],{"id":6261},"api-overview",[33,6263,6264],{},"The public API comes from the package root exports.",[65,6266,6251],{"id":6267},"core-api",[42,6269,6270,6275],{},[45,6271,6272],{},[110,6273,6274],{"href":1260},"String3D Module",[45,6276,6277],{},[110,6278,6279],{"href":248},"Provider API",[65,6281,6283],{"id":6282},"runtime-classes","Runtime Classes",[42,6285,6286],{},[45,6287,6288],{},[110,6289,6290],{"href":1261},"Scene Runtime",[65,6292,5909],{"id":6293},"extensibility",[42,6295,6296,6301],{},[45,6297,6298],{},[110,6299,6300],{"href":4616},"Registries",[45,6302,6303],{},[110,6304,6305],{"href":5919},"Engine Abstraction",[65,6307,6309],{"id":6308},"utilities","Utilities",[42,6311,6312],{},[45,6313,6314],{},[110,6315,6316],{"href":4617},"SVG Parser",{"title":231,"searchDepth":232,"depth":232,"links":6318},[6319,6320,6321,6322],{"id":6267,"depth":232,"text":6251},{"id":6282,"depth":232,"text":6283},{"id":6293,"depth":232,"text":5909},{"id":6308,"depth":232,"text":6309},{"path":1260,"title":6274,"description":6324,"kind":6249,"section":6250,"order":240,"group":6251,"parentPath":-1,"status":2536,"integration":6325,"publicExport":402,"activation":6326,"package":75,"aliases":6327,"attrs":6329,"events":6330,"cssVars":6331,"related":6332,"body":6333},"Public module API for provider setup, font registration, settings, and StringTune integration.","global","stringTune.use(String3D)",[53,412,4720,6328],"setDefaultFont",[],[],[],[21,248,4616],{"type":25,"value":6334,"toc":6443},[6335,6338,6343,6347,6351,6373,6377,6383,6422,6424],[28,6336,6274],{"id":6337},"string3d-module",[33,6339,6340,6342],{},[37,6341,53],{}," is the main integration export.",[65,6344,6346],{"id":6345},"public-api","Public API",[2267,6348,6350],{"id":6349},"static-methods","Static methods",[42,6352,6353,6358,6363,6368],{},[45,6354,6355],{},[37,6356,6357],{},"String3D.setProvider(provider)",[45,6359,6360],{},[37,6361,6362],{},"String3D.getInstance()",[45,6364,6365],{},[37,6366,6367],{},"String3D.registerFont(name, url, options?)",[45,6369,6370],{},[37,6371,6372],{},"String3D.setDefaultFont(name)",[2267,6374,6376],{"id":6375},"settings","Settings",[33,6378,6379,6380,6382],{},"The runtime reads these module settings from ",[37,6381,39],{},":",[42,6384,6385,6390,6394,6398,6402,6406,6410,6414,6418],{},[45,6386,6387],{},[37,6388,6389],{},"hideHTML",[45,6391,6392],{},[37,6393,1374],{},[45,6395,6396],{},[37,6397,1377],{},[45,6399,6400],{},[37,6401,2137],{},[45,6403,6404],{},[37,6405,2125],{},[45,6407,6408],{},[37,6409,2131],{},[45,6411,6412],{},[37,6413,1380],{},[45,6415,6416],{},[37,6417,1383],{},[45,6419,6420],{},[37,6421,1386],{},[65,6423,5467],{"id":5466},[42,6425,6426,6432,6437],{},[45,6427,6428,6431],{},[37,6429,6430],{},"onInit()"," exits early if no provider has been registered.",[45,6433,6434,6436],{},[37,6435,1394],{}," re-applies sync-related settings without rebuilding the whole runtime.",[45,6438,6439,6442],{},[37,6440,6441],{},"destroy()"," tears down the renderer, scene, filter state, and injected stylesheet.",{"title":231,"searchDepth":232,"depth":232,"links":6444},[6445,6449],{"id":6345,"depth":232,"text":6346,"children":6446},[6447,6448],{"id":6349,"depth":377,"text":6350},{"id":6375,"depth":377,"text":6376},{"id":5466,"depth":232,"text":5467},{"path":248,"title":6279,"description":6451,"kind":6249,"section":6250,"order":512,"group":6251,"parentPath":-1,"status":2536,"integration":5910,"publicExport":402,"activation":6452,"package":75,"aliases":6453,"attrs":6455,"events":6456,"cssVars":6457,"related":6458,"body":6459},"The I3DEngineProvider contract and the default ThreeJSProvider implementation exported by the package.","String3D.setProvider(new ThreeJSProvider(...))",[95,1031,6454],"ThreeJSEngine",[],[],[],[120,2040,5919],{"type":25,"value":6460,"toc":6532},[6461,6464,6467,6471,6477,6504,6508,6515,6517],[28,6462,6279],{"id":6463},"provider-api",[33,6465,6466],{},"The provider boundary keeps the runtime renderer-agnostic.",[65,6468,6470],{"id":6469},"core-contract","Core contract",[33,6472,6473,6474,6476],{},"An ",[37,6475,1031],{}," can expose:",[42,6478,6479,6484,6489,6494,6499],{},[45,6480,6481],{},[37,6482,6483],{},"initialize()",[45,6485,6486],{},[37,6487,6488],{},"getEngine()",[45,6490,6491],{},[37,6492,6493],{},"getName()",[45,6495,6496],{},[37,6497,6498],{},"getBackend()",[45,6500,6501],{},[37,6502,6503],{},"getCapabilities()",[65,6505,6507],{"id":6506},"default-implementation","Default implementation",[33,6509,6510,6512,6513,84],{},[37,6511,95],{}," is the packaged implementation for ",[37,6514,83],{},[65,6516,1596],{"id":1595},[42,6518,6519,6524],{},[45,6520,6521,6522,84],{},"If you only use Three.js, use ",[37,6523,95],{},[45,6525,6526,6527,6529,6530,84],{},"If you want another backend, implement ",[37,6528,1031],{}," and the matching ",[37,6531,1035],{},{"title":231,"searchDepth":232,"depth":232,"links":6533},[6534,6535,6536],{"id":6469,"depth":232,"text":6470},{"id":6506,"depth":232,"text":6507},{"id":1595,"depth":232,"text":1596},{"path":1261,"title":6290,"description":6538,"kind":6249,"section":6250,"order":1008,"group":6283,"parentPath":-1,"status":3679,"integration":5910,"publicExport":402,"activation":6539,"package":75,"aliases":6540,"attrs":6542,"events":6543,"cssVars":6544,"related":6545,"body":6546},"String3DScene, String3DRenderer, String3DSynchronizer, String3DCamera, and String3DObject responsibilities.","new String3DScene(...)",[206,983,977,6541,177],"String3DCamera",[],[],[],[127,1259,5919],{"type":25,"value":6547,"toc":6592},[6548,6551,6554,6558,6585,6589],[28,6549,6290],{"id":6550},"scene-runtime",[33,6552,6553],{},"These classes are exported because advanced integrations sometimes need them directly.",[65,6555,6557],{"id":6556},"main-classes","Main classes",[42,6559,6560,6565,6570,6575,6580],{},[45,6561,6562,6564],{},[37,6563,206],{}," creates and stores objects",[45,6566,6567,6569],{},[37,6568,983],{}," owns frame output",[45,6571,6572,6574],{},[37,6573,977],{}," maps DOM state to scene state",[45,6576,6577,6579],{},[37,6578,6541],{}," manages projection and screen-to-world helpers",[45,6581,6582,6584],{},[37,6583,177],{}," wraps a scene object plus geometry and material metadata",[65,6586,6588],{"id":6587},"use-case","Use case",[33,6590,6591],{},"Most integrations do not instantiate these classes directly. They become useful when you are extending the runtime, testing a custom provider, or instrumenting advanced behavior.",{"title":231,"searchDepth":232,"depth":232,"links":6593},[6594,6595],{"id":6556,"depth":232,"text":6557},{"id":6587,"depth":232,"text":6588},{"path":4616,"title":6300,"description":6597,"kind":6249,"section":6250,"order":4096,"group":5909,"parentPath":-1,"status":3679,"integration":5910,"publicExport":402,"activation":6598,"package":75,"aliases":6599,"attrs":6600,"events":6601,"cssVars":6602,"related":6603,"body":6604},"Font, custom material, and custom filter registries that extend the runtime without forking the core module.","String3DFontRegistry | String3DCustomMaterialRegistry | String3DCustomFilterRegistry",[221,211,216],[],[],[],[2327,5331,5665],{"type":25,"value":6605,"toc":6638},[6606,6609,6612,6615,6618,6621,6624,6627,6630,6632],[28,6607,6300],{"id":6608},"registries",[33,6610,6611],{},"Three registries are part of the public extension surface.",[65,6613,221],{"id":6614},"string3dfontregistry",[33,6616,6617],{},"Stores named font entries used by the text pipeline.",[65,6619,211],{"id":6620},"string3dcustommaterialregistry",[33,6622,6623],{},"Stores custom material definitions and CSS-uniform mappings.",[65,6625,216],{"id":6626},"string3dcustomfilterregistry",[33,6628,6629],{},"Stores custom filter definitions and backend-specific implementations.",[65,6631,1596],{"id":1595},[33,6633,6634,6635,6637],{},"Use registries when you want to extend the runtime contract without forking ",[37,6636,53],{}," itself.",{"title":231,"searchDepth":232,"depth":232,"links":6639},[6640,6641,6642,6643],{"id":6614,"depth":232,"text":221},{"id":6620,"depth":232,"text":211},{"id":6626,"depth":232,"text":216},{"id":1595,"depth":232,"text":1596},{"path":5919,"title":6305,"description":6645,"kind":6249,"section":6250,"order":4602,"group":5909,"parentPath":-1,"status":3679,"integration":5910,"publicExport":402,"activation":1035,"package":75,"aliases":6646,"attrs":6649,"events":6650,"cssVars":6651,"related":6652,"body":6653},"The I3DEngine contract, capability flags, post-process hooks, and why the runtime stays renderer-agnostic.",[1035,6647,6648],"I3DPostProcessRuntime","I3DEngineCapabilities",[],[],[],[248,1261,5665],{"type":25,"value":6654,"toc":6720},[6655,6658,6663,6667,6690,6694,6697,6701],[28,6656,6305],{"id":6657},"engine-abstraction",[33,6659,6660,6662],{},[37,6661,1035],{}," is the renderer-facing contract used by the runtime.",[65,6664,6666],{"id":6665},"what-it-covers","What it covers",[42,6668,6669,6672,6674,6676,6679,6681,6683,6686,6688],{},[45,6670,6671],{},"scene and camera creation",[45,6673,1196],{},[45,6675,1199],{},[45,6677,6678],{},"light factories",[45,6680,1205],{},[45,6682,1202],{},[45,6684,6685],{},"text and SVG geometry helpers",[45,6687,1211],{},[45,6689,1214],{},[65,6691,6693],{"id":6692},"why-it-exists","Why it exists",[33,6695,6696],{},"This keeps the module runtime independent from any one renderer implementation while still allowing a rich feature set.",[65,6698,6700],{"id":6699},"related-exports","Related exports",[42,6702,6703,6707,6711,6715],{},[45,6704,6705],{},[37,6706,1035],{},[45,6708,6709],{},[37,6710,6648],{},[45,6712,6713],{},[37,6714,6647],{},[45,6716,6717],{},[37,6718,6719],{},"I3DPostProcessPipelineRuntime",{"title":231,"searchDepth":232,"depth":232,"links":6721},[6722,6723,6724],{"id":6665,"depth":232,"text":6666},{"id":6692,"depth":232,"text":6693},{"id":6699,"depth":232,"text":6700},{"path":4617,"title":6316,"description":6726,"kind":6249,"section":6250,"order":4983,"group":6309,"parentPath":-1,"status":3679,"integration":5910,"publicExport":402,"activation":6727,"package":75,"aliases":6728,"attrs":6731,"events":6732,"cssVars":6733,"related":6734,"body":6735},"Public SVGParser and SVGSynchronizer exports for SVG-to-geometry workflows and runtime syncing.","SVGParser.fromString(...)",[226,6729,6730],"SVGSynchronizer","ParsedSVGData",[],[],[],[2334,1261,5919],{"type":25,"value":6736,"toc":6790},[6737,6740,6746,6748,6760,6763,6767,6772,6776,6779],[28,6738,6316],{"id":6739},"svg-parser",[33,6741,6742,6743,6745],{},"The package exposes ",[37,6744,226],{}," so SVG workflows can be prepared outside the live runtime when needed.",[65,6747,6346],{"id":6345},[42,6749,6750,6755],{},[45,6751,6752],{},[37,6753,6754],{},"SVGParser.fromElement(svgEl)",[45,6756,6757],{},[37,6758,6759],{},"SVGParser.fromString(svgString)",[33,6761,6762],{},"Both return parsed path data and viewBox information when parsing succeeds.",[65,6764,6766],{"id":6765},"related-runtime-piece","Related runtime piece",[33,6768,6769,6771],{},[37,6770,6729],{}," is the exported sync strategy used by the runtime for live SVG objects.",[65,6773,6775],{"id":6774},"when-to-use-it-directly","When to use it directly",[33,6777,6778],{},"Use the parser directly when you need:",[42,6780,6781,6784,6787],{},[45,6782,6783],{},"pre-validation of SVG assets",[45,6785,6786],{},"custom tooling around path extraction",[45,6788,6789],{},"a shared preprocessing step before runtime registration",{"title":231,"searchDepth":232,"depth":232,"links":6791},[6792,6793,6794],{"id":6345,"depth":232,"text":6346},{"id":6765,"depth":232,"text":6766},{"id":6774,"depth":232,"text":6775},{"/docs/overview":5,"/docs/installation":238,"/docs/quick-start":510,"/docs/three-provider":1006,"/docs/runtime-model":1247,"/docs/dom-to-scene":1402,"/docs/transforms-and-css":1623,"/docs/model-loading":2039,"/docs/objects/overview":2210,"/docs/objects/group":2533,"/docs/objects/primitives":2875,"/docs/objects/lights":3249,"/docs/objects/model":3677,"/docs/objects/particles":4094,"/docs/objects/text":4600,"/docs/objects/svg":4981,"/docs/rendering/materials":5316,"/docs/rendering/textures":5483,"/docs/rendering/filters":5650,"/docs/rendering/custom-materials":5906,"/docs/rendering/custom-filters":6060,"/docs/api/overview":6247,"/docs/api/string3d":6323,"/docs/api/provider":6450,"/docs/api/scene-runtime":6537,"/docs/api/registries":6596,"/docs/api/engine-abstraction":6644,"/docs/api/svg-parser":6725},[6797,6802,6810,6814,6818,6822,6825,6831,6835,6839,6843,6847,6851,6857,6861,6865,6869,6873,6877,6881,6887,6891,6895,6899,6904,6910,6914,6918,6922,6926,6930,6936,6940,6944,6948,6952,6960,6964,6968,6972,6976,6980,6984,6988,6993,6997,7001,7005,7009,7013,7019,7023,7027,7031,7035,7039,7045,7049,7053,7057,7061,7065,7069,7073,7077,7084,7089,7093,7097,7101,7105,7109,7113,7118,7122,7126,7130,7134,7138,7142,7146,7152,7156,7160,7164,7169,7173,7177,7181,7185,7189,7194,7198,7202,7206,7210,7214,7218,7222,7226,7230,7234,7238,7242,7246,7250,7256,7261,7265,7269,7273,7277,7281,7285,7289,7294,7298,7302,7306,7310,7314,7318,7322,7326,7330,7334,7338,7342,7345,7351,7355,7359,7363,7367,7371,7375,7380,7384,7388,7392,7397,7401,7405,7409,7413,7417,7421,7425,7429,7433,7439,7444,7448,7452,7456,7460,7464,7468,7473,7477,7481,7485,7489,7493,7497,7501,7504,7510,7515,7519,7523,7527,7531,7536,7540,7544,7548,7552,7556,7560,7564,7567,7573,7577,7582,7586,7590,7594,7598,7603,7607,7611,7615,7619,7623,7627,7631,7636,7642,7646,7650,7654,7658,7662,7667,7671,7675,7679,7682,7688,7692,7696,7700,7704,7708,7712,7717,7721,7725,7729,7733,7739,7744,7748,7752,7756,7761,7767,7771,7775,7779,7785,7789,7794,7800,7804,7808,7812,7816,7822,7826,7830,7834,7837,7843,7847,7851,7856,7862,7866,7870,7876,7880,7884,7888,7892,7898,7902,7906,7911,7917,7921],{"id":6,"title":7,"description":8,"kind":9,"type":6798,"section":10,"path":6,"group":-1,"order":11,"pageTitle":7,"context":10,"tokens":6799,"tags":6801,"activation":-1,"related":19,"status":-1,"integration":-1},"page",[7,8,10,13,14,15,6800,14],"docs",[10],{"id":6803,"title":68,"description":6804,"kind":9,"type":6805,"section":10,"path":6,"anchor":67,"group":-1,"order":11,"pageTitle":7,"context":6806,"tokens":6807,"tags":6808,"activation":-1,"related":19,"status":-1,"integration":-1},"/docs/overview::heading::what-matters-first","Section in Overview","heading","Overview / Start Here",[68,7,8,10,13,14,15],[6809,10],"Heading",{"id":6811,"title":102,"description":6804,"kind":9,"type":6805,"section":10,"path":6,"anchor":101,"group":-1,"order":11,"pageTitle":7,"context":6806,"tokens":6812,"tags":6813,"activation":-1,"related":19,"status":-1,"integration":-1},"/docs/overview::heading::how-to-read-this-docs-site",[102,7,8,10,13,14,15],[6809,10],{"id":6815,"title":157,"description":6804,"kind":9,"type":6805,"section":10,"path":6,"anchor":156,"group":-1,"order":11,"pageTitle":7,"context":6806,"tokens":6816,"tags":6817,"activation":-1,"related":19,"status":-1,"integration":-1},"/docs/overview::heading::runtime-model",[157,7,8,10,13,14,15],[6809,10],{"id":6819,"title":188,"description":6804,"kind":9,"type":6805,"section":10,"path":6,"anchor":187,"group":-1,"order":11,"pageTitle":7,"context":6806,"tokens":6820,"tags":6821,"activation":-1,"related":19,"status":-1,"integration":-1},"/docs/overview::heading::public-boundary",[188,7,8,10,13,14,15],[6809,10],{"id":20,"title":112,"description":239,"kind":9,"type":6798,"section":10,"path":20,"group":-1,"order":240,"pageTitle":112,"context":10,"tokens":6823,"tags":6824,"activation":-1,"related":247,"status":-1,"integration":-1},[112,239,10,242,243,6800,253],[10],{"id":6826,"title":265,"description":6827,"kind":9,"type":6805,"section":10,"path":20,"anchor":264,"group":-1,"order":240,"pageTitle":112,"context":6828,"tokens":6829,"tags":6830,"activation":-1,"related":247,"status":-1,"integration":-1},"/docs/installation::heading::required-packages","Section in Installation","Installation / Start Here",[265,112,239,10,242,243],[6809,10],{"id":6832,"title":299,"description":6827,"kind":9,"type":6805,"section":10,"path":20,"anchor":298,"group":-1,"order":240,"pageTitle":112,"context":6828,"tokens":6833,"tags":6834,"activation":-1,"related":247,"status":-1,"integration":-1},"/docs/installation::heading::what-each-package-does",[299,112,239,10,242,243],[6809,10],{"id":6836,"title":322,"description":6827,"kind":9,"type":6805,"section":10,"path":20,"anchor":321,"group":-1,"order":240,"pageTitle":112,"context":6828,"tokens":6837,"tags":6838,"activation":-1,"related":247,"status":-1,"integration":-1},"/docs/installation::heading::version-rule",[322,112,239,10,242,243],[6809,10],{"id":6840,"title":334,"description":6827,"kind":9,"type":6805,"section":10,"path":20,"anchor":333,"group":-1,"order":240,"pageTitle":112,"context":6828,"tokens":6841,"tags":6842,"activation":-1,"related":247,"status":-1,"integration":-1},"/docs/installation::heading::minimum-setup-shape",[334,112,239,10,242,243],[6809,10],{"id":6844,"title":487,"description":6827,"kind":9,"type":6805,"section":10,"path":20,"anchor":486,"group":-1,"order":240,"pageTitle":112,"context":6828,"tokens":6845,"tags":6846,"activation":-1,"related":247,"status":-1,"integration":-1},"/docs/installation::heading::browser-expectations",[487,112,239,10,242,243],[6809,10],{"id":21,"title":116,"description":511,"kind":9,"type":6798,"section":10,"path":21,"group":-1,"order":512,"pageTitle":116,"context":10,"tokens":6848,"tags":6850,"activation":-1,"related":519,"status":-1,"integration":-1},[116,511,10,514,515,6800,6849],"quick start",[10],{"id":6852,"title":529,"description":6853,"kind":9,"type":6805,"section":10,"path":21,"anchor":528,"group":-1,"order":512,"pageTitle":116,"context":6854,"tokens":6855,"tags":6856,"activation":-1,"related":519,"status":-1,"integration":-1},"/docs/quick-start::heading::_1-create-the-provider","Section in Quick Start","Quick Start / Start Here",[529,116,511,10,514,515],[6809,10],{"id":6858,"title":618,"description":6853,"kind":9,"type":6805,"section":10,"path":21,"anchor":617,"group":-1,"order":512,"pageTitle":116,"context":6854,"tokens":6859,"tags":6860,"activation":-1,"related":519,"status":-1,"integration":-1},"/docs/quick-start::heading::_2-register-the-module",[618,116,511,10,514,515],[6809,10],{"id":6862,"title":647,"description":6853,"kind":9,"type":6805,"section":10,"path":21,"anchor":646,"group":-1,"order":512,"pageTitle":116,"context":6854,"tokens":6863,"tags":6864,"activation":-1,"related":519,"status":-1,"integration":-1},"/docs/quick-start::heading::_3-add-one-light-and-one-object",[647,116,511,10,514,515],[6809,10],{"id":6866,"title":824,"description":6853,"kind":9,"type":6805,"section":10,"path":21,"anchor":823,"group":-1,"order":512,"pageTitle":116,"context":6854,"tokens":6867,"tags":6868,"activation":-1,"related":519,"status":-1,"integration":-1},"/docs/quick-start::heading::_4-drive-it-with-css",[824,116,511,10,514,515],[6809,10],{"id":6870,"title":947,"description":6853,"kind":9,"type":6805,"section":10,"path":21,"anchor":946,"group":-1,"order":512,"pageTitle":116,"context":6854,"tokens":6871,"tags":6872,"activation":-1,"related":519,"status":-1,"integration":-1},"/docs/quick-start::heading::what-happens-behind-the-scenes",[947,116,511,10,514,515],[6809,10],{"id":6874,"title":988,"description":6853,"kind":9,"type":6805,"section":10,"path":21,"anchor":987,"group":-1,"order":512,"pageTitle":116,"context":6854,"tokens":6875,"tags":6876,"activation":-1,"related":519,"status":-1,"integration":-1},"/docs/quick-start::heading::common-mistake",[988,116,511,10,514,515],[6809,10],{"id":120,"title":121,"description":1007,"kind":9,"type":6798,"section":10,"path":120,"group":-1,"order":1008,"pageTitle":121,"context":10,"tokens":6878,"tags":6880,"activation":-1,"related":1015,"status":-1,"integration":-1},[121,1007,10,95,1010,1011,6800,6879],"three provider",[10],{"id":6882,"title":1040,"description":6883,"kind":9,"type":6805,"section":10,"path":120,"anchor":1039,"group":-1,"order":1008,"pageTitle":121,"context":6884,"tokens":6885,"tags":6886,"activation":-1,"related":1015,"status":-1,"integration":-1},"/docs/three-provider::heading::base-setup","Section in Three.js Provider","Three.js Provider / Start Here",[1040,121,1007,10,95,1010,1011],[6809,10],{"id":6888,"title":1099,"description":6883,"kind":9,"type":6805,"section":10,"path":120,"anchor":1098,"group":-1,"order":1008,"pageTitle":121,"context":6884,"tokens":6889,"tags":6890,"activation":-1,"related":1015,"status":-1,"integration":-1},"/docs/three-provider::heading::optional-loader-map",[1099,121,1007,10,95,1010,1011],[6809,10],{"id":6892,"title":1185,"description":6883,"kind":9,"type":6805,"section":10,"path":120,"anchor":1184,"group":-1,"order":1008,"pageTitle":121,"context":6884,"tokens":6893,"tags":6894,"activation":-1,"related":1015,"status":-1,"integration":-1},"/docs/three-provider::heading::what-the-provider-supplies",[1185,121,1007,10,95,1010,1011],[6809,10],{"id":6896,"title":1218,"description":6883,"kind":9,"type":6805,"section":10,"path":120,"anchor":1217,"group":-1,"order":1008,"pageTitle":121,"context":6884,"tokens":6897,"tags":6898,"activation":-1,"related":1015,"status":-1,"integration":-1},"/docs/three-provider::heading::when-to-look-deeper",[1218,121,1007,10,95,1010,1011],[6809,10],{"id":127,"title":1248,"description":1249,"kind":1250,"type":6798,"section":128,"path":127,"group":1251,"order":11,"pageTitle":1248,"context":6900,"tokens":6901,"tags":6903,"activation":-1,"related":1258,"status":-1,"integration":-1},"Concepts / Core Concepts",[1248,1249,128,1251,1253,1254,6800,6902],"runtime model",[128,1251],{"id":6905,"title":1277,"description":6906,"kind":1250,"type":6805,"section":128,"path":127,"anchor":1276,"group":1251,"order":11,"pageTitle":1248,"context":6907,"tokens":6908,"tags":6909,"activation":-1,"related":1258,"status":-1,"integration":-1},"/docs/runtime-model::heading::main-participants","Section in Runtime Model","Runtime Model / Concepts",[1277,1248,1249,128,1251,1253,1254],[6809,128,1251],{"id":6911,"title":1309,"description":6906,"kind":1250,"type":6805,"section":128,"path":127,"anchor":1308,"group":1251,"order":11,"pageTitle":1248,"context":6907,"tokens":6912,"tags":6913,"activation":-1,"related":1258,"status":-1,"integration":-1},"/docs/runtime-model::heading::initialization-flow",[1309,1248,1249,128,1251,1253,1254],[6809,128,1251],{"id":6915,"title":1332,"description":6906,"kind":1250,"type":6805,"section":128,"path":127,"anchor":1331,"group":1251,"order":11,"pageTitle":1248,"context":6907,"tokens":6916,"tags":6917,"activation":-1,"related":1258,"status":-1,"integration":-1},"/docs/runtime-model::heading::frame-flow",[1332,1248,1249,128,1251,1253,1254],[6809,128,1251],{"id":6919,"title":1353,"description":6906,"kind":1250,"type":6805,"section":128,"path":127,"anchor":1352,"group":1251,"order":11,"pageTitle":1248,"context":6907,"tokens":6920,"tags":6921,"activation":-1,"related":1258,"status":-1,"integration":-1},"/docs/runtime-model::heading::why-this-matters",[1353,1248,1249,128,1251,1253,1254],[6809,128,1251],{"id":6923,"title":1368,"description":6906,"kind":1250,"type":6805,"section":128,"path":127,"anchor":1367,"group":1251,"order":11,"pageTitle":1248,"context":6907,"tokens":6924,"tags":6925,"activation":-1,"related":1258,"status":-1,"integration":-1},"/docs/runtime-model::heading::when-settings-take-effect",[1368,1248,1249,128,1251,1253,1254],[6809,128,1251],{"id":1259,"title":1403,"description":1404,"kind":1250,"type":6798,"section":128,"path":1259,"group":1251,"order":240,"pageTitle":1403,"context":6900,"tokens":6927,"tags":6929,"activation":-1,"related":1412,"status":-1,"integration":-1},[1403,1404,128,1251,1406,1407,1408,6800,6928],"dom to scene",[128,1251],{"id":6931,"title":1427,"description":6932,"kind":1250,"type":6805,"section":128,"path":1259,"anchor":1426,"group":1251,"order":240,"pageTitle":1403,"context":6933,"tokens":6934,"tags":6935,"activation":-1,"related":1412,"status":-1,"integration":-1},"/docs/dom-to-scene::heading::type-selection","Section in DOM To Scene Mapping","DOM To Scene Mapping / Concepts",[1427,1403,1404,128,1251,1406,1407,1408],[6809,128,1251],{"id":6937,"title":1491,"description":6932,"kind":1250,"type":6805,"section":128,"path":1259,"anchor":1490,"group":1251,"order":240,"pageTitle":1403,"context":6933,"tokens":6938,"tags":6939,"activation":-1,"related":1412,"status":-1,"integration":-1},"/docs/dom-to-scene::heading::identity",[1491,1403,1404,128,1251,1406,1407,1408],[6809,128,1251],{"id":6941,"title":1504,"description":6932,"kind":1250,"type":6805,"section":128,"path":1259,"anchor":1503,"group":1251,"order":240,"pageTitle":1403,"context":6933,"tokens":6942,"tags":6943,"activation":-1,"related":1412,"status":-1,"integration":-1},"/docs/dom-to-scene::heading::parent-child-nesting",[1504,1403,1404,128,1251,1406,1407,1408],[6809,128,1251],{"id":6945,"title":1596,"description":6932,"kind":1250,"type":6805,"section":128,"path":1259,"anchor":1595,"group":1251,"order":240,"pageTitle":1403,"context":6933,"tokens":6946,"tags":6947,"activation":-1,"related":1412,"status":-1,"integration":-1},"/docs/dom-to-scene::heading::practical-rule",[1596,1403,1404,128,1251,1406,1407,1408],[6809,128,1251],{"id":1624,"title":1625,"description":1626,"kind":1250,"type":6798,"section":128,"path":1624,"group":1251,"order":512,"pageTitle":1625,"context":6900,"tokens":6949,"tags":6951,"activation":-1,"related":1641,"status":-1,"integration":-1},[1625,1626,128,1251,1628,1629,1630,1631,1635,1636,1629,1630,1637,1638,1639,1640,6800,6950],"transforms and css",[128,1251],{"id":6953,"title":1635,"description":6954,"kind":1250,"type":6955,"section":128,"path":1624,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":6957,"tags":6958,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::css::--translate-x","Transforms And CSS CSS variable","css-variable","Transforms And CSS / Concepts",[1635,1625,1626,128,1251,1628,1629,1630,1631],[6959,128,1251],"CSS Variable",{"id":6961,"title":1636,"description":6954,"kind":1250,"type":6955,"section":128,"path":1624,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":6962,"tags":6963,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::css::--translate-y",[1636,1625,1626,128,1251,1628,1629,1630,1631],[6959,128,1251],{"id":6965,"title":1629,"description":6954,"kind":1250,"type":6955,"section":128,"path":1624,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":6966,"tags":6967,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::css::--translate-z",[1629,1625,1626,128,1251,1628,1629,1630,1631],[6959,128,1251],{"id":6969,"title":1630,"description":6954,"kind":1250,"type":6955,"section":128,"path":1624,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":6970,"tags":6971,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::css::--rotate-x",[1630,1625,1626,128,1251,1628,1629,1630,1631],[6959,128,1251],{"id":6973,"title":1637,"description":6954,"kind":1250,"type":6955,"section":128,"path":1624,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":6974,"tags":6975,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::css::--rotate-y",[1637,1625,1626,128,1251,1628,1629,1630,1631],[6959,128,1251],{"id":6977,"title":1638,"description":6954,"kind":1250,"type":6955,"section":128,"path":1624,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":6978,"tags":6979,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::css::--rotate-z",[1638,1625,1626,128,1251,1628,1629,1630,1631],[6959,128,1251],{"id":6981,"title":1639,"description":6954,"kind":1250,"type":6955,"section":128,"path":1624,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":6982,"tags":6983,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::css::--scale",[1639,1625,1626,128,1251,1628,1629,1630,1631],[6959,128,1251],{"id":6985,"title":1640,"description":6954,"kind":1250,"type":6955,"section":128,"path":1624,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":6986,"tags":6987,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::css::--opacity",[1640,1625,1626,128,1251,1628,1629,1630,1631],[6959,128,1251],{"id":6989,"title":1657,"description":6990,"kind":1250,"type":6805,"section":128,"path":1624,"anchor":1656,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":6991,"tags":6992,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::heading::core-transform-inputs","Section in Transforms And CSS",[1657,1625,1626,128,1251,1628,1629,1630,1631],[6809,128,1251],{"id":6994,"title":1828,"description":6990,"kind":1250,"type":6805,"section":128,"path":1624,"anchor":1827,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":6995,"tags":6996,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::heading::visual-dom-helper",[1828,1625,1626,128,1251,1628,1629,1630,1631],[6809,128,1251],{"id":6998,"title":1905,"description":6990,"kind":1250,"type":6805,"section":128,"path":1624,"anchor":1904,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":6999,"tags":7000,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::heading::typed-property-rule",[1905,1625,1626,128,1251,1628,1629,1630,1631],[6809,128,1251],{"id":7002,"title":1912,"description":6990,"kind":1250,"type":6805,"section":128,"path":1624,"anchor":1911,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":7003,"tags":7004,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::heading::css-transitions-are-the-animation-layer",[1912,1625,1626,128,1251,1628,1629,1630,1631],[6809,128,1251],{"id":7006,"title":2025,"description":6990,"kind":1250,"type":6805,"section":128,"path":1624,"anchor":2024,"group":1251,"order":512,"pageTitle":1625,"context":6956,"tokens":7007,"tags":7008,"activation":-1,"related":1641,"status":-1,"integration":-1},"/docs/transforms-and-css::heading::material-variables-live-in-the-same-contract",[2025,1625,1626,128,1251,1628,1629,1630,1631],[6809,128,1251],{"id":2040,"title":2041,"description":2042,"kind":1250,"type":6798,"section":128,"path":2040,"group":2043,"order":1008,"pageTitle":2041,"context":7010,"tokens":7011,"tags":7012,"activation":-1,"related":2052,"status":-1,"integration":-1},"Concepts / Asset Pipeline",[2041,2042,128,2043,2045,2046,2047,2048,6800,1205],[128,2043],{"id":7014,"title":2065,"description":7015,"kind":1250,"type":6805,"section":128,"path":2040,"anchor":2064,"group":2043,"order":1008,"pageTitle":2041,"context":7016,"tokens":7017,"tags":7018,"activation":-1,"related":2052,"status":-1,"integration":-1},"/docs/model-loading::heading::required-attribute","Section in Model Loading","Model Loading / Concepts",[2065,2041,2042,128,2043,2045,2046,2047,2048],[6809,128,2043],{"id":7020,"title":2114,"description":7015,"kind":1250,"type":6805,"section":128,"path":2040,"anchor":2113,"group":2043,"order":1008,"pageTitle":2041,"context":7016,"tokens":7021,"tags":7022,"activation":-1,"related":2052,"status":-1,"integration":-1},"/docs/model-loading::heading::loader-selection",[2114,2041,2042,128,2043,2045,2046,2047,2048],[6809,128,2043],{"id":7024,"title":2145,"description":7015,"kind":1250,"type":6805,"section":128,"path":2040,"anchor":2144,"group":2043,"order":1008,"pageTitle":2041,"context":7016,"tokens":7025,"tags":7026,"activation":-1,"related":2052,"status":-1,"integration":-1},"/docs/model-loading::heading::fit-and-centering",[2145,2041,2042,128,2043,2045,2046,2047,2048],[6809,128,2043],{"id":7028,"title":2169,"description":7015,"kind":1250,"type":6805,"section":128,"path":2040,"anchor":2168,"group":2043,"order":1008,"pageTitle":2041,"context":7016,"tokens":7029,"tags":7030,"activation":-1,"related":2052,"status":-1,"integration":-1},"/docs/model-loading::heading::texture-remapping",[2169,2041,2042,128,2043,2045,2046,2047,2048],[6809,128,2043],{"id":7032,"title":2191,"description":7015,"kind":1250,"type":6805,"section":128,"path":2040,"anchor":2190,"group":2043,"order":1008,"pageTitle":2041,"context":7016,"tokens":7033,"tags":7034,"activation":-1,"related":2052,"status":-1,"integration":-1},"/docs/model-loading::heading::material-override-rule",[2191,2041,2042,128,2043,2045,2046,2047,2048],[6809,128,2043],{"id":22,"title":135,"description":2211,"kind":9,"type":6798,"section":2212,"path":22,"group":-1,"order":406,"pageTitle":135,"context":2212,"tokens":7036,"tags":7038,"activation":-1,"related":2217,"status":-1,"integration":-1},[135,2211,2212,6800,7037,14],"objects",[2212],{"id":7040,"title":2265,"description":7041,"kind":9,"type":6805,"section":2212,"path":22,"anchor":2264,"group":-1,"order":406,"pageTitle":135,"context":7042,"tokens":7043,"tags":7044,"activation":-1,"related":2217,"status":-1,"integration":-1},"/docs/objects/overview::heading::the-object-families","Section in Objects Overview","Objects Overview / Objects",[2265,135,2211,2212],[6809,2212],{"id":7046,"title":2270,"description":7041,"kind":9,"type":6805,"section":2212,"path":22,"anchor":2269,"group":-1,"order":406,"pageTitle":135,"context":7042,"tokens":7047,"tags":7048,"activation":-1,"related":2217,"status":-1,"integration":-1},"/docs/objects/overview::heading::structure",[2270,135,2211,2212],[6809,2212],{"id":7050,"title":2282,"description":7041,"kind":9,"type":6805,"section":2212,"path":22,"anchor":2281,"group":-1,"order":406,"pageTitle":135,"context":7042,"tokens":7051,"tags":7052,"activation":-1,"related":2217,"status":-1,"integration":-1},"/docs/objects/overview::heading::geometry",[2282,135,2211,2212],[6809,2212],{"id":7054,"title":2300,"description":7041,"kind":9,"type":6805,"section":2212,"path":22,"anchor":2299,"group":-1,"order":406,"pageTitle":135,"context":7042,"tokens":7055,"tags":7056,"activation":-1,"related":2217,"status":-1,"integration":-1},"/docs/objects/overview::heading::lighting",[2300,135,2211,2212],[6809,2212],{"id":7058,"title":2313,"description":7041,"kind":9,"type":6805,"section":2212,"path":22,"anchor":2312,"group":-1,"order":406,"pageTitle":135,"context":7042,"tokens":7059,"tags":7060,"activation":-1,"related":2217,"status":-1,"integration":-1},"/docs/objects/overview::heading::procedural-and-content-driven",[2313,135,2211,2212],[6809,2212],{"id":7062,"title":2340,"description":7041,"kind":9,"type":6805,"section":2212,"path":22,"anchor":2339,"group":-1,"order":406,"pageTitle":135,"context":7042,"tokens":7063,"tags":7064,"activation":-1,"related":2217,"status":-1,"integration":-1},"/docs/objects/overview::heading::how-to-choose",[2340,135,2211,2212],[6809,2212],{"id":7066,"title":2375,"description":7041,"kind":9,"type":6805,"section":2212,"path":22,"anchor":2374,"group":-1,"order":406,"pageTitle":135,"context":7042,"tokens":7067,"tags":7068,"activation":-1,"related":2217,"status":-1,"integration":-1},"/docs/objects/overview::heading::shared-rules-across-all-objects",[2375,135,2211,2212],[6809,2212],{"id":7070,"title":2402,"description":7041,"kind":9,"type":6805,"section":2212,"path":22,"anchor":2401,"group":-1,"order":406,"pageTitle":135,"context":7042,"tokens":7071,"tags":7072,"activation":-1,"related":2217,"status":-1,"integration":-1},"/docs/objects/overview::heading::minimal-shape-of-a-scene",[2402,135,2211,2212],[6809,2212],{"id":1413,"title":2277,"description":2534,"kind":2535,"type":6798,"section":2212,"path":1413,"group":2270,"order":11,"pageTitle":2277,"context":7074,"tokens":7075,"tags":7076,"activation":2538,"related":2544,"status":2536,"integration":2537},"Objects / Structure",[2277,2534,2212,2270,1444,2540,139,1635,1636,1629,1630,1637,1638,1639,2538,2536,2537,6800,7037,1444],[2212,2270,2537,2536],{"id":7078,"title":139,"description":7079,"kind":2535,"type":7080,"section":2212,"path":1413,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7082,"tags":7083,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::attr::string-3d","Group attribute","attribute","Group / Objects",[139,2277,2534,2212,2270,1444,2540],[2991,2212,2270,2537,2536],{"id":7085,"title":1635,"description":7086,"kind":2535,"type":6955,"section":2212,"path":1413,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7087,"tags":7088,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::css::--translate-x","Group CSS variable",[1635,2277,2534,2212,2270,1444,2540],[6959,2212,2270,2537,2536],{"id":7090,"title":1636,"description":7086,"kind":2535,"type":6955,"section":2212,"path":1413,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7091,"tags":7092,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::css::--translate-y",[1636,2277,2534,2212,2270,1444,2540],[6959,2212,2270,2537,2536],{"id":7094,"title":1629,"description":7086,"kind":2535,"type":6955,"section":2212,"path":1413,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7095,"tags":7096,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::css::--translate-z",[1629,2277,2534,2212,2270,1444,2540],[6959,2212,2270,2537,2536],{"id":7098,"title":1630,"description":7086,"kind":2535,"type":6955,"section":2212,"path":1413,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7099,"tags":7100,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::css::--rotate-x",[1630,2277,2534,2212,2270,1444,2540],[6959,2212,2270,2537,2536],{"id":7102,"title":1637,"description":7086,"kind":2535,"type":6955,"section":2212,"path":1413,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7103,"tags":7104,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::css::--rotate-y",[1637,2277,2534,2212,2270,1444,2540],[6959,2212,2270,2537,2536],{"id":7106,"title":1638,"description":7086,"kind":2535,"type":6955,"section":2212,"path":1413,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7107,"tags":7108,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::css::--rotate-z",[1638,2277,2534,2212,2270,1444,2540],[6959,2212,2270,2537,2536],{"id":7110,"title":1639,"description":7086,"kind":2535,"type":6955,"section":2212,"path":1413,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7111,"tags":7112,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::css::--scale",[1639,2277,2534,2212,2270,1444,2540],[6959,2212,2270,2537,2536],{"id":7114,"title":2560,"description":7115,"kind":2535,"type":6805,"section":2212,"path":1413,"anchor":2559,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7116,"tags":7117,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::heading::when-to-use-it","Section in Group",[2560,2277,2534,2212,2270,1444,2540],[6809,2212,2270,2537,2536],{"id":7119,"title":2589,"description":7115,"kind":2535,"type":6805,"section":2212,"path":1413,"anchor":2588,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7120,"tags":7121,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::heading::runtime-contract",[2589,2277,2534,2212,2270,1444,2540],[6809,2212,2270,2537,2536],{"id":7123,"title":2593,"description":7115,"kind":2535,"type":6805,"section":2212,"path":1413,"anchor":2592,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7124,"tags":7125,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::heading::required-activation",[2593,2277,2534,2212,2270,1444,2540],[6809,2212,2270,2537,2536],{"id":7127,"title":2626,"description":7115,"kind":2535,"type":6805,"section":2212,"path":1413,"anchor":2625,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7128,"tags":7129,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::heading::shared-transform-inputs",[2626,2277,2534,2212,2270,1444,2540],[6809,2212,2270,2537,2536],{"id":7131,"title":2677,"description":7115,"kind":2535,"type":6805,"section":2212,"path":1413,"anchor":2676,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7132,"tags":7133,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::heading::example",[2677,2277,2534,2212,2270,1444,2540],[6809,2212,2270,2537,2536],{"id":7135,"title":2838,"description":7115,"kind":2535,"type":6805,"section":2212,"path":1413,"anchor":2837,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7136,"tags":7137,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::heading::what-the-runtime-does",[2838,2277,2534,2212,2270,1444,2540],[6809,2212,2270,2537,2536],{"id":7139,"title":2859,"description":7115,"kind":2535,"type":6805,"section":2212,"path":1413,"anchor":2858,"group":2270,"order":11,"pageTitle":2277,"context":7081,"tokens":7140,"tags":7141,"activation":2538,"related":2544,"status":2536,"integration":2537},"/docs/objects/group::heading::practical-note",[2859,2277,2534,2212,2270,1444,2540],[6809,2212,2270,2537,2536],{"id":520,"title":2289,"description":2876,"kind":2535,"type":6798,"section":2212,"path":520,"group":2282,"order":240,"pageTitle":2289,"context":7143,"tokens":7144,"tags":7145,"activation":2877,"related":2889,"status":2536,"integration":2537},"Objects / Geometry",[2289,2876,2212,2282,1449,1454,1459,1464,139,2880,2881,2882,2885,1631,2886,2887,1640,2888,2877,2536,2537,6800,7037,2894],[2212,2282,2537,2536],{"id":7147,"title":139,"description":7148,"kind":2535,"type":7080,"section":2212,"path":520,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7150,"tags":7151,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::attr::string-3d","Primitives attribute","Primitives / Objects",[139,2289,2876,2212,2282,1449,1454,1459,1464],[2991,2212,2282,2537,2536],{"id":7153,"title":2880,"description":7148,"kind":2535,"type":7080,"section":2212,"path":520,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7154,"tags":7155,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::attr::string-3d-segments",[2880,2289,2876,2212,2282,1449,1454,1459,1464],[2991,2212,2282,2537,2536],{"id":7157,"title":2881,"description":7148,"kind":2535,"type":7080,"section":2212,"path":520,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7158,"tags":7159,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::attr::string-3d-segments-width",[2881,2289,2876,2212,2282,1449,1454,1459,1464],[2991,2212,2282,2537,2536],{"id":7161,"title":2882,"description":7148,"kind":2535,"type":7080,"section":2212,"path":520,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7162,"tags":7163,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::attr::string-3d-segments-height",[2882,2289,2876,2212,2282,1449,1454,1459,1464],[2991,2212,2282,2537,2536],{"id":7165,"title":2885,"description":7166,"kind":2535,"type":6955,"section":2212,"path":520,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7167,"tags":7168,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::css::--material-type","Primitives CSS variable",[2885,2289,2876,2212,2282,1449,1454,1459,1464],[6959,2212,2282,2537,2536],{"id":7170,"title":1631,"description":7166,"kind":2535,"type":6955,"section":2212,"path":520,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7171,"tags":7172,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::css::--material-color",[1631,2289,2876,2212,2282,1449,1454,1459,1464],[6959,2212,2282,2537,2536],{"id":7174,"title":2886,"description":7166,"kind":2535,"type":6955,"section":2212,"path":520,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7175,"tags":7176,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::css::--material-metalness",[2886,2289,2876,2212,2282,1449,1454,1459,1464],[6959,2212,2282,2537,2536],{"id":7178,"title":2887,"description":7166,"kind":2535,"type":6955,"section":2212,"path":520,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7179,"tags":7180,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::css::--material-roughness",[2887,2289,2876,2212,2282,1449,1454,1459,1464],[6959,2212,2282,2537,2536],{"id":7182,"title":1640,"description":7166,"kind":2535,"type":6955,"section":2212,"path":520,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7183,"tags":7184,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::css::--opacity",[1640,2289,2876,2212,2282,1449,1454,1459,1464],[6959,2212,2282,2537,2536],{"id":7186,"title":2888,"description":7166,"kind":2535,"type":6955,"section":2212,"path":520,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7187,"tags":7188,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::css::--geometry-quality",[2888,2289,2876,2212,2282,1449,1454,1459,1464],[6959,2212,2282,2537,2536],{"id":7190,"title":2904,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":2903,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7192,"tags":7193,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::supported-types","Section in Primitives",[2904,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7195,"title":2926,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":2925,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7196,"tags":7197,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::when-to-use-them",[2926,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7199,"title":2589,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":2588,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7200,"tags":7201,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::runtime-contract",[2589,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7203,"title":2949,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":2948,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7204,"tags":7205,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::activation",[2949,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7207,"title":2982,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":2981,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7208,"tags":7209,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::attributes",[2982,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7211,"title":3054,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":3053,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7212,"tags":7213,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::important-css-inputs",[3054,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7215,"title":2677,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":2676,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7216,"tags":7217,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::example",[2677,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7219,"title":3173,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":3172,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7220,"tags":7221,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::per-type-mental-model",[3173,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7223,"title":3176,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":1449,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7224,"tags":7225,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::box",[3176,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7227,"title":3182,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":1454,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7228,"tags":7229,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::sphere",[3182,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7231,"title":3188,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":1459,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7232,"tags":7233,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::plane",[3188,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7235,"title":3194,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":1464,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7236,"tags":7237,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::cylinder",[3194,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7239,"title":2838,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":2837,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7240,"tags":7241,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::what-the-runtime-does",[2838,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":7243,"title":2859,"description":7191,"kind":2535,"type":6805,"section":2212,"path":520,"anchor":2858,"group":2282,"order":240,"pageTitle":2289,"context":7149,"tokens":7244,"tags":7245,"activation":2877,"related":2889,"status":2536,"integration":2537},"/docs/objects/primitives::heading::practical-note",[2859,2289,2876,2212,2282,1449,1454,1459,1464],[6809,2212,2282,2537,2536],{"id":2307,"title":2308,"description":3250,"kind":2535,"type":6798,"section":2212,"path":2307,"group":2300,"order":512,"pageTitle":2308,"context":7247,"tokens":7248,"tags":7249,"activation":3251,"related":3269,"status":2536,"integration":2537},"Objects / Lighting",[2308,3250,2212,2300,3253,3254,3255,3256,3257,139,3261,3262,3263,3264,3265,3266,3267,3268,3251,2536,2537,6800,7037,3274],[2212,2300,2537,2536],{"id":7251,"title":139,"description":7252,"kind":2535,"type":7080,"section":2212,"path":2307,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7254,"tags":7255,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::attr::string-3d","Lights attribute","Lights / Objects",[139,2308,3250,2212,2300,3253,3254,3255,3256,3257],[2991,2212,2300,2537,2536],{"id":7257,"title":3261,"description":7258,"kind":2535,"type":6955,"section":2212,"path":2307,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7259,"tags":7260,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::css::--light-color","Lights CSS variable",[3261,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6959,2212,2300,2537,2536],{"id":7262,"title":3262,"description":7258,"kind":2535,"type":6955,"section":2212,"path":2307,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7263,"tags":7264,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::css::--light-intensity",[3262,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6959,2212,2300,2537,2536],{"id":7266,"title":3263,"description":7258,"kind":2535,"type":6955,"section":2212,"path":2307,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7267,"tags":7268,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::css::--light-distance",[3263,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6959,2212,2300,2537,2536],{"id":7270,"title":3264,"description":7258,"kind":2535,"type":6955,"section":2212,"path":2307,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7271,"tags":7272,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::css::--light-decay",[3264,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6959,2212,2300,2537,2536],{"id":7274,"title":3265,"description":7258,"kind":2535,"type":6955,"section":2212,"path":2307,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7275,"tags":7276,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::css::--light-angle",[3265,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6959,2212,2300,2537,2536],{"id":7278,"title":3266,"description":7258,"kind":2535,"type":6955,"section":2212,"path":2307,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7279,"tags":7280,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::css::--light-penumbra",[3266,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6959,2212,2300,2537,2536],{"id":7282,"title":3267,"description":7258,"kind":2535,"type":6955,"section":2212,"path":2307,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7283,"tags":7284,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::css::--light-ground-color",[3267,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6959,2212,2300,2537,2536],{"id":7286,"title":3268,"description":7258,"kind":2535,"type":6955,"section":2212,"path":2307,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7287,"tags":7288,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::css::--light-target",[3268,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6959,2212,2300,2537,2536],{"id":7290,"title":2904,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":2903,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7292,"tags":7293,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::supported-types","Section in Lights",[2904,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":7295,"title":3314,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":3313,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7296,"tags":7297,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::when-to-use-each-one",[3314,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":7299,"title":3318,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":3317,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7300,"tags":7301,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::ambient-light",[3318,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":7303,"title":3325,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":3324,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7304,"tags":7305,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::directional-light",[3325,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":7307,"title":3332,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":3331,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7308,"tags":7309,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::point-light",[3332,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":7311,"title":3339,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":3338,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7312,"tags":7313,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::spot-light",[3339,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":7315,"title":3346,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":3345,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7316,"tags":7317,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::hemisphere-light",[3346,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":7319,"title":2589,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":2588,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7320,"tags":7321,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::runtime-contract",[2589,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":7323,"title":2949,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":2948,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7324,"tags":7325,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::activation",[2949,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":7327,"title":3387,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":3386,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7328,"tags":7329,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::key-css-variables",[3387,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":7331,"title":2677,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":2676,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7332,"tags":7333,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::example",[2677,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":7335,"title":2838,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":2837,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7336,"tags":7337,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::what-the-runtime-does",[2838,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":7339,"title":2859,"description":7291,"kind":2535,"type":6805,"section":2212,"path":2307,"anchor":2858,"group":2300,"order":512,"pageTitle":2308,"context":7253,"tokens":7340,"tags":7341,"activation":3251,"related":3269,"status":2536,"integration":2537},"/docs/objects/lights::heading::practical-note",[2859,2308,3250,2212,2300,3253,3254,3255,3256,3257],[6809,2212,2300,2537,2536],{"id":2053,"title":2295,"description":3678,"kind":2535,"type":6798,"section":2212,"path":2053,"group":2282,"order":1008,"pageTitle":2295,"context":7143,"tokens":7343,"tags":7344,"activation":3680,"related":3688,"status":3679,"integration":2537},[2295,3678,2212,2282,1469,3682,3683,2109,2141,2158,2152,2164,2179,2184,2885,1631,2199,3687,3680,3679,2537,6800,7037,1469],[2212,2282,2537,3679],{"id":7346,"title":2109,"description":7347,"kind":2535,"type":7080,"section":2212,"path":2053,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7349,"tags":7350,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::attr::string-3d-model","Model attribute","Model / Objects",[2109,2295,3678,2212,2282,1469,3682,3683],[2991,2212,2282,2537,3679],{"id":7352,"title":2141,"description":7347,"kind":2535,"type":7080,"section":2212,"path":2053,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7353,"tags":7354,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::attr::string-3d-model-loader",[2141,2295,3678,2212,2282,1469,3682,3683],[2991,2212,2282,2537,3679],{"id":7356,"title":2158,"description":7347,"kind":2535,"type":7080,"section":2212,"path":2053,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7357,"tags":7358,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::attr::string-3d-model-scale",[2158,2295,3678,2212,2282,1469,3682,3683],[2991,2212,2282,2537,3679],{"id":7360,"title":2152,"description":7347,"kind":2535,"type":7080,"section":2212,"path":2053,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7361,"tags":7362,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::attr::string-3d-model-fit",[2152,2295,3678,2212,2282,1469,3682,3683],[2991,2212,2282,2537,3679],{"id":7364,"title":2164,"description":7347,"kind":2535,"type":7080,"section":2212,"path":2053,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7365,"tags":7366,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::attr::string-3d-model-center",[2164,2295,3678,2212,2282,1469,3682,3683],[2991,2212,2282,2537,3679],{"id":7368,"title":2179,"description":7347,"kind":2535,"type":7080,"section":2212,"path":2053,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7369,"tags":7370,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::attr::string-3d-model-texture-base",[2179,2295,3678,2212,2282,1469,3682,3683],[2991,2212,2282,2537,3679],{"id":7372,"title":2184,"description":7347,"kind":2535,"type":7080,"section":2212,"path":2053,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7373,"tags":7374,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::attr::string-3d-model-textures",[2184,2295,3678,2212,2282,1469,3682,3683],[2991,2212,2282,2537,3679],{"id":7376,"title":2885,"description":7377,"kind":2535,"type":6955,"section":2212,"path":2053,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7378,"tags":7379,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::css::--material-type","Model CSS variable",[2885,2295,3678,2212,2282,1469,3682,3683],[6959,2212,2282,2537,3679],{"id":7381,"title":1631,"description":7377,"kind":2535,"type":6955,"section":2212,"path":2053,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7382,"tags":7383,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::css::--material-color",[1631,2295,3678,2212,2282,1469,3682,3683],[6959,2212,2282,2537,3679],{"id":7385,"title":2199,"description":7377,"kind":2535,"type":6955,"section":2212,"path":2053,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7386,"tags":7387,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::css::--texture-map",[2199,2295,3678,2212,2282,1469,3682,3683],[6959,2212,2282,2537,3679],{"id":7389,"title":3687,"description":7377,"kind":2535,"type":6955,"section":2212,"path":2053,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7390,"tags":7391,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::css::--texture-normal",[3687,2295,3678,2212,2282,1469,3682,3683],[6959,2212,2282,2537,3679],{"id":7393,"title":2560,"description":7394,"kind":2535,"type":6805,"section":2212,"path":2053,"anchor":2559,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7395,"tags":7396,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::heading::when-to-use-it","Section in Model",[2560,2295,3678,2212,2282,1469,3682,3683],[6809,2212,2282,2537,3679],{"id":7398,"title":2589,"description":7394,"kind":2535,"type":6805,"section":2212,"path":2053,"anchor":2588,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7399,"tags":7400,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::heading::runtime-contract",[2589,2295,3678,2212,2282,1469,3682,3683],[6809,2212,2282,2537,3679],{"id":7402,"title":2949,"description":7394,"kind":2535,"type":6805,"section":2212,"path":2053,"anchor":2948,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7403,"tags":7404,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::heading::activation",[2949,2295,3678,2212,2282,1469,3682,3683],[6809,2212,2282,2537,3679],{"id":7406,"title":2982,"description":7394,"kind":2535,"type":6805,"section":2212,"path":2053,"anchor":2981,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7407,"tags":7408,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::heading::attributes",[2982,2295,3678,2212,2282,1469,3682,3683],[6809,2212,2282,2537,3679],{"id":7410,"title":3862,"description":7394,"kind":2535,"type":6805,"section":2212,"path":2053,"anchor":3861,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7411,"tags":7412,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::heading::shared-css-inputs",[3862,2295,3678,2212,2282,1469,3682,3683],[6809,2212,2282,2537,3679],{"id":7414,"title":2677,"description":7394,"kind":2535,"type":6805,"section":2212,"path":2053,"anchor":2676,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7415,"tags":7416,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::heading::example",[2677,2295,3678,2212,2282,1469,3682,3683],[6809,2212,2282,2537,3679],{"id":7418,"title":3983,"description":7394,"kind":2535,"type":6805,"section":2212,"path":2053,"anchor":3982,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7419,"tags":7420,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::heading::provider-requirement",[3983,2295,3678,2212,2282,1469,3682,3683],[6809,2212,2282,2537,3679],{"id":7422,"title":2838,"description":7394,"kind":2535,"type":6805,"section":2212,"path":2053,"anchor":2837,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7423,"tags":7424,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::heading::what-the-runtime-does",[2838,2295,3678,2212,2282,1469,3682,3683],[6809,2212,2282,2537,3679],{"id":7426,"title":2859,"description":7394,"kind":2535,"type":6805,"section":2212,"path":2053,"anchor":2858,"group":2282,"order":1008,"pageTitle":2295,"context":7348,"tokens":7427,"tags":7428,"activation":3680,"related":3688,"status":3679,"integration":2537},"/docs/objects/model::heading::practical-note",[2859,2295,3678,2212,2282,1469,3682,3683],[6809,2212,2282,2537,3679],{"id":2320,"title":2321,"description":4095,"kind":2535,"type":6798,"section":2212,"path":2320,"group":4097,"order":4096,"pageTitle":2321,"context":7430,"tokens":7431,"tags":7432,"activation":4098,"related":4112,"status":3679,"integration":2537},"Objects / Procedural",[2321,4095,2212,4097,1474,4100,4101,139,4105,4106,4107,4108,4109,4110,4111,4098,3679,2537,6800,7037,1474],[2212,4097,2537,3679],{"id":7434,"title":139,"description":7435,"kind":2535,"type":7080,"section":2212,"path":2320,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7437,"tags":7438,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::attr::string-3d","Particles attribute","Particles / Objects",[139,2321,4095,2212,4097,1474,4100,4101],[2991,2212,4097,2537,3679],{"id":7440,"title":4105,"description":7441,"kind":2535,"type":6955,"section":2212,"path":2320,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7442,"tags":7443,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::css::--particles-mode","Particles CSS variable",[4105,2321,4095,2212,4097,1474,4100,4101],[6959,2212,4097,2537,3679],{"id":7445,"title":4106,"description":7441,"kind":2535,"type":6955,"section":2212,"path":2320,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7446,"tags":7447,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::css::--particles-count",[4106,2321,4095,2212,4097,1474,4100,4101],[6959,2212,4097,2537,3679],{"id":7449,"title":4107,"description":7441,"kind":2535,"type":6955,"section":2212,"path":2320,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7450,"tags":7451,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::css::--particles-size",[4107,2321,4095,2212,4097,1474,4100,4101],[6959,2212,4097,2537,3679],{"id":7453,"title":4108,"description":7441,"kind":2535,"type":6955,"section":2212,"path":2320,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7454,"tags":7455,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::css::--emit-rate",[4108,2321,4095,2212,4097,1474,4100,4101],[6959,2212,4097,2537,3679],{"id":7457,"title":4109,"description":7441,"kind":2535,"type":6955,"section":2212,"path":2320,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7458,"tags":7459,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::css::--particle-life",[4109,2321,4095,2212,4097,1474,4100,4101],[6959,2212,4097,2537,3679],{"id":7461,"title":4110,"description":7441,"kind":2535,"type":6955,"section":2212,"path":2320,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7462,"tags":7463,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::css::--instance-shape",[4110,2321,4095,2212,4097,1474,4100,4101],[6959,2212,4097,2537,3679],{"id":7465,"title":4111,"description":7441,"kind":2535,"type":6955,"section":2212,"path":2320,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7466,"tags":7467,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::css::--instance-model",[4111,2321,4095,2212,4097,1474,4100,4101],[6959,2212,4097,2537,3679],{"id":7469,"title":2560,"description":7470,"kind":2535,"type":6805,"section":2212,"path":2320,"anchor":2559,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7471,"tags":7472,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::heading::when-to-use-it","Section in Particles",[2560,2321,4095,2212,4097,1474,4100,4101],[6809,2212,4097,2537,3679],{"id":7474,"title":2589,"description":7470,"kind":2535,"type":6805,"section":2212,"path":2320,"anchor":2588,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7475,"tags":7476,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::heading::runtime-contract",[2589,2321,4095,2212,4097,1474,4100,4101],[6809,2212,4097,2537,3679],{"id":7478,"title":2949,"description":7470,"kind":2535,"type":6805,"section":2212,"path":2320,"anchor":2948,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7479,"tags":7480,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::heading::activation",[2949,2321,4095,2212,4097,1474,4100,4101],[6809,2212,4097,2537,3679],{"id":7482,"title":4194,"description":7470,"kind":2535,"type":6805,"section":2212,"path":2320,"anchor":4193,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7483,"tags":7484,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::heading::core-css-variables",[4194,2321,4095,2212,4097,1474,4100,4101],[6809,2212,4097,2537,3679],{"id":7486,"title":4298,"description":7470,"kind":2535,"type":6805,"section":2212,"path":2320,"anchor":4297,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7487,"tags":7488,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::heading::instanced-model-example",[4298,2321,4095,2212,4097,1474,4100,4101],[6809,2212,4097,2537,3679],{"id":7490,"title":4466,"description":7470,"kind":2535,"type":6805,"section":2212,"path":2320,"anchor":4465,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7491,"tags":7492,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::heading::emitter-example",[4466,2321,4095,2212,4097,1474,4100,4101],[6809,2212,4097,2537,3679],{"id":7494,"title":2838,"description":7470,"kind":2535,"type":6805,"section":2212,"path":2320,"anchor":2837,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7495,"tags":7496,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::heading::what-the-runtime-does",[2838,2321,4095,2212,4097,1474,4100,4101],[6809,2212,4097,2537,3679],{"id":7498,"title":2859,"description":7470,"kind":2535,"type":6805,"section":2212,"path":2320,"anchor":2858,"group":4097,"order":4096,"pageTitle":2321,"context":7436,"tokens":7499,"tags":7500,"activation":4098,"related":4112,"status":3679,"integration":2537},"/docs/objects/particles::heading::practical-note",[2859,2321,4095,2212,4097,1474,4100,4101],[6809,2212,4097,2537,3679],{"id":2327,"title":2328,"description":4601,"kind":2535,"type":6798,"section":2212,"path":2327,"group":4097,"order":4602,"pageTitle":2328,"context":7430,"tokens":7502,"tags":7503,"activation":4603,"related":4615,"status":3679,"integration":2537},[2328,4601,2212,4097,1479,4605,4606,139,4610,4611,4612,4613,4614,4603,3679,2537,6800,7037,1479],[2212,4097,2537,3679],{"id":7505,"title":139,"description":7506,"kind":2535,"type":7080,"section":2212,"path":2327,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7508,"tags":7509,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::attr::string-3d","Text attribute","Text / Objects",[139,2328,4601,2212,4097,1479,4605,4606],[2991,2212,4097,2537,3679],{"id":7511,"title":4610,"description":7512,"kind":2535,"type":6955,"section":2212,"path":2327,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7513,"tags":7514,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::css::--text-depth","Text CSS variable",[4610,2328,4601,2212,4097,1479,4605,4606],[6959,2212,4097,2537,3679],{"id":7516,"title":4611,"description":7512,"kind":2535,"type":6955,"section":2212,"path":2327,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7517,"tags":7518,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::css::--text-curve-segments",[4611,2328,4601,2212,4097,1479,4605,4606],[6959,2212,4097,2537,3679],{"id":7520,"title":4612,"description":7512,"kind":2535,"type":6955,"section":2212,"path":2327,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7521,"tags":7522,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::css::--text-bevel-size",[4612,2328,4601,2212,4097,1479,4605,4606],[6959,2212,4097,2537,3679],{"id":7524,"title":4613,"description":7512,"kind":2535,"type":6955,"section":2212,"path":2327,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7525,"tags":7526,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::css::--text-bevel-thickness",[4613,2328,4601,2212,4097,1479,4605,4606],[6959,2212,4097,2537,3679],{"id":7528,"title":4614,"description":7512,"kind":2535,"type":6955,"section":2212,"path":2327,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7529,"tags":7530,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::css::--text-fit",[4614,2328,4601,2212,4097,1479,4605,4606],[6959,2212,4097,2537,3679],{"id":7532,"title":2560,"description":7533,"kind":2535,"type":6805,"section":2212,"path":2327,"anchor":2559,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7534,"tags":7535,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::heading::when-to-use-it","Section in Text",[2560,2328,4601,2212,4097,1479,4605,4606],[6809,2212,4097,2537,3679],{"id":7537,"title":2589,"description":7533,"kind":2535,"type":6805,"section":2212,"path":2327,"anchor":2588,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7538,"tags":7539,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::heading::runtime-contract",[2589,2328,4601,2212,4097,1479,4605,4606],[6809,2212,4097,2537,3679],{"id":7541,"title":2949,"description":7533,"kind":2535,"type":6805,"section":2212,"path":2327,"anchor":2948,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7542,"tags":7543,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::heading::activation",[2949,2328,4601,2212,4097,1479,4605,4606],[6809,2212,4097,2537,3679],{"id":7545,"title":4688,"description":7533,"kind":2535,"type":6805,"section":2212,"path":2327,"anchor":4687,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7546,"tags":7547,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::heading::font-registration",[4688,2328,4601,2212,4097,1479,4605,4606],[6809,2212,4097,2537,3679],{"id":7549,"title":3387,"description":7533,"kind":2535,"type":6805,"section":2212,"path":2327,"anchor":3386,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7550,"tags":7551,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::heading::key-css-variables",[3387,2328,4601,2212,4097,1479,4605,4606],[6809,2212,4097,2537,3679],{"id":7553,"title":2677,"description":7533,"kind":2535,"type":6805,"section":2212,"path":2327,"anchor":2676,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7554,"tags":7555,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::heading::example",[2677,2328,4601,2212,4097,1479,4605,4606],[6809,2212,4097,2537,3679],{"id":7557,"title":2838,"description":7533,"kind":2535,"type":6805,"section":2212,"path":2327,"anchor":2837,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7558,"tags":7559,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::heading::what-the-runtime-does",[2838,2328,4601,2212,4097,1479,4605,4606],[6809,2212,4097,2537,3679],{"id":7561,"title":2859,"description":7533,"kind":2535,"type":6805,"section":2212,"path":2327,"anchor":2858,"group":4097,"order":4602,"pageTitle":2328,"context":7507,"tokens":7562,"tags":7563,"activation":4603,"related":4615,"status":3679,"integration":2537},"/docs/objects/text::heading::practical-note",[2859,2328,4601,2212,4097,1479,4605,4606],[6809,2212,4097,2537,3679],{"id":2334,"title":2335,"description":4982,"kind":2535,"type":6798,"section":2212,"path":2334,"group":4097,"order":4983,"pageTitle":2335,"context":7430,"tokens":7565,"tags":7566,"activation":4984,"related":4996,"status":3679,"integration":2537},[2335,4982,2212,4097,1484,4986,4987,139,4986,4991,4992,4993,4994,4995,4984,3679,2537,6800,7037,1484],[2212,4097,2537,3679],{"id":7568,"title":139,"description":7569,"kind":2535,"type":7080,"section":2212,"path":2334,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7571,"tags":7572,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::attr::string-3d","SVG attribute","SVG / Objects",[139,2335,4982,2212,4097,1484,4986,4987],[2991,2212,4097,2537,3679],{"id":7574,"title":4986,"description":7569,"kind":2535,"type":7080,"section":2212,"path":2334,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7575,"tags":7576,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::attr::data-svg-src",[4986,2335,4982,2212,4097,1484,4986,4987],[2991,2212,4097,2537,3679],{"id":7578,"title":4991,"description":7579,"kind":2535,"type":6955,"section":2212,"path":2334,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7580,"tags":7581,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::css::--svg-depth","SVG CSS variable",[4991,2335,4982,2212,4097,1484,4986,4987],[6959,2212,4097,2537,3679],{"id":7583,"title":4992,"description":7579,"kind":2535,"type":6955,"section":2212,"path":2334,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7584,"tags":7585,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::css::--svg-curve-segments",[4992,2335,4982,2212,4097,1484,4986,4987],[6959,2212,4097,2537,3679],{"id":7587,"title":4993,"description":7579,"kind":2535,"type":6955,"section":2212,"path":2334,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7588,"tags":7589,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::css::--svg-bevel-size",[4993,2335,4982,2212,4097,1484,4986,4987],[6959,2212,4097,2537,3679],{"id":7591,"title":4994,"description":7579,"kind":2535,"type":6955,"section":2212,"path":2334,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7592,"tags":7593,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::css::--svg-bevel-thickness",[4994,2335,4982,2212,4097,1484,4986,4987],[6959,2212,4097,2537,3679],{"id":7595,"title":4995,"description":7579,"kind":2535,"type":6955,"section":2212,"path":2334,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7596,"tags":7597,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::css::--svg-morph-duration",[4995,2335,4982,2212,4097,1484,4986,4987],[6959,2212,4097,2537,3679],{"id":7599,"title":2560,"description":7600,"kind":2535,"type":6805,"section":2212,"path":2334,"anchor":2559,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7601,"tags":7602,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::heading::when-to-use-it","Section in SVG",[2560,2335,4982,2212,4097,1484,4986,4987],[6809,2212,4097,2537,3679],{"id":7604,"title":5032,"description":7600,"kind":2535,"type":6805,"section":2212,"path":2334,"anchor":5031,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7605,"tags":7606,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::heading::input-sources",[5032,2335,4982,2212,4097,1484,4986,4987],[6809,2212,4097,2537,3679],{"id":7608,"title":2589,"description":7600,"kind":2535,"type":6805,"section":2212,"path":2334,"anchor":2588,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7609,"tags":7610,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::heading::runtime-contract",[2589,2335,4982,2212,4097,1484,4986,4987],[6809,2212,4097,2537,3679],{"id":7612,"title":2949,"description":7600,"kind":2535,"type":6805,"section":2212,"path":2334,"anchor":2948,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7613,"tags":7614,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::heading::activation",[2949,2335,4982,2212,4097,1484,4986,4987],[6809,2212,4097,2537,3679],{"id":7616,"title":3387,"description":7600,"kind":2535,"type":6805,"section":2212,"path":2334,"anchor":3386,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7617,"tags":7618,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::heading::key-css-variables",[3387,2335,4982,2212,4097,1484,4986,4987],[6809,2212,4097,2537,3679],{"id":7620,"title":2677,"description":7600,"kind":2535,"type":6805,"section":2212,"path":2334,"anchor":2676,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7621,"tags":7622,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::heading::example",[2677,2335,4982,2212,4097,1484,4986,4987],[6809,2212,4097,2537,3679],{"id":7624,"title":2838,"description":7600,"kind":2535,"type":6805,"section":2212,"path":2334,"anchor":2837,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7625,"tags":7626,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::heading::what-the-runtime-does",[2838,2335,4982,2212,4097,1484,4986,4987],[6809,2212,4097,2537,3679],{"id":7628,"title":2859,"description":7600,"kind":2535,"type":6805,"section":2212,"path":2334,"anchor":2858,"group":4097,"order":4983,"pageTitle":2335,"context":7570,"tokens":7629,"tags":7630,"activation":4984,"related":4996,"status":3679,"integration":2537},"/docs/objects/svg::heading::practical-note",[2859,2335,4982,2212,4097,1484,4986,4987],[6809,2212,4097,2537,3679],{"id":145,"title":5317,"description":5318,"kind":5319,"type":6798,"section":146,"path":145,"group":5320,"order":11,"pageTitle":5317,"context":7632,"tokens":7633,"tags":7635,"activation":5321,"related":5330,"status":2536,"integration":2537},"Rendering / Surface",[5317,5318,146,5320,5323,5324,5325,2885,1631,2886,2887,5329,1640,5321,2536,2537,6800,7634,5336],"rendering",[146,5320,2537,2536],{"id":7637,"title":2885,"description":7638,"kind":5319,"type":6955,"section":146,"path":145,"group":5320,"order":11,"pageTitle":5317,"context":7639,"tokens":7640,"tags":7641,"activation":5321,"related":5330,"status":2536,"integration":2537},"/docs/rendering/materials::css::--material-type","Materials CSS variable","Materials / Rendering",[2885,5317,5318,146,5320,5323,5324,5325],[6959,146,5320,2537,2536],{"id":7643,"title":1631,"description":7638,"kind":5319,"type":6955,"section":146,"path":145,"group":5320,"order":11,"pageTitle":5317,"context":7639,"tokens":7644,"tags":7645,"activation":5321,"related":5330,"status":2536,"integration":2537},"/docs/rendering/materials::css::--material-color",[1631,5317,5318,146,5320,5323,5324,5325],[6959,146,5320,2537,2536],{"id":7647,"title":2886,"description":7638,"kind":5319,"type":6955,"section":146,"path":145,"group":5320,"order":11,"pageTitle":5317,"context":7639,"tokens":7648,"tags":7649,"activation":5321,"related":5330,"status":2536,"integration":2537},"/docs/rendering/materials::css::--material-metalness",[2886,5317,5318,146,5320,5323,5324,5325],[6959,146,5320,2537,2536],{"id":7651,"title":2887,"description":7638,"kind":5319,"type":6955,"section":146,"path":145,"group":5320,"order":11,"pageTitle":5317,"context":7639,"tokens":7652,"tags":7653,"activation":5321,"related":5330,"status":2536,"integration":2537},"/docs/rendering/materials::css::--material-roughness",[2887,5317,5318,146,5320,5323,5324,5325],[6959,146,5320,2537,2536],{"id":7655,"title":5329,"description":7638,"kind":5319,"type":6955,"section":146,"path":145,"group":5320,"order":11,"pageTitle":5317,"context":7639,"tokens":7656,"tags":7657,"activation":5321,"related":5330,"status":2536,"integration":2537},"/docs/rendering/materials::css::--material-emissive",[5329,5317,5318,146,5320,5323,5324,5325],[6959,146,5320,2537,2536],{"id":7659,"title":1640,"description":7638,"kind":5319,"type":6955,"section":146,"path":145,"group":5320,"order":11,"pageTitle":5317,"context":7639,"tokens":7660,"tags":7661,"activation":5321,"related":5330,"status":2536,"integration":2537},"/docs/rendering/materials::css::--opacity",[1640,5317,5318,146,5320,5323,5324,5325],[6959,146,5320,2537,2536],{"id":7663,"title":5343,"description":7664,"kind":5319,"type":6805,"section":146,"path":145,"anchor":5342,"group":5320,"order":11,"pageTitle":5317,"context":7639,"tokens":7665,"tags":7666,"activation":5321,"related":5330,"status":2536,"integration":2537},"/docs/rendering/materials::heading::public-surface","Section in Materials",[5343,5317,5318,146,5320,5323,5324,5325],[6809,146,5320,2537,2536],{"id":7668,"title":5347,"description":7664,"kind":5319,"type":6805,"section":146,"path":145,"anchor":5346,"group":5320,"order":11,"pageTitle":5317,"context":7639,"tokens":7669,"tags":7670,"activation":5321,"related":5330,"status":2536,"integration":2537},"/docs/rendering/materials::heading::core-variables",[5347,5317,5318,146,5320,5323,5324,5325],[6809,146,5320,2537,2536],{"id":7672,"title":5445,"description":7664,"kind":5319,"type":6805,"section":146,"path":145,"anchor":5444,"group":5320,"order":11,"pageTitle":5317,"context":7639,"tokens":7673,"tags":7674,"activation":5321,"related":5330,"status":2536,"integration":2537},"/docs/rendering/materials::heading::material-selection-rule",[5445,5317,5318,146,5320,5323,5324,5325],[6809,146,5320,2537,2536],{"id":7676,"title":5467,"description":7664,"kind":5319,"type":6805,"section":146,"path":145,"anchor":5466,"group":5320,"order":11,"pageTitle":5317,"context":7639,"tokens":7677,"tags":7678,"activation":5321,"related":5330,"status":2536,"integration":2537},"/docs/rendering/materials::heading::detailed-behavior",[5467,5317,5318,146,5320,5323,5324,5325],[6809,146,5320,2537,2536],{"id":1642,"title":5484,"description":5485,"kind":5319,"type":6798,"section":146,"path":1642,"group":5320,"order":240,"pageTitle":5484,"context":7632,"tokens":7680,"tags":7681,"activation":5321,"related":5498,"status":3679,"integration":2537},[5484,5485,146,5320,5487,5488,5489,2199,3687,5493,5494,5495,5496,5497,5321,3679,2537,6800,7634,5503],[146,5320,2537,3679],{"id":7683,"title":2199,"description":7684,"kind":5319,"type":6955,"section":146,"path":1642,"group":5320,"order":240,"pageTitle":5484,"context":7685,"tokens":7686,"tags":7687,"activation":5321,"related":5498,"status":3679,"integration":2537},"/docs/rendering/textures::css::--texture-map","Textures CSS variable","Textures / Rendering",[2199,5484,5485,146,5320,5487,5488,5489],[6959,146,5320,2537,3679],{"id":7689,"title":3687,"description":7684,"kind":5319,"type":6955,"section":146,"path":1642,"group":5320,"order":240,"pageTitle":5484,"context":7685,"tokens":7690,"tags":7691,"activation":5321,"related":5498,"status":3679,"integration":2537},"/docs/rendering/textures::css::--texture-normal",[3687,5484,5485,146,5320,5487,5488,5489],[6959,146,5320,2537,3679],{"id":7693,"title":5493,"description":7684,"kind":5319,"type":6955,"section":146,"path":1642,"group":5320,"order":240,"pageTitle":5484,"context":7685,"tokens":7694,"tags":7695,"activation":5321,"related":5498,"status":3679,"integration":2537},"/docs/rendering/textures::css::--texture-roughness",[5493,5484,5485,146,5320,5487,5488,5489],[6959,146,5320,2537,3679],{"id":7697,"title":5494,"description":7684,"kind":5319,"type":6955,"section":146,"path":1642,"group":5320,"order":240,"pageTitle":5484,"context":7685,"tokens":7698,"tags":7699,"activation":5321,"related":5498,"status":3679,"integration":2537},"/docs/rendering/textures::css::--texture-metalness",[5494,5484,5485,146,5320,5487,5488,5489],[6959,146,5320,2537,3679],{"id":7701,"title":5495,"description":7684,"kind":5319,"type":6955,"section":146,"path":1642,"group":5320,"order":240,"pageTitle":5484,"context":7685,"tokens":7702,"tags":7703,"activation":5321,"related":5498,"status":3679,"integration":2537},"/docs/rendering/textures::css::--texture-ao",[5495,5484,5485,146,5320,5487,5488,5489],[6959,146,5320,2537,3679],{"id":7705,"title":5496,"description":7684,"kind":5319,"type":6955,"section":146,"path":1642,"group":5320,"order":240,"pageTitle":5484,"context":7685,"tokens":7706,"tags":7707,"activation":5321,"related":5498,"status":3679,"integration":2537},"/docs/rendering/textures::css::--texture-flip-y",[5496,5484,5485,146,5320,5487,5488,5489],[6959,146,5320,2537,3679],{"id":7709,"title":5497,"description":7684,"kind":5319,"type":6955,"section":146,"path":1642,"group":5320,"order":240,"pageTitle":5484,"context":7685,"tokens":7710,"tags":7711,"activation":5321,"related":5498,"status":3679,"integration":2537},"/docs/rendering/textures::css::--texture-color-space",[5497,5484,5485,146,5320,5487,5488,5489],[6959,146,5320,2537,3679],{"id":7713,"title":5343,"description":7714,"kind":5319,"type":6805,"section":146,"path":1642,"anchor":5342,"group":5320,"order":240,"pageTitle":5484,"context":7685,"tokens":7715,"tags":7716,"activation":5321,"related":5498,"status":3679,"integration":2537},"/docs/rendering/textures::heading::public-surface","Section in Textures",[5343,5484,5485,146,5320,5487,5488,5489],[6809,146,5320,2537,3679],{"id":7718,"title":5512,"description":7714,"kind":5319,"type":6805,"section":146,"path":1642,"anchor":5511,"group":5320,"order":240,"pageTitle":5484,"context":7685,"tokens":7719,"tags":7720,"activation":5321,"related":5498,"status":3679,"integration":2537},"/docs/rendering/textures::heading::texture-variables",[5512,5484,5485,146,5320,5487,5488,5489],[6809,146,5320,2537,3679],{"id":7722,"title":5546,"description":7714,"kind":5319,"type":6805,"section":146,"path":1642,"anchor":5545,"group":5320,"order":240,"pageTitle":5484,"context":7685,"tokens":7723,"tags":7724,"activation":5321,"related":5498,"status":3679,"integration":2537},"/docs/rendering/textures::heading::value-shape",[5546,5484,5485,146,5320,5487,5488,5489],[6809,146,5320,2537,3679],{"id":7726,"title":5467,"description":7714,"kind":5319,"type":6805,"section":146,"path":1642,"anchor":5466,"group":5320,"order":240,"pageTitle":5484,"context":7685,"tokens":7727,"tags":7728,"activation":5321,"related":5498,"status":3679,"integration":2537},"/docs/rendering/textures::heading::detailed-behavior",[5467,5484,5485,146,5320,5487,5488,5489],[6809,146,5320,2537,3679],{"id":4113,"title":5651,"description":5652,"kind":5319,"type":6798,"section":146,"path":4113,"group":5653,"order":512,"pageTitle":5651,"context":7730,"tokens":7731,"tags":7732,"activation":5654,"related":5664,"status":3679,"integration":2537},"Rendering / Effects",[5651,5652,146,5653,5656,5657,5658,5659,5663,5654,3679,2537,6800,7634,5670],[146,5653,2537,3679],{"id":7734,"title":5663,"description":7735,"kind":5319,"type":6955,"section":146,"path":4113,"group":5653,"order":512,"pageTitle":5651,"context":7736,"tokens":7737,"tags":7738,"activation":5654,"related":5664,"status":3679,"integration":2537},"/docs/rendering/filters::css::--filter","Filters CSS variable","Filters / Rendering",[5663,5651,5652,146,5653,5656,5657,5658,5659],[6959,146,5653,2537,3679],{"id":7740,"title":5680,"description":7741,"kind":5319,"type":6805,"section":146,"path":4113,"anchor":5679,"group":5653,"order":512,"pageTitle":5651,"context":7736,"tokens":7742,"tags":7743,"activation":5654,"related":5664,"status":3679,"integration":2537},"/docs/rendering/filters::heading::supported-built-in-filters","Section in Filters",[5680,5651,5652,146,5653,5656,5657,5658,5659],[6809,146,5653,2537,3679],{"id":7745,"title":2677,"description":7741,"kind":5319,"type":6805,"section":146,"path":4113,"anchor":2676,"group":5653,"order":512,"pageTitle":5651,"context":7736,"tokens":7746,"tags":7747,"activation":5654,"related":5664,"status":3679,"integration":2537},"/docs/rendering/filters::heading::example",[2677,5651,5652,146,5653,5656,5657,5658,5659],[6809,146,5653,2537,3679],{"id":7749,"title":5467,"description":7741,"kind":5319,"type":6805,"section":146,"path":4113,"anchor":5466,"group":5653,"order":512,"pageTitle":5651,"context":7736,"tokens":7750,"tags":7751,"activation":5654,"related":5664,"status":3679,"integration":2537},"/docs/rendering/filters::heading::detailed-behavior",[5467,5651,5652,146,5653,5656,5657,5658,5659],[6809,146,5653,2537,3679],{"id":7753,"title":5801,"description":7741,"kind":5319,"type":6805,"section":146,"path":4113,"anchor":5800,"group":5653,"order":512,"pageTitle":5651,"context":7736,"tokens":7754,"tags":7755,"activation":5654,"related":5664,"status":3679,"integration":2537},"/docs/rendering/filters::heading::transition-example",[5801,5651,5652,146,5653,5656,5657,5658,5659],[6809,146,5653,2537,3679],{"id":5331,"title":5907,"description":5908,"kind":5319,"type":6798,"section":146,"path":5331,"group":5909,"order":1008,"pageTitle":5907,"context":7757,"tokens":7758,"tags":7760,"activation":5911,"related":5918,"status":3679,"integration":5910},"Rendering / Extensibility",[5907,5908,146,5909,5913,5914,5911,3679,5910,6800,7634,7759],"custom materials",[146,5909,5910,3679],{"id":7762,"title":5931,"description":7763,"kind":5319,"type":6805,"section":146,"path":5331,"anchor":5930,"group":5909,"order":1008,"pageTitle":5907,"context":7764,"tokens":7765,"tags":7766,"activation":5911,"related":5918,"status":3679,"integration":5910},"/docs/rendering/custom-materials::heading::registration","Section in Custom Materials","Custom Materials / Rendering",[5931,5907,5908,146,5909,5913,5914],[6809,146,5909,5910,3679],{"id":7768,"title":6030,"description":7763,"kind":5319,"type":6805,"section":146,"path":5331,"anchor":6029,"group":5909,"order":1008,"pageTitle":5907,"context":7764,"tokens":7769,"tags":7770,"activation":5911,"related":5918,"status":3679,"integration":5910},"/docs/rendering/custom-materials::heading::what-the-registry-provides",[6030,5907,5908,146,5909,5913,5914],[6809,146,5909,5910,3679],{"id":7772,"title":1596,"description":7763,"kind":5319,"type":6805,"section":146,"path":5331,"anchor":1595,"group":5909,"order":1008,"pageTitle":5907,"context":7764,"tokens":7773,"tags":7774,"activation":5911,"related":5918,"status":3679,"integration":5910},"/docs/rendering/custom-materials::heading::practical-rule",[1596,5907,5908,146,5909,5913,5914],[6809,146,5909,5910,3679],{"id":5665,"title":6061,"description":6062,"kind":5319,"type":6798,"section":146,"path":5665,"group":5909,"order":4096,"pageTitle":6061,"context":7757,"tokens":7776,"tags":7778,"activation":6063,"related":6070,"status":3679,"integration":5910},[6061,6062,146,5909,6065,6066,6063,3679,5910,6800,7634,7777],"custom filters",[146,5909,5910,3679],{"id":7780,"title":5931,"description":7781,"kind":5319,"type":6805,"section":146,"path":5665,"anchor":5930,"group":5909,"order":4096,"pageTitle":6061,"context":7782,"tokens":7783,"tags":7784,"activation":6063,"related":6070,"status":3679,"integration":5910},"/docs/rendering/custom-filters::heading::registration","Section in Custom Filters","Custom Filters / Rendering",[5931,6061,6062,146,5909,6065,6066],[6809,146,5909,5910,3679],{"id":7786,"title":5467,"description":7781,"kind":5319,"type":6805,"section":146,"path":5665,"anchor":5466,"group":5909,"order":4096,"pageTitle":6061,"context":7782,"tokens":7787,"tags":7788,"activation":6063,"related":6070,"status":3679,"integration":5910},"/docs/rendering/custom-filters::heading::detailed-behavior",[5467,6061,6062,146,5909,6065,6066],[6809,146,5909,5910,3679],{"id":23,"title":152,"description":6248,"kind":6249,"type":6798,"section":6250,"path":23,"group":6251,"order":11,"pageTitle":152,"context":7790,"tokens":7791,"tags":7793,"activation":-1,"related":6256,"status":-1,"integration":-1},"API Reference / Core API",[152,6248,6250,6251,6800,7792,14],"api",[6250,6251],{"id":7795,"title":6251,"description":7796,"kind":6249,"type":6805,"section":6250,"path":23,"anchor":6267,"group":6251,"order":11,"pageTitle":152,"context":7797,"tokens":7798,"tags":7799,"activation":-1,"related":6256,"status":-1,"integration":-1},"/docs/api/overview::heading::core-api","Section in API Overview","API Overview / API Reference",[6251,152,6248,6250,6251],[6809,6250,6251],{"id":7801,"title":6283,"description":7796,"kind":6249,"type":6805,"section":6250,"path":23,"anchor":6282,"group":6251,"order":11,"pageTitle":152,"context":7797,"tokens":7802,"tags":7803,"activation":-1,"related":6256,"status":-1,"integration":-1},"/docs/api/overview::heading::runtime-classes",[6283,152,6248,6250,6251],[6809,6250,6251],{"id":7805,"title":5909,"description":7796,"kind":6249,"type":6805,"section":6250,"path":23,"anchor":6293,"group":6251,"order":11,"pageTitle":152,"context":7797,"tokens":7806,"tags":7807,"activation":-1,"related":6256,"status":-1,"integration":-1},"/docs/api/overview::heading::extensibility",[5909,152,6248,6250,6251],[6809,6250,6251],{"id":7809,"title":6309,"description":7796,"kind":6249,"type":6805,"section":6250,"path":23,"anchor":6308,"group":6251,"order":11,"pageTitle":152,"context":7797,"tokens":7810,"tags":7811,"activation":-1,"related":6256,"status":-1,"integration":-1},"/docs/api/overview::heading::utilities",[6309,152,6248,6250,6251],[6809,6250,6251],{"id":1260,"title":6274,"description":6324,"kind":6249,"type":6798,"section":6250,"path":1260,"group":6251,"order":240,"pageTitle":6274,"context":7790,"tokens":7813,"tags":7815,"activation":6326,"related":6332,"status":2536,"integration":6325},[6274,6324,6250,6251,53,412,4720,6328,6326,2536,6325,6800,7792,7814],"string3d",[6250,6251,6325,2536],{"id":7817,"title":6346,"description":7818,"kind":6249,"type":6805,"section":6250,"path":1260,"anchor":6345,"group":6251,"order":240,"pageTitle":6274,"context":7819,"tokens":7820,"tags":7821,"activation":6326,"related":6332,"status":2536,"integration":6325},"/docs/api/string3d::heading::public-api","Section in String3D Module","String3D Module / API Reference",[6346,6274,6324,6250,6251,53,412,4720,6328],[6809,6250,6251,6325,2536],{"id":7823,"title":6350,"description":7818,"kind":6249,"type":6805,"section":6250,"path":1260,"anchor":6349,"group":6251,"order":240,"pageTitle":6274,"context":7819,"tokens":7824,"tags":7825,"activation":6326,"related":6332,"status":2536,"integration":6325},"/docs/api/string3d::heading::static-methods",[6350,6274,6324,6250,6251,53,412,4720,6328],[6809,6250,6251,6325,2536],{"id":7827,"title":6376,"description":7818,"kind":6249,"type":6805,"section":6250,"path":1260,"anchor":6375,"group":6251,"order":240,"pageTitle":6274,"context":7819,"tokens":7828,"tags":7829,"activation":6326,"related":6332,"status":2536,"integration":6325},"/docs/api/string3d::heading::settings",[6376,6274,6324,6250,6251,53,412,4720,6328],[6809,6250,6251,6325,2536],{"id":7831,"title":5467,"description":7818,"kind":6249,"type":6805,"section":6250,"path":1260,"anchor":5466,"group":6251,"order":240,"pageTitle":6274,"context":7819,"tokens":7832,"tags":7833,"activation":6326,"related":6332,"status":2536,"integration":6325},"/docs/api/string3d::heading::detailed-behavior",[5467,6274,6324,6250,6251,53,412,4720,6328],[6809,6250,6251,6325,2536],{"id":248,"title":6279,"description":6451,"kind":6249,"type":6798,"section":6250,"path":248,"group":6251,"order":512,"pageTitle":6279,"context":7790,"tokens":7835,"tags":7836,"activation":6452,"related":6458,"status":2536,"integration":5910},[6279,6451,6250,6251,95,1031,6454,6452,2536,5910,6800,7792,1011],[6250,6251,5910,2536],{"id":7838,"title":6470,"description":7839,"kind":6249,"type":6805,"section":6250,"path":248,"anchor":6469,"group":6251,"order":512,"pageTitle":6279,"context":7840,"tokens":7841,"tags":7842,"activation":6452,"related":6458,"status":2536,"integration":5910},"/docs/api/provider::heading::core-contract","Section in Provider API","Provider API / API Reference",[6470,6279,6451,6250,6251,95,1031,6454],[6809,6250,6251,5910,2536],{"id":7844,"title":6507,"description":7839,"kind":6249,"type":6805,"section":6250,"path":248,"anchor":6506,"group":6251,"order":512,"pageTitle":6279,"context":7840,"tokens":7845,"tags":7846,"activation":6452,"related":6458,"status":2536,"integration":5910},"/docs/api/provider::heading::default-implementation",[6507,6279,6451,6250,6251,95,1031,6454],[6809,6250,6251,5910,2536],{"id":7848,"title":1596,"description":7839,"kind":6249,"type":6805,"section":6250,"path":248,"anchor":1595,"group":6251,"order":512,"pageTitle":6279,"context":7840,"tokens":7849,"tags":7850,"activation":6452,"related":6458,"status":2536,"integration":5910},"/docs/api/provider::heading::practical-rule",[1596,6279,6451,6250,6251,95,1031,6454],[6809,6250,6251,5910,2536],{"id":1261,"title":6290,"description":6538,"kind":6249,"type":6798,"section":6250,"path":1261,"group":6283,"order":1008,"pageTitle":6290,"context":7852,"tokens":7853,"tags":7855,"activation":6539,"related":6545,"status":3679,"integration":5910},"API Reference / Runtime Classes",[6290,6538,6250,6283,206,983,977,6541,177,6539,3679,5910,6800,7792,7854],"scene runtime",[6250,6283,5910,3679],{"id":7857,"title":6557,"description":7858,"kind":6249,"type":6805,"section":6250,"path":1261,"anchor":6556,"group":6283,"order":1008,"pageTitle":6290,"context":7859,"tokens":7860,"tags":7861,"activation":6539,"related":6545,"status":3679,"integration":5910},"/docs/api/scene-runtime::heading::main-classes","Section in Scene Runtime","Scene Runtime / API Reference",[6557,6290,6538,6250,6283,206,983,977,6541,177],[6809,6250,6283,5910,3679],{"id":7863,"title":6588,"description":7858,"kind":6249,"type":6805,"section":6250,"path":1261,"anchor":6587,"group":6283,"order":1008,"pageTitle":6290,"context":7859,"tokens":7864,"tags":7865,"activation":6539,"related":6545,"status":3679,"integration":5910},"/docs/api/scene-runtime::heading::use-case",[6588,6290,6538,6250,6283,206,983,977,6541,177],[6809,6250,6283,5910,3679],{"id":4616,"title":6300,"description":6597,"kind":6249,"type":6798,"section":6250,"path":4616,"group":5909,"order":4096,"pageTitle":6300,"context":7867,"tokens":7868,"tags":7869,"activation":6598,"related":6603,"status":3679,"integration":5910},"API Reference / Extensibility",[6300,6597,6250,5909,221,211,216,6598,3679,5910,6800,7792,6608],[6250,5909,5910,3679],{"id":7871,"title":221,"description":7872,"kind":6249,"type":6805,"section":6250,"path":4616,"anchor":6614,"group":5909,"order":4096,"pageTitle":6300,"context":7873,"tokens":7874,"tags":7875,"activation":6598,"related":6603,"status":3679,"integration":5910},"/docs/api/registries::heading::string3dfontregistry","Section in Registries","Registries / API Reference",[221,6300,6597,6250,5909,221,211,216],[6809,6250,5909,5910,3679],{"id":7877,"title":211,"description":7872,"kind":6249,"type":6805,"section":6250,"path":4616,"anchor":6620,"group":5909,"order":4096,"pageTitle":6300,"context":7873,"tokens":7878,"tags":7879,"activation":6598,"related":6603,"status":3679,"integration":5910},"/docs/api/registries::heading::string3dcustommaterialregistry",[211,6300,6597,6250,5909,221,211,216],[6809,6250,5909,5910,3679],{"id":7881,"title":216,"description":7872,"kind":6249,"type":6805,"section":6250,"path":4616,"anchor":6626,"group":5909,"order":4096,"pageTitle":6300,"context":7873,"tokens":7882,"tags":7883,"activation":6598,"related":6603,"status":3679,"integration":5910},"/docs/api/registries::heading::string3dcustomfilterregistry",[216,6300,6597,6250,5909,221,211,216],[6809,6250,5909,5910,3679],{"id":7885,"title":1596,"description":7872,"kind":6249,"type":6805,"section":6250,"path":4616,"anchor":1595,"group":5909,"order":4096,"pageTitle":6300,"context":7873,"tokens":7886,"tags":7887,"activation":6598,"related":6603,"status":3679,"integration":5910},"/docs/api/registries::heading::practical-rule",[1596,6300,6597,6250,5909,221,211,216],[6809,6250,5909,5910,3679],{"id":5919,"title":6305,"description":6645,"kind":6249,"type":6798,"section":6250,"path":5919,"group":5909,"order":4602,"pageTitle":6305,"context":7867,"tokens":7889,"tags":7891,"activation":1035,"related":6652,"status":3679,"integration":5910},[6305,6645,6250,5909,1035,6647,6648,1035,3679,5910,6800,7792,7890],"engine abstraction",[6250,5909,5910,3679],{"id":7893,"title":6666,"description":7894,"kind":6249,"type":6805,"section":6250,"path":5919,"anchor":6665,"group":5909,"order":4602,"pageTitle":6305,"context":7895,"tokens":7896,"tags":7897,"activation":1035,"related":6652,"status":3679,"integration":5910},"/docs/api/engine-abstraction::heading::what-it-covers","Section in Engine Abstraction","Engine Abstraction / API Reference",[6666,6305,6645,6250,5909,1035,6647,6648],[6809,6250,5909,5910,3679],{"id":7899,"title":6693,"description":7894,"kind":6249,"type":6805,"section":6250,"path":5919,"anchor":6692,"group":5909,"order":4602,"pageTitle":6305,"context":7895,"tokens":7900,"tags":7901,"activation":1035,"related":6652,"status":3679,"integration":5910},"/docs/api/engine-abstraction::heading::why-it-exists",[6693,6305,6645,6250,5909,1035,6647,6648],[6809,6250,5909,5910,3679],{"id":7903,"title":6700,"description":7894,"kind":6249,"type":6805,"section":6250,"path":5919,"anchor":6699,"group":5909,"order":4602,"pageTitle":6305,"context":7895,"tokens":7904,"tags":7905,"activation":1035,"related":6652,"status":3679,"integration":5910},"/docs/api/engine-abstraction::heading::related-exports",[6700,6305,6645,6250,5909,1035,6647,6648],[6809,6250,5909,5910,3679],{"id":4617,"title":6316,"description":6726,"kind":6249,"type":6798,"section":6250,"path":4617,"group":6309,"order":4983,"pageTitle":6316,"context":7907,"tokens":7908,"tags":7910,"activation":6727,"related":6734,"status":3679,"integration":5910},"API Reference / Utilities",[6316,6726,6250,6309,226,6729,6730,6727,3679,5910,6800,7792,7909],"svg parser",[6250,6309,5910,3679],{"id":7912,"title":6346,"description":7913,"kind":6249,"type":6805,"section":6250,"path":4617,"anchor":6345,"group":6309,"order":4983,"pageTitle":6316,"context":7914,"tokens":7915,"tags":7916,"activation":6727,"related":6734,"status":3679,"integration":5910},"/docs/api/svg-parser::heading::public-api","Section in SVG Parser","SVG Parser / API Reference",[6346,6316,6726,6250,6309,226,6729,6730],[6809,6250,6309,5910,3679],{"id":7918,"title":6766,"description":7913,"kind":6249,"type":6805,"section":6250,"path":4617,"anchor":6765,"group":6309,"order":4983,"pageTitle":6316,"context":7914,"tokens":7919,"tags":7920,"activation":6727,"related":6734,"status":3679,"integration":5910},"/docs/api/svg-parser::heading::related-runtime-piece",[6766,6316,6726,6250,6309,226,6729,6730],[6809,6250,6309,5910,3679],{"id":7922,"title":6775,"description":7913,"kind":6249,"type":6805,"section":6250,"path":4617,"anchor":6774,"group":6309,"order":4983,"pageTitle":6316,"context":7914,"tokens":7923,"tags":7924,"activation":6727,"related":6734,"status":3679,"integration":5910},"/docs/api/svg-parser::heading::when-to-use-it-directly",[6775,6316,6726,6250,6309,226,6729,6730],[6809,6250,6309,5910,3679],{"id":7926,"title":112,"activation":7927,"aliases":7927,"api":7927,"attrs":7927,"body":7928,"category":8107,"cssVars":7927,"description":239,"events":7927,"extension":8108,"integration":7927,"kind":9,"meta":8109,"navigation":402,"order":240,"package":7927,"path":20,"publicExport":8110,"seo":8111,"status":7927,"stem":8112,"tags":7927,"__hash__":8113},"content/docs/installation.md",null,{"type":25,"value":7929,"toc":8100},[7930,7932,7938,7940,7956,7958,7974,7976,7982,7984,8088,8090,8098],[28,7931,112],{"id":253},[33,7933,7934,258,7936,261],{},[37,7935,75],{},[37,7937,39],{},[65,7939,265],{"id":264},[267,7941,7942],{"className":269,"code":270,"language":271,"meta":231,"style":231},[37,7943,7944],{"__ignoreMap":231},[275,7945,7946,7948,7950,7952,7954],{"class":277,"line":278},[275,7947,282],{"class":281},[275,7949,286],{"class":285},[275,7951,289],{"class":285},[275,7953,292],{"class":285},[275,7955,295],{"class":285},[65,7957,299],{"id":298},[42,7959,7960,7964,7968],{},[45,7961,7962,306],{},[37,7963,79],{},[45,7965,7966,311],{},[37,7967,75],{},[45,7969,7970,316,7972,84],{},[37,7971,83],{},[37,7973,95],{},[65,7975,322],{"id":321},[33,7977,7978,327,7980,330],{},[37,7979,75],{},[37,7981,79],{},[65,7983,334],{"id":333},[267,7985,7986],{"className":337,"code":338,"language":339,"meta":231,"style":231},[37,7987,7988,8000,8012,8028,8032,8050,8054,8068,8076],{"__ignoreMap":231},[275,7989,7990,7992,7994,7996,7998],{"class":277,"line":278},[275,7991,347],{"class":346},[275,7993,351],{"class":350},[275,7995,354],{"class":346},[275,7997,357],{"class":285},[275,7999,360],{"class":350},[275,8001,8002,8004,8006,8008,8010],{"class":277,"line":232},[275,8003,347],{"class":346},[275,8005,367],{"class":350},[275,8007,354],{"class":346},[275,8009,372],{"class":285},[275,8011,360],{"class":350},[275,8013,8014,8016,8018,8020,8022,8024,8026],{"class":277,"line":377},[275,8015,347],{"class":346},[275,8017,383],{"class":382},[275,8019,386],{"class":346},[275,8021,389],{"class":350},[275,8023,354],{"class":346},[275,8025,394],{"class":285},[275,8027,360],{"class":350},[275,8029,8030],{"class":277,"line":399},[275,8031,403],{"emptyLinePlaceholder":402},[275,8033,8034,8036,8038,8040,8042,8044,8046,8048],{"class":277,"line":406},[275,8035,409],{"class":350},[275,8037,412],{"class":281},[275,8039,415],{"class":350},[275,8041,418],{"class":346},[275,8043,421],{"class":281},[275,8045,415],{"class":350},[275,8047,426],{"class":382},[275,8049,429],{"class":350},[275,8051,8052],{"class":277,"line":432},[275,8053,403],{"emptyLinePlaceholder":402},[275,8055,8056,8058,8060,8062,8064,8066],{"class":277,"line":437},[275,8057,440],{"class":346},[275,8059,443],{"class":382},[275,8061,446],{"class":346},[275,8063,449],{"class":350},[275,8065,452],{"class":281},[275,8067,455],{"class":350},[275,8069,8070,8072,8074],{"class":277,"line":458},[275,8071,461],{"class":350},[275,8073,464],{"class":281},[275,8075,467],{"class":350},[275,8077,8078,8080,8082,8084,8086],{"class":277,"line":470},[275,8079,461],{"class":350},[275,8081,475],{"class":281},[275,8083,415],{"class":350},[275,8085,480],{"class":382},[275,8087,483],{"class":350},[65,8089,487],{"id":486},[42,8091,8092,8094,8096],{},[45,8093,492],{},[45,8095,495],{},[45,8097,498],{},[500,8099,502],{},{"title":231,"searchDepth":232,"depth":232,"links":8101},[8102,8103,8104,8105,8106],{"id":264,"depth":232,"text":265},{"id":298,"depth":232,"text":299},{"id":321,"depth":232,"text":322},{"id":333,"depth":232,"text":334},{"id":486,"depth":232,"text":487},"start-here","md",{},false,{"title":112,"description":239},"docs/installation","HEL0YAbe3NJSCivS0-gNeWOpIzGug-AwVv3wG9OD5K8",1775208990118]