Spaces:
Running
Running
Deploy website be3ef09d191a990b54042a3467afd40ab3406f5a
Browse filesThis view is limited to 50 files because it contains too many changes. See raw diff
- assets/{_-xE9tg3Nw.js → _-B7QAxwJh.js} +1 -1
- assets/{_lang-BZjkeuLT.js → _lang-DEpy21c3.js} +1 -1
- assets/app-ClgAa0c4.css +0 -0
- assets/app-os4DUCKe.css +0 -0
- assets/asset-B29kNjHy.js +1 -0
- assets/asset-B_RjD9N6.js +0 -1
- assets/fetch-BUKq5roZ.js +0 -1
- assets/fetch-vfb-5eKT.js +1 -0
- assets/gallery-shell-BUNd-Rj8.js +1 -0
- assets/home-page-Co41DnZj.js +0 -0
- assets/home-page-DyjVALDA.js +0 -0
- assets/index-CppN1qEU.js +0 -0
- assets/index-DEDbfth6.js +0 -0
- assets/layout.shared-BilCH_HV.js +0 -0
- assets/layout.shared-ThDtfT9i.js +0 -0
- assets/{lazyRouteComponent-R7iKUM_S.js → lazyRouteComponent-DBEQERMJ.js} +1 -1
- assets/orama-cloud-CFR8olBa.js +0 -1
- assets/orama-cloud-Dg06qqqJ.js +1 -0
- assets/orama-cloud-legacy-0MdvBNNe.js +0 -1
- assets/orama-cloud-legacy-D_phyqgi.js +1 -0
- assets/remove-undefined-C_sjLeQT-CP3jfHCp.js +1 -0
- assets/route-CQLqrWbY.js +0 -1
- assets/route-T9SvWTng.js +1 -0
- assets/{routes-Ds4lHaXw.js → routes-DdpootL-.js} +1 -1
- assets/search-BN8TeJzU.js +0 -1
- assets/search-default-BoNe-vl8.js +2 -0
- assets/search-default-CRhg9UkM.js +0 -2
- assets/url-BF81yL4m-Cs729U5G.js +1 -0
- assets/use-catalog-B4zb4r4j.js +0 -1
- assets/use-on-change-Da5Kx5YO.js +1 -0
- assets/use-search-eSAjMJVB-DEsp1VDZ.js +2 -0
- assets/{useTranslation-DdiJj5BA.js → useTranslation-D9SCoej_.js} +1 -1
- en/asset/index.html +3 -1
- en/docs/blender/index.html +3 -3
- en/docs/contributing/index.html +3 -3
- en/docs/dataset-schema/index.html +3 -3
- en/docs/download/index.html +3 -3
- en/docs/faq/index.html +3 -3
- en/docs/formats/index.html +3 -3
- en/docs/index.html +3 -3
- en/docs/license/index.html +3 -3
- en/docs/release-notes/index.html +3 -3
- en/docs/threejs/index.html +3 -3
- en/index.html +3 -1
- index.html +1 -1
- zh/asset/index.html +3 -1
- zh/docs/blender/index.html +3 -3
- zh/docs/contributing/index.html +3 -3
- zh/docs/dataset-schema/index.html +3 -3
- zh/docs/download/index.html +3 -3
assets/{_-xE9tg3Nw.js → _-B7QAxwJh.js}
RENAMED
|
@@ -1 +1 @@
|
|
| 1 |
-
import{r as e}from"./rolldown-runtime-XKyaHtl9.js";import{t}from"./react-DlmbjZJV.js";import{t as n}from"./jsx-runtime-LKYXHABd.js";import{
|
|
|
|
| 1 |
+
import{r as e}from"./rolldown-runtime-XKyaHtl9.js";import{t}from"./react-DlmbjZJV.js";import{t as n}from"./jsx-runtime-LKYXHABd.js";import{dt as r,ft as i,gt as a,t as o,u as s,v as c,vt as l}from"./layout.shared-ThDtfT9i.js";import{t as u}from"./useTranslation-D9SCoej_.js";import{n as d,t as f}from"./index-CppN1qEU.js";var p=e(t(),1),m=n();function h(e){return c(e.data,e=>(e={...e},`children`in e&&(e.children=[...e.children]),`icon`in e&&typeof e.icon==`string`&&(e.icon=(0,m.jsx)(`span`,{dangerouslySetInnerHTML:{__html:e.icon}})),typeof e.name==`string`&&(e.name=(0,m.jsx)(`span`,{className:`fd-page-tree-item-name`,dangerouslySetInnerHTML:{__html:e.name}})),e))}function g(e){return(0,p.useMemo)(()=>{let t={};for(let n in e){let r=e[n];t[n]=_(r)?h(r):r}return t},[e])}function _(e){return typeof e==`object`&&!!e&&`$fumadocs_loader`in e&&e.$fumadocs_loader===`page-tree`}function v({locale:e,tree:t,children:n}){let i=o(e),c=r[e].navigation,l={...t,children:[{type:`page`,name:c.assets,url:a(e)},{type:`separator`,name:c.docs},...t.children]};return(0,m.jsx)(s,{...i,links:i.links?.filter(e=>e.type===`icon`),tree:l,children:n})}function y({path:e,locale:t}){let{t:n}=u(),r=i(e);return d.useContent(e,{contentLocale:r,fallbackNotice:t===r?null:n(`docs.englishFallback`)})}function b(){let e=g(f.useLoaderData()),t=l(e.locale);return(0,m.jsx)(v,{locale:t,tree:e.pageTree,children:(0,m.jsx)(p.Suspense,{children:(0,m.jsx)(y,{path:e.path,locale:t})})})}export{b as component};
|
assets/{_lang-BZjkeuLT.js → _lang-DEpy21c3.js}
RENAMED
|
@@ -1 +1 @@
|
|
| 1 |
-
import{t as e}from"./jsx-runtime-LKYXHABd.js";import{
|
|
|
|
| 1 |
+
import{t as e}from"./jsx-runtime-LKYXHABd.js";import{vt as t}from"./layout.shared-ThDtfT9i.js";import{t as n}from"./home-page-Co41DnZj.js";import{a as r}from"./index-CppN1qEU.js";var i=e();function a(){let{lang:e}=r.useParams();return(0,i.jsx)(n,{locale:t(e)})}export{a as component};
|
assets/app-ClgAa0c4.css
DELETED
|
The diff for this file is too large to render.
See raw diff
|
|
|
assets/app-os4DUCKe.css
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
assets/asset-B29kNjHy.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
import{t as e}from"./jsx-runtime-LKYXHABd.js";import{gt as t,pt as n,vt as r}from"./layout.shared-ThDtfT9i.js";import{t as i}from"./useTranslation-D9SCoej_.js";import{D as a,b as o,h as s,m as c,p as l,t as u,x as d}from"./gallery-shell-BUNd-Rj8.js";import{b as f,i as p,y as m}from"./index-CppN1qEU.js";var h=e();function g({id:e,locale:r}){let{t:p}=i(),{state:g,retry:_}=l(),v=f({select:e=>e.location.searchStr}),y=d(o(new URLSearchParams(v).get(`catalog`)??``)),b=m(`${t(r)}${y?`?${y}`:``}`,!0);if(g.status!==`ready`)return(0,h.jsx)(u,{locale:r,children:(0,h.jsxs)(`div`,{className:`detail-main`,children:[(0,h.jsx)(a,{variant:`link`,className:`back-link`,nativeButton:!1,render:(0,h.jsx)(`a`,{href:b}),children:p(`asset.backGallery`)}),(0,h.jsx)(`h1`,{className:`detail-heading`,children:p(`asset.detailTitle`)}),(0,h.jsx)(c,{state:g,onRetry:_})]})});let x=e?g.catalog.assets.find(t=>t.id===e):void 0,S=x?n(x,r):void 0;return(0,h.jsx)(u,{locale:r,children:(0,h.jsxs)(`div`,{className:`detail-main`,children:[(0,h.jsx)(a,{variant:`link`,className:`back-link`,nativeButton:!1,render:(0,h.jsx)(`a`,{href:b}),children:p(`asset.backGallery`)}),!e&&(0,h.jsxs)(`section`,{className:`detail-empty`,role:`status`,children:[(0,h.jsx)(`h1`,{children:p(`asset.chooseTitle`)}),(0,h.jsx)(`p`,{children:p(`asset.chooseDescription`)})]}),e&&!x&&(0,h.jsxs)(`section`,{className:`detail-empty`,role:`status`,children:[(0,h.jsx)(`h1`,{children:p(`asset.notFoundTitle`)}),(0,h.jsx)(`p`,{children:p(`asset.notFoundDescription`,{id:e})})]}),x&&S&&(0,h.jsx)(s,{asset:x,locale:r})]})})}function _(){let{id:e}=p.useSearch(),{lang:t}=p.useParams();return(0,h.jsx)(g,{id:e,locale:r(t)})}export{_ as component};
|
assets/asset-B_RjD9N6.js
DELETED
|
@@ -1 +0,0 @@
|
|
| 1 |
-
import{t as e}from"./jsx-runtime-LKYXHABd.js";import{bt as t,ht as n,t as r,vt as i}from"./layout.shared-BilCH_HV.js";import{t as a}from"./useTranslation-DdiJj5BA.js";import{c as o,h as s,l as c,n as l,r as u,t as d}from"./use-catalog-B4zb4r4j.js";import{A as f,c as p,j as m,t as h}from"./index-DEDbfth6.js";var g=e();function _({id:e,locale:t}){let{t:p}=a(),{state:_,retry:v}=d(),y=m({select:e=>e.location.searchStr}),b=c(o(new URLSearchParams(y).get(`catalog`)??``)),x=f(`${i(t)}${b?`?${b}`:``}`,!0);if(_.status!==`ready`)return(0,g.jsx)(h,{...r(t),children:(0,g.jsxs)(`main`,{id:`main-content`,className:`detail-main`,children:[(0,g.jsx)(s,{variant:`link`,className:`back-link`,nativeButton:!1,render:(0,g.jsx)(`a`,{href:x}),children:p(`asset.backGallery`)}),(0,g.jsx)(`h1`,{className:`detail-heading`,children:p(`asset.detailTitle`)}),(0,g.jsx)(l,{state:_,onRetry:v})]})});let S=e?_.catalog.assets.find(t=>t.id===e):void 0,C=S?n(S,t):void 0;return(0,g.jsx)(h,{...r(t),children:(0,g.jsxs)(`main`,{id:`main-content`,className:`detail-main`,children:[(0,g.jsx)(s,{variant:`link`,className:`back-link`,nativeButton:!1,render:(0,g.jsx)(`a`,{href:x}),children:p(`asset.backGallery`)}),!e&&(0,g.jsxs)(`section`,{className:`detail-empty`,role:`status`,children:[(0,g.jsx)(`h1`,{children:p(`asset.chooseTitle`)}),(0,g.jsx)(`p`,{children:p(`asset.chooseDescription`)})]}),e&&!S&&(0,g.jsxs)(`section`,{className:`detail-empty`,role:`status`,children:[(0,g.jsx)(`h1`,{children:p(`asset.notFoundTitle`)}),(0,g.jsx)(`p`,{children:p(`asset.notFoundDescription`,{id:e})})]}),S&&C&&(0,g.jsx)(u,{asset:S,locale:t})]})})}function v(){let{id:e}=p.useSearch(),{lang:n}=p.useParams();return(0,g.jsx)(_,{id:e,locale:t(n)})}export{v as component};
|
|
|
|
|
|
assets/fetch-BUKq5roZ.js
DELETED
|
@@ -1 +0,0 @@
|
|
| 1 |
-
export{t as fetchClient}from"./search-default-CRhg9UkM.js";
|
|
|
|
|
|
assets/fetch-vfb-5eKT.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
export{t as fetchClient}from"./search-default-BoNe-vl8.js";
|
assets/gallery-shell-BUNd-Rj8.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
import{r as e}from"./rolldown-runtime-XKyaHtl9.js";import{t}from"./react-DlmbjZJV.js";import{An as n,Dn as r,a as i,bn as a,c as o,fr as s,hr as c,i as l,in as u,jn as d,l as f,on as p,pr as m,sr as h,vr as g}from"./use-on-change-Da5Kx5YO.js";import{t as _}from"./jsx-runtime-LKYXHABd.js";import{A as v,D as y,F as b,I as ee,L as x,O as te,X as S,a as C,c as w,i as ne,k as T,n as re,ot as ie,pt as E,t as D,u as O,x as ae,y as oe}from"./layout.shared-ThDtfT9i.js";import{t as k}from"./useTranslation-D9SCoej_.js";import{t as A}from"./preload-helper-BLdHbfdN.js";var j={name:`maximize-2`,size:24,node:[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`m21 3-7 7`,key:`1l2asr`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M9 21H3v-6`,key:`wtvkvv`}]]};j.node;var se=i(j),M={name:`rotate-ccw`,size:24,node:[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]};M.node;var N=i(M),P={name:`rotate-cw`,size:24,node:[[`path`,{d:`M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8`,key:`1p45f6`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}]]};P.node;var ce=i(P),F=e(t(),1),I=F.forwardRef(function(e,t){let{render:n,className:r,disabled:i=!1,focusableWhenDisabled:a=!1,nativeButton:o=!0,style:s,...c}=e,{getButtonProps:l,buttonRef:u}=ie({disabled:i,focusableWhenDisabled:a,native:o});return h(`button`,e,{state:{disabled:i},ref:[t,u],props:[c,l]})}),le=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},ue=(e,t)=>({classGroupId:e,validator:t}),L=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),R=`-`,z=[],de=`arbitrary..`,fe=e=>{let t=he(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return me(e);let n=e.split(R);return pe(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?le(i,t):t:i||z}return n[e]||z}}},pe=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=pe(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(R):e.slice(t).join(R),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},me=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?de+r:void 0})(),he=e=>{let{theme:t,classGroups:n}=e;return ge(n,t)},ge=(e,t)=>{let n=L();for(let r in e){let i=e[r];_e(i,n,r,t)}return n},_e=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];ve(i,t,n,r)}},ve=(e,t,n,r)=>{typeof e==`string`?ye(e,t,n):typeof e==`function`?be(e,t,n,r):xe(e,t,n,r)},ye=(e,t,n)=>{let r=e===``?t:Se(t,e);r.classGroupId=n},be=(e,t,n,r)=>{Ce(e)?_e(e(r),t,n,r):(t.validators===null&&(t.validators=[]),t.validators.push(ue(n,e)))},xe=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];_e(o,Se(t,a),n,r)}},Se=(e,t)=>{let n=e,r=t.split(R),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=L(),n.nextPart.set(t,i)),n=i}return n},Ce=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,we=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},Te=`!`,Ee=`:`,De=[],Oe=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),ke=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===Ee){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(Te)?(c=s.slice(0,-1),l=!0):s.startsWith(Te)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return Oe(t,l,c,u)};if(t){let e=t+Ee,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):Oe(De,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},Ae=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},je=e=>({cache:we(e.cacheSize),parseClassName:ke(e),sortModifiers:Ae(e),postfixLookupClassGroupIds:Me(e),...fe(e)}),Me=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e<n.length;e++)t[n[e]]=!0;return t},Ne=/\s+/,Pe=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(Ne),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:m}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let h=!!m,g;if(h){g=r(p.substring(0,m));let e=g&&o[g]?r(p):void 0;e&&e!==g&&(g=e,h=!1)}else g=r(p);if(!g){if(!h||(g=r(p),!g)){l=t+(l.length>0?` `+l:l);continue}h=!1}let _=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),v=f?_+Te:_,y=v+g;if(s.indexOf(y)>-1)continue;s.push(y);let b=i(g,h);for(let e=0;e<b.length;++e){let t=b[e];s.push(v+t)}l=t+(l.length>0?` `+l:l)}return l},Fe=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=Ie(n))&&(i&&(i+=` `),i+=r);return i},Ie=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=Ie(e[r]))&&(n&&(n+=` `),n+=t);return n},Le=(e,...t)=>{let n,r,i,a,o=o=>(n=je(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=Pe(e,n);return i(e,a),a};return a=o,(...e)=>a(Fe(...e))},Re=[],B=e=>{let t=t=>t[e]||Re;return t.isThemeGetter=!0,t.themeKey=e,t},ze=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Be=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Ve=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,He=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Ue=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,We=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix|color|light-dark)\(.+\)$/,Ge=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Ke=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,V=e=>Ve.test(e),H=e=>!!e&&!Number.isNaN(Number(e)),U=e=>!!e&&Number.isInteger(Number(e)),qe=e=>e.endsWith(`%`)&&H(e.slice(0,-1)),W=e=>He.test(e),Je=()=>!0,Ye=e=>Ue.test(e)&&!We.test(e),Xe=()=>!1,Ze=e=>Ge.test(e),Qe=e=>Ke.test(e),$e=e=>!G(e)&&!q(e),et=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),tt=e=>J(e,_t,Xe),G=e=>ze.test(e),K=e=>J(e,vt,Ye),nt=e=>J(e,yt,H),rt=e=>J(e,xt,Je),it=e=>J(e,bt,Xe),at=e=>J(e,ht,Xe),ot=e=>J(e,gt,Qe),st=e=>J(e,St,Ze),q=e=>Be.test(e),ct=e=>Y(e,vt),lt=e=>Y(e,bt),ut=e=>Y(e,ht),dt=e=>Y(e,_t),ft=e=>Y(e,gt),pt=e=>Y(e,St,!0),mt=e=>Y(e,xt,!0),J=(e,t,n)=>{let r=ze.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Y=(e,t,n=!1)=>{let r=Be.exec(e);return r?r[1]?t(r[1]):n:!1},ht=e=>e===`position`||e===`percentage`,gt=e=>e===`image`||e===`url`,_t=e=>e===`length`||e===`size`||e===`bg-size`,vt=e=>e===`length`,yt=e=>e===`number`,bt=e=>e===`family-name`,xt=e=>e===`number`||e===`weight`,St=e=>e===`shadow`,Ct=Le(()=>{let e=B(`color`),t=B(`font`),n=B(`text`),r=B(`font-weight`),i=B(`tracking`),a=B(`leading`),o=B(`breakpoint`),s=B(`container`),c=B(`spacing`),l=B(`radius`),u=B(`shadow`),d=B(`inset-shadow`),f=B(`text-shadow`),p=B(`drop-shadow`),m=B(`blur`),h=B(`perspective`),g=B(`aspect`),_=B(`ease`),v=B(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],ee=()=>[...b(),q,G],x=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],te=()=>[`auto`,`contain`,`none`],S=()=>[q,G,c],C=()=>[V,`full`,`auto`,...S()],w=()=>[U,`none`,`subgrid`,q,G],ne=()=>[`auto`,{span:[`full`,U,q,G]},U,q,G],T=()=>[U,`auto`,q,G],re=()=>[`auto`,`min`,`max`,`fr`,q,G],ie=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],E=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],D=()=>[`auto`,...S()],O=()=>[V,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...S()],ae=()=>[s,V,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...S()],oe=()=>[V,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...S()],k=()=>[e,q,G],A=()=>[...b(),ut,at,{position:[q,G]}],j=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],se=()=>[`auto`,`cover`,`contain`,dt,tt,{size:[q,G]}],M=()=>[qe,ct,K],N=()=>[``,`none`,`full`,l,q,G],P=()=>[``,H,ct,K],ce=()=>[`solid`,`dashed`,`dotted`,`double`],F=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],I=()=>[H,qe,ut,at],le=()=>[``,`none`,m,q,G],ue=()=>[`none`,H,q,G],L=()=>[`none`,H,q,G],R=()=>[H,q,G],z=()=>[V,`full`,...S()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[W],breakpoint:[W],color:[Je],container:[W],"drop-shadow":[W],ease:[`in`,`out`,`in-out`],font:[$e],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[W],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[W],shadow:[W],spacing:[`px`,H],text:[W],"text-shadow":[W],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,V,G,q,g]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,q,G]}],"container-named":[et],columns:[{columns:[H,`auto`,G,q,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:ee()}],overflow:[{overflow:x()}],"overflow-x":[{"overflow-x":x()}],"overflow-y":[{"overflow-y":x()}],overscroll:[{overscroll:te()}],"overscroll-x":[{"overscroll-x":te()}],"overscroll-y":[{"overscroll-y":te()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:C()}],"inset-x":[{"inset-x":C()}],"inset-y":[{"inset-y":C()}],start:[{"inset-s":C(),start:C()}],end:[{"inset-e":C(),end:C()}],"inset-bs":[{"inset-bs":C()}],"inset-be":[{"inset-be":C()}],top:[{top:C()}],right:[{right:C()}],bottom:[{bottom:C()}],left:[{left:C()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[U,`auto`,q,G]}],basis:[{basis:[V,`full`,`auto`,s,...S()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[H,V,`auto`,`initial`,`none`,G]}],grow:[{grow:[``,H,q,G]}],shrink:[{shrink:[``,H,q,G]}],order:[{order:[U,`first`,`last`,`none`,q,G]}],"grid-cols":[{"grid-cols":w()}],"col-start-end":[{col:ne()}],"col-start":[{"col-start":T()}],"col-end":[{"col-end":T()}],"grid-rows":[{"grid-rows":w()}],"row-start-end":[{row:ne()}],"row-start":[{"row-start":T()}],"row-end":[{"row-end":T()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":re()}],"auto-rows":[{"auto-rows":re()}],gap:[{gap:S()}],"gap-x":[{"gap-x":S()}],"gap-y":[{"gap-y":S()}],"justify-content":[{justify:[...ie(),`normal`]}],"justify-items":[{"justify-items":[...E(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...E()]}],"align-content":[{content:[`normal`,...ie()]}],"align-items":[{items:[...E(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...E(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":ie()}],"place-items":[{"place-items":[...E(),`baseline`]}],"place-self":[{"place-self":[`auto`,...E()]}],p:[{p:S()}],px:[{px:S()}],py:[{py:S()}],ps:[{ps:S()}],pe:[{pe:S()}],pbs:[{pbs:S()}],pbe:[{pbe:S()}],pt:[{pt:S()}],pr:[{pr:S()}],pb:[{pb:S()}],pl:[{pl:S()}],m:[{m:D()}],mx:[{mx:D()}],my:[{my:D()}],ms:[{ms:D()}],me:[{me:D()}],mbs:[{mbs:D()}],mbe:[{mbe:D()}],mt:[{mt:D()}],mr:[{mr:D()}],mb:[{mb:D()}],ml:[{ml:D()}],"space-x":[{"space-x":S()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":S()}],"space-y-reverse":[`space-y-reverse`],size:[{size:O()}],"inline-size":[{inline:[`auto`,...ae()]}],"min-inline-size":[{"min-inline":[`auto`,...ae()]}],"max-inline-size":[{"max-inline":[`none`,...ae()]}],"block-size":[{block:[`auto`,...oe()]}],"min-block-size":[{"min-block":[`auto`,...oe()]}],"max-block-size":[{"max-block":[`none`,...oe()]}],w:[{w:[s,`screen`,...O()]}],"min-w":[{"min-w":[s,`screen`,`none`,...O()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...O()]}],h:[{h:[`screen`,`lh`,...O()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...O()]}],"max-h":[{"max-h":[`screen`,`lh`,`none`,...O()]}],"font-size":[{text:[`base`,n,ct,K]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,mt,rt]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,qe,G]}],"font-family":[{font:[lt,it,t]}],"font-features":[{"font-features":[G]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,q,G]}],"line-clamp":[{"line-clamp":[H,`none`,q,nt]}],leading:[{leading:[`none`,a,...S()]}],"list-image":[{"list-image":[`none`,q,G]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,q,G]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:k()}],"text-color":[{text:k()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...ce(),`wavy`]}],"text-decoration-thickness":[{decoration:[H,`from-font`,`auto`,q,K]}],"text-decoration-color":[{decoration:k()}],"underline-offset":[{"underline-offset":[H,`auto`,q,G]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:S()}],"tab-size":[{tab:[U,q,G]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,q,G]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,q,G]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:A()}],"bg-repeat":[{bg:j()}],"bg-size":[{bg:se()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},U,q,G],radial:[``,q,G],conic:[``,U,q,G]},ft,ot]}],"bg-color":[{bg:k()}],"gradient-from-pos":[{from:M()}],"gradient-via-pos":[{via:M()}],"gradient-to-pos":[{to:M()}],"gradient-from":[{from:k()}],"gradient-via":[{via:k()}],"gradient-to":[{to:k()}],rounded:[{rounded:N()}],"rounded-s":[{"rounded-s":N()}],"rounded-e":[{"rounded-e":N()}],"rounded-t":[{"rounded-t":N()}],"rounded-r":[{"rounded-r":N()}],"rounded-b":[{"rounded-b":N()}],"rounded-l":[{"rounded-l":N()}],"rounded-ss":[{"rounded-ss":N()}],"rounded-se":[{"rounded-se":N()}],"rounded-ee":[{"rounded-ee":N()}],"rounded-es":[{"rounded-es":N()}],"rounded-tl":[{"rounded-tl":N()}],"rounded-tr":[{"rounded-tr":N()}],"rounded-br":[{"rounded-br":N()}],"rounded-bl":[{"rounded-bl":N()}],"border-w":[{border:P()}],"border-w-x":[{"border-x":P()}],"border-w-y":[{"border-y":P()}],"border-w-s":[{"border-s":P()}],"border-w-e":[{"border-e":P()}],"border-w-bs":[{"border-bs":P()}],"border-w-be":[{"border-be":P()}],"border-w-t":[{"border-t":P()}],"border-w-r":[{"border-r":P()}],"border-w-b":[{"border-b":P()}],"border-w-l":[{"border-l":P()}],"divide-x":[{"divide-x":P()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":P()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...ce(),`hidden`,`none`]}],"divide-style":[{divide:[...ce(),`hidden`,`none`]}],"border-color":[{border:k()}],"border-color-x":[{"border-x":k()}],"border-color-y":[{"border-y":k()}],"border-color-s":[{"border-s":k()}],"border-color-e":[{"border-e":k()}],"border-color-bs":[{"border-bs":k()}],"border-color-be":[{"border-be":k()}],"border-color-t":[{"border-t":k()}],"border-color-r":[{"border-r":k()}],"border-color-b":[{"border-b":k()}],"border-color-l":[{"border-l":k()}],"divide-color":[{divide:k()}],"outline-style":[{outline:[...ce(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[H,q,G]}],"outline-w":[{outline:[``,H,ct,K]}],"outline-color":[{outline:k()}],shadow:[{shadow:[``,`inner`,`none`,u,pt,st]}],"shadow-color":[{shadow:k()}],"inset-shadow":[{"inset-shadow":[`none`,d,pt,st]}],"inset-shadow-color":[{"inset-shadow":k()}],"ring-w":[{ring:P()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:k()}],"ring-offset-w":[{"ring-offset":[H,K]}],"ring-offset-color":[{"ring-offset":k()}],"inset-ring-w":[{"inset-ring":P()}],"inset-ring-color":[{"inset-ring":k()}],"text-shadow":[{"text-shadow":[`none`,f,pt,st]}],"text-shadow-color":[{"text-shadow":k()}],opacity:[{opacity:[H,q,G]}],"mix-blend":[{"mix-blend":[...F(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":F()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[H]}],"mask-image-linear-from-pos":[{"mask-linear-from":I()}],"mask-image-linear-to-pos":[{"mask-linear-to":I()}],"mask-image-linear-from-color":[{"mask-linear-from":k()}],"mask-image-linear-to-color":[{"mask-linear-to":k()}],"mask-image-t-from-pos":[{"mask-t-from":I()}],"mask-image-t-to-pos":[{"mask-t-to":I()}],"mask-image-t-from-color":[{"mask-t-from":k()}],"mask-image-t-to-color":[{"mask-t-to":k()}],"mask-image-r-from-pos":[{"mask-r-from":I()}],"mask-image-r-to-pos":[{"mask-r-to":I()}],"mask-image-r-from-color":[{"mask-r-from":k()}],"mask-image-r-to-color":[{"mask-r-to":k()}],"mask-image-b-from-pos":[{"mask-b-from":I()}],"mask-image-b-to-pos":[{"mask-b-to":I()}],"mask-image-b-from-color":[{"mask-b-from":k()}],"mask-image-b-to-color":[{"mask-b-to":k()}],"mask-image-l-from-pos":[{"mask-l-from":I()}],"mask-image-l-to-pos":[{"mask-l-to":I()}],"mask-image-l-from-color":[{"mask-l-from":k()}],"mask-image-l-to-color":[{"mask-l-to":k()}],"mask-image-x-from-pos":[{"mask-x-from":I()}],"mask-image-x-to-pos":[{"mask-x-to":I()}],"mask-image-x-from-color":[{"mask-x-from":k()}],"mask-image-x-to-color":[{"mask-x-to":k()}],"mask-image-y-from-pos":[{"mask-y-from":I()}],"mask-image-y-to-pos":[{"mask-y-to":I()}],"mask-image-y-from-color":[{"mask-y-from":k()}],"mask-image-y-to-color":[{"mask-y-to":k()}],"mask-image-radial":[{"mask-radial":[q,G]}],"mask-image-radial-from-pos":[{"mask-radial-from":I()}],"mask-image-radial-to-pos":[{"mask-radial-to":I()}],"mask-image-radial-from-color":[{"mask-radial-from":k()}],"mask-image-radial-to-color":[{"mask-radial-to":k()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[H]}],"mask-image-conic-from-pos":[{"mask-conic-from":I()}],"mask-image-conic-to-pos":[{"mask-conic-to":I()}],"mask-image-conic-from-color":[{"mask-conic-from":k()}],"mask-image-conic-to-color":[{"mask-conic-to":k()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:A()}],"mask-repeat":[{mask:j()}],"mask-size":[{mask:se()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,q,G]}],filter:[{filter:[``,`none`,q,G]}],blur:[{blur:le()}],brightness:[{brightness:[H,q,G]}],contrast:[{contrast:[H,q,G]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,pt,st]}],"drop-shadow-color":[{"drop-shadow":k()}],grayscale:[{grayscale:[``,H,q,G]}],"hue-rotate":[{"hue-rotate":[H,q,G]}],invert:[{invert:[``,H,q,G]}],saturate:[{saturate:[H,q,G]}],sepia:[{sepia:[``,H,q,G]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,q,G]}],"backdrop-blur":[{"backdrop-blur":le()}],"backdrop-brightness":[{"backdrop-brightness":[H,q,G]}],"backdrop-contrast":[{"backdrop-contrast":[H,q,G]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,H,q,G]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[H,q,G]}],"backdrop-invert":[{"backdrop-invert":[``,H,q,G]}],"backdrop-opacity":[{"backdrop-opacity":[H,q,G]}],"backdrop-saturate":[{"backdrop-saturate":[H,q,G]}],"backdrop-sepia":[{"backdrop-sepia":[``,H,q,G]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":S()}],"border-spacing-x":[{"border-spacing-x":S()}],"border-spacing-y":[{"border-spacing-y":S()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,q,G]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[H,`initial`,q,G]}],ease:[{ease:[`linear`,`initial`,_,q,G]}],delay:[{delay:[H,q,G]}],animate:[{animate:[`none`,v,q,G]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,q,G]}],"perspective-origin":[{"perspective-origin":ee()}],rotate:[{rotate:ue()}],"rotate-x":[{"rotate-x":ue()}],"rotate-y":[{"rotate-y":ue()}],"rotate-z":[{"rotate-z":ue()}],scale:[{scale:L()}],"scale-x":[{"scale-x":L()}],"scale-y":[{"scale-y":L()}],"scale-z":[{"scale-z":L()}],"scale-3d":[`scale-3d`],skew:[{skew:R()}],"skew-x":[{"skew-x":R()}],"skew-y":[{"skew-y":R()}],transform:[{transform:[q,G,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:ee()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:z()}],"translate-x":[{"translate-x":z()}],"translate-y":[{"translate-y":z()}],"translate-z":[{"translate-z":z()}],"translate-none":[`translate-none`],zoom:[{zoom:[U,q,G]}],accent:[{accent:k()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:k()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,q,G]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":k()}],"scrollbar-track-color":[{"scrollbar-track":k()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":S()}],"scroll-mx":[{"scroll-mx":S()}],"scroll-my":[{"scroll-my":S()}],"scroll-ms":[{"scroll-ms":S()}],"scroll-me":[{"scroll-me":S()}],"scroll-mbs":[{"scroll-mbs":S()}],"scroll-mbe":[{"scroll-mbe":S()}],"scroll-mt":[{"scroll-mt":S()}],"scroll-mr":[{"scroll-mr":S()}],"scroll-mb":[{"scroll-mb":S()}],"scroll-ml":[{"scroll-ml":S()}],"scroll-p":[{"scroll-p":S()}],"scroll-px":[{"scroll-px":S()}],"scroll-py":[{"scroll-py":S()}],"scroll-ps":[{"scroll-ps":S()}],"scroll-pe":[{"scroll-pe":S()}],"scroll-pbs":[{"scroll-pbs":S()}],"scroll-pbe":[{"scroll-pbe":S()}],"scroll-pt":[{"scroll-pt":S()}],"scroll-pr":[{"scroll-pr":S()}],"scroll-pb":[{"scroll-pb":S()}],"scroll-pl":[{"scroll-pl":S()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,q,G]}],fill:[{fill:[`none`,...k()]}],"stroke-w":[{stroke:[H,ct,K,nt]}],stroke:[{stroke:[`none`,...k()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`start`,`end`,`right`,`left`],"inset-y":[`inset-bs`,`inset-be`,`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`ps`,`pe`,`pr`,`pl`],py:[`pbs`,`pbe`,`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`ms`,`me`,`mr`,`ml`],my:[`mbs`,`mbe`,`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-s`,`border-w-e`,`border-w-r`,`border-w-l`],"border-w-y":[`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-s`,`border-color-e`,`border-color-r`,`border-color-l`],"border-color-y":[`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-ms`,`scroll-me`,`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-ps`,`scroll-pe`,`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function wt(...e){return Ct(f(e))}var X=_(),Tt=o(`group/button inline-flex shrink-0 items-center justify-center rounded-lg border-[0.5px] border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-none outline-none select-none focus-visible:border-ring focus-visible:outline focus-visible:outline-[0.5px] focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/80`,outline:`border-control-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-control-border dark:bg-input/30 dark:hover:bg-input/50`,secondary:`bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground`,ghost:`hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50`,destructive:`bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`,xs:`h-10 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3`,sm:`h-10 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-sm in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5`,lg:`h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`,icon:`size-10`,"icon-xs":`size-10 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3`,"icon-sm":`size-10 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg`,"icon-lg":`size-10`}},defaultVariants:{variant:`default`,size:`default`}});function Z({className:e,variant:t=`default`,size:n=`default`,...r}){return(0,X.jsx)(I,{"data-slot":`button`,className:wt(Tt({variant:t,size:n,className:e})),...r})}function Et(e){return e===`id-asc`||e===`name-asc`||e===`triangles-asc`||e===`triangles-desc`}var Dt=`Uncategorized`;function Ot(e){let t=(e??``).split(/[/>]/).map(e=>e.trim()).filter(Boolean);return t.length>0?t:[Dt]}function kt(e){return e===null?null:e<5e3?`under-5k`:e<25e3?`5k-to-25k`:`25k-plus`}function At(e,t){return t===`glb`?!!e.glb_url:!!e.blend_url}function jt(e){let t=[];for(let n of e){let e=t,r=``;for(let t of Ot(n.category)){r=r?`${r}/${t}`:t;let n=e.find(e=>e.label===t);n||(n={label:t,path:r,count:0,children:[]},e.push(n)),n.count+=1,e=n.children}}let n=e=>e.map(e=>({...e,children:n(e.children)})).sort((e,t)=>e.label.localeCompare(t.label));return n(t)}function Mt(e){let t=new Map,n={"under-5k":0,"5k-to-25k":0,"25k-plus":0},r={glb:0,blend:0};for(let i of e){for(let e of i.tags){let n=e.trim();n&&t.set(n,(t.get(n)??0)+1)}for(let e of[`glb`,`blend`])At(i,e)&&(r[e]+=1);let e=kt(i.triangles);e&&(n[e]+=1)}return{categories:jt(e),formats:r,tags:[...t].map(([e,t])=>({label:e,count:t})).sort((e,t)=>e.label.localeCompare(t.label)),triangleBands:n}}function Nt(e){return e.normalize(`NFKC`).toLowerCase()}function Pt(e,t){if(!t)return!0;let n=t.split(`/`),r=Ot(e.category);return n.every((e,t)=>r[t]===e)}function Ft(e,t){return t===`zh`&&e.name_zh.trim()?e.name_zh:e.name_en}function It(e,t){return e===null&&t===null?0:e===null?1:t===null?-1:e-t}function Lt(e,t,n,r){let i=Nt(t.query.trim()),a=new Set(t.tags),o=new Set(t.formats),s=e.filter(e=>{if(i&&!Nt([e.id,e.name_en,e.name_zh,e.category??``,...e.tags].join(` `)).includes(i)||!Pt(e,t.categoryPath)||[...a].some(t=>!e.tags.includes(t))||o.size>0&&![...o].some(t=>At(e,t))||t.triangleBand&&kt(e.triangles)!==t.triangleBand||t.license&&e.license!==t.license||t.source&&e.source!==t.source||t.withPreview&&!e.preview_url&&!e.glb_url)return!1;if(t.dimension){if(!e.dimensions_m)return!1;let n=Math.max(...e.dimensions_m);if(t.dimension===`under-1m`?n>=1:n<1)return!1}return!0});return s.sort((e,t)=>{if(n===`name-asc`){let n=r===`zh`?`zh-CN`:`en`;return Ft(e,r).localeCompare(Ft(t,r),n)||e.id.localeCompare(t.id,void 0,{numeric:!0})}return n===`triangles-asc`?It(e.triangles,t.triangles)||e.id.localeCompare(t.id,void 0,{numeric:!0}):n===`triangles-desc`&&(e.triangles===null||t.triangles===null?It(e.triangles,t.triangles):t.triangles-e.triangles)||e.id.localeCompare(t.id,void 0,{numeric:!0})}),s}function Rt(e,t){if(!Number.isSafeInteger(t)||t<1)throw RangeError(`Virtual grid columns must be a positive integer.`);let n=[];for(let r=0;r<e.length;r+=t)n.push(e.slice(r,r+t));return n}function zt(e){return!!(e.query.trim()||e.categoryPath||e.formats.length||e.tags.length||e.triangleBand||e.license||e.source||e.dimension||e.withPreview)}var Bt={query:``,categoryPath:null,formats:[],tags:[],triangleBand:null};function Vt(){return{filters:{...Bt},sort:`id-asc`,view:`grid`,density:`medium`,asset:null,dock:`right`,expanded:!1,selected:[]}}var Ht=/^LPW-\d{5}$/;function Ut(e){let t=[...new Set(e.filter(e=>Ht.test(e)).map(e=>Number(e.slice(4))))].sort((e,t)=>e-t),n=[];for(let e=0;e<t.length;e++){let r=t[e],i=r;for(;t[e+1]===i+1;)i=t[++e];n.push(r===i?r.toString(36):`${r.toString(36)}-${i.toString(36)}`)}return n.join(`.`)}function Wt(e){let t=[];for(let n of e.split(`.`)){if(!/^[0-9a-z]+(?:-[0-9a-z]+)?$/.test(n))continue;let[e,r]=n.split(`-`),i=parseInt(e,36),a=r?parseInt(r,36):i;if(!(i>a||a>99999||a-i>=1e4)){for(let e=i;e<=a&&t.length<1e4;e++)t.push(`LPW-${String(e).padStart(5,`0`)}`);if(t.length>=1e4)break}}return[...new Set(t)].sort()}var Gt=e=>[...new Set(e.filter(Boolean))];function Kt(e){let t=new URLSearchParams(e),n=Vt(),r=e=>{let n=t.get(e);if(n?.startsWith(`"`))try{let e=JSON.parse(n);if(typeof e==`string`)return e}catch{}return n},i=e=>t.getAll(e).flatMap(e=>{if(!e.startsWith(`[`))return[e];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}catch{return[]}}),a=r(`triangles`);n.filters={query:(r(`q`)??``).slice(0,500),categoryPath:r(`category`)?.slice(0,300)||null,formats:Gt(i(`format`)).filter(e=>e===`glb`||e===`blend`).sort(),tags:Gt(i(`tag`)).slice(0,50).sort(),triangleBand:a===`under-5k`||a===`5k-to-25k`||a===`25k-plus`?a:null,license:r(`license`)?.slice(0,300)||null,source:r(`source`)?.slice(0,300)||null,dimension:r(`dimension`)===`under-1m`?`under-1m`:r(`dimension`)===`1m-plus`?`1m-plus`:null,withPreview:r(`preview`)===`1`};let o=r(`sort`)??``;Et(o)&&(n.sort=o),r(`view`)===`list`&&(n.view=`list`);let s=r(`density`);(s===`small`||s===`large`)&&(n.density=s);let c=r(`asset`);n.asset=c&&Ht.test(c)?c:null;let l=r(`dock`);return(l===`left`||l===`bottom`)&&(n.dock=l),n.expanded=!!(n.asset&&r(`expanded`)===`1`),n.selected=Gt([...i(`selected`),...Wt(r(`selection`)??``)]).filter(e=>Ht.test(e)).slice(0,1e4).sort(),n}function qt(e){let t=new URLSearchParams,n=e.filters;n.query&&t.set(`q`,n.query),n.categoryPath&&t.set(`category`,n.categoryPath);for(let e of[...n.formats].sort())t.append(`format`,e);for(let e of[...new Set(n.tags)].sort())t.append(`tag`,e);n.triangleBand&&t.set(`triangles`,n.triangleBand),n.license&&t.set(`license`,n.license),n.source&&t.set(`source`,n.source),n.dimension&&t.set(`dimension`,n.dimension),n.withPreview&&t.set(`preview`,`1`),e.sort!==`id-asc`&&t.set(`sort`,e.sort),e.view!==`grid`&&t.set(`view`,e.view),e.density!==`medium`&&t.set(`density`,e.density),e.asset&&t.set(`asset`,e.asset),e.dock!==`right`&&t.set(`dock`,e.dock),e.asset&&e.expanded&&t.set(`expanded`,`1`);let r=[...new Set(e.selected)].sort();if(r.length>20)t.set(`selection`,Ut(r));else for(let e of r)t.append(`selected`,e);return t.toString()}function Jt({modelUrl:e,previewUrl:t,assetName:n}){let{t:r}=k(),i=(0,F.useRef)(null),a=(0,F.useRef)(null),[o,s]=(0,F.useState)(`loading`),[c,l]=(0,F.useState)(!1),[u,d]=(0,F.useState)(!1),[f,p]=(0,F.useState)(!1),[m,h]=(0,F.useState)(!1),[g,_]=(0,F.useState)(!1);(0,F.useEffect)(()=>{let e=i.current;h(typeof e?.requestFullscreen==`function`);let t=()=>p(document.fullscreenElement===e);return document.addEventListener(`fullscreenchange`,t),()=>document.removeEventListener(`fullscreenchange`,t)},[]),(0,F.useEffect)(()=>{if(!e){s(`error`);return}let t=a.current;if(!t)return;let n=!0;s(`loading`);let r=()=>{n&&s(`ready`)},i=()=>{n&&s(`error`)};return t.addEventListener(`load`,r),t.addEventListener(`error`,i),A(()=>import(`./model-viewer-BPdKr1IB.js`).then(()=>{n&&t.loaded&&s(`ready`)}),[]).catch(()=>{n&&s(`error`)}),()=>{n=!1,t.removeEventListener(`load`,r),t.removeEventListener(`error`,i)}},[e]);function v(){let e=a.current;e&&(e.cameraOrbit=`auto auto auto`,e.cameraTarget=`auto auto auto`,e.fieldOfView=`auto`,e.resetTurntableRotation(0),e.jumpCameraToGoal())}async function y(){let e=i.current;if(e){_(!1);try{document.fullscreenElement===e?await document.exitFullscreen():await e.requestFullscreen()}catch{_(!0)}}}return(0,X.jsxs)(`section`,{className:`viewer-panel`,"aria-label":r(`asset.viewerLabel`),children:[(0,X.jsxs)(`div`,{className:`viewer-stage`,ref:i,children:[t&&!u&&o!==`ready`&&(0,X.jsx)(`img`,{className:`viewer-poster`,src:t,alt:n,onError:()=>d(!0)}),e&&(0,X.jsx)(`model-viewer`,{ref:a,className:o===`error`?`model-viewer model-viewer-hidden`:`model-viewer`,src:e,alt:n,poster:t??void 0,loading:`lazy`,reveal:`auto`,"camera-controls":!0,"auto-rotate":c,"auto-rotate-delay":`1000`,"rotation-per-second":`18deg`,"interaction-prompt":`none`,"touch-action":`pan-y`,"camera-orbit":`auto auto auto`,"camera-target":`auto auto auto`,"field-of-view":`auto`}),o===`loading`&&e&&(0,X.jsx)(`div`,{className:`viewer-status`,role:`status`,children:r(`asset.viewerLoading`)}),o===`error`&&(0,X.jsx)(`div`,{className:`viewer-status viewer-status-error`,role:`status`,children:r(e?`asset.viewerError`:`asset.viewerMissing`)}),(!t||u)&&o!==`ready`&&(0,X.jsx)(`div`,{className:`viewer-no-preview`,children:r(`asset.noPreview`)})]}),(0,X.jsxs)(`div`,{className:`viewer-controls`,"aria-label":r(`asset.viewerControls`),children:[(0,X.jsxs)(Z,{type:`button`,size:`sm`,variant:`secondary`,onClick:v,disabled:o!==`ready`,children:[(0,X.jsx)(N,{"aria-hidden":`true`}),r(`asset.resetView`)]}),(0,X.jsxs)(Z,{type:`button`,size:`sm`,variant:c?`default`:`secondary`,"aria-pressed":c,onClick:()=>l(e=>!e),disabled:o!==`ready`,children:[(0,X.jsx)(ce,{"aria-hidden":`true`}),r(c?`asset.rotateOff`:`asset.rotateOn`)]}),(0,X.jsxs)(Z,{type:`button`,size:`sm`,variant:`secondary`,onClick:()=>void y(),disabled:!m,"aria-pressed":f,children:[(0,X.jsx)(se,{"aria-hidden":`true`}),r(f?`asset.exitFullscreen`:`asset.enterFullscreen`)]})]}),g&&(0,X.jsx)(`p`,{className:`viewer-note`,role:`status`,children:r(`asset.fullscreenUnavailable`)})]})}function Yt({...e}){return(0,X.jsx)(x,{"data-slot":`collapsible`,...e})}function Xt({...e}){return(0,X.jsx)(ee,{"data-slot":`collapsible-trigger`,...e})}function Zt({...e}){return(0,X.jsx)(b,{"data-slot":`collapsible-content`,...e})}function Qt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function $t(e){return e===null||typeof e==`string`||typeof e==`boolean`?!0:typeof e==`number`?Number.isFinite(e):Array.isArray(e)?e.every($t):Qt(e)&&Object.values(e).every($t)}function Q(e,t){if(e==null||e===``)return null;if(typeof e!=`string`)throw Error(`Metadata field "${t}" must be a string or null.`);return e.trim()||null}function en(e,t){if(e==null)return null;if(!$t(e))throw Error(`Metadata field "${t}" must contain JSON data.`);return e}function tn(e){if(!Qt(e)||e.rights_confirmed!==!0)return null;let t=Q(e.url,`source_input_image.url`),n=Q(e.rights_statement,`source_input_image.rights_statement`);if(!t||!n)return null;try{return{url:C(t,`source_input_image.url`),rights_statement:n}}catch{return null}}function nn(e){if(e==null)return[];if(!Array.isArray(e))throw Error(`Metadata field "preview_urls" must be an array.`);return e.map((e,t)=>C(e,`preview_urls[${t}]`))}function rn(e,t){if(!Qt(e))throw Error(`Release metadata must be a JSON object.`);let n=Q(e.id,`id`);if(n&&n!==t)throw Error(`Release metadata ID does not match the asset.`);let r=Q(e.published_at_utc,`published_at_utc`);if(r&&Number.isNaN(Date.parse(r)))throw Error(`Metadata field "published_at_utc" must be a date string.`);return{id:n,source:Q(e.source,`source`),revision:Q(e.revision,`revision`),published_at_utc:r,quality:en(e.quality,`quality`),recipe:en(e.recipe,`recipe`),preview_urls:nn(e.preview_urls),source_input_image:tn(e.source_input_image)}}function an(e){return e.trim()||null}function on(e){let t=e.trim();if(!t)return null;let n;try{n=JSON.parse(t)}catch{throw Error(`Recipe metadata is not valid JSON.`)}if(!$t(n))throw Error(`Recipe metadata must contain JSON data.`);return n}async function sn(e,t,n,r){if(!e)return{status:`not-supplied`};try{let i=await n(e,{signal:r});if(!i.ok)return{status:`unavailable`};let a=await i.text();if(a.length>1e6)return{status:`unavailable`};let o=t(a);return o===null?{status:`not-supplied`}:{status:`available`,value:o}}catch{if(r?.aborted)throw new DOMException(`Metadata read aborted.`,`AbortError`);return{status:`unavailable`}}}async function cn(e,t=fetch,n){let[r,i,a]=await Promise.all([sn(e.metadata_url,t=>rn(JSON.parse(t),e.id),t,n),sn(e.prompt_url,an,t,n),sn(e.settings_url,on,t,n)]);return{release:r,prompt:i,recipe:a}}function ln(e){let[t,n]=(0,F.useState)(0),[r,i]=(0,F.useState)({status:`loading`});return(0,F.useEffect)(()=>{let t=new AbortController;return i({status:`loading`}),cn(e,fetch,t.signal).then(e=>{t.signal.aborted||i({status:`ready`,details:e})}).catch(()=>{t.signal.aborted||i({status:`error`})}),()=>t.abort()},[e,t]),{state:r,retry:()=>n(e=>e+1)}}function un(e){return JSON.stringify(e,null,2)}function $(e,t){return e===null||e===``?t:String(e)}function dn(e){return e!=null}function fn({title:e,status:t,value:n,notSupplied:r,unavailable:i}){return(0,X.jsxs)(Yt,{className:`metadata-block`,children:[(0,X.jsx)(Xt,{render:(0,X.jsx)(Z,{variant:`ghost`,className:`justify-start`}),children:e}),(0,X.jsxs)(Zt,{children:[t===`available`&&(0,X.jsx)(`pre`,{className:`metadata-text`,children:n}),t===`loading`&&(0,X.jsx)(`p`,{className:`metadata-note`,role:`status`,children:`…`}),t===`not-supplied`&&(0,X.jsx)(`p`,{className:`metadata-note`,children:r}),t===`unavailable`&&(0,X.jsx)(`p`,{className:`metadata-note`,role:`status`,children:i})]})]})}function pn({asset:e,release:t}){let{t:n}=k(),r=(0,F.useMemo)(()=>[...new Set([e.preview_url,...e.preview_urls,...t?.preview_urls??[]])].filter(e=>!!e),[e.preview_url,e.preview_urls,t?.preview_urls]);return r.length===0?(0,X.jsx)(`p`,{className:`metadata-note`,children:n(`asset.notSupplied`)}):(0,X.jsx)(`div`,{className:`preview-gallery`,children:r.map((e,t)=>(0,X.jsxs)(`figure`,{children:[(0,X.jsx)(`img`,{src:e,loading:`lazy`,alt:n(`asset.previewImageAlt`,{index:t+1})}),(0,X.jsx)(`figcaption`,{children:n(`asset.previewLabel`,{index:t+1})})]},e))})}function mn({asset:e}){let{t}=k(),{state:n,retry:r}=ln(e),i=n.status===`ready`&&n.details.release.status===`available`?n.details.release.value:null,a=t(`asset.notSupplied`),o=t(`asset.metadataUnavailable`),s=n.status===`ready`?n.details.prompt:null,c=n.status===`ready`?n.details.recipe:null,l=i?.recipe,u=i?.quality,d=c?.status===`available`?un(c.value):dn(l)?un(l):void 0,f=c?.status===`available`||dn(l),p=c?.status===`unavailable`||n.status===`error`||n.status===`ready`&&n.details.release.status===`unavailable`,m=f?`available`:n.status===`loading`?`loading`:p?`unavailable`:`not-supplied`,h=dn(u)?un(u):void 0,g=n.status===`loading`?`loading`:n.status===`error`||n.details.release.status===`unavailable`?`unavailable`:dn(u)?`available`:`not-supplied`;return(0,X.jsxs)(`section`,{className:`asset-metadata`,"aria-labelledby":`asset-metadata-heading`,children:[(0,X.jsxs)(`header`,{className:`metadata-heading`,children:[(0,X.jsx)(`div`,{children:(0,X.jsx)(`h2`,{id:`asset-metadata-heading`,children:t(`asset.metadataTitle`)})}),n.status===`error`&&(0,X.jsx)(Z,{variant:`link`,type:`button`,onClick:r,children:t(`catalog.retry`)})]}),(0,X.jsxs)(`dl`,{className:`asset-facts`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`dt`,{children:t(`asset.category`)}),(0,X.jsx)(`dd`,{children:$(e.category,a)})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`dt`,{children:t(`asset.triangles`)}),(0,X.jsx)(`dd`,{children:$(e.triangles,a)})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`dt`,{children:t(`asset.vertices`)}),(0,X.jsx)(`dd`,{children:$(e.vertices,a)})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`dt`,{children:t(`asset.dimensions`)}),(0,X.jsx)(`dd`,{children:e.dimensions_m?`${e.dimensions_m.join(` × `)} m`:a})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`dt`,{children:t(`asset.fileSize`)}),(0,X.jsx)(`dd`,{children:e.file_size_bytes===null?a:`${e.file_size_bytes.toLocaleString()} B`})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`dt`,{children:t(`asset.formats`)}),(0,X.jsx)(`dd`,{children:[At(e,`glb`)?`GLB`:null,At(e,`blend`)?`BLEND`:null].filter(Boolean).join(`, `)||a})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`dt`,{children:t(`asset.license`)}),(0,X.jsx)(`dd`,{children:$(e.license,a)})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`dt`,{children:t(`asset.source`)}),(0,X.jsx)(`dd`,{children:$(i?.source??e.source,a)})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`dt`,{children:t(`asset.revision`)}),(0,X.jsx)(`dd`,{children:$(i?.revision??e.revision,a)})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`dt`,{children:t(`asset.publishedAt`)}),(0,X.jsx)(`dd`,{children:$(i?.published_at_utc??e.published_at_utc,a)})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`dt`,{children:t(`asset.sourceHash`)}),(0,X.jsx)(`dd`,{className:`hash-value`,children:e.source_sha256})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`dt`,{children:t(`asset.tags`)}),(0,X.jsx)(`dd`,{children:e.tags.length>0?e.tags.join(`, `):a})]})]}),(0,X.jsxs)(`div`,{className:`metadata-sections`,children:[(0,X.jsx)(fn,{title:t(`asset.prompt`),status:s?.status??(n.status===`loading`?`loading`:n.status===`error`?`unavailable`:`not-supplied`),value:s?.status===`available`?s.value:void 0,notSupplied:a,unavailable:o}),(0,X.jsx)(fn,{title:t(`asset.recipe`),status:m,value:d,notSupplied:a,unavailable:o}),(0,X.jsx)(fn,{title:t(`asset.quality`),status:g,value:h,notSupplied:a,unavailable:o}),(0,X.jsxs)(Yt,{className:`metadata-block`,children:[(0,X.jsx)(Xt,{render:(0,X.jsx)(Z,{variant:`ghost`,className:`justify-start`}),children:t(`asset.previews`)}),(0,X.jsx)(Zt,{children:(0,X.jsx)(pn,{asset:e,release:i})})]})]}),(0,X.jsxs)(Yt,{className:`metadata-scope`,children:[(0,X.jsx)(Xt,{render:(0,X.jsx)(Z,{variant:`ghost`,className:`justify-start`}),children:t(`asset.metadataScope`)}),(0,X.jsx)(Zt,{children:(0,X.jsx)(`p`,{className:`metadata-note`,children:t(`asset.metadataAsPublished`)})})]}),i?.source_input_image&&(0,X.jsxs)(`figure`,{className:`source-input-image`,children:[(0,X.jsx)(`img`,{src:i.source_input_image.url,alt:t(`asset.sourceInputImageAlt`),loading:`lazy`}),(0,X.jsxs)(`figcaption`,{children:[(0,X.jsx)(`strong`,{children:t(`asset.sourceInputImage`)}),(0,X.jsx)(`span`,{children:i.source_input_image.rights_statement})]})]})]})}function hn({asset:e,locale:t,compact:n=!1}){let{t:r}=k(),i=E(e,t),a=(0,X.jsx)(mn,{asset:e});return(0,X.jsxs)(X.Fragment,{children:[!n&&(0,X.jsxs)(`header`,{className:`asset-detail-heading`,children:[(0,X.jsx)(`span`,{className:`asset-id`,children:e.id}),(0,X.jsx)(`h1`,{children:i}),t===`zh`&&e.name_zh.trim()&&(0,X.jsx)(`p`,{className:`detail-local-name`,children:e.name_en})]}),(0,X.jsxs)(`div`,{className:`asset-detail`,children:[(0,X.jsx)(Jt,{modelUrl:e.glb_url,previewUrl:e.preview_url,assetName:i}),(0,X.jsxs)(`aside`,{className:`asset-detail-copy`,"aria-label":r(`asset.detailTitle`),children:[(0,X.jsx)(`h2`,{className:`detail-actions-heading`,children:r(`asset.filesTitle`)}),(0,X.jsxs)(`div`,{className:`detail-actions`,children:[e.glb_url&&(0,X.jsx)(Z,{variant:`default`,nativeButton:!1,render:(0,X.jsx)(`a`,{href:e.glb_url,download:!0}),children:r(`asset.downloadGlb`)}),e.blend_url&&(0,X.jsx)(Z,{variant:`outline`,nativeButton:!1,render:(0,X.jsx)(`a`,{href:e.blend_url,download:!0}),children:r(`asset.downloadBlend`)}),!e.glb_url&&!e.blend_url&&(0,X.jsx)(`span`,{className:`detail-note`,children:r(`asset.filesNotSupplied`)})]}),n&&a]})]}),!n&&a]})}function gn({state:e,onRetry:t}){let{t:n}=k();return e.status===`ready`?null:(0,X.jsxs)(`section`,{className:`catalog-state`,"aria-live":`polite`,children:[e.status===`loading`&&(0,X.jsx)(`div`,{className:`state-panel`,children:(0,X.jsx)(`p`,{className:`state-loading`,role:`status`,children:n(`catalog.loading`)})}),e.status===`empty`&&(0,X.jsx)(`div`,{className:`state-panel`,children:(0,X.jsx)(`h2`,{children:n(`catalog.emptyTitle`)})}),e.status===`error`&&(0,X.jsxs)(`div`,{className:`state-panel state-panel-error`,role:`alert`,children:[(0,X.jsx)(`h2`,{children:n(`catalog.errorTitle`)}),(0,X.jsx)(`p`,{children:n(`catalog.errorDescription`)}),(0,X.jsxs)(Yt,{className:`catalog-error-details`,children:[(0,X.jsx)(Xt,{render:(0,X.jsx)(Z,{variant:`ghost`,className:`justify-start`}),children:n(`catalog.errorDetails`)}),(0,X.jsx)(Zt,{children:(0,X.jsx)(`code`,{children:e.message})})]}),(0,X.jsx)(Z,{className:`retry-button`,variant:`default`,type:`button`,onClick:t,children:n(`catalog.retry`)})]})]})}function _n(){let[e,t]=(0,F.useState)(0),[n,r]=(0,F.useState)({status:`loading`});return(0,F.useEffect)(()=>{let e=new AbortController;return r({status:`loading`}),ne(e.signal).then(t=>{e.signal.aborted||r(t?{status:`ready`,catalog:t}:{status:`empty`})}).catch(t=>{e.signal.aborted||r({status:`error`,message:t instanceof Error?t.message:`Unknown catalog error.`})}),()=>e.abort()},[e]),{state:n,retry:()=>t(e=>e+1)}}function vn({className:e,...t}){return(0,X.jsx)(`label`,{"data-slot":`label`,className:wt(`flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,e),...t})}var yn=`data-valid`,bn=`data-invalid`,xn={badInput:!1,customError:!1,patternMismatch:!1,rangeOverflow:!1,rangeUnderflow:!1,stepMismatch:!1,tooLong:!1,tooShort:!1,typeMismatch:!1,valid:null,valueMissing:!1},Sn={disabled:!1,valid:null,touched:!1,dirty:!1,filled:!1,focused:!1},Cn={valid(e){return e===null?null:e?{[yn]:``}:{[bn]:``}}},wn={invalid:void 0,name:void 0,validityData:{state:xn,errors:[],error:``,value:``,initialValue:null},setValidityData:m,disabled:void 0,setTouched:m,setDirty:m,setFilled:m,setFocused:m,focusOwnerRef:{current:void 0},validationMode:`onSubmit`,shouldValidateOnChange:()=>!1,state:Sn,registerFieldControl:m,validation:{getValidationProps:(e,t=s)=>t,inputRef:{current:null},registeredInputs:new Map,registerInput:m,getInputControl:()=>null,commit:async()=>{},change:m}},Tn=F.createContext(wn);function En(e=!0){let t=F.useContext(Tn);if(t.setValidityData===m&&!e)throw Error(g(28));return t}var Dn=F.createContext({elementRef:{current:null},formRef:{current:{fields:new Map}},errors:{},clearErrors:m,validationMode:`onSubmit`,submitCountRef:{current:0}});function On(){return F.useContext(Dn)}var kn=F.createContext({controlId:void 0,registerControlId:m,resetControlId:m,labelId:void 0,setLabelId:m,messageIds:[],setMessageIds:m,getDescriptionProps:e=>e});function An(){return F.useContext(kn)}function jn(e={}){let{id:t,enabled:r=!0}=e,{controlId:i,registerControlId:a,resetControlId:o}=An(),s=p(),l=c(()=>Symbol()),u=F.useRef(!1),f=F.useRef(!1),h=d(()=>{u.current&&a!==m&&(u.current=!1,a(l.current,void 0))});return n(()=>{if(!r||a===m){h();return}let e;if(t!==void 0)f.current=!0,e=t;else if(f.current)e=s;else{o();return}e===void 0?h():(u.current=!0,a(l.current,e))},[t,r,a,o,s,l,h]),n(()=>h,[h]),(r?i:void 0)??t??s}function Mn(e,t,r){let{setFocused:i,focusOwnerRef:a}=En(),o=d(t=>{(t?!e:a.current===o)&&(a.current=t&&o,r?.(t),i(t))});return n(()=>{let e=t.current;return e?.getRootNode()?.activeElement===e&&o(!0),()=>o(!1)},[e,t,o]),o}function Nn(e,t,r,i,a=!0,o){let{registerFieldControl:s}=En(),l=c(()=>Symbol());n(()=>{let n=l.current;a?s(n,{controlRef:e,getValue:i,id:t,name:o,value:r}):s(n,void 0)},[e,a,i,t,o,s,l,r]),n(()=>{let e=l.current;return()=>{s(e,void 0)}},[s,l])}var Pn=F.forwardRef(function(e,t){let{render:i,className:o,id:s,name:c,value:l,disabled:f=!1,onValueChange:p,defaultValue:m,autoFocus:g=!1,style:_,...v}=e,{state:y,name:b,disabled:ee,setTouched:x,setDirty:te,validityData:C,setFilled:w,validationMode:ne,validation:T}=En(),{clearErrors:re,elementRef:ie,submitCountRef:E}=On(),D=ee||f,O=b??c,ae={...y,disabled:D},{labelId:oe}=An(),k=jn({id:s}),A=l!==void 0,j=l==null?void 0:String(l),se=d(()=>T.inputRef.current?.value);Nn(T.inputRef,k,j,se,!D,c),n(()=>{let e=j??T.inputRef.current?.value;e!==void 0&&w(e!==``)},[j,m,T.inputRef,w]),S(j,()=>{j!==void 0&&(re(O),te(j!==(C.initialValue??``)),T.change(j))});let M=F.useRef(null),N=Mn(D,M),P=u();return h(`input`,e,{ref:[t,M],state:ae,props:[{id:k,disabled:D,name:O,ref:T.inputRef,"aria-labelledby":oe,autoFocus:g,...A?{value:l}:{defaultValue:m},onChange(e){let t=e.currentTarget.value,n=r(a,e.nativeEvent);p?.(t,n),!A&&(te(t!==(C.initialValue??``)),w(t!==``),!e.nativeEvent.defaultPrevented&&!n.isCanceled&&(re(O),T.change(t)))},onFocus(){N(!0)},onBlur(e){if(x(!0),N(!1),ne===`onBlur`){let t=e.currentTarget.value;T.commit(t),A&&queueMicrotask(()=>{let e=T.inputRef.current?.value;e!==void 0&&e!==t&&e!==(C.initialValue??``)&&T.commit(e)})}},onKeyDown(e){if(e.currentTarget.tagName===`INPUT`&&e.key===`Enter`){x(!0);let t=e.currentTarget.value,n=e.currentTarget.form;if(n&&n===ie.current&&!e.defaultPrevented){let t=e.currentTarget,n=E.current;P.start(0,()=>{E.current===n&&T.commit(t.value)})}else T.commit(t)}}},v,e=>T.getValidationProps(D,e)],stateAttributesMapping:Cn})}),Fn=F.forwardRef(function(e,t){return(0,X.jsx)(Pn,{ref:t,...e})});function In({className:e,type:t,...n}){return(0,X.jsx)(Fn,{type:t,"data-slot":`input`,className:wt(`h-10 w-full min-w-0 rounded-lg border-[0.5px] border-control-border bg-transparent px-2.5 py-1 text-sm transition-none outline-none file:inline-flex file:h-10 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:outline focus-visible:outline-[0.5px] focus-visible:outline-ring disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40`,e),...n})}function Ln({...e}){return(0,X.jsx)(T,{"data-slot":`popover`,...e})}function Rn({...e}){return(0,X.jsx)(te,{"data-slot":`popover-trigger`,...e})}function zn({className:e,align:t=`center`,alignOffset:n=0,side:r=`bottom`,sideOffset:i=4,...a}){return(0,X.jsx)(y,{children:(0,X.jsx)(ae,{align:t,alignOffset:n,side:r,sideOffset:i,className:`isolate z-50`,children:(0,X.jsx)(oe,{"data-slot":`popover-content`,className:wt(`z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg border-[0.5px] border-border bg-popover p-2.5 text-sm text-popover-foreground outline-hidden`,e),...a})})})}var Bn=(0,F.createContext)(null);function Vn(){let e=(0,F.useContext)(Bn),{t}=k();return e?(0,X.jsxs)(vn,{className:`catalog-search`,children:[(0,X.jsx)(l,{"aria-hidden":`true`}),(0,X.jsx)(In,{type:`search`,"aria-label":t(`home.searchLabel`),placeholder:t(`workspace.searchModels`),value:e.query,onChange:t=>e.onQueryChange(t.currentTarget.value)})]}):null}function Hn(){let{t:e}=k(),{mode:t}=v();return t===`drawer`?(0,X.jsxs)(Ln,{children:[(0,X.jsx)(Rn,{render:(0,X.jsx)(Z,{variant:`ghost`,size:`icon`,"aria-label":e(`home.searchLabel`)}),children:(0,X.jsx)(l,{"aria-hidden":`true`})}),(0,X.jsx)(zn,{align:`end`,children:(0,X.jsx)(Vn,{})})]}):null}var Un={full:Vn,sm:Hn};function Wn({locale:e,sidebar:t,search:n,children:r}){let i=D(e);return(0,X.jsx)(Bn,{value:n??null,children:(0,X.jsx)(O,{...i,tree:{name:re,children:[]},tabs:!1,searchToggle:{enabled:!!n},slots:n?{searchTrigger:Un}:void 0,links:[...i.links??[],...t?[{type:`custom`,on:`menu`,children:t}]:[]],children:(0,X.jsx)(w,{full:!0,role:`main`,className:`site-main gallery-main layout:[--fd-page-width:100%]`,breadcrumb:{enabled:!1},footer:{enabled:!1},tableOfContent:{enabled:!1},tableOfContentPopover:{enabled:!1},children:r})})})}export{Lt as C,Z as D,Et as E,wt as O,Mt as S,zt as T,Zt as _,Nn as a,Kt as b,An as c,Cn as d,vn as f,Yt as g,hn as h,Rn as i,se as k,On as l,gn as m,Ln as n,Mn as o,_n as p,zn as r,jn as s,Wn as t,En as u,Xt as v,Rt as w,qt as x,Bt as y};
|
assets/home-page-Co41DnZj.js
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
assets/home-page-DyjVALDA.js
DELETED
|
The diff for this file is too large to render.
See raw diff
|
|
|
assets/index-CppN1qEU.js
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
assets/index-DEDbfth6.js
DELETED
|
The diff for this file is too large to render.
See raw diff
|
|
|
assets/layout.shared-BilCH_HV.js
DELETED
|
The diff for this file is too large to render.
See raw diff
|
|
|
assets/layout.shared-ThDtfT9i.js
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
assets/{lazyRouteComponent-R7iKUM_S.js → lazyRouteComponent-DBEQERMJ.js}
RENAMED
|
@@ -1 +1 @@
|
|
| 1 |
-
import{r as e}from"./rolldown-runtime-XKyaHtl9.js";import{t}from"./react-DlmbjZJV.js";import{C as n,D as r,E as i,_ as a,a as o,b as s,g as c,i as l,j as u,m as d,n as f,v as p,w as m,x as h,y as g}from"./useSelector-BnOeXcNr.js";import{t as _}from"./jsx-runtime-LKYXHABd.js";import{
|
|
|
|
| 1 |
+
import{r as e}from"./rolldown-runtime-XKyaHtl9.js";import{t}from"./react-DlmbjZJV.js";import{C as n,D as r,E as i,_ as a,a as o,b as s,g as c,i as l,j as u,m as d,n as f,v as p,w as m,x as h,y as g}from"./useSelector-BnOeXcNr.js";import{t as _}from"./jsx-runtime-LKYXHABd.js";import{Tt as v,wt as y}from"./layout.shared-ThDtfT9i.js";var b=`Error preloading route! ☝️`,x=class{get to(){return this._to}get id(){return this._id}get path(){return this._path}get fullPath(){return this._fullPath}constructor(e){if(this.init=e=>{this.originalIndex=e,this._branch=void 0;let t=this.options,n=!t?.path&&!t?.id;this.parentRoute=this.options.getParentRoute?.(),n?this._path=d:this.parentRoute||c();let r=n?d:t?.path;r&&r!==`/`&&(r=g(r));let i=t?.id||r,o=n?d:a((this.parentRoute.id===`__root__`?``:this.parentRoute.id)+`/`+(i??``));r===`__root__`&&(r=`/`);let l=o===`__root__`?`/`:r===void 0?this.parentRoute.fullPath:a(this.parentRoute.fullPath+`/`+r);this._path=r,this._id=o,this._fullPath=l,this._to=s(l)},this.addChildren=e=>this._addFileChildren(e),this._addFileChildren=e=>(Array.isArray(e)&&(this.children=e),typeof e==`object`&&e&&(this.children=Object.values(e)),this),this._addFileTypes=()=>this,this.updateLoader=e=>(Object.assign(this.options,e),this),this.update=e=>(Object.assign(this.options,e),this),this.lazy=e=>(this.lazyFn=e,this),this.redirect=e=>u({from:this.fullPath,...e}),this.options=e||{},this.isRoot=!e?.getParentRoute,e?.id&&e?.path)throw Error(`Route cannot have both an 'id' and a 'path' option.`)}},S=class extends x{constructor(e){super(e)}},C=e(t(),1),w=C.use,T=C.useLayoutEffect;function E(e){return v({from:e.from,strict:e.strict,structuralSharing:e.structuralSharing,select:t=>e.select?e.select(t.loaderData):t.loaderData})}function D(e){let{select:t,...n}=e;return v({...n,select:e=>t?t(e.loaderDeps):e.loaderDeps})}function O(e){return v({from:e.from,shouldThrow:e.shouldThrow,structuralSharing:e.structuralSharing,strict:e.strict,select:t=>{let n=e.strict===!1?t.params:t._strictParams;return e.select?e.select(n):n}})}function k(e){return v({from:e.from,strict:e.strict,shouldThrow:e.shouldThrow,structuralSharing:e.structuralSharing,select:t=>e.select?e.select(t.search):t.search})}function A(e){return v({...e,select:t=>e.select?e.select(t.context):t.context})}var j=_();function M(...e){let t=C.useRef(e),n=t.current;return e.forEach((e,t)=>{h(n[t],e,!1,!0)||(n[t]=e)}),t.current}function N(e,t){e.preloadRoute(t).catch(e=>{console.warn(e),console.warn(b)})}function P(e,t){let n=typeof e==`string`&&m(e);if(n)return t.has(n)?e:null}function F(e,t,n,r){let i=p(e.pathname,r),a=p(t.pathname,r);return(n?.exact?i!==a:!i.startsWith(a)||i.length!==a.length&&i[a.length]!==`/`)||(n?.includeSearch??!0)&&!h(e.search,t.search,!n?.exact,n?.explicitUndefined)?!1:!n?.includeHash||e.hash===t.hash}function I(e,t,n){let r=o(),i=C.useRef(null),a=C.useCallback(e=>{if(i.current=e,typeof t==`function`)return t(e);t&&(t.current=e)},[t]),{activeOptions:s,to:c,preload:u,preloadDelay:d,disabled:p,target:h,onClick:g,onBlur:_,onFocus:v,onMouseEnter:y,onMouseLeave:b,onTouchStart:x}=e,[S,w,T]=M(e.search,e.params,s),E=C.useContext(l),D=(r.stores._linkScopes??={})[E]??=f(r,E),[O,k,A]=C.useMemo(()=>{let t=P(c,r.protocolAllowlist);if(t!==void 0){let n=[t??void 0];return[e,()=>n]}let n={...e},i,a,o,s=()=>{let e=D[0]();if(e!==i){n._fromLocation=e;let t=r.buildLocation(n),o=W(t,r,p),s=p||o&&!m(o)?F(e,t,T,r.basepath):void 0;a&&a[0]===o&&a[1]===s||(a=[o,s]),i=e}return a};return[n,s,T?.includeHash&&(()=>{let e=s();return e[1]?o??=[e[0],!1]:e})]},[r,D,e.from,e.hash,e.href,c,S,w,e.state,e.mask,e.unsafeRelative,T,p]),[j,I]=C.useSyncExternalStore(D[1],k,A||k),L=I===void 0&&j,R=p||j===void 0,z=C.useRef(!1),G=e.reloadDocument||L||R?!1:u??r.options.defaultPreload,K=d??r.options.defaultPreloadDelay??0,q=C.useCallback(e=>{let t=e?.isIntersecting;t??G===`intent`?K?i.t??=setTimeout(()=>{i.t=void 0,N(r,O)},K):N(r,O):t===!1&&H(i)},[r,O,i,G,K]);C.useEffect(()=>{if(!G)return;G===`render`&&!z.current&&(z.current=!0,N(r,O));let e=!0,t;return G===`viewport`&&i.current&&typeof IntersectionObserver==`function`&&(t=new IntersectionObserver(t=>{e&&q(t.pop())},{rootMargin:`100px`}),t.observe(i.current)),()=>{e=!1,t?.disconnect(),H(i)}},[r,O,G,q,i]);let J=B(e,n);if(J.ref=t?a:i,L)return J.href=L,J;let Y=t=>{let n=h??t.currentTarget.getAttribute(`target`);R||t.metaKey||t.altKey||t.ctrlKey||t.shiftKey||t.defaultPrevented||n&&n!==`_self`||t.button!==0||(t.preventDefault(),H(i),r.navigate({...e,_fromLocation:O._fromLocation}))},X=()=>{G===`intent`&&N(r,O)},Z=()=>{G===`intent`&&H(i)};return J.onClick=U(g,Y),J.onBlur=U(_,Z),J.onFocus=U(v,q),J.onMouseEnter=U(y,q),J.onMouseLeave=U(b,Z),J.onTouchStart=U(x,X),V(J,e,I,j,R,n)}var L={},R={className:`active`},z=new Set([`to`,`params`,`search`,`hash`,`state`,`mask`,`from`,`unsafeRelative`,`reloadDocument`,`preload`,`preloadDelay`,`preloadIntentProximity`,`hashScrollIntoView`,`replace`,`startTransition`,`resetScroll`,`viewTransition`,`ignoreBlocker`,`activeProps`,`inactiveProps`,`activeOptions`,`_asChild`]);function B(e,t){let n={};for(let r in e)z.has(r)||r===`type`&&t!==void 0||r===`disabled`&&t===`a`||(n[r]=e[r]);return n}function V(e,t,r,i,a,o){let{activeProps:s,inactiveProps:c,className:l,style:u,target:d}=t,f=n(r?s:c,{})??(r?R:L);Object.assign(e,f),e.href=i,o!==`a`&&(e.disabled=a),e.target=d;let p=f.style;(u||p)&&(e.style=u&&p?{...u,...p}:u||p);let m=f.className;return(l||m)&&(e.className=l?m?`${l} ${m}`:l:m),a&&(e.role=`link`,e[`aria-disabled`]=!0),r&&(e[`data-status`]=`active`,e[`aria-current`]=`page`),e}var H=e=>{clearTimeout(e.t),e.t=void 0},U=(e,t)=>e?n=>n.defaultPrevented||(e(n),n.defaultPrevented||t(n)):t;function W(e,t,n){if(n)return;let r=e.maskedLocation??e,a=r.external?r.publicHref:t.history.createHref(r.publicHref)||`/`;if(!r.external&&a===r.publicHref||!i(a,t.protocolAllowlist))return a}var G=C.memo(C.forwardRef((e,t)=>{let n=e._asChild||`a`,r=I(e,t,n),i=typeof e.children==`function`?e.children({isActive:r[`data-status`]===`active`}):e.children;return C.createElement(n,r,i)}),K);function K(e,t){let n=0;for(let r in t)if(n++,e[r]!==t[r]&&(!z.has(r)||!h(e[r],t[r],!1,!0)))return!1;for(let t in e)n--;return n===0}var q=class extends x{constructor(e){super(e),this.useMatch=e=>v({...e,from:this.id}),this.useRouteContext=e=>A({...e,from:this.id}),this.useSearch=e=>k({...e,from:this.id}),this.useParams=e=>O({...e,from:this.id}),this.useLoaderDeps=e=>D({...e,from:this.id}),this.useLoaderData=e=>E({...e,from:this.id}),this.useNavigate=()=>y({from:this.fullPath}),this.Link=C.forwardRef((e,t)=>(0,j.jsx)(G,{ref:t,from:this.fullPath,...e}))}};function J(e){return new q(e)}var Y=class extends S{constructor(e){super(e),this.useMatch=e=>v({...e,from:this.id}),this.useRouteContext=e=>A({...e,from:this.id}),this.useSearch=e=>k({...e,from:this.id}),this.useParams=e=>O({...e,from:this.id}),this.useLoaderDeps=e=>D({...e,from:this.id}),this.useLoaderData=e=>E({...e,from:this.id}),this.useNavigate=()=>y({from:this.fullPath}),this.Link=C.forwardRef((e,t)=>(0,j.jsx)(G,{ref:t,from:this.fullPath,...e}))}};function X(e){return new Y(e)}function Z(e){return e=>{let t=J(e);return t.isRoot=!1,t}}function Q(e,t){let n,i,a,o=()=>(n||=(a=void 0,e().then(e=>{n=void 0,s.preload=void 0,i=e[t??`default`]}).catch(e=>{n=void 0,a=e})),n),s=function(e){if(a){if(r(a)&&typeof sessionStorage<`u`){let e=`tanstack_router_reload:${a.message}`;if(!sessionStorage.getItem(e))throw sessionStorage.setItem(e,`1`),window.location.reload(),new Promise(()=>{})}throw a}if(!i){if(w)w(o());else throw o()}return C.createElement(i,e)};return s.preload=o,s}export{O as a,G as i,Z as n,w as o,X as r,T as s,Q as t};
|
assets/orama-cloud-CFR8olBa.js
DELETED
|
@@ -1 +0,0 @@
|
|
| 1 |
-
import"./rolldown-runtime-XKyaHtl9.js";import{t as e}from"./react-DlmbjZJV.js";import{D as t}from"./index-DEDbfth6.js";e();async function n(e,n){let{index:r=`default`,client:i,params:a,tag:o}=e,s=[];if(r===`crawler`){let e=await i.search({datasources:[],...a,term:n,where:{category:o?{eq:o.slice(0,1).toUpperCase()+o.slice(1)}:void 0,...a?.where},limit:10});if(!e)return s;for(let t of e.hits){let e=t.document;s.push({id:t.id,type:`page`,content:e.title,url:e.path},{id:`page`+t.id,type:`text`,content:e.content,url:e.path})}return s}let c=await i.search({datasources:[],properties:[`title`,`section`,`content`],...a,term:n,limit:20,where:t({tag:o,...a?.where}),groupBy:{properties:[`page_id`],max_results:7,...a?.groupBy}});if(!c||!c.groups)return s;for(let e of c.groups){let t=!1;for(let n of e.result){let e=n.document;t||=(s.push({id:e.page_id,type:`page`,content:e.title,breadcrumbs:e.breadcrumbs,url:e.url}),!0),s.push({id:e.id,content:e.content,type:e.content===e.section?`heading`:`text`,url:e.section_id?`${e.url}#${e.section_id}`:e.url,table:e.table})}}return s.length>80?s.slice(0,80):s}function r(e){return{deps:[e.index,e.client,e.tag],search:t=>n(e,t)}}export{r as oramaCloudClient};
|
|
|
|
|
|
assets/orama-cloud-Dg06qqqJ.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
import"./rolldown-runtime-XKyaHtl9.js";import{t as e}from"./react-DlmbjZJV.js";import{t}from"./remove-undefined-C_sjLeQT-CP3jfHCp.js";e();async function n(e,n){let{index:r=`default`,client:i,params:a,tag:o}=e,s=[];if(r===`crawler`){let e=await i.search({datasources:[],...a,term:n,where:{category:o?{eq:o.slice(0,1).toUpperCase()+o.slice(1)}:void 0,...a?.where},limit:10});if(!e)return s;for(let t of e.hits){let e=t.document;s.push({id:t.id,type:`page`,content:e.title,url:e.path},{id:`page`+t.id,type:`text`,content:e.content,url:e.path})}return s}let c=await i.search({datasources:[],properties:[`title`,`section`,`content`],...a,term:n,limit:20,where:t({tag:o,...a?.where}),groupBy:{properties:[`page_id`],max_results:7,...a?.groupBy}});if(!c||!c.groups)return s;for(let e of c.groups){let t=!1;for(let n of e.result){let e=n.document;t||=(s.push({id:e.page_id,type:`page`,content:e.title,breadcrumbs:e.breadcrumbs,url:e.url}),!0),s.push({id:e.id,content:e.content,type:e.content===e.section?`heading`:`text`,url:e.section_id?`${e.url}#${e.section_id}`:e.url,table:e.table})}}return s.length>80?s.slice(0,80):s}function r(e){return{deps:[e.index,e.client,e.tag],search:t=>n(e,t)}}export{r as oramaCloudClient};
|
assets/orama-cloud-legacy-0MdvBNNe.js
DELETED
|
@@ -1 +0,0 @@
|
|
| 1 |
-
import"./rolldown-runtime-XKyaHtl9.js";import{t as e}from"./react-DlmbjZJV.js";import{D as t}from"./index-DEDbfth6.js";e();async function n(e,n){let{index:r=`default`,client:i,params:a={},tag:o}=e,s=[];if(r===`crawler`){let e=await i.search({...a,term:n,where:{category:o?{eq:o.slice(0,1).toUpperCase()+o.slice(1)}:void 0,...a.where},limit:10});if(!e)return s;for(let t of e.hits){let e=t.document;s.push({id:t.id,type:`page`,content:e.title,url:e.path},{id:`page`+t.id,type:`text`,content:e.content,url:e.path})}return s}let c={properties:[`title`,`section`,`content`],...a,term:n,where:t({tag:o,...a.where}),groupBy:{properties:[`page_id`],maxResult:7,...a.groupBy}},l=await i.search(c);if(!l||!l.groups)return s;for(let e of l.groups){let t=!1;for(let n of e.result){let e=n.document;t||=(s.push({id:e.page_id,type:`page`,content:e.title,breadcrumbs:e.breadcrumbs,url:e.url}),!0),s.push({id:e.id,content:e.content,type:e.content===e.section?`heading`:`text`,url:e.section_id?`${e.url}#${e.section_id}`:e.url,table:e.table})}}return s}function r(e){return{deps:[e.index,e.client,e.tag],search:t=>n(e,t)}}export{r as oramaCloudLegacyClient};
|
|
|
|
|
|
assets/orama-cloud-legacy-D_phyqgi.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
import"./rolldown-runtime-XKyaHtl9.js";import{t as e}from"./react-DlmbjZJV.js";import{t}from"./remove-undefined-C_sjLeQT-CP3jfHCp.js";e();async function n(e,n){let{index:r=`default`,client:i,params:a={},tag:o}=e,s=[];if(r===`crawler`){let e=await i.search({...a,term:n,where:{category:o?{eq:o.slice(0,1).toUpperCase()+o.slice(1)}:void 0,...a.where},limit:10});if(!e)return s;for(let t of e.hits){let e=t.document;s.push({id:t.id,type:`page`,content:e.title,url:e.path},{id:`page`+t.id,type:`text`,content:e.content,url:e.path})}return s}let c={properties:[`title`,`section`,`content`],...a,term:n,where:t({tag:o,...a.where}),groupBy:{properties:[`page_id`],maxResult:7,...a.groupBy}},l=await i.search(c);if(!l||!l.groups)return s;for(let e of l.groups){let t=!1;for(let n of e.result){let e=n.document;t||=(s.push({id:e.page_id,type:`page`,content:e.title,breadcrumbs:e.breadcrumbs,url:e.url}),!0),s.push({id:e.id,content:e.content,type:e.content===e.section?`heading`:`text`,url:e.section_id?`${e.url}#${e.section_id}`:e.url,table:e.table})}}return s}function r(e){return{deps:[e.index,e.client,e.tag],search:t=>n(e,t)}}export{r as oramaCloudLegacyClient};
|
assets/remove-undefined-C_sjLeQT-CP3jfHCp.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
function e(n,r=!1){let i=n;for(let n in i){if(i[n]===void 0&&delete i[n],!r)continue;let a=i[n];if(t(a))e(a,r);else if(Array.isArray(a))for(let n of a)t(n)&&e(n,r)}return n}function t(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null}export{e as t};
|
assets/route-CQLqrWbY.js
DELETED
|
@@ -1 +0,0 @@
|
|
| 1 |
-
import{t as e}from"./jsx-runtime-LKYXHABd.js";import{M as t}from"./index-DEDbfth6.js";var n=e(),r=()=>(0,n.jsx)(t,{});export{r as component};
|
|
|
|
|
|
assets/route-T9SvWTng.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
import{t as e}from"./jsx-runtime-LKYXHABd.js";import{x as t}from"./index-CppN1qEU.js";var n=e(),r=()=>(0,n.jsx)(t,{});export{r as component};
|
assets/{routes-Ds4lHaXw.js → routes-DdpootL-.js}
RENAMED
|
@@ -1 +1 @@
|
|
| 1 |
-
import{t as e}from"./jsx-runtime-LKYXHABd.js";import{t}from"./home-page-
|
|
|
|
| 1 |
+
import{t as e}from"./jsx-runtime-LKYXHABd.js";import{t}from"./home-page-Co41DnZj.js";var n=e(),r=()=>(0,n.jsx)(t,{locale:`en`});export{r as component};
|
assets/search-BN8TeJzU.js
DELETED
|
@@ -1 +0,0 @@
|
|
| 1 |
-
import{r as e,t}from"./rolldown-runtime-XKyaHtl9.js";import{t as n}from"./react-DlmbjZJV.js";import{t as r}from"./jsx-runtime-LKYXHABd.js";import{t as i}from"./with-selector-DBm9DdtQ.js";var a=t((e=>{var t=n();function r(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function i(){}var a={d:{f:i,r:function(){throw Error(r(522))},D:i,C:i,L:i,m:i,X:i,S:i,M:i},p:0,findDOMNode:null},o=Symbol.for(`react.portal`),s=Symbol.for(`react.recoverable`),c=Symbol.for(`react.optimistic_key`);function l(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:r==null?null:r===c?c:``+r,children:e,containerInfo:t,implementation:n}}var u=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function d(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=a,e.browser=function(e){return{$$typeof:s,_reason:e}},e.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(r(299));return l(e,t,null,n)},e.flushSync=function(e){var t=u.T,n=a.p;try{if(u.T=null,a.p=2,e)return e()}finally{u.T=t,a.p=n,a.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,a.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&a.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=d(n,t.crossOrigin),i=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?a.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:i,fetchPriority:o}):n===`script`&&a.d.X(e,{crossOrigin:r,integrity:i,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`){if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=d(t.as,t.crossOrigin);a.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0})}}else t??a.d.M(e)}},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=d(n,t.crossOrigin);a.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`){if(t){var n=d(t.as,t.crossOrigin);a.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0})}else a.d.m(e)}},e.requestFormReset=function(e){a.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return u.H.useFormState(e,t,n)},e.useFormStatus=function(){return u.H.useHostTransitionStatus()},e.version=`19.3.1`})),o=t(((e,t)=>{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=a()})),s=e(n(),1),c=r(),l=()=>{throw Error("You need to wrap your application inside `FrameworkProvider`.")},u=(0,s.createContext)({useParams:l,useRouter:l,usePathname:l});function d({Link:e,useRouter:t,useParams:n,usePathname:r,Image:i,children:a}){let o=(0,s.useMemo)(()=>({usePathname:r,useRouter:t,Link:e,Image:i,useParams:n}),[e,r,t,n,i]);return(0,c.jsx)(u,{value:o,children:a})}function f(){return(0,s.use)(u).usePathname()}function p(){return(0,s.use)(u).useRouter()}function m(e){let{Image:t}=(0,s.use)(u);if(!t){let{src:t,alt:n,priority:r,...i}=e;return(0,c.jsx)(`img`,{alt:n,src:t,fetchPriority:r?`high`:`auto`,...i})}return(0,c.jsx)(t,{...e})}function h(e){let{Link:t}=(0,s.use)(u);if(!t){let{href:t,prefetch:n,...r}=e;return(0,c.jsx)(`a`,{href:t,...r})}return(0,c.jsx)(t,{...e})}var g=(0,s.createContext)({});function _({translations:e,children:t}){let n=(0,s.use)(g);return(0,c.jsx)(g,{value:(0,s.useMemo)(()=>({...n,...e}),[n,e]),children:t})}var v=/\\?\{([^}]+)\}/g;function y({note:e}={}){let t=(0,s.use)(g);return(0,s.useMemo)(()=>b(t,{note:e}),[t,e])}function b(e,{note:t}={}){let n=(n,r={})=>{let{note:i,variables:a}=r,o=[];t&&o.push(t),i&&o.push(i);let s=e[x(n,o)]??n;return a&&(s=s.replaceAll(v,(e,t)=>e[0]===`\\`?e.slice(1):t in a?a[t]:e)),s};return n.jsx=(n,r={})=>{let{note:i,variables:a,tags:o}=r,s=[];t&&s.push(t),i&&s.push(i);let c=e[x(n,s)]??n;return o?ee(c,a,o):a?S(c,a):c},n.translations=e,n}function x(e,t){return e+t.map(e=>`(${e})`).join(``)}function S(e,t){let n=0,r=[];for(let i of e.matchAll(v)){let[a,o]=i;n<i.index&&r.push(e.slice(n,i.index)),n=i.index+a.length,a[0]===`\\`?r.push(a.slice(1)):o in t?r.push(E(t[o],n)):r.push(a)}return r.push(e.slice(n)),r}var C=/\\?<([^>]+)>/g;function ee(e,t,n){let r=[{children:[]}],i=0,a=()=>{let e=r.pop();r[r.length-1].children.push(E(e.tag&&n[e.tag]?T(n[e.tag],e.children):e.children,i))};for(let o of e.matchAll(C)){let s=r[r.length-1],[c,l]=o;if(i<o.index){let n=e.slice(i,o.index);s.children.push(t?S(n,t):n)}if(i=o.index+c.length,c[0]===`\\`){let e=c.slice(1);s.children.push(t?S(e,t):e)}else if(l[0]===`/`){let e=l.slice(1);s.tag===e?a():s.children.push(t?S(c,t):c)}else if(l.at(-1)===`/`){let e=l.slice(0,-1);n[e]&&s.children.push(E(T(n[e]),i))}else r.push({children:[],tag:l})}if(i<e.length){let n=e.slice(i);r[r.length-1].children.push(t?S(n,t):n)}for(;r.length>1;)a();return r[0].children}function w({text:e,note:t,variables:n,tags:r}){let i=(0,s.use)(g);return(0,s.useMemo)(()=>b(i).jsx(e,{note:t,variables:n,tags:r}),[i,e,t,n,r])}function T(e,t){return(0,s.isValidElement)(e)?t===void 0?e:(0,s.cloneElement)(e,void 0,t):e(t)}function E(e,t){return(0,s.isValidElement)(e)?(0,s.cloneElement)(e,{key:t}):e}var D=(0,s.createContext)({});function O(){return(0,s.use)(D)}var k={};function A({locales:e=[],locale:t,defaultLanguage:n,hideLocale:r=`never`,onLocaleChange:i,children:a,translations:o=k}){let l=p(),u=f(),d=e=>{if(i)return i(e);let a=u;if(r===`never`||r===`default-locale`&&t!==n){let e=u.indexOf(`/`,1);a=e===-1?`/`:u.slice(e)}(r!==`default-locale`||e!==n)&&(a=`/${e}${a===`/`?``:a}`),l.push(a)},m=(0,s.useRef)(d);return m.current=d,(0,c.jsx)(D,{value:(0,s.useMemo)(()=>({locale:t,locales:e,onChange:e=>m.current(e)}),[t,e]),children:(0,c.jsx)(_,{translations:o,children:a})})}function j(e,t){return function(n,...r){let i=new URL(e);return i.searchParams.set(`code`,n.toString()),r.forEach(e=>i.searchParams.append(`args[]`,e)),`${t} error #${n}; visit ${i} for the full message.`}}var M=j(`https://base-ui.com/production-error`,`Base UI`),N=s.createContext(void 0);function P(e){let t=s.useContext(N);if(!e&&t===void 0)throw Error(M(27));return t}var F={};function I(e,t){let n=s.useRef(F);return n.current===F&&(n.current=e(t)),n}function L(e,t,n,r){let i=I(z).current;return te(i,e,t,n,r)&&re(i,[e,t,n,r]),i.callback}function R(e){let t=I(z).current;return ne(t,e)&&re(t,e),t.callback}function z(){return{callback:null,cleanup:null,refs:[]}}function te(e,t,n,r,i){return e.refs[0]!==t||e.refs[1]!==n||e.refs[2]!==r||e.refs[3]!==i}function ne(e,t){return e.refs.length!==t.length||e.refs.some((e,n)=>e!==t[n])}function re(e,t){e.refs=t,e.callback=t.every(e=>e==null)?null:n=>{if(e.cleanup&&=(e.cleanup(),null),n!=null){let r=Array(t.length).fill(null);for(let e=0;e<t.length;e+=1){let i=t[e];if(i!=null)switch(typeof i){case`function`:{let t=i(n);typeof t==`function`&&(r[e]=t);break}case`object`:i.current=n}}e.cleanup=()=>{for(let e=0;e<t.length;e+=1){let n=t[e];if(n!=null)switch(typeof n){case`function`:{let t=r[e];typeof t==`function`?t():n(null);break}case`object`:n.current=null}}}}}}var B=e(o(),1),ie=19;function ae(e){return ie>=e}function oe(e){if(!s.isValidElement(e))return null;let t=e,n=t.props;return(ae(19)?n?.ref:t.ref)??null}function V(e,t){if(e&&!t)return e;if(!e&&t)return t;if(e||t)return{...e,...t}}function H(){}var se=Object.freeze([]),U=Object.freeze({});function ce(e,t){let n={};for(let r in e){let i=e[r];if(t?.hasOwnProperty(r)){let e=t[r](i);e!=null&&Object.assign(n,e)}else i===!0?n[`data-${r.toLowerCase()}`]=``:i&&(n[`data-${r.toLowerCase()}`]=i.toString())}return n}function le(e,t){return typeof e==`function`?e(t):e}function ue(e,t){return typeof e==`function`?e(t):e}var de={};function fe(e,t,n,r,i){if(!n&&!r&&!i&&!e)return me(t);let a=me(e);return t&&(a=he(a,t)),n&&(a=he(a,n)),r&&(a=he(a,r)),i&&(a=he(a,i)),a}function pe(e){if(e.length===0)return de;if(e.length===1)return me(e[0]);let t=me(e[0]);for(let n=1;n<e.length;n+=1)t=he(t,e[n]);return t}function me(e){return ye(e)?{...e(de)}:ge(e)}function he(e,t){return ye(t)?t(e):_e(e,t)}function ge(e){let t={...e};for(let e in t){let n=t[e];ve(e,n)&&(t[e]=xe(n))}return t}function _e(e,t){if(!t)return e;for(let n in t){let r=t[n];switch(n){case`style`:e[n]=V(e.style,r);break;case`className`:e[n]=Ce(e.className,r);break;default:e[n]=ve(n,r)?be(e[n],r):r}}return e}function ve(e,t){let n=e.charCodeAt(0),r=e.charCodeAt(1),i=e.charCodeAt(2);return n===111&&r===110&&i>=65&&i<=90&&(typeof t==`function`||t===void 0)}function ye(e){return typeof e==`function`}function be(e,t){return t?e?(...n)=>{let r=n[0];if(we(r)){let i=r;Se(i);let a=t(...n);return i.baseUIHandlerPrevented||e?.(...n),a}let i=t(...n);return e?.(...n),i}:xe(t):e}function xe(e){return e&&((...t)=>{let n=t[0];return we(n)&&Se(n),e(...t)})}function Se(e){return e.preventBaseUIHandler=()=>{e.baseUIHandlerPrevented=!0},e}function Ce(e,t){return t?e?t+` `+e:t:e}function we(e){return typeof e==`object`&&!!e&&`nativeEvent`in e}function Te(e,t,n={}){let r=t.render;n.enabled!==!1&&(r=ke(r));let i=Ee(t,n,r);if(n.enabled===!1)return null;let a=n.state??U;return Ae(e,r,i,a)}function Ee(e,t,n){let{className:r,style:i}=e,{state:a=U,ref:o,props:s,stateAttributesMapping:c,enabled:l=!0}=t,u=l?le(r,a):void 0,d=l?ue(i,a):void 0,f=l?ce(a,c):U,p=l&&s?De(s):void 0,m=l?V(f,p)??{}:U;return typeof document<`u`&&(l?m.ref=Array.isArray(o)?R([m.ref,oe(n),...o]):L(m.ref,oe(n),o):L(null,null)),l?(u!==void 0&&(m.className=Ce(m.className,u)),d!==void 0&&(m.style=V(m.style,d)),m):U}function De(e){return Array.isArray(e)?pe(e):fe(void 0,e)}var Oe=Symbol.for(`react.lazy`);function ke(e){if(e?.$$typeof!==Oe)return e;let t=s.Children.toArray(e)[0];return s.isValidElement(t)?t:e}function Ae(e,t,n,r){if(t){if(typeof t==`function`)return t(n,r);let e=fe(n,t.props);return e.ref=n.ref,s.cloneElement(t,e)}return je(e,n)}function je(e,t){return e===`button`?(0,s.createElement)(`button`,{type:`button`,...t,key:t.key}):e===`img`?(0,s.createElement)(`img`,{alt:``,...t,key:t.key}):s.createElement(e,t)}var Me=`data-starting-style`,Ne=`data-ending-style`,Pe={[Me]:``},Fe={[Ne]:``},Ie={transitionStatus(e){return e===`starting`?Pe:e===`ending`?Fe:null}},Le=`data-open`,Re=`data-closed`,ze=Me,Be=Ne,Ve=`data-anchor-hidden`,He=`data-popup-open`,Ue=`data-pressed`,We={[He]:``},Ge={[He]:``,[Ue]:``},Ke={[Le]:``},qe={[Re]:``},Je={[Ve]:``},Ye={open(e){return e?We:null}},Xe={open(e){return e?Ge:null}},Ze={open(e){return e?Ke:qe},anchorHidden(e){return e?Je:null}},Qe={...Ze,...Ie};function $e(){return typeof window<`u`}function W(e){return tt(e)?(e.nodeName||``).toLowerCase():`#document`}function G(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function et(e){return((tt(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function tt(e){return $e()?e instanceof Node||e instanceof G(e).Node:!1}function K(e){return $e()?e instanceof Element||e instanceof G(e).Element:!1}function q(e){return $e()?e instanceof HTMLElement||e instanceof G(e).HTMLElement:!1}function nt(e){return!$e()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof G(e).ShadowRoot}function rt(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=pt(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function it(e){return/^(table|td|th)$/.test(W(e))}function at(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var ot=/transform|translate|scale|rotate|perspective|filter/,st=/paint|layout|strict|content/,J=e=>!!e&&e!==`none`,ct;function lt(e){let t=K(e)?pt(e):e;return J(t.transform)||J(t.translate)||J(t.scale)||J(t.rotate)||J(t.perspective)||!dt()&&(J(t.backdropFilter)||J(t.filter))||ot.test(t.willChange||``)||st.test(t.contain||``)}function ut(e){let t=ht(e);for(;q(t)&&!ft(t);){if(lt(t))return t;if(at(t))return null;t=ht(t)}return null}function dt(){return ct??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),ct}function ft(e){return/^(html|body|#document)$/.test(W(e))}function pt(e){return G(e).getComputedStyle(e)}function mt(e){return K(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function ht(e){if(W(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||nt(e)&&e.host||et(e);return nt(t)?t.host:t}function gt(e){let t=ht(e);return ft(t)?(e.ownerDocument||e).body:q(t)&&rt(t)?t:gt(t)}function _t(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=gt(e),i=r===e.ownerDocument?.body,a=G(r);if(i){let e=vt(a);return t.concat(a,a.visualViewport||[],rt(r)?r:[],e&&n?_t(e):[])}return t.concat(r,_t(r,[],n))}function vt(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}var yt={...s},bt=yt.useInsertionEffect,xt=bt&&bt!==yt.useLayoutEffect?bt:e=>e();function Y(e){let t=I(St).current;return t.next=e,xt(t.effect),t.trampoline}function St(){let e={next:void 0,callback:Ct,trampoline:(...t)=>e.callback?.(...t),effect:()=>{e.callback=e.next}};return e}function Ct(){}var X=typeof document<`u`?s.useLayoutEffect:()=>{};function Z(e){return e?.ownerDocument||document}function wt(e,t,n,r){let i=!1,a=!1,o=r??U;return{reason:e,event:t??new Event(`base-ui`),cancel(){i=!0},allowPropagation(){a=!0},get isCanceled(){return i},get isPropagationAllowed(){return a},trigger:n,...o}}function Tt(e,t,n){let r=n??U;return{reason:e,event:t??new Event(`base-ui`),...r}}var Et=`none`,Dt=`trigger-press`,Ot=`trigger-hover`,kt=`trigger-focus`,At=`outside-press`,jt=`item-press`,Mt=`close-press`,Nt=`link-press`,Pt=`focus-out`,Ft=`escape-key`,It=`list-navigation`,Lt=`keyboard`,Rt=`pointer`,zt=`cancel-open`,Bt=`sibling-open`,Vt=`disabled`,Ht=`missing`,Ut=`initial`,Wt=`imperative-action`;function Gt(){let[,e]=s.useState({});return s.useCallback(()=>{e({})},[])}var Kt=0;function qt(e,t=`mui`){let n=s.useRef(void 0),r=Gt(),i=e??n.current;return s.useEffect(()=>{n.current??(Kt+=1,n.current=`${t}-${Kt}`,e??r())},[e,t,r]),i}var Jt=yt.useId;function Yt(e,t){if(Jt!==void 0){let n=Jt();return e??(t?`${t}-${n}`:n)}return qt(e,t)}function Xt(e){return Yt(e,`base-ui`)}function Zt(e){s.useEffect(e,se)}var Qt=0,$t=class e{static create(){return new e}currentId=Qt;start(e,t){this.clear(),this.currentId=setTimeout(()=>{this.currentId=Qt,t()},e)}isStarted(){return this.currentId!==Qt}clear=()=>{this.currentId!==Qt&&(clearTimeout(this.currentId),this.currentId=Qt)};disposeEffect=()=>this.clear};function en(){let e=I($t.create).current;return Zt(e.disposeEffect),e}function tn(){return typeof navigator>`u`?{userAgent:``,platform:``,maxTouchPoints:0}:{userAgent:navigator.userAgent,platform:navigator.platform??``,maxTouchPoints:navigator.maxTouchPoints??0}}var{userAgent:nn,platform:rn,maxTouchPoints:an}=tn(),on=nn.toLowerCase(),sn=rn.toLowerCase(),cn=/^i(os$|p)/.test(sn)||sn===`macintel`&&an>1,ln=`android`,un=sn===ln||on.includes(ln),dn=!cn&&sn.startsWith(`mac`);sn.startsWith(`win`),!un&&/^(linux|chrome os)/.test(sn);var fn=dn||cn,pn=typeof CSS<`u`&&!!CSS.supports?.(`-webkit-backdrop-filter:none`);!pn&&on.includes(`firefox`),!pn&&on.includes(`chrom`);var mn=fn,hn=/jsdom|happydom/.test(on);function gn(e){e.preventDefault(),e.stopPropagation()}function _n(e){return`nativeEvent`in e}function vn(e){return e.pointerType===``&&e.isTrusted?!0:un&&e.pointerType?e.type===`click`&&e.buttons===1:e.detail===0&&!e.pointerType}function yn(e){return hn?!1:!un&&e.width===0&&e.height===0||e.type===`pointerdown`&&e.width===1&&e.height===1&&e.pressure===0&&e.detail===0&&e.pointerType===`mouse`&&(un||e.buttons===0)||e.width<1&&e.height<1&&e.pressure===0&&e.detail===0&&e.pointerType===`touch`}function bn(e,t){let n=[`mouse`,`pen`];return t||n.push(``,void 0),n.includes(e)}function xn(e){let t=e.type;return t===`click`||t===`mousedown`||t===`keydown`||t===`keyup`}function Sn(e){let t=e.activeElement;for(;t?.shadowRoot?.activeElement!=null;)t=t.shadowRoot.activeElement;return t}function Q(e,t){if(!e||!t)return!1;let n=t.getRootNode?.();if(e.contains(t))return!0;if(n&&nt(n)){let n=t;for(;n;){if(e===n)return!0;n=n.parentNode||n.host}}return!1}function Cn(e,t){let n=e;for(;n;){if(K(n)&&n.matches(t))return n;n=n.assignedSlot??n.parentNode??(nt(n)?n.host:null)}return null}function wn(e){return`composedPath`in e?e.composedPath()[0]??e.target:e.target}var Tn=`data-base-ui-focusable`,En=`input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])`,Dn=`ArrowLeft`,On=`ArrowRight`,kn=`ArrowUp`,An=`ArrowDown`,jn=`data-trigger-disabled`;function Mn(e,t){if(!K(e))return!1;let n=e;if(t.hasElement(n))return!n.hasAttribute(jn);for(let[,e]of t.entries())if(Q(e,n))return!e.hasAttribute(jn);return!1}function Nn(e,t){if(t==null)return!1;if(`composedPath`in e)return e.composedPath().includes(t);let n=e;return n.target!=null&&t.contains(n.target)}function Pn(e){return e.matches(`html,body`)}function Fn(e){return q(e)&&e.matches(`input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])`)}function In(e){return Cn(e,`button,a[href],[role="button"],select,[tabindex]:not([tabindex="-1"]),${En}`)!=null}function Ln(e){return e?e.getAttribute(`role`)===`combobox`&&Fn(e):!1}function Rn(e){if(!e||hn)return!0;try{return e.matches(`:focus-visible`)}catch{return!0}}function zn(e){return e?e.hasAttribute(`data-base-ui-focusable`)?e:e.querySelector(`[data-base-ui-focusable]`)||e:null}function $(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}function Bn(...e){return()=>{for(let t=0;t<e.length;t+=1){let n=e[t];n&&n()}}}function Vn(e){let t=I(Hn,e).current;return t.next=e,X(t.effect),t}function Hn(e){let t={current:e,next:e,effect:()=>{t.current=t.next}};return t}var Un=null;globalThis.requestAnimationFrame;var Wn=new class{callbacks=[];callbacksCount=0;nextId=1;startId=1;isScheduled=!1;tick=e=>{this.isScheduled=!1;let t=this.callbacks,n=this.callbacksCount;if(this.callbacks=[],this.callbacksCount=0,this.startId=this.nextId,n>0)for(let n=0;n<t.length;n+=1)t[n]?.(e)};request(e){let t=this.nextId;return this.nextId+=1,this.callbacks.push(e),this.callbacksCount+=1,this.isScheduled||=(requestAnimationFrame(this.tick),!0),t}cancel(e){let t=e-this.startId;t<0||t>=this.callbacks.length||this.callbacks[t]!==null&&(this.callbacks[t]=null,--this.callbacksCount)}},Gn=class e{static create(){return new e}static request(e){return Wn.request(e)}static cancel(e){return Wn.cancel(e)}currentId=Un;request(e){this.cancel(),this.currentId=Wn.request(()=>{this.currentId=Un,e()})}cancel=()=>{this.currentId!==Un&&(Wn.cancel(this.currentId),this.currentId=Un)};disposeEffect=()=>this.cancel};function Kn(){let e=I(Gn.create).current;return Zt(e.disposeEffect),e}var qn={clipPath:`inset(50%)`,overflow:`hidden`,whiteSpace:`nowrap`,border:0,padding:0,width:1,height:1,margin:-1},Jn={...qn,position:`fixed`,margin:0,top:0,left:0},Yn={...qn,position:`absolute`},Xn=s.forwardRef(function(e,t){let[n,r]=s.useState();X(()=>{mn&&pn&&r(`button`)},[]);let i={tabIndex:0,role:n};return(0,c.jsx)(`span`,{...e,ref:t,style:Jn,"aria-hidden":!n||void 0,...i,"data-base-ui-focus-guard":``})});function Zn(e,t){return t<0||t>=e.length}function Qn(e,t){return tr(e.current,{disabledIndices:t})}function $n(e,t){return tr(e.current,{decrement:!0,startingIndex:e.current.length,disabledIndices:t})}function er(e,t,n){let{decrement:r,loopFocus:i,allowEscape:a,disabledIndices:o,minIndex:s,maxIndex:c}=n,l=()=>tr(e,{startingIndex:t,decrement:r,disabledIndices:o}),u,d=!1;if(!i)u=r?Math.max(s,l()):Math.min(c,l());else if(r?t<=s:t>=c){let n=r?-1:e.length;a&&t!==n?u=-1:(u=r?c:s,d=!0)}else u=l();return{index:Zn(e,u)?-1:u,wrapped:d}}function tr(e,{startingIndex:t=-1,decrement:n=!1,disabledIndices:r,amount:i=1}={}){let a=t;do a+=n?-i:i;while(a>=0&&a<=e.length-1&&nr(e,a,r));return a}function nr(e,t,n){if(typeof n==`function`?n(t):n?.includes(t)??!1)return!0;let r=e[t];return r?!ir(r)||r.matches(`:disabled`)?!0:!n&&(r.hasAttribute(`disabled`)||r.getAttribute(`aria-disabled`)===`true`):!1}function rr(e){return e.visibility===`hidden`||e.visibility===`collapse`}function ir(e,t=e?pt(e):null){return!e||!e.isConnected||!t||rr(t)?!1:typeof e.checkVisibility==`function`?e.checkVisibility():t.display!==`none`&&t.display!==`contents`}var ar=`a[href],button,input,select,textarea,summary,details,iframe,object,embed,[tabindex],[contenteditable]:not([contenteditable="false"]),audio[controls],video[controls]`;function or(e){let t=e.assignedSlot;if(t)return t;if(e.parentElement)return e.parentElement;let n=e.getRootNode();return nt(n)?n.host:null}function sr(e){for(let t of Array.from(e.children))if(W(t)===`summary`)return t;return null}function cr(e,t){let n=sr(t);return!!n&&(e===n||Q(n,e))}function lr(e){let t=e?W(e):``;return e!=null&&e.matches(ar)&&(t!==`summary`||e.parentElement!=null&&W(e.parentElement)===`details`&&sr(e.parentElement)===e)&&(t!==`details`||sr(e)==null)&&(t!==`input`||e.type!==`hidden`)}function ur(e){if(!lr(e)||!e.isConnected||e.matches(`:disabled`))return!1;for(let t=e;t;t=or(t)){let n=t!==e,r=W(t)===`slot`;if(t.hasAttribute(`inert`)||n&&W(t)===`details`&&!t.open&&!cr(e,t)||t.hasAttribute(`hidden`)||!r&&!dr(t,n))return!1}return!0}function dr(e,t){let n=pt(e);return t?n.display!==`none`:ir(e,n)}function fr(e){let t=e.tabIndex;if(t<0){let t=W(e);if(t===`details`||t===`audio`||t===`video`||q(e)&&e.isContentEditable)return 0}return t}function pr(e){if(W(e)!==`input`)return null;let t=e;return t.type===`radio`&&t.name!==``?t:null}function mr(e,t){let n=pr(e);if(!n)return!0;let r=t.find(e=>{let t=pr(e);return t?.name===n.name&&t.form===n.form&&t.checked});return r?r===n:t.find(e=>{let t=pr(e);return t?.name===n.name&&t.form===n.form})===n}function hr(e){if(q(e)&&W(e)===`slot`){let t=e.assignedElements({flatten:!0});if(t.length>0)return t}return q(e)&&e.shadowRoot?Array.from(e.shadowRoot.children):Array.from(e.children)}function gr(e,t){hr(e).forEach(e=>{lr(e)&&t.push(e),gr(e,t)})}function _r(e,t,n){hr(e).forEach(e=>{q(e)&&e.matches(t)&&n.push(e),_r(e,t,n)})}function vr(e){return ur(e)&&fr(e)>=0}function yr(e){let t=[];return gr(e,t),t.filter(ur)}function br(e){let t=yr(e);return t.filter(e=>fr(e)>=0&&mr(e,t))}function xr(e,t){let n=br(e),r=n.length;if(r===0)return;let i=Sn(Z(e)),a=n.indexOf(i);return n[a===-1?t===1?0:r-1:a+t]}function Sr(e){return xr(Z(e).body,1)||e}function Cr(e){return xr(Z(e).body,-1)||e}function wr(e,t,n){if(!e)return null;let r=[];gr(Z(e).body,r);let i=r.indexOf(e);if(i===-1)return null;let a=r.filter(ur);for(let e=1;e<r.length;e+=1){let o=r[(i+t*e+r.length)%r.length];if(!Q(n,o)&&vr(o)&&mr(o,a))return o}return r[i]}function Tr(e,t){let n=t||e.currentTarget,r=e.relatedTarget;return!r||!Q(n,r)}function Er(e){br(e).forEach(e=>{e.dataset.tabindex=e.getAttribute(`tabindex`)||``,e.setAttribute(`tabindex`,`-1`)})}function Dr(e){let t=[];_r(e,`[data-tabindex]`,t),t.forEach(e=>{let t=e.dataset.tabindex;delete e.dataset.tabindex,t?e.setAttribute(`tabindex`,t):e.removeAttribute(`tabindex`)})}function Or(e,t,n=!0){return e.filter(e=>e.parentId===t).flatMap(t=>[...!n||t.context?.open?[t]:[],...Or(e,t.id,n)])}function kr(e,t){let n=[],r=e.find(e=>e.id===t)?.parentId;for(;r;){let t=e.find(e=>e.id===r);r=t?.parentId,t&&(n=n.concat(t))}return n}function Ar(e){return`data-base-ui-${e}`}var jr=0;function Mr(e,t={}){let{preventScroll:n=!1,sync:r=!1,shouldFocus:i}=t;cancelAnimationFrame(jr);function a(){(!i||i())&&e?.focus({preventScroll:n})}if(r)return a(),H;let o=requestAnimationFrame(a);return jr=o,()=>{jr===o&&(cancelAnimationFrame(o),jr=0)}}var Nr=`data-base-ui-inert`,Pr=new WeakMap,Fr=new WeakSet,Ir=new WeakMap,Lr=0;function Rr(e){return e?nt(e)?e.host:Rr(e.parentNode):null}var zr=(e,t)=>t.map(t=>{if(e.contains(t))return t;let n=Rr(t);return e.contains(n)?n:null}).filter(e=>e!=null),Br=e=>{let t=new Set;return e.forEach(e=>{let n=e;for(;n&&!t.has(n);)t.add(n),n=n.parentNode}),t},Vr=(e,t,n)=>{let r=[],i=e=>{e&&!n.has(e)&&Array.from(e.children).forEach(e=>{W(e)!==`script`&&(t.has(e)?i(e):r.push(e))})};return i(e),r};function Hr(e,t,n,{mark:r=!0}){let i=zr(t,e),a=r?Vr(t,Br(i),new Set(i)):[],o=[],s=[];if(n){let e=zr(t,Array.from(t.querySelectorAll(`[aria-live]`))),n=i.concat(e);Vr(t,Br(n),new Set(n)).forEach(e=>{let t=e.getAttribute(`aria-hidden`),n=t!==null&&t!==`false`,r=(Pr.get(e)||0)+1;Pr.set(e,r),o.push(e),r===1&&n&&Fr.add(e),n||e.setAttribute(`aria-hidden`,`true`)})}return r&&a.forEach(e=>{let t=(Ir.get(e)||0)+1;Ir.set(e,t),s.push(e),t===1&&e.setAttribute(Nr,``)}),Lr+=1,()=>{o.forEach(e=>{let t=(Pr.get(e)||0)-1;Pr.set(e,t),t||(Fr.has(e)||e.removeAttribute(`aria-hidden`),Fr.delete(e))}),r&&s.forEach(e=>{let t=(Ir.get(e)||0)-1;Ir.set(e,t),t||e.removeAttribute(Nr)}),--Lr,Lr||(Pr=new WeakMap,Fr=new WeakSet,Ir=new WeakMap)}}function Ur(e,t={}){let{ariaHidden:n=!1,mark:r=!0}=t,i=Z(e[0]).body;return Hr(e,i,n,{mark:r})}var Wr={style:{transition:`none`}},Gr=`data-base-ui-click-trigger`,Kr={fallbackAxisSide:`none`},qr={fallbackAxisSide:`end`},Jr={clipPath:`inset(50%)`,position:`fixed`,top:0,left:0},Yr=s.createContext(null),Xr=()=>s.useContext(Yr),Zr=Ar(`portal`);function Qr(e={}){let{ref:t,container:n,componentProps:r=U,elementProps:i}=e,a=Yt(),o=Xr()?.portalNode,[c,l]=s.useState(null),[u,d]=s.useState(null),f=Y(e=>{e!==null&&d(e)}),p=s.useRef(null);X(()=>{if(n===null){p.current&&(p.current=null,d(null),l(null));return}let e=(n&&(tt(n)?n:n.current))??o??document.body;e==null?p.current&&(p.current=null,d(null),l(null)):p.current!==e&&(p.current=e,d(null),l(e))},[n,o]);let m=Te(`div`,r,{ref:[t,f],props:[{id:a,[Zr]:``},i]}),h=c&&m?B.createPortal(m,c):null;return{node:u,nodeId:s.isValidElement(m)?m.props.id:void 0,subtree:h}}var $r=s.forwardRef(function(e,t){let{render:n,className:r,style:i,children:a,container:o,portalOwnerRole:l,...u}=e,{node:d,nodeId:f,subtree:p}=Qr({container:o,ref:t,componentProps:e,elementProps:u}),m=s.useRef(null),h=s.useRef(null),g=s.useRef(null),_=s.useRef(null),[v,y]=s.useState(null),b=s.useRef(!1),x=v?.modal,S=v?.open,C=!!v&&!v.modal&&v.open&&!!d;s.useEffect(()=>{if(!d||x)return;function e(e){d&&e.relatedTarget&&Tr(e)&&(e.type===`focusin`?b.current&&=(Dr(d),!1):(Er(d),b.current=!0))}return Bn($(d,`focusin`,e,!0),$(d,`focusout`,e,!0))},[d,x]),X(()=>{d&&S===!0&&b.current&&(Dr(d),b.current=!1)},[S,d]);let ee=s.useMemo(()=>({beforeOutsideRef:m,afterOutsideRef:h,beforeInsideRef:g,afterInsideRef:_,portalNode:d,setFocusManagerState:y}),[d]);return(0,c.jsxs)(s.Fragment,{children:[p,(0,c.jsxs)(Yr.Provider,{value:ee,children:[C&&d&&(0,c.jsx)(Xn,{"data-type":`outside`,ref:m,onFocus:e=>{Tr(e,d)?g.current?.focus():Cr(v?v.domReference:null)?.focus()}}),C&&d&&(0,c.jsx)(`span`,{role:l,"aria-owns":f,style:Jr}),d&&B.createPortal(a,d),C&&d&&(0,c.jsx)(Xn,{"data-type":`outside`,ref:h,onFocus:e=>{Tr(e,d)?_.current?.focus():(Sr(v?v.domReference:null)?.focus(),v?.closeOnFocusOut&&v?.onOpenChange(!1,wt(`focus-out`,e.nativeEvent)))}})]})]})});function ei(){let e=new Map;return{emit(t,n){e.get(t)?.forEach(e=>e(n))},on(t,n){e.has(t)||e.set(t,new Set),e.get(t).add(n)},off(t,n){e.get(t)?.delete(n)}}}var ti=class{nodesRef={current:[]};events=ei();addNode(e){this.nodesRef.current.push(e)}removeNode(e){let t=this.nodesRef.current.findIndex(t=>t===e);t!==-1&&this.nodesRef.current.splice(t,1)}},ni=s.createContext(null),ri=s.createContext(null),ii=()=>s.useContext(ni)?.id||null,ai=e=>{let t=s.useContext(ri);return e??t};function oi(e){let t=Yt(),n=ai(e),r=ii();return X(()=>{if(!t)return;let e={id:t,parentId:r};return n?.addNode(e),()=>{n?.removeNode(e)}},[n,t,r]),t}function si(e){let{children:t,id:n}=e,r=ii();return(0,c.jsx)(ni.Provider,{value:s.useMemo(()=>({id:n,parentId:r}),[n,r]),children:t})}function ci(e){let{children:t,externalTree:n}=e,r=I(()=>n??new ti).current;return(0,c.jsx)(ri.Provider,{value:r,children:t})}function li(e){return e==null?e:`current`in e?e.current:e}function ui(e,t){let n=G(wn(e));return e instanceof n.KeyboardEvent?`keyboard`:e instanceof n.FocusEvent?t||`keyboard`:`pointerType`in e?e.pointerType||(vn(e)?`keyboard`:t||`mouse`):`touches`in e?`touch`:e instanceof n.MouseEvent?t||(e.detail===0?`keyboard`:`mouse`):``}var di=20,fi=[];function pi(){fi=fi.filter(e=>e.deref()?.isConnected)}function mi(e){pi(),e&&W(e)!==`body`&&(fi.push(new WeakRef(e)),fi.length>di&&(fi=fi.slice(-20)))}function hi(){return pi(),fi[fi.length-1]?.deref()}function gi(e){return e?vr(e)?e:br(e)[0]||e:null}function _i(e){if(e.hasAttribute(`tabindex`)&&!e.hasAttribute(`data-tabindex`)||!e.getAttribute(`role`)?.includes(`dialog`))return;let t=yr(e).filter(e=>{let t=e.getAttribute(`data-tabindex`)||``;return vr(e)||e.hasAttribute(`data-tabindex`)&&!t.startsWith(`-`)}),n=e.getAttribute(`tabindex`);t.length===0?n!==`0`&&(e.setAttribute(`tabindex`,`0`),e.setAttribute(`data-tabindex`,`0`)):(n!==`-1`||e.hasAttribute(`data-tabindex`)&&e.getAttribute(`data-tabindex`)!==`-1`)&&(e.setAttribute(`tabindex`,`-1`),e.setAttribute(`data-tabindex`,`-1`))}function vi(e){let{context:t,children:n,disabled:r=!1,initialFocus:i=!0,returnFocus:a=!0,explicitReturnFocus:o,restoreFocus:l=!1,modal:u=!0,closeOnFocusOut:d=!0,openInteractionType:f=``,nextFocusableElement:p,previousFocusableElement:m,beforeContentFocusGuardRef:h,externalTree:g,getInsideElements:_}=e,v=t.useState(`open`),y=t.useState(`domReferenceElement`),b=t.useState(`floatingElement`),{events:x,dataRef:S}=t.context,C=Y(()=>S.current.floatingContext?.nodeId),ee=i===!1,w=Ln(y)&&ee,T=Vn(i),E=Vn(a),D=Vn(o),O=Vn(f),k=Vn(v),A=ai(g),j=Xr(),M=s.useRef(!1),N=s.useRef(!1),P=s.useRef(!1),F=s.useRef(null),I=s.useRef(``),R=s.useRef(``),z=s.useRef(null),te=s.useRef(null),ne=L(z,h,j?.beforeInsideRef),re=L(te,j?.afterInsideRef),B=en(),ie=en(),ae=Kn(),oe=j!=null,V=zn(b),H=Y((e=V)=>e?br(e):[]),se=Y(()=>_?.().filter(e=>e!=null)??[]);s.useEffect(()=>{if(r||!u)return;function e(e){e.key===`Tab`&&Q(V,Sn(Z(V)))&&H().length===0&&!w&&gn(e)}return $(Z(V),`keydown`,e)},[r,V,u,w,H]),s.useEffect(()=>{if(r||!v)return;let e=Z(V);function t(){P.current=!1}function n(e){let t=wn(e),n=se(),r=Q(b,t)||Q(y,t)||Q(j?.portalNode,t)||n.some(e=>e===t||Q(e,t));P.current=!r,R.current=e.pointerType||`keyboard`,Cn(t,`[data-base-ui-click-trigger]`)&&(N.current=!0,ie.start(0,()=>{N.current=!1}))}function i(){R.current=`keyboard`}return Bn($(e,`pointerdown`,n,!0),$(e,`pointerup`,t,!0),$(e,`pointercancel`,t,!0),$(e,`keydown`,i,!0),t)},[r,b,y,V,v,j,ie,se]),s.useEffect(()=>{if(r||!d)return;let e=Z(V);function n(){N.current=!0,ie.start(0,()=>{N.current=!1})}function i(e){let t=wn(e);vr(t)&&(F.current=t)}function a(n){let r=n.relatedTarget,i=n.currentTarget,a=wn(n);u&&r==null&&a!=null&&Q(b,a)&&mi(a),queueMicrotask(()=>{let o=C(),s=t.context.triggerElements,c=se(),d=r?.hasAttribute(Ar(`focus-guard`))&&[z.current,te.current,j?.beforeInsideRef.current,j?.afterInsideRef.current,j?.beforeOutsideRef.current,j?.afterOutsideRef.current,li(m),li(p)].includes(r),f=!(Q(y,r)||Q(b,r)||Q(r,b)||Q(j?.portalNode,r)||c.some(e=>e===r||Q(e,r))||s.hasMatchingElement(e=>Q(e,r))||d||A&&(Or(A.nodesRef.current,o).find(e=>Q(e.context?.elements.floating,r)||Q(e.context?.elements.domReference,r))||kr(A.nodesRef.current,o).find(e=>[e.context?.elements.floating,zn(e.context?.elements.floating)].includes(r)||e.context?.elements.domReference===r)));if(i===y&&V&&_i(V),l&&i!==y&&!ir(a)&&Sn(e)===e.body){if(q(V)&&(V.focus(),l===`popup`)){ae.request(()=>{V.focus()});return}let e=H(),t=F.current,n=(t&&e.includes(t)?t:null)||e[e.length-1]||V;q(n)&&n.focus()}S.current.insideReactTree?S.current.insideReactTree=!1:(w||!u)&&r&&f&&!N.current&&(w||r!==hi())&&(M.current=!0,t.setOpen(!1,wt(Pt,n)))})}function o(){P.current||(S.current.insideReactTree=!0,B.start(0,()=>{S.current.insideReactTree=!1}))}let s=q(y)?y:null;if(b||s)return Bn(s&&$(s,`focusout`,a),s&&$(s,`pointerdown`,n),b&&$(b,`focusin`,i),b&&$(b,`focusout`,a),b&&j&&$(b,`focusout`,o,!0))},[r,y,b,V,u,A,j,t,d,l,H,w,C,S,B,ie,ae,p,m,se]),s.useEffect(()=>{if(r||!b||!v)return;let e=Array.from(j?.portalNode?.querySelectorAll(`[${Ar(`portal`)}]`)||[]),t=(A?kr(A.nodesRef.current,C()):[]).find(e=>Ln(e.context?.elements.domReference||null))?.context?.elements.domReference,n=Ur([b,...e,z.current,te.current,j?.beforeOutsideRef.current,j?.afterOutsideRef.current,...se(),t,li(m),li(p),w?y:null].filter(e=>e!=null),{ariaHidden:u||w,mark:!1}),i=Ur([b,...e].filter(e=>e!=null));return()=>{i(),n()}},[v,r,y,b,u,j,w,A,C,p,m,se]),X(()=>{if(!v||r||!q(V))return;I.current=``,R.current=``;let e=Z(V),t=Sn(e);queueMicrotask(()=>{let n=T.current,r=typeof n==`function`?n(O.current||``):n;if(r===void 0||r===!1||Q(V,t))return;let i=null,a=()=>(i??=H(V),i[0]||V),o;o=r===!0||r===null?a():li(r),o||=a();let s=Q(V,Sn(e)),c=S.current.openEvent,l=c?.type===`mousedown`&&vn(c);Mr(o,{sync:l,preventScroll:o===V,shouldFocus(){if(!k.current)return!1;if(s)return!0;let t=Sn(e);return!(t!==o&&Q(V,t))}})})},[r,v,V,H,T,O,k,S]);let U=s.useRef(null);X(()=>{if(r||!V){U.current=null;return}U.current&&=(U.current.cancelled=!0,null);let e=Z(V),t=Sn(e),n=O.current==null;mi(t);function i(e){if(e.open||(I.current=ui(e.nativeEvent,R.current)),(e.reason===`focus-out`&&e.triggerElement?.hasAttribute(Ar(`focus-guard`))||e.reason===`trigger-hover`&&e.nativeEvent.type===`mouseleave`)&&(M.current=!0),e.reason===`outside-press`){if(e.nested)M.current=!1;else if(vn(e.nativeEvent)||yn(e.nativeEvent))M.current=!1;else{let e=!1;Z(V).createElement(`div`).focus({get preventScroll(){return e=!0,!1}}),e?M.current=!1:M.current=!0}}}x.on(`openchange`,i);function a(e){let r=E.current,i=typeof r==`function`?r(e):r;if(i===void 0||i===!1)return null;i===null&&(i=!0);let a=y?.isConnected?y:null,o=t?.isConnected&&W(t)!==`body`?t:null,s=n?o||a:a||o;return s||=hi()||null,typeof i==`boolean`?s:li(i)||s||null}return()=>{x.off(`openchange`,i);let t=Sn(e),n=se(),r=Q(b,t)||n.some(e=>e===t||Q(e,t))||A&&Or(A.nodesRef.current,C(),!1).some(e=>Q(e.context?.elements.floating,t)),o=E.current,s=I.current,c=a(s),l={cancelled:!1};U.current=l,queueMicrotask(()=>{U.current===l&&(U.current=null);let n=gi(c),i=D.current??typeof o!=`boolean`;if(!l.cancelled&&o&&!M.current&&q(n)&&(i||n===t||t===e.body||r)){let e={preventScroll:!0};s===`keyboard`&&(e.focusVisible=!0),n.focus(e)}M.current=!1})}},[r,b,V,E,D,O,x,A,y,C,se]),X(()=>{if(!pn||v||!b)return;let e=Sn(Z(b));q(e)&&Fn(e)&&Q(b,e)&&e.blur()},[v,b]),X(()=>{if(!r&&j)return j.setFocusManagerState({modal:u,closeOnFocusOut:d,open:v,onOpenChange:t.setOpen,domReference:y}),()=>{j.setFocusManagerState(null)}},[r,j,u,v,t,d,y]),X(()=>{if(!r&&V)return _i(V),()=>{queueMicrotask(pi)}},[r,V]);let ce=!r&&(!u||!w)&&(oe||u);return(0,c.jsxs)(s.Fragment,{children:[ce&&(0,c.jsx)(Xn,{"data-type":`inside`,ref:ne,onFocus:e=>{if(u){let e=H();Mr(e[e.length-1])}else j?.portalNode&&(M.current=!1,Tr(e,j.portalNode)?Sr(y)?.focus():li(m??j.beforeOutsideRef)?.focus())}}),n,ce&&(0,c.jsx)(Xn,{"data-type":`inside`,ref:re,onFocus:e=>{u?Mr(H()[0]):j?.portalNode&&(d&&(M.current=!0),Tr(e,j.portalNode)?Cr(y)?.focus():li(p??j.afterOutsideRef)?.focus())}})]})}function yi(){return!1}function bi(e){return{escapeKey:typeof e==`boolean`?e:e?.escapeKey??!1,outsidePress:typeof e==`boolean`?e:e?.outsidePress??!0}}function xi(e,t={}){let{enabled:n=!0,escapeKey:r=!0,outsidePress:i=!0,outsidePressEvent:a=`sloppy`,referencePress:o=yi,bubbles:c,externalTree:l}=t,u=e.useState(`open`),d=e.useState(`floatingElement`),{dataRef:f,events:p}=e.context,m=ai(l),h=Y(typeof i==`function`?i:()=>!1),g=typeof i==`function`?h:i,_=g!==!1,v=Y(()=>a),{escapeKey:y,outsidePress:b}=bi(c),x=s.useRef(!1),S=s.useRef(!1),C=s.useRef(!1),ee=s.useRef(!1),w=s.useRef(!1),T=s.useRef(``),E=s.useRef(null),D=en(),O=en(),k=en(),A=Y(()=>{O.clear(),f.current.insideReactTree=!1}),j=Y(e=>{let t=f.current.floatingContext?.nodeId;return(m?Or(m.nodesRef.current,t):[]).some(t=>t.context?.open&&!t.context.dataRef.current[e])}),M=Y(t=>Nn(t,e.select(`floatingElement`))||Nn(t,e.select(`domReferenceElement`))),N=Y(t=>{o()&&e.setOpen(!1,wt(Dt,t.nativeEvent))}),P=Y(t=>{if(!u||!n||!r||t.key!==`Escape`)return;let i=_n(t)?t.nativeEvent:t;if(w.current||i.isComposing||!y&&j(`__escapeKeyBubbles`))return;let a=wt(Ft,i);e.setOpen(!1,a),a.isCanceled||t.preventDefault(),!y&&!a.isPropagationAllowed&&t.stopPropagation()}),F=Y(()=>{f.current.insideReactTree=!0,O.start(0,A)}),I=Y(t=>{if(!u||!n||t.button!==0)return;let r=wn(t.nativeEvent);Q(e.select(`floatingElement`),r)&&(x.current||(x.current=!0,S.current=!1))}),L=Y(e=>{u&&n&&(e.defaultPrevented||e.nativeEvent.defaultPrevented)&&x.current&&(S.current=!0)});s.useEffect(()=>{function e(e){e.open||(ee.current=!1)}return p.on(`openchange`,e),()=>{p.off(`openchange`,e)}},[p]),s.useEffect(()=>A,[A]),s.useEffect(()=>{if(!u||!n)return u||(ee.current=!1,w.current=!1,T.current=``,E.current=null),A;f.current.__escapeKeyBubbles=y,f.current.__outsidePressBubbles=b;let t=new $t,i=Z(d);function a(){k.clear(),w.current=!0}function o(){w.current=!0,k.start(pn?5:0,()=>{w.current=!1})}function s(){C.current=!0,t.start(0,()=>{C.current=!1})}function c(){x.current=!1,S.current=!1}function l(){let e=T.current,t=e===`pen`||!e?`mouse`:e,n=v(),r=typeof n==`function`?n():n;return typeof r==`string`?r:r[t]}function p(e){let t=l();return t===`intentional`&&e.type!==`click`||t===`sloppy`&&e.type===`click`}function h(e){let t=f.current.floatingContext?.nodeId,n=m&&Or(m.nodesRef.current,t).some(t=>Nn(e,t.context?.elements.floating));return M(e)||n}function O(n){if(p(n)){n.type!==`click`&&!M(n)&&(t.clear(),C.current=!1),A();return}if(f.current.insideReactTree){A();return}let r=wn(n),i=`[${Ar(`inert`)}]`,a=K(r)?r.getRootNode():null,o=Array.from((nt(a)?a:Z(e.select(`floatingElement`))).querySelectorAll(i)),s=e.context.triggerElements;if(r&&(s.hasElement(r)||s.hasMatchingElement(e=>Q(e,r))))return;let c=K(r)?r:null;for(;c&&!ft(c);){let e=ht(c);if(ft(e)||!K(e))break;c=e}if(!(o.length&&K(r)&&!Pn(r)&&!Q(r,e.select(`floatingElement`))&&o.every(e=>!Q(c,e)))){if(q(r)&&!(`touches`in n)){let e=ft(r),t=pt(r),i=/auto|scroll/,a=e||i.test(t.overflowX),o=e||i.test(t.overflowY),s=a&&r.clientWidth>0&&r.scrollWidth>r.clientWidth,c=o&&r.clientHeight>0&&r.scrollHeight>r.clientHeight,l=t.direction===`rtl`,u=c&&(l?n.offsetX<=r.offsetWidth-r.clientWidth:n.offsetX>r.clientWidth),d=s&&n.offsetY>r.clientHeight;if(u||d)return}if(!h(n)){if(l()===`intentional`){if(n.detail!==0&&!vn(n)&&!ee.current)return;if(C.current){t.clear(),C.current=!1;return}}typeof g==`function`&&!g(n)||j(`__outsidePressBubbles`)||(e.setOpen(!1,wt(At,n)),A())}}}function N(t){l()===`sloppy`&&t.pointerType!==`touch`&&e.select(`open`)&&n&&!M(t)&&O(t)}function F(t){if(l()!==`sloppy`||!e.select(`open`)||!n||M(t))return;let r=t.touches[0];r&&(E.current={startTime:Date.now(),startX:r.clientX,startY:r.clientY,dismissOnTouchEnd:!1,dismissOnMouseDown:!0},D.start(1e3,()=>{E.current&&(E.current.dismissOnTouchEnd=!1,E.current.dismissOnMouseDown=!1)}))}function I(e,t){let n=wn(e);if(!n)return;let r=$(n,e.type,()=>{t(e),r()})}function L(e){T.current=`touch`,I(e,F)}function R(e){D.clear(),e.type===`pointerdown`&&(e.button===0&&(ee.current=!0),T.current=e.pointerType),(e.type!==`mousedown`||!E.current||E.current.dismissOnMouseDown)&&I(e,e=>{e.type===`pointerdown`?N(e):O(e)})}function z(e){if(e.type===`pointercancel`&&(ee.current=!1),!x.current)return;let n=S.current;c(),l()===`intentional`&&(e.type===`pointercancel`?n&&s():h(e)||(n?s():(typeof g!=`function`||g(e))&&(t.clear(),C.current=!0,A())))}function te(e){if(l()!==`sloppy`||!E.current||M(e))return;let t=e.touches[0];if(!t)return;let n=Math.abs(t.clientX-E.current.startX),r=Math.abs(t.clientY-E.current.startY),i=Math.sqrt(n*n+r*r);i>5&&(E.current.dismissOnTouchEnd=!0),i>10&&(O(e),D.clear(),E.current=null)}function ne(e){I(e,te)}function re(e){l()===`sloppy`&&E.current&&!M(e)&&(E.current.dismissOnTouchEnd&&O(e),D.clear(),E.current=null)}function B(e){I(e,re)}let ie=Bn(r&&Bn($(i,`keydown`,P),$(i,`compositionstart`,a),$(i,`compositionend`,o)),_&&Bn($(i,`click`,R,!0),$(i,`pointerdown`,R,!0),$(i,`pointerup`,z,!0),$(i,`pointercancel`,z,!0),$(i,`mousedown`,R,!0),$(i,`mouseup`,z,!0),$(i,`touchstart`,L,{capture:!0,passive:!0}),$(i,`touchmove`,ne,{capture:!0,passive:!0}),$(i,`touchend`,B,{capture:!0,passive:!0})));return()=>{ie(),t.clear(),c(),C.current=!1}},[f,d,r,_,g,u,n,y,b,P,A,v,j,M,m,e,D,k]);let R=s.useMemo(()=>({onKeyDown:P,onPointerDown:N,onClick:N}),[P,N]),z=s.useMemo(()=>({onKeyDown:P,onPointerDown:L,onMouseDown:L,onClickCapture:F,onMouseDownCapture(e){F(),I(e)},onPointerDownCapture(e){F(),I(e)},onMouseUpCapture:F,onTouchEndCapture:F,onTouchMoveCapture:F}),[P,F,I,L]);return s.useMemo(()=>n?{reference:R,floating:z,trigger:R}:{},[n,R,z])}function Si(e){let{popupStore:t,treatPopupAsFloatingElement:n=!1,floatingRootContext:r,floatingId:i,nested:a,onOpenChange:o}=e,s=t.useState(`open`),c=t.useState(`activeTriggerElement`),l=t.useState(n?`popupElement`:`positionerElement`),u=o;return t.useSyncedValue(`floatingId`,i),X(()=>{let e={open:s,floatingId:i,referenceElement:c,floatingElement:l};K(c)&&(e.domReferenceElement=c),r.state.positionReference===r.state.referenceElement&&(e.positionReference=c),r.update(e)},[s,i,c,l,r]),r.context.onOpenChange=u,r.context.nested=a,r}function Ci(e,t=!1,n=!1,r=!1){let[i,a]=s.useState(e&&t?`idle`:void 0),[o,c]=s.useState(e&&!r);return e&&!o&&(c(!0),a(`starting`)),!e&&o&&i!==`ending`&&!n&&a(`ending`),!e&&!o&&i===`ending`&&a(void 0),X(()=>{if(!e&&o&&i!==`ending`&&n){let e=Gn.request(()=>{a(`ending`)});return()=>{Gn.cancel(e)}}},[e,o,i,n]),X(()=>{if(!e||t||i===void 0)return;let n=Gn.request(()=>{a(void 0)});return()=>{Gn.cancel(n)}},[t,e,i]),X(()=>{if(!e||!t)return;e&&o&&i!==`idle`&&a(`starting`);let n=Gn.request(()=>{a(`idle`)});return()=>{Gn.cancel(n)}},[t,e,o,i]),{mounted:o,setMounted:c,transitionStatus:i}}function wi(e,t){return e.getAnimations(t).filter(e=>{let t=e.effect?.getTiming();return t?.duration!==1/0&&t?.iterations!==1/0})}var Ti=null;function Ei(e){if(!Ti){let e=[];Ti=e,queueMicrotask(()=>{Ti=null,B.flushSync(()=>{for(let t of e)t()})})}Ti.push(e)}function Di(e,t=!1,n=!1){let r=Kn();return Y((i,a=null)=>{r.cancel();let o=li(e);if(o==null)return;let s=o,c=()=>{n?Ei(()=>{a?.aborted||i()}):B.flushSync(i)};if(typeof s.getAnimations!=`function`||globalThis.BASE_UI_ANIMATIONS_DISABLED){i();return}function l(){Promise.all(wi(s).map(e=>e.finished.then(H))).then(()=>{a?.aborted||c()},()=>{a?.aborted||(wi(s).some(e=>e.pending||e.playState!==`finished`)?l():c())})}if(t){let e=Me;if(!s.hasAttribute(e)){r.request(l);return}let t=new MutationObserver(()=>{s.hasAttribute(e)||(t.disconnect(),l())});t.observe(s,{attributes:!0,attributeFilter:[e]}),a?.addEventListener(`abort`,()=>t.disconnect(),{once:!0})}else r.request(l)})}function Oi(e){let{enabled:t=!0,open:n,ref:r,batch:i=!1,onComplete:a}=e,o=Y(a),c=Di(r,n,i);s.useEffect(()=>{if(!t)return;let e=new AbortController;return c(o,e.signal),()=>{e.abort()}},[t,n,o,c])}function ki(e){let{open:t,ref:n,preventUnmountOnClose:r,setPreventUnmountOnClose:i,onUnmount:a,animateInitialOpen:o}=e,c=Y(i),{mounted:l,setMounted:u,transitionStatus:d}=Ci(t,!1,!1,o),f=!t&&r;X(()=>{t&&c(!1)},[t,c]);let p=s.useRef(l),m=s.useRef(!1),h=Gt(),g=()=>{p.current=!1,u(!1),a()};X(()=>{p.current=l,m.current&&(m.current=!1,!t&&l&&g())});let _=Y(()=>{p.current&&(t?(m.current=!0,h()):g())});return Oi({enabled:l&&!t&&!f,open:t,ref:n,onComplete(){t||_()}}),{mounted:l,transitionStatus:d,preventUnmountingOnClose:f,forceUnmount:_}}var Ai={tabIndex:-1,[Tn]:``};function ji(e){return t=>t!==`touch`||e.current}function Mi(e,t=!1){let n=Yt(),r=ii()!=null,i=I(()=>e(n,r)).current;return Si({popupStore:i,treatPopupAsFloatingElement:t,floatingRootContext:i.state.floatingRootContext,floatingId:n,nested:r,onOpenChange:i.setOpen}),i}function Ni({handle:e,store:t}){return X(()=>e.attachStore(t),[e,t]),null}function Pi(e){let t=e.context.triggerElements.size;e.select(`open`)&&e.state.triggerCount!==t&&e.set(`triggerCount`,t)}function Fi(e,t){let n=s.useRef(null);return Y(r=>{let i=n.current;if(i!==null){if(i.element===r&&i.store===t&&i.id===e)return;n.current=null;let a=i.store;a.context.triggerElements.getById(i.id)===i.element&&(a.context.triggerElements.delete(i.id),Pi(a))}r!==null&&e!==void 0&&(n.current={store:t,id:e,element:r},t.context.triggerElements.add(e,r),Pi(t))})}function Ii(e,t,n,r=!1){let i=e.preventUnmountingOnClose;t?i=!1:r&&(i=!0);let a=n?.id??null,o=e.activeTriggerId,s=e.activeTriggerElement;return(a||t)&&(o=a,s=n??null),{open:t,preventUnmountingOnClose:i,activeTriggerId:o,activeTriggerElement:s,openedWithoutTrigger:t?n==null:e.openedWithoutTrigger}}function Li(e){let t=!1;return e.preventUnmountOnClose=()=>{t=!0},()=>t}function Ri(e,t,n,r){let i=n.useState(`isMountedByTrigger`,e),a=Fi(e,n),o=Y(t=>{let i=n.select(`open`),a=n.select(`activeTriggerId`);if(a===e){let e={activeTriggerElement:t,...i?r:null};n.update(e)}else if(a==null&&i&&!n.state.openedWithoutTrigger){let i={activeTriggerId:e??null,activeTriggerElement:t,...r};n.update(i)}}),s=Y(e=>{a(e),e&&o(e)});return X(()=>(s(t.current),()=>s(null)),[s,t,n,e]),X(()=>{if(i){let e={activeTriggerElement:t.current,...r};n.update(e)}},[i,n,t,...Object.values(r)]),{registerTrigger:s,isMountedByThisTrigger:i}}function zi(e,t={}){let{closeOnActiveTriggerUnmount:n=!1}=t,r=s.useRef(null),i=e.useState(`open`);X(()=>{if(!i){r.current=null,e.state.triggerCount!==0&&e.set(`triggerCount`,0),e.state.openedWithoutTrigger&&e.set(`openedWithoutTrigger`,!1);return}let t=e.context.triggerElements.size,a={};e.state.triggerCount!==t&&(a.triggerCount=t);let o=e.select(`activeTriggerId`),s=null;if(o){let t=e.context.triggerElements.getById(o);if(t)r.current=o,t!==e.state.activeTriggerElement&&(a.activeTriggerElement=t);else{for(let[t,n]of e.context.triggerElements.entries())if(n===e.state.activeTriggerElement){a.activeTriggerId=t,a.activeTriggerElement=n,r.current=t;break}a.activeTriggerId===void 0&&(r.current===o?s=o:r.current=null)}}else r.current=null;if(!s&&!o&&!e.state.openedWithoutTrigger&&t===1){let t=e.context.triggerElements.entries().next();if(!t.done){let[e,n]=t.value;a.activeTriggerId=e,a.activeTriggerElement=n,r.current=e}}(a.triggerCount!==void 0||a.activeTriggerId!==void 0||a.activeTriggerElement!==void 0)&&e.update(a),s&&n&&queueMicrotask(()=>{if(e.select(`open`)&&e.select(`activeTriggerId`)===s&&!e.context.triggerElements.getById(s)){let t=wt(Et);e.setOpen(!1,t),t.isCanceled||e.update({activeTriggerId:null,activeTriggerElement:null})}})},[i,e,e.useState(`triggerCount`),e.useState(`activeTriggerId`),e.useState(`activeTriggerElement`),n])}function Bi(e,t,n,r){let{mounted:i,transitionStatus:a,forceUnmount:o}=ki({open:e,ref:t.context.popupRef,preventUnmountOnClose:t.useState(`preventUnmountingOnClose`),setPreventUnmountOnClose:e=>t.set(`preventUnmountingOnClose`,e),animateInitialOpen:r,onUnmount(){t.update({activeTriggerId:null,activeTriggerElement:null,mounted:!1,preventUnmountingOnClose:!1}),n?.(),t.context.onOpenChangeComplete?.(!1)}});return I(()=>(t.set(`mounted`,i),null)),t.useSyncedValues({mounted:i,transitionStatus:a}),{forceUnmount:o,transitionStatus:a}}function Vi(e,t){e.useSyncedValues(t),X(()=>()=>{e.update({activeTriggerProps:U,inactiveTriggerProps:U,popupProps:U})},[e])}function Hi(e,t){X(()=>{!t&&e.state.openMethod!==null&&e.set(`openMethod`,null)},[t,e]),X(()=>()=>{e.state.openMethod!==null&&e.set(`openMethod`,null)},[e])}var Ui=class{idMap=new Map;add(e,t){this.idMap.set(e,t)}delete(e){this.idMap.delete(e)}hasElement(e){for(let t of this.idMap.values())if(t===e)return!0;return!1}hasMatchingElement(e){for(let t of this.idMap.values())if(e(t))return!0;return!1}getById(e){return this.idMap.get(e)}entries(){return this.idMap.entries()}elements(){return this.idMap.values()}get size(){return this.idMap.size}},Wi=i(),Gi=[],Ki=void 0;function qi(){return Ki}function Ji(e){Gi.push(e)}function Yi(e){let t=(t,n)=>{let r=I(Zi).current,i;try{Ki=r;for(let e of Gi)e.before(r);i=e(t,n);for(let e of Gi)e.after(r);r.didInitialize=!0}finally{Ki=void 0}return i};return t.displayName=e.displayName||e.name,t}function Xi(e){return s.forwardRef(Yi(e))}function Zi(){return{didInitialize:!1}}var Qi=ae(19)?ta:na;function $i(e,t,n,r,i){return Qi(e,t,n,r,i)}function ea(e,t,n,r,i){let a=s.useCallback(()=>t(e.getSnapshot(),n,r,i),[e,t,n,r,i]);return(0,s.useSyncExternalStore)(e.subscribe,a,a)}Ji({before(e){e.syncIndex=0,e.didInitialize||(e.syncTick=1,e.syncHooks=[],e.didChangeStore=!0,e.getSnapshot=()=>{let t=!1;for(let n=0;n<e.syncHooks.length;n+=1){let r=e.syncHooks[n],i=r.selector(r.store.state,r.a1,r.a2,r.a3);Object.is(r.value,i)||(t=!0,r.value=i)}return t&&(e.syncTick+=1),e.syncTick})},after(e){e.syncHooks.length>0&&(e.didChangeStore&&(e.didChangeStore=!1,e.subscribe=t=>{let n=new Set;for(let t of e.syncHooks)n.add(t.store);let r=[];for(let e of n)r.push(e.subscribe(t));return()=>{for(let e of r)e()}}),(0,s.useSyncExternalStore)(e.subscribe,e.getSnapshot,e.getSnapshot))}});function ta(e,t,n,r,i){let a=qi();if(!a)return ea(e,t,n,r,i);let o=a.syncIndex;a.syncIndex+=1;let s;return a.didInitialize?(s=a.syncHooks[o],s.store===e&&s.selector===t&&Object.is(s.a1,n)&&Object.is(s.a2,r)&&Object.is(s.a3,i)||(s.store!==e&&(a.didChangeStore=!0),s.store=e,s.selector=t,s.a1=n,s.a2=r,s.a3=i,s.value=t(e.getSnapshot(),n,r,i))):(s={store:e,selector:t,a1:n,a2:r,a3:i,value:t(e.getSnapshot(),n,r,i)},a.syncHooks.push(s)),s.value}function na(e,t,n,r,i){return(0,Wi.useSyncExternalStoreWithSelector)(e.subscribe,e.getSnapshot,e.getSnapshot,e=>t(e,n,r,i))}var ra=class{static create(e){return new this(e)}constructor(e){this.state=e,this.listeners=new Set,this.updateTick=0}subscribe=e=>(this.listeners.add(e),()=>{this.listeners.delete(e)});getSnapshot=()=>this.state;setState(e){if(this.state===e)return;this.state=e,this.updateTick+=1;let t=this.updateTick;for(let n of this.listeners){if(t!==this.updateTick)return;n(e)}}update(e){for(let t in e)if(!Object.is(this.state[t],e[t])){this.setState({...this.state,...e});return}}set(e,t){Object.is(this.state[e],t)||this.setState({...this.state,[e]:t})}notifyAll(){let e={...this.state};this.setState(e)}use(e,t,n,r){return $i(this,e,t,n,r)}},ia=class extends ra{constructor(e,t={},n){super(e),this.context=t,this.selectors=n}useSyncedValue(e,t){s.useDebugValue(e);let n=this;X(()=>{n.state[e]!==t&&n.set(e,t)},[n,e,t])}useSyncedValueWithCleanup(e,t){let n=this;X(()=>(n.state[e]!==t&&n.set(e,t),()=>{n.set(e,void 0)}),[n,e,t])}useSyncedValues(e){let t=this;X(()=>{t.update(e)},[t,...Object.values(e)])}useControlledProp(e,t){s.useDebugValue(e);let n=this,r=t!==void 0;X(()=>{r&&!Object.is(n.state[e],t)&&n.setState({...n.state,[e]:t})},[n,e,t,r])}select(e,t,n,r){let i=this.selectors[e];return i(this.state,t,n,r)}useState(e,t,n,r){return s.useDebugValue(e),$i(this,this.selectors[e],t,n,r)}useContextCallback(e,t){s.useDebugValue(e);let n=Y(t??H);this.context[e]=n}useStateSetter(e){let t=s.useRef(void 0);return t.current===void 0&&(t.current=t=>{this.set(e,t)}),t.current}observe(e,t){let n;n=typeof e==`function`?e:this.selectors[e];let r=n(this.state);return t(r,r,this),this.subscribe(e=>{let i=n(e);if(!Object.is(r,i)){let e=r;r=i,t(i,e,this)}})}},aa={open:e=>e.open,transitionStatus:e=>e.transitionStatus,domReferenceElement:e=>e.domReferenceElement,referenceElement:e=>e.positionReference??e.referenceElement,floatingElement:e=>e.floatingElement,floatingId:e=>e.floatingId},oa=class extends ia{constructor(e){let{syncOnly:t,nested:n,onOpenChange:r,triggerElements:i,...a}=e;super({...a,positionReference:a.referenceElement,domReferenceElement:a.referenceElement},{onOpenChange:r,dataRef:{current:{}},events:ei(),nested:n,triggerElements:i},aa),this.syncOnly=t}syncOpenEvent=(e,t)=>{(!e||!this.state.open||t!=null&&xn(t))&&(this.context.dataRef.current.openEvent=e?t:void 0)};dispatchOpenChange=(e,t)=>{this.syncOpenEvent(e,t.event);let n={open:e,reason:t.reason,nativeEvent:t.event,nested:this.context.nested,triggerElement:t.trigger};this.context.events.emit(`openchange`,n)};setOpen=(e,t)=>{this.syncOnly||this.dispatchOpenChange(e,t),this.context.onOpenChange?.(e,t)}};function sa(e,t,n=!1){return{open:!1,openProp:void 0,mounted:!1,transitionStatus:void 0,floatingRootContext:new oa({open:!1,transitionStatus:void 0,floatingElement:null,referenceElement:null,triggerElements:e,floatingId:t,syncOnly:!0,nested:n,onOpenChange:void 0}),floatingId:t,triggerCount:0,preventUnmountingOnClose:!1,payload:void 0,activeTriggerId:null,activeTriggerElement:null,openedWithoutTrigger:!1,triggerIdProp:void 0,popupElement:null,positionerElement:null,activeTriggerProps:U,inactiveTriggerProps:U,popupProps:U}}var ca=e=>e.triggerIdProp??e.activeTriggerId,la=e=>e.openProp??e.open,ua=e=>(e.popupElement?.id??e.floatingId)||void 0;function da(e,t){return t!==void 0&&la(e)&&ca(e)===t}function fa(e,t){return da(e,t)?!0:t!==void 0&&la(e)&&ca(e)==null&&!e.openedWithoutTrigger&&e.triggerCount===1}var pa={open:la,mounted:e=>e.mounted,transitionStatus:e=>la(e)&&!e.mounted?`starting`:e.transitionStatus,floatingRootContext:e=>e.floatingRootContext,triggerCount:e=>e.triggerCount,preventUnmountingOnClose:e=>e.preventUnmountingOnClose,payload:e=>e.payload,activeTriggerId:ca,activeTriggerElement:e=>e.mounted?e.activeTriggerElement:null,popupId:ua,isTriggerActive:(e,t)=>t!==void 0&&ca(e)===t,isOpenedByTrigger:(e,t)=>da(e,t),isMountedByTrigger:(e,t)=>t!==void 0&&ca(e)===t&&e.mounted,triggerProps:(e,t)=>t?e.activeTriggerProps:e.inactiveTriggerProps,triggerPopupId:(e,t)=>fa(e,t)?ua(e):void 0,popupProps:e=>e.popupProps,popupElement:e=>e.popupElement,positionerElement:e=>e.positionerElement},ma=`ArrowUp`,ha=`ArrowDown`,ga=`ArrowLeft`,_a=`ArrowRight`,va=`Home`,ya=new Set([ma,ha,ga,_a,va,`End`]),ba=[`Shift`,`Control`,`Alt`,`Meta`];function xa(e){return q(e)&&e.tagName===`INPUT`}function Sa(e){return!!(xa(e)&&e.selectionStart!=null||q(e)&&e.tagName===`TEXTAREA`)}function Ca(e,t,n,r){if(!e||!t||!t.scrollTo)return;let i=e.scrollLeft,a=e.scrollTop,o=e.clientWidth<e.scrollWidth,s=e.clientHeight<e.scrollHeight;if(o&&r!==`vertical`){let r=wa(e,t,`left`),a=Ta(e),o=Ta(t);n===`ltr`&&(r+t.offsetWidth+o.scrollMarginRight>e.scrollLeft+e.clientWidth-a.scrollPaddingRight?i=r+t.offsetWidth+o.scrollMarginRight-e.clientWidth+a.scrollPaddingRight:r-o.scrollMarginLeft<e.scrollLeft+a.scrollPaddingLeft&&(i=r-o.scrollMarginLeft-a.scrollPaddingLeft)),n===`rtl`&&(r-o.scrollMarginLeft<e.scrollLeft+a.scrollPaddingLeft?i=r-o.scrollMarginLeft-a.scrollPaddingLeft:r+t.offsetWidth+o.scrollMarginRight>e.scrollLeft+e.clientWidth-a.scrollPaddingRight&&(i=r+t.offsetWidth+o.scrollMarginRight-e.clientWidth+a.scrollPaddingRight))}if(s&&r!==`horizontal`){let n=wa(e,t,`top`),r=Ta(e),i=Ta(t);n-i.scrollMarginTop<e.scrollTop+r.scrollPaddingTop?a=n-i.scrollMarginTop-r.scrollPaddingTop:n+t.offsetHeight+i.scrollMarginBottom>e.scrollTop+e.clientHeight-r.scrollPaddingBottom&&(a=n+t.offsetHeight+i.scrollMarginBottom-e.clientHeight+r.scrollPaddingBottom)}e.scrollTo({left:i,top:a,behavior:`auto`})}function wa(e,t,n){let r=n===`left`?`offsetLeft`:`offsetTop`,i=0;for(;t.offsetParent&&(i+=t[r],t.offsetParent!==e);)t=t.offsetParent;return i}function Ta(e){let t=getComputedStyle(e);return{scrollMarginTop:parseFloat(t.scrollMarginTop)||0,scrollMarginRight:parseFloat(t.scrollMarginRight)||0,scrollMarginBottom:parseFloat(t.scrollMarginBottom)||0,scrollMarginLeft:parseFloat(t.scrollMarginLeft)||0,scrollPaddingTop:parseFloat(t.scrollPaddingTop)||0,scrollPaddingRight:parseFloat(t.scrollPaddingRight)||0,scrollPaddingBottom:parseFloat(t.scrollPaddingBottom)||0,scrollPaddingLeft:parseFloat(t.scrollPaddingLeft)||0}}function Ea(e){return ae(19)?e:e?`true`:void 0}var Da=s.forwardRef(function(e,t){let{cutout:n,...r}=e,i;if(n){let e=n.getBoundingClientRect();i=`polygon(0% 0%,100% 0%,100% 100%,0% 100%,0% 0%,${e.left}px ${e.top}px,${e.left}px ${e.bottom}px,${e.right}px ${e.bottom}px,${e.right}px ${e.top}px,${e.left}px ${e.top}px)`}return(0,c.jsx)(`div`,{ref:t,role:`presentation`,"data-base-ui-inert":``,...r,style:{position:`fixed`,inset:0,userSelect:`none`,WebkitUserSelect:`none`,clipPath:i}})}),Oa={},ka={},Aa=``;function ja(e,t){return rt(e)?e:t}function Ma(e,t,n){return/hidden|clip/.test(e.getComputedStyle(ja(t,n)).overflowY)}function Na(e){if(typeof document>`u`)return!1;let t=Z(e);return G(t).innerWidth-t.documentElement.clientWidth>0}function Pa(e){if(!(typeof CSS<`u`&&CSS.supports&&CSS.supports(`scrollbar-gutter`,`stable`))||typeof document>`u`)return!1;let t=Z(e),n=t.documentElement,r=t.body,i=ja(n,r),a=i.style.overflowY,o=n.style.scrollbarGutter;n.style.scrollbarGutter=`stable`,i.style.overflowY=`scroll`;let s=i.offsetWidth;i.style.overflowY=`hidden`;let c=i.offsetWidth;return i.style.overflowY=a,n.style.scrollbarGutter=o,s===c}function Fa(e){let t=Z(e),n=t.documentElement,r=t.body,i=ja(n,r),a={overflowY:i.style.overflowY,overflowX:i.style.overflowX};return Object.assign(i.style,{overflowY:`hidden`,overflowX:`hidden`}),()=>{Object.assign(i.style,a)}}function Ia(e){let t=Z(e),n=t.documentElement,r=t.body,i=G(n),a=0,o=0,s=!1,c=Gn.create();if(pn&&(i.visualViewport?.scale??1)!==1)return()=>{};function l(){let t=i.getComputedStyle(n),c=i.getComputedStyle(r),l=(t.scrollbarGutter||``).includes(`both-edges`)?`stable both-edges`:`stable`;a=n.scrollTop,o=n.scrollLeft,Oa={scrollbarGutter:n.style.scrollbarGutter,overflowY:n.style.overflowY,overflowX:n.style.overflowX},Aa=n.style.scrollBehavior,ka={position:r.style.position,height:r.style.height,width:r.style.width,boxSizing:r.style.boxSizing,overflowY:r.style.overflowY,overflowX:r.style.overflowX,scrollBehavior:r.style.scrollBehavior};let u=n.scrollHeight>n.clientHeight,d=n.scrollWidth>n.clientWidth,f=t.overflowY===`scroll`||c.overflowY===`scroll`,p=t.overflowX===`scroll`||c.overflowX===`scroll`,m=Math.max(0,i.innerWidth-r.clientWidth),h=Math.max(0,i.innerHeight-r.clientHeight),g=parseFloat(c.marginTop)+parseFloat(c.marginBottom),_=parseFloat(c.marginLeft)+parseFloat(c.marginRight),v=ja(n,r);s=Pa(e),s?(n.style.scrollbarGutter=l,v.style.overflowY=`hidden`,v.style.overflowX=`hidden`):(Object.assign(n.style,{scrollbarGutter:l,overflowY:`hidden`,overflowX:`hidden`}),(u||f)&&(n.style.overflowY=`scroll`),(d||p)&&(n.style.overflowX=`scroll`),Object.assign(r.style,{position:`relative`,height:g||h?`calc(100dvh - ${g+h}px)`:`100dvh`,width:_||m?`calc(100vw - ${_+m}px)`:`100vw`,boxSizing:`border-box`,overflowY:`hidden`,overflowX:`hidden`,scrollBehavior:`unset`}),r.scrollTop=a,r.scrollLeft=o,n.setAttribute(`data-base-ui-scroll-locked`,``),n.style.scrollBehavior=`unset`)}function u(){Object.assign(n.style,Oa),Object.assign(r.style,ka),s||(n.scrollTop=a,n.scrollLeft=o,n.removeAttribute(`data-base-ui-scroll-locked`),n.style.scrollBehavior=Aa)}function d(){u(),c.request(l)}l();let f=$(i,`resize`,d);return()=>{c.cancel(),u(),typeof i.removeEventListener==`function`&&f()}}var La=new class{lockCount=0;restore=null;timeoutLock=$t.create();timeoutUnlock=$t.create();acquire(e){return this.lockCount+=1,this.lockCount===1&&this.restore===null&&this.timeoutLock.start(0,()=>this.lock(e)),this.release}release=()=>{--this.lockCount,this.lockCount===0&&this.restore&&this.timeoutUnlock.start(0,this.unlock)};unlock=()=>{this.lockCount===0&&this.restore&&(this.restore?.(),this.restore=null)};lock(e){if(this.lockCount===0||this.restore!==null)return;let t=Z(e),n=t.documentElement,r=t.body,i=G(n);if(Ma(i,n,r)){let t=new i.MutationObserver(()=>{Ma(i,n,r)||(t.disconnect(),this.restore=null,this.lock(e))}),a={attributes:!0};t.observe(n,a),t.observe(r,a),this.restore=()=>t.disconnect();return}let a=cn||!Na(e);this.restore=a?Fa(e):Ia(e)}};function Ra(e=!0,t=null){X(()=>{if(e)return La.acquire(t)},[e,t])}var za=class extends ia{setState(e){}update(e){}set(e,t){}notifyAll(){}},Ba={...pa,modal:e=>e.modal,nested:e=>e.nested,nestedOpenDialogCount:e=>e.nestedOpenDialogCount,nestedOpenDrawerCount:e=>e.nestedOpenDrawerCount,disablePointerDismissal:e=>e.disablePointerDismissal,openMethod:e=>e.openMethod,descriptionElementId:e=>e.descriptionElementId,titleElementId:e=>e.titleElementId,viewportElement:e=>e.viewportElement,role:e=>e.role},Va=class extends ia{constructor(e,t,n){let r=new Ui,i=Ua(e,r,t,n);super(i,Wa(r),Ba)}setOpen=(e,t)=>{t.preventUnmountOnClose=()=>{this.set(`preventUnmountingOnClose`,!0)},!e&&t.trigger==null&&this.state.activeTriggerId!=null&&(t.trigger=this.state.activeTriggerElement??void 0),this.context.onOpenChange?.(e,t),!t.isCanceled&&(this.state.floatingRootContext.dispatchOpenChange(e,t),this.update(Ii(this.state,e,t.trigger)))}};function Ha(){let e=new Ui;return new za(Object.freeze(Ua(void 0,e)),Object.freeze(Wa(e)),Ba)}function Ua(e,t,n,r=!1){return{...sa(t,n,r),modal:!0,disablePointerDismissal:!1,viewportElement:null,descriptionElementId:void 0,titleElementId:void 0,openMethod:null,nested:!1,nestedOpenDialogCount:0,nestedOpenDrawerCount:0,role:`dialog`,...e}}function Wa(e){return{popupRef:s.createRef(),backdropRef:s.createRef(),internalBackdropRef:s.createRef(),outsidePressEnabledRef:{current:!0},triggerElements:e,onOpenChange:void 0,onOpenChangeComplete:void 0}}var Ga=48,Ka=(e,t=0)=>{let n=new Int32Array(e.length);for(let r=0;r<e.length;r++)n[r]=e.charCodeAt(r)-Ga-t;return n},qa=e=>{let t=new Int32Array(e.length+1);for(let n=0;n<e.length;n++)t[n+1]=t[n]+e[n];return t},Ja=e=>{let t=new Int32Array(e.length),n=0;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r)-Ga;n+=i>>>1^-(i&1),t[r]=n}return t},Ya=384,Xa=[],Za=qa(Ka(`E0500002005282000000002000150000020021820000011200000003022202000300004200120000200420001200021200301200010400162000010000220021010:2192001200220012000220012000200200200400010200040000000000400200108200110100000022010313000162002000020020012020080213000228200000000082000000000120002000120020020040101020300130001001010`)),Qa=qa(Ka(`:11111111211111119311546544411119731869:671397415686432441111111111161114151214313433415:78311132233313187211117221449443411141111151152226611131111112212518142224214215421421542142424242516171151615616347111111111197911327451111111111111111111113134714133513411111311111111111111111111112444411111342312715245411117:3`)),$a=`@containerabcdefghinlmoprstunderlineviawzccentlignnimatespectuto-colsrowsaglorightnessckdrop-sisbcontrastfiltergrayscalehue-rotateinvertopacityslurrightnessaturateepia-coniclinearpositionradialsizeockurrderttom-belrstxyespacing-xyaretoursorlnt-umnsendspantartainentrasteividerop-shadowurationcorationlay-xyasendillexontromlter-featuresstretchapr-xyayscaleidow-colsrowsue-rotatedentlinesetvert-beringsxyeshadoweiadingftnest-clamp-imageabein-lrstxyskx--b-coniclpositionrsizet-x-y-fromto-fromto-inearfromto-fromto-adialfromto-fromtofromtofromtofromtoblockhinlinew-screenesblockhinlinewbjectpacityrutlinederigin-offsetbelrstxyesrspective-originaceholderioghtng-offsettateundedw-xyz-belrstlreseslr-endspantartaturatecepiahizekewpace-taleroll-xyz-barmpbelrstxyesbelrstxyes-thumbrackadowrink-xyxyartrokeabextora-shadowpckingnsformitionlate-xyz-offsetill-changeoom`,eo=(()=>{let e=Za.length-1,t=new Int32Array(e);for(let n=e-1;n>=0;n--){let e=1,r=n+1;for(let i=Za[n];i<Za[n+1];i++)e+=t[r],r+=t[r];t[n]=e}let n=new Int32Array(Za[e]),r=0;for(let i=0;i<e;i++){let e=i+1;for(let a=Za[i];a<Za[i+1];a++)n[r++]=e,e+=t[e]}return n})(),to=Ka(`02000000000000900<=0?000B000F00F00ŏI0J0LNPRTVX0000]_a00000000000000000000000rst0000000zŏ00000000000
ŏ0000000ŏ00000000000000000000000000000000000000000000000000000000000000Ë000000000000000000000Þ000000000000000000ð0000000ø0ùúûüýþÿĀāĂ㥹Ć000000000000000000000000000000000000000000ħ0ĨĪ00000000000000000000ļĽ00000Ŭ000000`,1),no=qa(Ka(`123333359346463635126536711576`)),ro=Ka(`93203242332583253248325D>E?F@03263243255B:032523853:0325B:8GA032542H<C=12727B:0328432553;D>E?3257D>032585:0325B:;0328B:032`),io=Ka(`012113445661666666789111:5;;;;;;;;444;;;:62999<1161=62>>?61:21@ABCD4446996:64E:::;:?::64:F114GHHIHHHHIHH1HH1HH1HHHHHH::EEJ4444::EE4444441691;644444114244444:;K6666555555555555555999666664444444444444444444444226?6:66644L9M?D:111::::6DE199`),ao=Ja(`020200202020020020020020020020200200200200200200200002020202001003040106000200200200200200200200200200200200200200200200200200200200200200200200200200200200020020020020020020002020200202002002002002002002002002002020002002020020200220200200200200200200200200200200020020020000200020002000200200200020020020002000200200200020020202002020202000200200020022000200200020020002002000200220002002000200W0Z00020020002002020002002000200g0j0002002000200200020020002002000200200020020002000200002000002002002002002000200020000200002002002002002002002020020020200200200200200200200200202020020020020020020020020002002002020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020002002002002002002000200200200200200200200200200020202020002000200020002002002002000020200200`),oo=(()=>{let e=new Int32Array(319).fill(-1),t=Ja(`02422242:222222242224222242442222222422222244442242226224222426222422442462222422622222222626222462242622422622422424242422222222422222222242422222222222222222622442224222222222222224424442262222222222222222222226224222424242422224422422422222`),n=Ja(`02222222222222222222202222222222222222222222221422222222222222222222222222222222222Y\\222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222221422222222222222222222222222222222222222Ŀł222222222222222222`);for(let r=0;r<t.length;r++)e[t[r]]=n[r];return e})(),so=`container |break-after- all auto avoid avoid-page column left page right|break-before- all auto avoid avoid-page column left page right|break-inside-a uto void void-column void-page|box-decoration- clone slice|box- border content| contents flow-root hidden table table-caption table-cell table-column table-column-group table-footer-group table-header-group table-row table-row-group| not-sr-only sr-only|float- end left none right start|clear- both end left none right start|isolat e ion-auto|overflow- auto clip hidden scroll visible|overflow-x- auto clip hidden scroll visible|overflow-y- auto clip hidden scroll visible|overscroll- auto contain none|overscroll-x- auto contain none|overscroll-y- auto contain none| absolute fixed relative static sticky| collapse invisible visible|justify- around baseline between center center-safe end end-safe evenly normal start stretch|justify-items- center center-safe end end-safe normal start stretch|justify-self- auto center center-safe end end-safe start stretch|items- baseline baseline-last center center-safe end end-safe start stretch|self- auto baseline baseline-last center center-safe end end-safe start stretch|place-content- around baseline between center center-safe end end-safe evenly start stretch|place-items- baseline center center-safe end end-safe start stretch|place-self- auto center center-safe end end-safe start stretch| antialiased subpixel-antialiased| italic not-italic|normal-nums |ordinal |slashed-zero | lining-nums oldstyle-nums| proportional-nums tabular-nums| diagonal-fractions stacked-fractions| no-underline overline| capitalize lowercase normal-case uppercase|truncate |whitespace- break-spaces normal nowrap pre pre-line pre-wrap|break- all keep normal words|wrap- anywhere break-word normal|hyphens- auto manual none|mix-blend- color color-burn color-dodge darken difference exclusion hard-light hue lighten luminosity multiply normal overlay plus-darker plus-lighter saturation screen soft-light|table- auto fixed|caption- bottom top|backface- hidden visible|appearance- auto none|scheme- dark light light-dark normal only-dark only-light|field-sizing- content fixed|pointer-events- auto none|resize -none -x -y|snap- align-none center end start|snap- always normal|snap- both none x y|snap- mandatory proximity|touch- auto manipulation none|touch-pan- left right x|touch-pan- down up y|touch-pinch-zoom |select- all auto none text|forced-color-adjust- auto none| normal size| baseline bottom middle sub super text-bottom text-top top| bounce none ping pulse spin| auto square video| auto fr max min px|none | auto full px| fixed local scroll|clip- border content padding text|origin- border content padding| bottom bottom-left bottom-right center left left-bottom left-top right right-bottom right-top top top-left top-right| no-repeat repeat repeat-round repeat-space repeat-x repeat-y| auto contain cover|blend- color color-burn color-dodge darken difference exclusion hard-light hue lighten luminosity multiply normal overlay saturation screen soft-light|to- b bl br l r t tl tr| auto dvh fit full lh lvh max min px screen svh| dashed dotted double hidden none solid| collapse separate|px |auto |full | content none strict| inline-size size|layout |paint |style | around baseline between center center-safe end end-safe evenly normal start stretch| alias all-scroll auto cell col-resize context-menu copy crosshair default e-resize ew-resize grab grabbing help move n-resize ne-resize nesw-resize no-drop none not-allowed ns-resize nw-resize nwse-resize pointer progress row-resize s-resize se-resize sw-resize text vertical-text w-resize wait zoom-in zoom-out| dashed dotted double solid wavy| auto from-font|reverse |initial | in in-out initial linear out| col col-reverse row row-reverse| nowrap wrap wrap-reverse| auto initial none| black bold extrabold extralight light medium normal semibold thin| condensed expanded extra-condensed extra-expanded normal semi-condensed semi-expanded ultra-condensed ultra-expanded|flow- col col-dense dense row row-dense| none subgrid| auto dvh dvw fit full lh lvh lvw max min px screen svh svw| block flex grid table| auto dvw fit full lvw max min px screen svw| loose none normal px relaxed snug tight|through |item | inside outside| decimal disc none| auto px| clip-border clip-content clip-fill clip-padding clip-stroke clip-view no-clip| add exclude intersect subtract| alpha luminance match|origin- border content fill padding stroke view|type- alpha luminance| circle ellipse| closest-corner closest-side farthest-corner farthest-side|at- bottom bottom-left bottom-right center left left-bottom left-top right right-bottom right-top top top-left top-right| dvh fit full lh lvh max min none px screen svh| auto dvh dvw fit full lh lvh lvw max min none px screen svh svw| dvw fit full lvw max min none px screen svw| auto dvh dvw fit full lvh lvw max min none prose px svh svw| auto dvh dvw fit full lvh lvw max min none px screen svh svw| contain cover fill none scale-down| first last none| distant dramatic midrange near none normal|inset | full none|3d | auto smooth|gutter- auto both stable| auto none thin| inner none| auto dvh dvw fit full lvh lvw max min px svh svw|base | center end justify left right start| clip ellipsis| balance nowrap pretty wrap| normal tight tighter wide wider widest| cpu gpu none| 3d flat| all colors none opacity shadow transform| discrete normal| full px| auto dvh dvw fit full lvh lvw max min px screen svh svw| auto contents scroll transform`.split(`|`).map(e=>{let t=e.split(` `),n=t.shift();for(let e=0;e<t.length;e++)t[e]=n+t[e];return t}),co=Ja(`0000000000000000000000000000000000000000000000000000000000000262242:6@200000006:240B428:4422400002046044222426220026642642462026224222824220022400000000\\00N222422242222222224062242222222422226264222422222222222222442804222422222222222222222222220<4<0204260002444020204224422`),lo=Ja(`ɠ222222222222222222222222222222222222222222222222222222222222˕4222226>6ʰ22ʷʺʷʺʷ42ʴ2ʓ22>621422ɶ222ɹɼɷɺɷɺ22ɱ42222ɨ2ɧ26622ɘɓ244ƸƵ222]d24242ǖǓƚÄȫ2263ȨȥȨ2222222ǣ222222222222222222ǂƽ2ƾƵ2222222422222ƜƑ22222222222222222222144Ŧţ22Ţş222222222222222222222ĸ2ı68ĦģĦɡŰ4Ġ«®ĝ822ĔđĔ2ē2222622`),uo=Ja(`02222222222222222222222222222222222222222222222222222222222222222202021422222222CF2200GJ021042222WZ222IL0ad2c10h2222U00X202[^2w0000120zy|}22
:22z22222222222G000qOVI00000{2<40000@00000G¦§000ª00000000000000021K¬«00®000000000000000000000222HGH_1¸222½2¾2222ÇÊ000°2±`),fo=new Int32Array(987),po=new Int32Array(987),mo=new Int32Array(987),ho=``,go=new Int32Array(1022);{let e=new Map,t=0,n=0;for(let r=0;r<co.length;r++)for(let i of so[uo[r]]){let a=e.get(i);a===void 0&&(a=t++,e.set(i,a),go[a*2]=ho.length,go[a*2+1]=i.length,ho+=i),fo[n]=co[r],po[n]=lo[r],mo[n]=a,n++}}var _o=Ja(`0b2N:222@R>F@286¦2@H2D266226FB22B2>BD\\6N22222Z222D222p`),vo=qa(Ka(`1::24444432:442:44:44>222222:44:4421322511111311111114`)),yo=Ja(`24A;33N=C@H4A;33N=C@<27;83:;8393NQ:3NQʰ222ˉºŴŽ2R2=18cƴÅŇ=cĞÛC1ƈǝȈ:ħ25=11D3A@4=<1;1DEr25;11B3?<6;:371BCn9@7=<8192>2E121@9@EHE@9>2T25511<398454131<=V25511<398454131<=ƧNž2Đå242L222290000f22500ɛ000ǘ222`),bo=Ka(`ij`),xo=Ka(``),So=Ka(`1`),Co={GROUP_COUNT:Ya,customValidatorNames:Xa,edgeStart:Za,labelStart:Qa,labelText:$a,edgeTarget:eo,nodeGroup:to,nodeVlist:oo,vlistPat:no,vlistOps:ro,vlistRef:io,vlistGroup:ao,litAnchor:fo,litGroup:po,litPool:mo,poolOffsets:go,poolText:ho,adjGid:_o,adjStart:vo,adjTgt:yo,patGid:bo,patTgt:xo,postfixLookupGroups:So,orderSensitiveModifiers:`* ** after backdrop before details-content file first-letter first-line marker placeholder selection`},wo=`line`in Error(),To=-1,Eo=-1,Do=(e,t,n)=>{let r=2166136261;for(let i=t;i<n;i++)r=Math.imul(r^e.charCodeAt(i),16777619);return r},Oo=(e,t,n)=>{let r=n-t,i=Math.imul(r,2654435761)^e.charCodeAt(t);if(r>3){let a=r>>2,o=r>>1;i=Math.imul(i^e.charCodeAt(t+1)<<8^e.charCodeAt(t+2)<<16^e.charCodeAt(t+a),2246822507),i=Math.imul(i^e.charCodeAt(t+o)<<8^e.charCodeAt(t+o+a)<<16^e.charCodeAt(n-3),3266489909),i^=e.charCodeAt(n-2)<<8^e.charCodeAt(n-1)<<16;for(let r=t+3,a=n-4;r<t+8&&r<a;r++,a--)i=Math.imul(i^e.charCodeAt(r)^e.charCodeAt(a)<<8,16777619)}return i^i>>>15},ko=(e,t,n={})=>{let{GROUP_COUNT:r,edgeStart:i,labelStart:a,labelText:o,edgeTarget:s,nodeGroup:c,nodeVlist:l,vlistPat:u,vlistOps:d,vlistRef:f,vlistGroup:p,litAnchor:m,litGroup:h,litPool:g,poolOffsets:_,poolText:v,adjGid:y,adjStart:b,adjTgt:x,patGid:S,patTgt:C,postfixLookupGroups:ee,customValidatorNames:w,orderSensitiveModifiers:T}=e,E=new Int32Array(r).fill(-1);for(let e=0;e<y.length;e++)E[y[e]]=e;let D=0;for(let e=0;e+1<b.length;e++){let t=b[e+1]-b[e];t>D&&(D=t)}let O=32;for(;O<2*(1+D+S.length);)O<<=1;let k=new Int32Array(f.length+1);for(let e=0;e<f.length;e++)k[e+1]=k[e]+u[f[e]+1]-u[f[e]];let A=new Uint8Array(r);for(let e=0;e<ee.length;e++)A[ee[e]]=1;let j=i.length-1,M=new Uint8Array(j),N=0,P=!0;for(let e=0;e<m.length;e++){M[m[e]]=1;let t=_[g[e]*2+1];t>N&&(N=t);let n=v.charCodeAt(_[g[e]*2]);(n===91||n===40)&&(P=!1)}let F=1;for(;F<m.length*2;)F<<=1;let I=new Int32Array(F).fill(-1);for(let e=0;e<m.length;e++){let t=_[g[e]*2],n=(Do(v,t,t+_[g[e]*2+1])^Math.imul(m[e],2654435761)|0)&F-1;for(;I[n]!==-1;)n=n+1&F-1;I[n]=e}let L=(e,t,n,r)=>{let i=(Do(t,n,r)^Math.imul(e,2654435761)|0)&F-1,a=r-n;for(;;){let r=I[i];if(r===-1)return-1;if(m[r]===e&&_[g[r]*2+1]===a){let e=_[g[r]*2],i=!0;for(let r=0;r<a;r++)if(v.charCodeAt(e+r)!==t.charCodeAt(n+r)){i=!1;break}if(i)return h[r]}i=i+1&F-1}},R=n.cacheSize??8192,z=n.prefix??e.prefix??``,te=z===``?``:z+`:`,ne=te.length,re=(w??[]).map(e=>{let n=t&&t[e];if(!n)throw Error(`cn: missing validator `+e);return n}),B=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,ie=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,ae=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,oe=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,V=0,H=-1,se=-1,U=-1,ce=-1,le=e=>e>=97&&e<=122||e>=65&&e<=90||e>=48&&e<=57||e===95,ue=e=>/\s/.test(String.fromCharCode(e)),de=(e,t,n)=>{if(V=0,H=-1,n-t<3)return;let r=e.charCodeAt(t),i=e.charCodeAt(n-1);if(r===91&&i===93)V=1;else if(r===40&&i===41)V=2;else return;U=t+1,ce=n-1;let a=t+1;if(le(e.charCodeAt(a))){for(a++;a<n-1;){let t=e.charCodeAt(a);if(!le(t)&&t!==45)break;a++}a<n-2&&e.charCodeAt(a)===58&&(H=t+1,se=a,U=a+1)}},fe=(e,t,n,r)=>{if(n-t!==r.length)return!1;for(let n=0;n<r.length;n++)if(e.charCodeAt(t+n)!==r.charCodeAt(n))return!1;return!0},pe=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,me=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,he=e=>!!e&&!Number.isNaN(Number(e)),ge=(e,t,n)=>{if(n-t<11||!fe(e,t,t+10,`@container`))return!1;if(e.charCodeAt(t+10)===47)return n-t>=12;let r=e.charCodeAt(t+11);return r===115&&n-t>=17&&fe(e,t+10,t+16,`-size/`)||r===110&&n-t>=19&&fe(e,t+10,t+18,`-normal/`)},_e=[1,1,1,1,1,1,1,1,2,2,2,2,2,2,2],ve=`length|number|number weight|family-name|position percentage|length size bg-size|image url|shadow|length|family-name|position percentage|length size bg-size|image url|shadow|number weight`.split(`|`).map(e=>e.split(` `)),ye=[2,3,1,0,0,0,4,5,0,0,0,0,0,1,1],be=(e,t,n,r)=>{if(e>=10){if(e>=25)return re[e-25](t.slice(n,r));let i=e-10;if(V!==_e[i])return!1;if(H>=0){for(let e of ve[i])if(fe(t,H,se,e))return!0;return!1}switch(ye[i]){case 0:return!1;case 1:return!0;case 2:{let e=t.slice(U,ce);return B.test(e)&&!ie.test(e)}case 3:return he(t.slice(U,ce));case 4:return oe.test(t.slice(U,ce));default:return ae.test(t.slice(U,ce))}}switch(e){case 0:return!0;case 1:return V===0;case 2:return V===1;case 3:return V===2;case 4:return pe.test(t.slice(n,r));case 5:return he(t.slice(n,r));case 6:{let e=t.slice(n,r);return!!e&&Number.isInteger(Number(e))}case 7:return r>n&&t.charCodeAt(r-1)===37&&he(t.slice(n,r-1));case 8:return me.test(t.slice(n,r));default:return ge(t,n,r)}},xe=new Set(typeof T==`string`?T.split(` `):T),Se=(e,t,n,r,i,a)=>{let o=Do(t,n,r)^(i?2654435769:0),s=e.get(o);if(s!==void 0)outer:for(let e=0;e<s.length;e++){let a=s[e];if(a.imp===i&&a.k.length===r-n){for(let e=0;e<a.k.length;e++)if(a.k.charCodeAt(e)!==t.charCodeAt(n+e))continue outer;return a.id}}else e.set(o,s=[]);let c=t.slice(n,r),l=a(c);return s.push({k:c,imp:i,id:l}),l},Ce=new Map,we=new Map,Te=2,Ee=4096,De=(e,t)=>{let n=[],r=0,i=0,a=0;for(let t=0;t<e.length;t++){let o=e.charCodeAt(t);r===0&&i===0&&o===58?(n.push(e.slice(a,t)),a=t+1):o===91?r++:o===93?r--:o===40?i++:o===41&&i--}n.push(e.slice(a));let o=n[0];if(n.length>1){let e=[],t=[];for(let r of n)r.charCodeAt(0)===91||xe.has(r)?(t.length&&(e.push(...t.sort()),t=[]),e.push(r)):t.push(r);t.length&&e.push(...t.sort()),o=e.join(`:`)}let s=t?o+` !`:o,c=we.get(s);return c===void 0&&we.set(s,c=Te++),c},Oe=new Map,ke=r,Ae=r+4096,je=()=>ke++,Me=2097152,Ne=8192,Pe=new Int32Array(Ne),Fe=Array(Ne).fill(null),Ie=new Int32Array(Ne),Le=new Int32Array(Ne),Re=new Uint8Array(Ne),ze=0,Be=(e,t,n,r,i,a,o,s)=>{let c=e;if(Fe[e]!==null){if(Fe[e|1]===null)c=e|1;else if(!(ze++&3))c=e|ze>>2&1;else return}Fe[c]=t.slice(n,r),Pe[c]=i,Ie[c]=a,Le[c]=o,Re[c]=s},Ve=()=>Fe.fill(null),He=256,Ue=[new Int32Array(He),new Int32Array(He),new Int32Array(He),new Int32Array(He)],[We,Ge,Ke,qe]=Ue,Je=new Uint8Array(He),Ye=new Uint8Array(He),Xe=()=>{He*=2,Ue=Ue.map(e=>{let t=new Int32Array(He);return t.set(e),t}),[We,Ge,Ke,qe]=Ue;let e=new Uint8Array(He);e.set(Je),Je=e,Ye=new Uint8Array(He)},Ze=64,Qe=new Int32Array(Ze),$e=new Int32Array(Ze),W=new Int32Array(r),G=2048,et=21,tt=new Float64Array(G),K=new Int32Array(G),q=0,nt=(e,t)=>{if(e===0&&t<r)return W[t]===q?1:(W[t]=q,0);let n=e*2097152+t+1,i=Math.imul(n,2654435761)>>>et;for(;K[i]===q;){if(tt[i]===n)return 1;i=i+1&G-1}return tt[i]=n,K[i]=q,0},rt=(e,t,n,r,i)=>{if(n-t>=2&&e.charCodeAt(t)===91&&e.charCodeAt(n-1)===93){let r=-1;for(let i=t+1;i<n-1;i++)if(e.charCodeAt(i)===58){r=i;break}return r===-1||r===t+1?To:Se(Oe,e,t+1,r,0,je)}if(r>=0&&c[r]>=0)return c[r];for(let t=i-1;t>=0;t--){let r=$e[t];if(r>n)continue;let i=Qe[t],a=n-r;if(M[i]===1&&a>0&&a<=N){let t=e.charCodeAt(r);if(P===!1||t!==91&&t!==40){let t=L(i,e,r,n);if(t>=0)return t}}let o=l[i];if(o<0)continue;let s=f[o],c=u[s],m=u[s+1];if(c===m)continue;de(e,r,n);let h=k[o]-c;for(let t=c;t<m;t++)if(be(d[t],e,r,n))return p[h+t]}return To},it=e=>{let t=e.length,n=0,c=0,u=!1;(Te>Ee||Ce.size>Ee)&&(Ce=new Map,we=new Map,Te=2,Ve()),ke>Ae&&(Oe=new Map,ke=r,Ve());let d=0;for(;d<t;){let f=e.charCodeAt(d);if(f===32||f>=9&&f<=13||f>=160&&ue(f)){f!==32&&(u=!0),d++;continue}let p=d,m=0;for(;d<t;){if(f=e.charCodeAt(d),f<=32){if(f===32)break;if(f>=9&&f<=13){u=!0;break}}else if(f>=160&&ue(f)){u=!0;break}m=Math.imul(m^f,16777619),d++}let h=d,g=h-p;n===He&&Xe();let _=n++;We[_]=p,Ge[_]=h,c+=g,m^=Math.imul(g,2654435761);let v=m^m>>>15,y=v&8190;{let t=-1;if(Pe[y]===v&&Fe[y]!==null&&Fe[y].length===g?t=y:Pe[y|1]===v&&Fe[y|1]!==null&&Fe[y|1].length===g&&(t=y|1),t>=0){let n=Fe[t],r=!0;for(let t=0;t<g;t++)if(n.charCodeAt(t)!==e.charCodeAt(p+t)){r=!1;break}if(r){Ke[_]=Ie[t],qe[_]=Le[t],Je[_]=Re[t];continue}}}let b=p;if(ne!==0){if(h-p<=ne||!e.startsWith(te,p)){Ke[_]=To,Be(y,e,p,h,v,To,0,0);continue}b=p+ne}let x=0,S=0,C=-1,ee=-1;for(let t=b;t<h;t++){let n=e.charCodeAt(t);if(x===0&&S===0){if(n===58){C=t;continue}if(n===47){ee=t;continue}}n===91?x++:n===93?x--:n===40?S++:n===41&&S--}let w=C>=b?C+1:b,T=w,E=h,D=!1,O=0;E>T&&e.charCodeAt(E-1)===33?(D=!0,E--):E>T&&e.charCodeAt(T)===33&&(D=!0,T++,O=1);let k=-1;ee>w&&(k=ee+O,k>=E&&(k=-1));let j=T;E-T>1&&e.charCodeAt(T)===45&&(j=T+1);let N=0,P=0,F=0,I=-1,L=0;(l[0]>=0||M[0]===1)&&(Qe[0]=0,$e[0]=j,L=1);let R=Eo,z=0;for(let t=j;t<E;t++)if(t===k&&(R=P<F?Eo:N,z=L),N!==Eo){let n=e.charCodeAt(t),r=-1;if(P<F)o.charCodeAt(P)===n?(P++,P===F&&(r=N=I)):N=Eo;else{let e=i[N],t=i[N+1],c=Eo;for(let i=e;i<t;i++){let e=a[i];if(o.charCodeAt(e)===n){a[i+1]-e===1?r=c=s[i]:(P=e+1,F=a[i+1],I=s[i],c=N);break}}N=c}if(r>=0&&(l[r]>=0||M[r]===1)&&t+1<E&&e.charCodeAt(t+1)===45){if(L===Ze){Ze*=2;let e=new Int32Array(Ze);e.set(Qe),Qe=e;let t=new Int32Array(Ze);t.set($e),$e=t}Qe[L]=r,$e[L]=t+2,L++}}k===E&&(R=P<F?Eo:N,z=L);let re=P<F?Eo:N,B,ie=!1;if(k>=0){if(ie=!0,B=rt(e,T,k,R,z),B!==To&&B<r&&A[B]){let t=rt(e,T,E,re,L);t!==To&&t!==B&&(B=t,ie=!1)}else B===To&&(B=rt(e,T,E,re,L),ie=!1)}else B=rt(e,T,E,re,L);let ae=0,oe=0;B===To?Ke[_]=To:(oe=+!!ie,ae=b>=C?+!!D:Se(Ce,e,b,C,+!!D,e=>De(e,D)),Ke[_]=B,Je[_]=oe,qe[_]=ae),Be(y,e,p,h,v,B,ae,oe)}if(n===0)return``;if(n===1)return We[0]===0&&Ge[0]===t?e:e.slice(We[0],Ge[0]);if(n*O>G){for(;n*O>G;)G<<=1,et--;tt=new Float64Array(G),K=new Int32Array(G)}if(Te>=Me||ke>=Me)throw Error(`cn: too many distinct classes in one merge`);q=q+1|0,q===0&&(W.fill(0),K.fill(0),q=1);let f=!1;for(let e=n-1;e>=0;e--){let t=Ke[e];if(t===To){Ye[e]=1;continue}let n=qe[e];if(nt(n,t)===1)Ye[e]=0,f=!0;else if(Ye[e]=1,t<r){let r=E[t];if(r>=0)for(let e=b[r];e<b[r+1];e++)nt(n,x[e]);if(Je[e]&1)for(let e=0;e<S.length;e++)S[e]===t&&nt(n,C[e])}}if(!f&&!u&&t===c+n-1)return e;let p=``,m=0;for(;m<n;){if(!Ye[m]){m++;continue}let t=We[m],r=Ge[m],i=m+1;for(;i<n&&Ye[i]&&We[i]===r+1&&e.charCodeAt(r)===32;)r=Ge[i],i++;p.length>0&&(p+=` `),p+=e.slice(t,r),m=i}return p},at=16384,ot=new Int32Array(at*2),st=0,J=1,ct=Object.create(null),lt=Object.create(null),ut=new Map,dt=new Map,ft=0,pt=0,mt=()=>{st^=at,J=J+1|0,pt=0},ht=e=>{let t=ct[e];if(t!==void 0)return t;let n=Oo(e,0,e.length),r=(n&16383)+st,i=ot[r]===(n^J)||ot[r^at]===(n^J-1);return i&&(t=lt[e],t!==void 0)?(ct[e]=t,t):(t=it(e),i?(ct[e]=t,++ft>R&&(ft=0,lt=ct,ct=Object.create(null),mt())):(ot[r]=n^J,++pt>at&&mt()),t)},gt=e=>{let t=ut.get(e);if(t!==void 0)return t;let n=Oo(e,0,e.length),r=(n&16383)+st,i=ot[r]===(n^J)||ot[r^at]===(n^J-1);return i&&(t=dt.get(e),t!==void 0)?(ut.set(e,t),t):(t=it(e),i?(ut.set(e,t),++ft>R&&(ft=0,dt=ut,ut=new Map,mt())):(ot[r]=n^J,++pt>at&&mt()),t)},_t=e=>{let t=Oo(e,0,e.length),n=(t&16383)+st;return ot[n]===(t^J)||ot[n^at]===(t^J-1)||(ot[n]=t^J,++pt>at&&mt(),!1)},vt=R===0?it:wo?e=>{let t=ut.get(e);return t===void 0?gt(e):t}:ht;return{merge:function(){return arguments.length===1&&typeof arguments[0]==`string`?vt(arguments[0]):vt(Mo.apply(null,arguments))},mergeString:vt,seenBefore:R===0?()=>!1:_t,mergeUncached:it}},Ao=(e,t)=>{if(!e)return``;if(typeof e==`string`)return e;let n=``;if(typeof e.length==`number`&&(!t||Array.isArray(e))){let r=e;for(let e=0;e<r.length;e++){let i=r[e];if(!i)continue;let a=typeof i==`string`?i:Ao(i,t);a&&(n&&(n+=` `),n+=a)}return n}if(t){if(typeof e==`number`)return``+e;if(typeof e==`object`)for(let t in e)e[t]&&(n&&(n+=` `),n+=t)}return n},jo=(e,t)=>{let n=``;for(let r=0;r<e.length;r++){let i=e[r];if(!i)continue;let a=typeof i==`string`?i:Ao(i,t);a&&(n&&(n+=` `),n+=a)}return n},Mo=function(){return jo(arguments,!1)},No=256,Po=16,Fo=1024,Io=4096,Lo=(e,t)=>{let n=t===void 0?()=>!0:t.seenBefore,r=t===void 0?e:t.mergeUncached,i=new Map,a=new Map,o=0,s=null,c=null,l=[],u=[],d=0,f=(t,n,r)=>{c===null&&(c=Array(Io).fill(``),l=Array(Io).fill(``),u=Array(Io).fill(``));let i=Oo(t,0,t.length)&4094;if(c[i]===t&&l[i]===n)return u[i];if(c[i|1]===t&&l[i|1]===n)return u[i|1];let a=e(r?n+` `+t:t),o=c[i]===``?i:i|(c[i|1]===``?1:d++&1);return c[o]=t,l[o]=n,u[o]=a,a},p=(e,t,n,r)=>{let i=0;if(t){if(t!==e.a0)return!1;i=1}if(n){if(n!==(i===0?e.a0:e.a1))return!1;i++}if(r){if(r!==(i===0?e.a0:i===1?e.a1:e.a2))return!1;i++}return i===e.t},m=(e,t)=>{let n=e.a,r=0;for(let e=0;e<t.length;e++){let i=t[e];if(i){if(i!==n[r])return!1;r++}}return r===e.t},h=(t,c)=>{let l=t.length,u=s===null?null:s.n;if(!c){if(u!==null&&m(u,t))return s=u,u.r;if(s!==null&&s!==u&&m(s,t))return s.r}let d=``,p=-1,h=0,g=!1;for(let e=0;e<l;e++){let n=t[e];if(n){if(typeof n!=`string`){if(n=t[e]=Ao(n,!0),!n)continue;g=!0}p<0&&(d=n,p=e),h++}}if(h===0)return``;if(h===1)return e(d);if(g){if(u!==null&&m(u,t))return s=u,u.r;if(s!==null&&s!==u&&m(s,t))return s.r}let _=i.get(d);_===void 0&&(_=a.get(d),_!==void 0&&i.set(d,_));let v=null;if(_!==void 0){if(_.skip>0){_.skip--,s=null;let e=d;for(let n=p+1;n<l;n++){let r=t[n];r&&(e+=` `+r)}return f(e,``,!1)}let e=_.e;outer:for(let n=0;n<e.length;n++){let r=e[n];if(r.t!==h)continue;let i=r.a,a=1;for(let e=p+1;e<l;e++){let n=t[e];if(n&&n!==i[a++])continue outer}v=r;break}v!==null&&(_.miss=0)}if(v===null){let s=d,c=[d];for(let e=p+1;e<l;e++){let n=t[e];n&&(s+=` `+n,c.push(n))}if(!n(s))return r(s);v={r:e(s),t:c.length,a0:c[0],a1:c[1],a2:c[2]??``,a:c,n:null},_===void 0?i.set(d,_={e:[],miss:0,skip:0,at:0}):++_.miss>Po&&(_.miss=Po,_.skip=Fo,_.e.length=0,_.at=0);let u=_.e;u.length<No?u.push(v):(u[_.at]=v,_.at=_.at+1&255),++o>1e3&&(o=0,a=i,i=new Map)}return s!==null&&s!==v&&(s.n=v),s=v,v.r},g=t=>Array.isArray(t)?h(t.slice(),!1):e(Ao(t,!0));return function(t,n,r){let a=arguments.length;if((a|1)==3){let e=s;if(e!==null){let i=e.n;if(i!==null&&p(i,t,n,r))return s=i,i.r;if(e!==i&&p(e,t,n,r))return e.r}if(a===2&&typeof n==`string`&&n!==``){let e=i.get(t);if(e!==void 0&&e.skip>0)return e.skip--,s=null,f(n,t,!0)}return h([t,n,r],!0)}if(a===1)return typeof t==`string`?e(t):g(t);let o=s;if(o!==null){let e=o.n;if(e!==null){let t=e.a,n=0,r=!0;for(let e=0;e<a;e++){let i=arguments[e];if(i){if(i!==t[n]){r=!1;break}n++}}if(r&&n===e.t)return s=e,e.r}if(o!==e){let e=o.a,t=0,n=!0;for(let r=0;r<a;r++){let i=arguments[r];if(i){if(i!==e[t]){n=!1;break}t++}}if(n&&t===o.t)return o.r}}let c=[];for(let e=0;e<a;e++)c.push(arguments[e]);return h(c,!0)}},Ro=ko(Co),zo=Lo(Ro.mergeString,Ro);Ro.merge;function Bo(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`){if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=Bo(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n)}return r}function Vo(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=Bo(e))&&(r&&(r+=` `),r+=t);return r}var Ho=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,Uo=Vo,Wo=(e,t)=>n=>{if(t?.variants==null)return Uo(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=Ho(t)||Ho(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return Uo(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},Go=`bg-fd-primary text-fd-primary-foreground hover:bg-fd-primary/80`,Ko={default:Go,primary:Go,outline:`border hover:bg-fd-accent hover:text-fd-accent-foreground`,ghost:`hover:bg-fd-accent hover:text-fd-accent-foreground`,secondary:`border bg-fd-secondary text-fd-secondary-foreground hover:bg-fd-accent hover:text-fd-accent-foreground`},qo=Wo(`inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring`,{variants:{variant:Ko,color:Ko,size:{sm:`gap-1 px-2 py-1.5 text-xs`,icon:`p-1.5 [&_svg]:size-5`,"icon-sm":`p-1.5 [&_svg]:size-4.5`,"icon-xs":`p-1 [&_svg]:size-4`}}});function Jo(...e){return t=>{e.forEach(e=>{typeof e==`function`?e(t):e&&(e.current=t)})}}var Yo=e=>e?.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase();function Xo(e,t,n=[]){if(t==null)throw Error(`[lucide]: iconNode is required when icon name is used`);return{name:Yo(e),size:24,node:t,...n.length>0?{aliases:n}:{}}}var Zo=e=>{let t=``,n=!1;for(let r of e)r===`-`||r===`_`||r<=` `?n=t.length>0:(t.length===0?t+=r.toLowerCase():t+=n?r.toUpperCase():r,n=!1);return t},Qo=e=>{let t=Zo(e);return t.charAt(0).toUpperCase()+t.slice(1)},$o=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),es={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":2,"stroke-linecap":`round`,"stroke-linejoin":`round`};function ts(e){return e!=null}function ns(e,t={}){let n=t.attributeNames??{},r=e=>n[e]??e,i=e.size??e.width??es.width,a=e.size??e.height??es.height,o=e.aliases?.filter(e=>typeof e==`string`&&e.trim()!==``).map(e=>`lucide-${e}`)??[],s=[...e.name?[`lucide-${e.name}`]:[],...o],c=t.className?.split(` `).filter(Boolean)??[],l=t.includeDefaultClasses===!1?$o(...c):$o(`lucide`,...s,...c),u=t.absoluteStrokeWidth?Number(t.strokeWidth??es[`stroke-width`])*Number(e.size??e.width??es.width)/Number(t.size??t.width??es.width):t.strokeWidth??es[`stroke-width`];return[`svg`,{...Object.entries(es).reduce((e,[t,n])=>(e[r(t)]=n,e),{}),...`color`in t&&t.color&&{[r(`stroke`)]:t.color},...`size`in t&&ts(t.size)&&{[r(`width`)]:t.size,[r(`height`)]:t.size},...`width`in t&&ts(t.width)&&{[r(`width`)]:t.width},...`height`in t&&ts(t.height)&&{[r(`height`)]:t.height},[r(`stroke-width`)]:u,...l&&{[r(`class`)]:l},[r(`viewBox`)]:`0 0 ${i} ${a}`,...t.hasA11yProp===!1?{[r(`aria-hidden`)]:`true`}:{},...`attributes`in t&&t.attributes},e.node.map(e=>{let[n,i,a]=e,o=t.nonScalingStroke?{[r(`vector-effect`)]:`non-scaling-stroke`,...i}:i;return a?[n,o,a]:[n,o]})]}function rs(e,t={}){return ns(e,{...t,attributeNames:{...t.attributeNames,class:`className`,"stroke-width":`strokeWidth`,"stroke-linecap":`strokeLinecap`,"stroke-linejoin":`strokeLinejoin`,"vector-effect":`vectorEffect`}})}var is=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},as=(0,s.createContext)({}),os=()=>(0,s.useContext)(as),ss=(0,s.forwardRef)(({color:e,size:t,width:n,height:r,strokeWidth:i,absoluteStrokeWidth:a,nonScalingStroke:o,className:c=``,children:l,iconNode:u=[],icon:d={node:u,aliases:[],size:24},...f},p)=>{let{size:m=24,strokeWidth:h=2,absoluteStrokeWidth:g=!1,nonScalingStroke:_=!1,color:v=`currentColor`,className:y=``}=os()??{},b=!!l||is(f),[x,S,C=[]]=rs(d,{color:e??v,width:n??t??m,height:r??t??m,strokeWidth:i??h,absoluteStrokeWidth:a??g,nonScalingStroke:o??_,className:$o(y,c),hasA11yProp:b,attributes:f});return(0,s.createElement)(x,{ref:p,...S},[...C.map(([e,t])=>(0,s.createElement)(e,t)),...Array.isArray(l)?l:[l]])});function cs(e,t=[],n=[]){let r=typeof e==`string`?Xo(e,t,n):e,i=(0,s.forwardRef)(({className:e,...t},n)=>(0,s.createElement)(ss,{ref:n,icon:r,className:e,...t}));return r.name&&(i.displayName=Qo(r.name)),i}var ls={name:`search`,size:24,node:[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]};ls.node;var us=cs(ls);export{ai as $,ze as $n,dn as $t,Ni as A,ut as An,$ as At,Fi as B,q as Bn,kn as Bt,pa as C,Dt as Cn,f as Cr,Xn as Ct,Xi as D,X as Dn,Kn as Dt,Yi as E,Z as En,Gn as Et,Bi as F,_t as Fn,Fn as Ft,Ci as G,dt as Gn,bn as Gt,Oi as H,rt as Hn,Cn as Ht,Vi as I,ht as In,Rn as It,vi as J,Xe as Jn,gn as Jt,Si as K,Ze as Kn,vn as Kt,Mi as L,G as Ln,An as Lt,ji as M,vt as Mn,In as Mt,Ii as N,W as Nn,Mn as Nt,Ui as O,Y as On,Vn as Ot,zi as P,mt as Pn,Ln as Pt,ii as Q,Le as Qn,cn as Qt,Hi as R,lt as Rn,Dn as Rt,sa as S,Ot as Sn,h as Sr,nr as St,ia as T,Tt as Tn,o as Tr,Yn as Tt,Di as U,it as Un,Q as Ut,ki as V,ft as Vn,Sn as Vt,wi as W,at as Wn,wn as Wt,ci as X,Re as Xn,mn as Xt,si as Y,Ye as Yn,hn as Yt,oi as Z,Be as Zn,pn as Zt,ya as _,Et as _n,O as _r,$n as _t,Wo as a,zt as an,Se as ar,qr as at,Sa as b,Bt as bn,d as br,ir as bt,Va as c,Ft as cn,se as cr,Ar as ct,Da as d,Ut as dn,L as dr,Dr as dt,$t as en,Ie as er,ti as et,Ea as f,jt as fn,I as fr,Sr as ft,ma as g,Ht as gn,A as gr,tr as gt,_a as h,It as hn,M as hr,Tr as ht,qo as i,Yt as in,Te as ir,Kr as it,Li as j,et as jn,zn as jt,Ai as k,pt as kn,Bn as kt,Ha as l,Pt as ln,U as lr,Or as lt,ga as m,Nt as mn,P as mr,wr as mt,cs as n,Zt as nn,Me as nr,Gr as nt,Vo as o,Mt as on,fe as or,Jr as ot,ha as p,Lt as pn,N as pr,Cr as pt,xi as q,Qe as qn,yn as qt,Jo as r,Xt as rn,ke as rr,Wr as rt,zo as s,Vt as sn,ue as sr,Mr as st,us as t,en as tn,Ne as tr,$r as tt,Ra as u,Wt as un,H as ur,Er as ut,va as v,At as vn,w as vr,Qn as vt,oa as w,wt as wn,p as wr,Jn as wt,Ca as x,kt as xn,m as xr,Zn as xt,ba as y,Rt as yn,y as yr,er as yt,Ri as z,K as zn,On as zt};
|
|
|
|
|
|
assets/search-default-BoNe-vl8.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/algolia-gRndbTnN.js","assets/rolldown-runtime-XKyaHtl9.js","assets/react-DlmbjZJV.js","assets/orama-cloud-Dg06qqqJ.js","assets/remove-undefined-C_sjLeQT-CP3jfHCp.js","assets/orama-cloud-legacy-D_phyqgi.js","assets/index-CppN1qEU.js","assets/use-on-change-Da5Kx5YO.js","assets/jsx-runtime-LKYXHABd.js","assets/with-selector-DBm9DdtQ.js","assets/useSelector-BnOeXcNr.js","assets/lazyRouteComponent-DBEQERMJ.js","assets/layout.shared-ThDtfT9i.js","assets/preload-helper-BLdHbfdN.js","assets/url-BF81yL4m-Cs729U5G.js","assets/use-search-eSAjMJVB-DEsp1VDZ.js"])))=>i.map(i=>d[i]);
|
| 2 |
+
import{r as e}from"./rolldown-runtime-XKyaHtl9.js";import{t}from"./react-DlmbjZJV.js";import{br as n,t as r}from"./use-on-change-Da5Kx5YO.js";import{t as i}from"./jsx-runtime-LKYXHABd.js";import{t as a}from"./preload-helper-BLdHbfdN.js";import{n as o}from"./use-search-eSAjMJVB-DEsp1VDZ.js";import{t as s}from"./url-BF81yL4m-Cs729U5G.js";import{c,d as l,f as u,g as d,h as f,l as p,m,o as h,p as g,s as _,u as v}from"./index-CppN1qEU.js";var y=i(),b=e(t(),1),x=new Map;async function S({api:e=s(`/`,`/api/search`),locale:t,tag:n,cache:r=x},i){let a=new URL(e,window.location.origin);a.searchParams.set(`query`,i),t&&a.searchParams.set(`locale`,t),n&&a.searchParams.set(`tag`,Array.isArray(n)?n.join(`,`):n);let o=a.toString(),c=r.get(o);if(c)return c;let l=await fetch(a);if(!l.ok)throw Error(await l.text());let u=await l.json();return r.set(o,u),u}function C(e={}){return{deps:[e.api,e.locale,String(e.tag)],search:t=>S(e,t)}}function w({delayMs:e,allowEmpty:t,...n},r){let i=`type`in n?T(n):n.client,a=(0,b.useCallback)(e=>i.search(e),r??i.deps??[]),s=o(a,{delayMs:e,allowEmpty:t}),c=(0,b.useMemo)(()=>{if(!s.data)return`empty`;let e=[];for(let t of s.data.items)t.type===`table`?e.push(...t.rows):e.push(t);return e},[s.data]);return{...s,setSearch:s.onSearchChange,query:{isLoading:s.isLoading,data:c,error:s.error}}}function T(e){let t=E(e);return{deps:[JSON.stringify(e)],search:async e=>(await t).search(e)}}function E(e){switch(e.type){case`fetch`:return a(()=>import(`./fetch-vfb-5eKT.js`).then(t=>t.fetchClient(e)),[]);case`algolia`:return a(()=>import(`./algolia-gRndbTnN.js`).then(t=>t.algoliaClient(e)),__vite__mapDeps([0,1,2]));case`orama-cloud`:return a(()=>import(`./orama-cloud-Dg06qqqJ.js`).then(t=>t.oramaCloudClient(e)),__vite__mapDeps([3,1,2,4]));case`orama-cloud-legacy`:return a(()=>import(`./orama-cloud-legacy-D_phyqgi.js`).then(t=>t.oramaCloudLegacyClient(e)),__vite__mapDeps([5,1,2,4]));case`mixedbread`:return a(()=>import(`./mixedbread-DPsc5_Iv.js`).then(t=>t.mixedbreadClient(e)),[]);case`static`:return a(()=>import(`./index-CppN1qEU.js`).then(e=>e.v).then(t=>t.staticClient(e)),__vite__mapDeps([6,1,2,7,8,9,10,11,12,13,14,15,4]));default:throw Error(`unknown search client`)}}var D;function O({type:e,defaultTag:t,tags:i=[],api:o,delayMs:s,allowClear:x=!1,links:S=[],footer:T,...E}){let{locale:O}=n(),[k,A]=(0,b.useState)(t),j;j=e===`static`?(0,b.use)(D??=a(()=>import(`./index-CppN1qEU.js`).then(e=>e.v),__vite__mapDeps([6,1,2,7,8,9,10,11,12,13,14,15,4]))).staticClient({from:o,locale:O,tag:k}):C({api:o,locale:O,tag:k});let M=w({client:j,delayMs:s}),N=(0,b.useMemo)(()=>S.length===0?null:S.map(([e,t])=>({type:`page`,id:e,content:e,url:t})),[S]);return r(t,e=>{A(e)}),(0,y.jsxs)(h,{...M,...E,children:[(0,y.jsx)(m,{}),(0,y.jsxs)(c,{children:[(0,y.jsxs)(v,{children:[(0,y.jsx)(l,{}),(0,y.jsx)(u,{}),(0,y.jsx)(_,{})]}),(0,y.jsx)(g,{defaultItems:N})]}),(0,y.jsxs)(p,{children:[i.length>0&&(0,y.jsx)(f,{tag:k,onTagChange:A,allowClear:x,children:i.map(e=>(0,y.jsx)(d,{value:e.value,children:e.name},e.value))}),T]})]})}export{O as default,C as t};
|
assets/search-default-CRhg9UkM.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
| 1 |
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/algolia-gRndbTnN.js","assets/rolldown-runtime-XKyaHtl9.js","assets/react-DlmbjZJV.js","assets/orama-cloud-CFR8olBa.js","assets/index-DEDbfth6.js","assets/search-BN8TeJzU.js","assets/jsx-runtime-LKYXHABd.js","assets/with-selector-DBm9DdtQ.js","assets/useSelector-BnOeXcNr.js","assets/lazyRouteComponent-R7iKUM_S.js","assets/layout.shared-BilCH_HV.js","assets/preload-helper-BLdHbfdN.js","assets/orama-cloud-legacy-0MdvBNNe.js"])))=>i.map(i=>d[i]);
|
| 2 |
-
import{r as e}from"./rolldown-runtime-XKyaHtl9.js";import{t}from"./react-DlmbjZJV.js";import{_r as n}from"./search-BN8TeJzU.js";import{t as r}from"./jsx-runtime-LKYXHABd.js";import{t as i}from"./preload-helper-BLdHbfdN.js";import{O as a,_ as o,b as s,d as c,f as l,g as u,h as d,k as f,m as p,p as m,s as h,u as g,v as _,y as v}from"./index-DEDbfth6.js";var y=r(),b=e(t(),1),x=new Map;async function S({api:e=a(`/`,`/api/search`),locale:t,tag:n,cache:r=x},i){let o=new URL(e,window.location.origin);o.searchParams.set(`query`,i),t&&o.searchParams.set(`locale`,t),n&&o.searchParams.set(`tag`,Array.isArray(n)?n.join(`,`):n);let s=o.toString(),c=r.get(s);if(c)return c;let l=await fetch(o);if(!l.ok)throw Error(await l.text());let u=await l.json();return r.set(s,u),u}function C(e={}){return{deps:[e.api,e.locale,String(e.tag)],search:t=>S(e,t)}}function w({delayMs:e,allowEmpty:t,...n},r){let i=`type`in n?T(n):n.client,a=(0,b.useCallback)(e=>i.search(e),r??i.deps??[]),o=f(a,{delayMs:e,allowEmpty:t}),s=(0,b.useMemo)(()=>{if(!o.data)return`empty`;let e=[];for(let t of o.data.items)t.type===`table`?e.push(...t.rows):e.push(t);return e},[o.data]);return{...o,setSearch:o.onSearchChange,query:{isLoading:o.isLoading,data:s,error:o.error}}}function T(e){let t=E(e);return{deps:[JSON.stringify(e)],search:async e=>(await t).search(e)}}function E(e){switch(e.type){case`fetch`:return i(()=>import(`./fetch-BUKq5roZ.js`).then(t=>t.fetchClient(e)),[]);case`algolia`:return i(()=>import(`./algolia-gRndbTnN.js`).then(t=>t.algoliaClient(e)),__vite__mapDeps([0,1,2]));case`orama-cloud`:return i(()=>import(`./orama-cloud-CFR8olBa.js`).then(t=>t.oramaCloudClient(e)),__vite__mapDeps([3,1,2,4,5,6,7,8,9,10,11]));case`orama-cloud-legacy`:return i(()=>import(`./orama-cloud-legacy-0MdvBNNe.js`).then(t=>t.oramaCloudLegacyClient(e)),__vite__mapDeps([12,1,2,4,5,6,7,8,9,10,11]));case`mixedbread`:return i(()=>import(`./mixedbread-DPsc5_Iv.js`).then(t=>t.mixedbreadClient(e)),[]);case`static`:return i(()=>import(`./index-DEDbfth6.js`).then(e=>e.E).then(t=>t.staticClient(e)),__vite__mapDeps([4,1,2,5,6,7,8,9,10,11]));default:throw Error(`unknown search client`)}}var D;function O({type:e,defaultTag:t,tags:r=[],api:a,delayMs:f,allowClear:x=!1,links:S=[],footer:T,...E}){let{locale:O}=n(),[k,A]=(0,b.useState)(t),j;j=e===`static`?(0,b.use)(D??=i(()=>import(`./index-DEDbfth6.js`).then(e=>e.E),__vite__mapDeps([4,1,2,5,6,7,8,9,10,11]))).staticClient({from:a,locale:O,tag:k}):C({api:a,locale:O,tag:k});let M=w({client:j,delayMs:f}),N=(0,b.useMemo)(()=>S.length===0?null:S.map(([e,t])=>({type:`page`,id:e,content:e,url:t})),[S]);return h(t,e=>{A(e)}),(0,y.jsxs)(g,{...M,...E,children:[(0,y.jsx)(_,{}),(0,y.jsxs)(l,{children:[(0,y.jsxs)(p,{children:[(0,y.jsx)(d,{}),(0,y.jsx)(u,{}),(0,y.jsx)(c,{})]}),(0,y.jsx)(o,{defaultItems:N})]}),(0,y.jsxs)(m,{children:[r.length>0&&(0,y.jsx)(v,{tag:k,onTagChange:A,allowClear:x,children:r.map(e=>(0,y.jsx)(s,{value:e.value,children:e.name},e.value))}),T]})]})}export{O as default,C as t};
|
|
|
|
|
|
|
|
|
assets/url-BF81yL4m-Cs729U5G.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
function e(...e){let t=``;for(let n of e)t.length>0&&(n.startsWith(`/`)&&(n=n.slice(1)),t.endsWith(`/`)||(t+=`/`)),t+=n;return t}function t(e){return e.startsWith(`http://`)||e.startsWith(`https://`)||(e.startsWith(`/`)||(e=`/`+e),e.length>1&&e.endsWith(`/`)&&(e=e.slice(0,-1))),e}export{t as n,e as t};
|
assets/use-catalog-B4zb4r4j.js
DELETED
|
@@ -1 +0,0 @@
|
|
| 1 |
-
import{r as e}from"./rolldown-runtime-XKyaHtl9.js";import{t}from"./react-DlmbjZJV.js";import{a as n,ir as r,n as i,o as a}from"./search-BN8TeJzU.js";import{t as o}from"./jsx-runtime-LKYXHABd.js";import{B as s,R as c,ht as l,i as u,lt as d,r as f,z as p}from"./layout.shared-BilCH_HV.js";import{t as m}from"./useTranslation-DdiJj5BA.js";import{t as h}from"./preload-helper-BLdHbfdN.js";var g={name:`maximize-2`,size:24,node:[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`m21 3-7 7`,key:`1l2asr`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M9 21H3v-6`,key:`wtvkvv`}]]};g.node;var _=i(g),v={name:`rotate-ccw`,size:24,node:[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]};v.node;var y=i(v),b={name:`rotate-cw`,size:24,node:[[`path`,{d:`M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8`,key:`1p45f6`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}]]};b.node;var ee=i(b),x=e(t(),1),S=x.forwardRef(function(e,t){let{render:n,className:i,disabled:a=!1,focusableWhenDisabled:o=!1,nativeButton:s=!0,style:c,...l}=e,{getButtonProps:u,buttonRef:f}=d({disabled:a,focusableWhenDisabled:o,native:s});return r(`button`,e,{state:{disabled:a},ref:[t,f],props:[l,u]})}),C=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},w=(e,t)=>({classGroupId:e,validator:t}),te=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),T=`-`,E=[],ne=`arbitrary..`,re=e=>{let t=k(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return O(e);let n=e.split(T);return D(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?C(i,t):t:i||E}return n[e]||E}}},D=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=D(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(T):e.slice(t).join(T),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},O=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?ne+r:void 0})(),k=e=>{let{theme:t,classGroups:n}=e;return ie(n,t)},ie=(e,t)=>{let n=te();for(let r in e){let i=e[r];A(i,n,r,t)}return n},A=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];j(i,t,n,r)}},j=(e,t,n,r)=>{typeof e==`string`?ae(e,t,n):typeof e==`function`?oe(e,t,n,r):se(e,t,n,r)},ae=(e,t,n)=>{let r=e===``?t:ce(t,e);r.classGroupId=n},oe=(e,t,n,r)=>{M(e)?A(e(r),t,n,r):(t.validators===null&&(t.validators=[]),t.validators.push(w(n,e)))},se=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];A(o,ce(t,a),n,r)}},ce=(e,t)=>{let n=e,r=t.split(T),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=te(),n.nextPart.set(t,i)),n=i}return n},M=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,N=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},P=`!`,le=`:`,F=[],ue=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),de=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===le){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(P)?(c=s.slice(0,-1),l=!0):s.startsWith(P)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return ue(t,l,c,u)};if(t){let e=t+le,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):ue(F,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},I=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},fe=e=>({cache:N(e.cacheSize),parseClassName:de(e),sortModifiers:I(e),postfixLookupClassGroupIds:L(e),...re(e)}),L=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e<n.length;e++)t[n[e]]=!0;return t},pe=/\s+/,me=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(pe),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:m}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let h=!!m,g;if(h){g=r(p.substring(0,m));let e=g&&o[g]?r(p):void 0;e&&e!==g&&(g=e,h=!1)}else g=r(p);if(!g){if(!h||(g=r(p),!g)){l=t+(l.length>0?` `+l:l);continue}h=!1}let _=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),v=f?_+P:_,y=v+g;if(s.indexOf(y)>-1)continue;s.push(y);let b=i(g,h);for(let e=0;e<b.length;++e){let t=b[e];s.push(v+t)}l=t+(l.length>0?` `+l:l)}return l},he=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=ge(n))&&(i&&(i+=` `),i+=r);return i},ge=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=ge(e[r]))&&(n&&(n+=` `),n+=t);return n},_e=(e,...t)=>{let n,r,i,a,o=o=>(n=fe(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=me(e,n);return i(e,a),a};return a=o,(...e)=>a(he(...e))},ve=[],R=e=>{let t=t=>t[e]||ve;return t.isThemeGetter=!0,t.themeKey=e,t},ye=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,be=/^\((?:(\w[\w-]*):)?(.+)\)$/i,xe=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,Se=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Ce=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,we=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix|color|light-dark)\(.+\)$/,Te=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Ee=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,z=e=>xe.test(e),B=e=>!!e&&!Number.isNaN(Number(e)),V=e=>!!e&&Number.isInteger(Number(e)),De=e=>e.endsWith(`%`)&&B(e.slice(0,-1)),H=e=>Se.test(e),Oe=()=>!0,ke=e=>Ce.test(e)&&!we.test(e),Ae=()=>!1,je=e=>Te.test(e),Me=e=>Ee.test(e),Ne=e=>!U(e)&&!G(e),Pe=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),Fe=e=>q(e,Xe,Ae),U=e=>ye.test(e),W=e=>q(e,Ze,ke),Ie=e=>q(e,Qe,B),Le=e=>q(e,et,Oe),Re=e=>q(e,$e,Ae),ze=e=>q(e,Je,Ae),Be=e=>q(e,Ye,Me),Ve=e=>q(e,tt,je),G=e=>be.test(e),K=e=>J(e,Ze),He=e=>J(e,$e),Ue=e=>J(e,Je),We=e=>J(e,Xe),Ge=e=>J(e,Ye),Ke=e=>J(e,tt,!0),qe=e=>J(e,et,!0),q=(e,t,n)=>{let r=ye.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},J=(e,t,n=!1)=>{let r=be.exec(e);return r?r[1]?t(r[1]):n:!1},Je=e=>e===`position`||e===`percentage`,Ye=e=>e===`image`||e===`url`,Xe=e=>e===`length`||e===`size`||e===`bg-size`,Ze=e=>e===`length`,Qe=e=>e===`number`,$e=e=>e===`family-name`,et=e=>e===`number`||e===`weight`,tt=e=>e===`shadow`,nt=_e(()=>{let e=R(`color`),t=R(`font`),n=R(`text`),r=R(`font-weight`),i=R(`tracking`),a=R(`leading`),o=R(`breakpoint`),s=R(`container`),c=R(`spacing`),l=R(`radius`),u=R(`shadow`),d=R(`inset-shadow`),f=R(`text-shadow`),p=R(`drop-shadow`),m=R(`blur`),h=R(`perspective`),g=R(`aspect`),_=R(`ease`),v=R(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],ee=()=>[...b(),G,U],x=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],S=()=>[`auto`,`contain`,`none`],C=()=>[G,U,c],w=()=>[z,`full`,`auto`,...C()],te=()=>[V,`none`,`subgrid`,G,U],T=()=>[`auto`,{span:[`full`,V,G,U]},V,G,U],E=()=>[V,`auto`,G,U],ne=()=>[`auto`,`min`,`max`,`fr`,G,U],re=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],D=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],O=()=>[`auto`,...C()],k=()=>[z,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...C()],ie=()=>[s,z,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...C()],A=()=>[z,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...C()],j=()=>[e,G,U],ae=()=>[...b(),Ue,ze,{position:[G,U]}],oe=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],se=()=>[`auto`,`cover`,`contain`,We,Fe,{size:[G,U]}],ce=()=>[De,K,W],M=()=>[``,`none`,`full`,l,G,U],N=()=>[``,B,K,W],P=()=>[`solid`,`dashed`,`dotted`,`double`],le=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],F=()=>[B,De,Ue,ze],ue=()=>[``,`none`,m,G,U],de=()=>[`none`,B,G,U],I=()=>[`none`,B,G,U],fe=()=>[B,G,U],L=()=>[z,`full`,...C()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[H],breakpoint:[H],color:[Oe],container:[H],"drop-shadow":[H],ease:[`in`,`out`,`in-out`],font:[Ne],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[H],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[H],shadow:[H],spacing:[`px`,B],text:[H],"text-shadow":[H],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,z,U,G,g]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,G,U]}],"container-named":[Pe],columns:[{columns:[B,`auto`,U,G,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:ee()}],overflow:[{overflow:x()}],"overflow-x":[{"overflow-x":x()}],"overflow-y":[{"overflow-y":x()}],overscroll:[{overscroll:S()}],"overscroll-x":[{"overscroll-x":S()}],"overscroll-y":[{"overscroll-y":S()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:w()}],"inset-x":[{"inset-x":w()}],"inset-y":[{"inset-y":w()}],start:[{"inset-s":w(),start:w()}],end:[{"inset-e":w(),end:w()}],"inset-bs":[{"inset-bs":w()}],"inset-be":[{"inset-be":w()}],top:[{top:w()}],right:[{right:w()}],bottom:[{bottom:w()}],left:[{left:w()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[V,`auto`,G,U]}],basis:[{basis:[z,`full`,`auto`,s,...C()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[B,z,`auto`,`initial`,`none`,U]}],grow:[{grow:[``,B,G,U]}],shrink:[{shrink:[``,B,G,U]}],order:[{order:[V,`first`,`last`,`none`,G,U]}],"grid-cols":[{"grid-cols":te()}],"col-start-end":[{col:T()}],"col-start":[{"col-start":E()}],"col-end":[{"col-end":E()}],"grid-rows":[{"grid-rows":te()}],"row-start-end":[{row:T()}],"row-start":[{"row-start":E()}],"row-end":[{"row-end":E()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":ne()}],"auto-rows":[{"auto-rows":ne()}],gap:[{gap:C()}],"gap-x":[{"gap-x":C()}],"gap-y":[{"gap-y":C()}],"justify-content":[{justify:[...re(),`normal`]}],"justify-items":[{"justify-items":[...D(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...D()]}],"align-content":[{content:[`normal`,...re()]}],"align-items":[{items:[...D(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...D(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":re()}],"place-items":[{"place-items":[...D(),`baseline`]}],"place-self":[{"place-self":[`auto`,...D()]}],p:[{p:C()}],px:[{px:C()}],py:[{py:C()}],ps:[{ps:C()}],pe:[{pe:C()}],pbs:[{pbs:C()}],pbe:[{pbe:C()}],pt:[{pt:C()}],pr:[{pr:C()}],pb:[{pb:C()}],pl:[{pl:C()}],m:[{m:O()}],mx:[{mx:O()}],my:[{my:O()}],ms:[{ms:O()}],me:[{me:O()}],mbs:[{mbs:O()}],mbe:[{mbe:O()}],mt:[{mt:O()}],mr:[{mr:O()}],mb:[{mb:O()}],ml:[{ml:O()}],"space-x":[{"space-x":C()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":C()}],"space-y-reverse":[`space-y-reverse`],size:[{size:k()}],"inline-size":[{inline:[`auto`,...ie()]}],"min-inline-size":[{"min-inline":[`auto`,...ie()]}],"max-inline-size":[{"max-inline":[`none`,...ie()]}],"block-size":[{block:[`auto`,...A()]}],"min-block-size":[{"min-block":[`auto`,...A()]}],"max-block-size":[{"max-block":[`none`,...A()]}],w:[{w:[s,`screen`,...k()]}],"min-w":[{"min-w":[s,`screen`,`none`,...k()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...k()]}],h:[{h:[`screen`,`lh`,...k()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...k()]}],"max-h":[{"max-h":[`screen`,`lh`,`none`,...k()]}],"font-size":[{text:[`base`,n,K,W]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,qe,Le]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,De,U]}],"font-family":[{font:[He,Re,t]}],"font-features":[{"font-features":[U]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,G,U]}],"line-clamp":[{"line-clamp":[B,`none`,G,Ie]}],leading:[{leading:[`none`,a,...C()]}],"list-image":[{"list-image":[`none`,G,U]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,G,U]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:j()}],"text-color":[{text:j()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...P(),`wavy`]}],"text-decoration-thickness":[{decoration:[B,`from-font`,`auto`,G,W]}],"text-decoration-color":[{decoration:j()}],"underline-offset":[{"underline-offset":[B,`auto`,G,U]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:C()}],"tab-size":[{tab:[V,G,U]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,G,U]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,G,U]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:ae()}],"bg-repeat":[{bg:oe()}],"bg-size":[{bg:se()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},V,G,U],radial:[``,G,U],conic:[``,V,G,U]},Ge,Be]}],"bg-color":[{bg:j()}],"gradient-from-pos":[{from:ce()}],"gradient-via-pos":[{via:ce()}],"gradient-to-pos":[{to:ce()}],"gradient-from":[{from:j()}],"gradient-via":[{via:j()}],"gradient-to":[{to:j()}],rounded:[{rounded:M()}],"rounded-s":[{"rounded-s":M()}],"rounded-e":[{"rounded-e":M()}],"rounded-t":[{"rounded-t":M()}],"rounded-r":[{"rounded-r":M()}],"rounded-b":[{"rounded-b":M()}],"rounded-l":[{"rounded-l":M()}],"rounded-ss":[{"rounded-ss":M()}],"rounded-se":[{"rounded-se":M()}],"rounded-ee":[{"rounded-ee":M()}],"rounded-es":[{"rounded-es":M()}],"rounded-tl":[{"rounded-tl":M()}],"rounded-tr":[{"rounded-tr":M()}],"rounded-br":[{"rounded-br":M()}],"rounded-bl":[{"rounded-bl":M()}],"border-w":[{border:N()}],"border-w-x":[{"border-x":N()}],"border-w-y":[{"border-y":N()}],"border-w-s":[{"border-s":N()}],"border-w-e":[{"border-e":N()}],"border-w-bs":[{"border-bs":N()}],"border-w-be":[{"border-be":N()}],"border-w-t":[{"border-t":N()}],"border-w-r":[{"border-r":N()}],"border-w-b":[{"border-b":N()}],"border-w-l":[{"border-l":N()}],"divide-x":[{"divide-x":N()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":N()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...P(),`hidden`,`none`]}],"divide-style":[{divide:[...P(),`hidden`,`none`]}],"border-color":[{border:j()}],"border-color-x":[{"border-x":j()}],"border-color-y":[{"border-y":j()}],"border-color-s":[{"border-s":j()}],"border-color-e":[{"border-e":j()}],"border-color-bs":[{"border-bs":j()}],"border-color-be":[{"border-be":j()}],"border-color-t":[{"border-t":j()}],"border-color-r":[{"border-r":j()}],"border-color-b":[{"border-b":j()}],"border-color-l":[{"border-l":j()}],"divide-color":[{divide:j()}],"outline-style":[{outline:[...P(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[B,G,U]}],"outline-w":[{outline:[``,B,K,W]}],"outline-color":[{outline:j()}],shadow:[{shadow:[``,`inner`,`none`,u,Ke,Ve]}],"shadow-color":[{shadow:j()}],"inset-shadow":[{"inset-shadow":[`none`,d,Ke,Ve]}],"inset-shadow-color":[{"inset-shadow":j()}],"ring-w":[{ring:N()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:j()}],"ring-offset-w":[{"ring-offset":[B,W]}],"ring-offset-color":[{"ring-offset":j()}],"inset-ring-w":[{"inset-ring":N()}],"inset-ring-color":[{"inset-ring":j()}],"text-shadow":[{"text-shadow":[`none`,f,Ke,Ve]}],"text-shadow-color":[{"text-shadow":j()}],opacity:[{opacity:[B,G,U]}],"mix-blend":[{"mix-blend":[...le(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":le()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[B]}],"mask-image-linear-from-pos":[{"mask-linear-from":F()}],"mask-image-linear-to-pos":[{"mask-linear-to":F()}],"mask-image-linear-from-color":[{"mask-linear-from":j()}],"mask-image-linear-to-color":[{"mask-linear-to":j()}],"mask-image-t-from-pos":[{"mask-t-from":F()}],"mask-image-t-to-pos":[{"mask-t-to":F()}],"mask-image-t-from-color":[{"mask-t-from":j()}],"mask-image-t-to-color":[{"mask-t-to":j()}],"mask-image-r-from-pos":[{"mask-r-from":F()}],"mask-image-r-to-pos":[{"mask-r-to":F()}],"mask-image-r-from-color":[{"mask-r-from":j()}],"mask-image-r-to-color":[{"mask-r-to":j()}],"mask-image-b-from-pos":[{"mask-b-from":F()}],"mask-image-b-to-pos":[{"mask-b-to":F()}],"mask-image-b-from-color":[{"mask-b-from":j()}],"mask-image-b-to-color":[{"mask-b-to":j()}],"mask-image-l-from-pos":[{"mask-l-from":F()}],"mask-image-l-to-pos":[{"mask-l-to":F()}],"mask-image-l-from-color":[{"mask-l-from":j()}],"mask-image-l-to-color":[{"mask-l-to":j()}],"mask-image-x-from-pos":[{"mask-x-from":F()}],"mask-image-x-to-pos":[{"mask-x-to":F()}],"mask-image-x-from-color":[{"mask-x-from":j()}],"mask-image-x-to-color":[{"mask-x-to":j()}],"mask-image-y-from-pos":[{"mask-y-from":F()}],"mask-image-y-to-pos":[{"mask-y-to":F()}],"mask-image-y-from-color":[{"mask-y-from":j()}],"mask-image-y-to-color":[{"mask-y-to":j()}],"mask-image-radial":[{"mask-radial":[G,U]}],"mask-image-radial-from-pos":[{"mask-radial-from":F()}],"mask-image-radial-to-pos":[{"mask-radial-to":F()}],"mask-image-radial-from-color":[{"mask-radial-from":j()}],"mask-image-radial-to-color":[{"mask-radial-to":j()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[B]}],"mask-image-conic-from-pos":[{"mask-conic-from":F()}],"mask-image-conic-to-pos":[{"mask-conic-to":F()}],"mask-image-conic-from-color":[{"mask-conic-from":j()}],"mask-image-conic-to-color":[{"mask-conic-to":j()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:ae()}],"mask-repeat":[{mask:oe()}],"mask-size":[{mask:se()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,G,U]}],filter:[{filter:[``,`none`,G,U]}],blur:[{blur:ue()}],brightness:[{brightness:[B,G,U]}],contrast:[{contrast:[B,G,U]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,Ke,Ve]}],"drop-shadow-color":[{"drop-shadow":j()}],grayscale:[{grayscale:[``,B,G,U]}],"hue-rotate":[{"hue-rotate":[B,G,U]}],invert:[{invert:[``,B,G,U]}],saturate:[{saturate:[B,G,U]}],sepia:[{sepia:[``,B,G,U]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,G,U]}],"backdrop-blur":[{"backdrop-blur":ue()}],"backdrop-brightness":[{"backdrop-brightness":[B,G,U]}],"backdrop-contrast":[{"backdrop-contrast":[B,G,U]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,B,G,U]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[B,G,U]}],"backdrop-invert":[{"backdrop-invert":[``,B,G,U]}],"backdrop-opacity":[{"backdrop-opacity":[B,G,U]}],"backdrop-saturate":[{"backdrop-saturate":[B,G,U]}],"backdrop-sepia":[{"backdrop-sepia":[``,B,G,U]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":C()}],"border-spacing-x":[{"border-spacing-x":C()}],"border-spacing-y":[{"border-spacing-y":C()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,G,U]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[B,`initial`,G,U]}],ease:[{ease:[`linear`,`initial`,_,G,U]}],delay:[{delay:[B,G,U]}],animate:[{animate:[`none`,v,G,U]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,G,U]}],"perspective-origin":[{"perspective-origin":ee()}],rotate:[{rotate:de()}],"rotate-x":[{"rotate-x":de()}],"rotate-y":[{"rotate-y":de()}],"rotate-z":[{"rotate-z":de()}],scale:[{scale:I()}],"scale-x":[{"scale-x":I()}],"scale-y":[{"scale-y":I()}],"scale-z":[{"scale-z":I()}],"scale-3d":[`scale-3d`],skew:[{skew:fe()}],"skew-x":[{"skew-x":fe()}],"skew-y":[{"skew-y":fe()}],transform:[{transform:[G,U,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:ee()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:L()}],"translate-x":[{"translate-x":L()}],"translate-y":[{"translate-y":L()}],"translate-z":[{"translate-z":L()}],"translate-none":[`translate-none`],zoom:[{zoom:[V,G,U]}],accent:[{accent:j()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:j()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,G,U]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":j()}],"scrollbar-track-color":[{"scrollbar-track":j()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":C()}],"scroll-mx":[{"scroll-mx":C()}],"scroll-my":[{"scroll-my":C()}],"scroll-ms":[{"scroll-ms":C()}],"scroll-me":[{"scroll-me":C()}],"scroll-mbs":[{"scroll-mbs":C()}],"scroll-mbe":[{"scroll-mbe":C()}],"scroll-mt":[{"scroll-mt":C()}],"scroll-mr":[{"scroll-mr":C()}],"scroll-mb":[{"scroll-mb":C()}],"scroll-ml":[{"scroll-ml":C()}],"scroll-p":[{"scroll-p":C()}],"scroll-px":[{"scroll-px":C()}],"scroll-py":[{"scroll-py":C()}],"scroll-ps":[{"scroll-ps":C()}],"scroll-pe":[{"scroll-pe":C()}],"scroll-pbs":[{"scroll-pbs":C()}],"scroll-pbe":[{"scroll-pbe":C()}],"scroll-pt":[{"scroll-pt":C()}],"scroll-pr":[{"scroll-pr":C()}],"scroll-pb":[{"scroll-pb":C()}],"scroll-pl":[{"scroll-pl":C()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,G,U]}],fill:[{fill:[`none`,...j()]}],"stroke-w":[{stroke:[B,K,W,Ie]}],stroke:[{stroke:[`none`,...j()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`start`,`end`,`right`,`left`],"inset-y":[`inset-bs`,`inset-be`,`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`ps`,`pe`,`pr`,`pl`],py:[`pbs`,`pbe`,`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`ms`,`me`,`mr`,`ml`],my:[`mbs`,`mbe`,`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-s`,`border-w-e`,`border-w-r`,`border-w-l`],"border-w-y":[`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-s`,`border-color-e`,`border-color-r`,`border-color-l`],"border-color-y":[`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-ms`,`scroll-me`,`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-ps`,`scroll-pe`,`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function rt(...e){return nt(a(e))}var Y=o(),it=n(`group/button inline-flex shrink-0 items-center justify-center rounded-lg border-[0.5px] border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-none outline-none select-none focus-visible:border-ring focus-visible:outline focus-visible:outline-[0.5px] focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/80`,outline:`border-control-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-control-border dark:bg-input/30 dark:hover:bg-input/50`,secondary:`bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground`,ghost:`hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50`,destructive:`bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`,xs:`h-10 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3`,sm:`h-10 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-sm in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5`,lg:`h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`,icon:`size-10`,"icon-xs":`size-10 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3`,"icon-sm":`size-10 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg`,"icon-lg":`size-10`}},defaultVariants:{variant:`default`,size:`default`}});function X({className:e,variant:t=`default`,size:n=`default`,...r}){return(0,Y.jsx)(S,{"data-slot":`button`,className:rt(it({variant:t,size:n,className:e})),...r})}function at(e){return e===`id-asc`||e===`name-asc`||e===`triangles-asc`||e===`triangles-desc`}var ot=`Uncategorized`;function st(e){let t=(e??``).split(/[/>]/).map(e=>e.trim()).filter(Boolean);return t.length>0?t:[ot]}function ct(e){return e===null?null:e<5e3?`under-5k`:e<25e3?`5k-to-25k`:`25k-plus`}function lt(e,t){return t===`glb`?!!e.glb_url:!!e.blend_url}function ut(e){let t=[];for(let n of e){let e=t,r=``;for(let t of st(n.category)){r=r?`${r}/${t}`:t;let n=e.find(e=>e.label===t);n||(n={label:t,path:r,count:0,children:[]},e.push(n)),n.count+=1,e=n.children}}let n=e=>e.map(e=>({...e,children:n(e.children)})).sort((e,t)=>e.label.localeCompare(t.label));return n(t)}function dt(e){let t=new Map,n={"under-5k":0,"5k-to-25k":0,"25k-plus":0},r={glb:0,blend:0};for(let i of e){for(let e of i.tags){let n=e.trim();n&&t.set(n,(t.get(n)??0)+1)}for(let e of[`glb`,`blend`])lt(i,e)&&(r[e]+=1);let e=ct(i.triangles);e&&(n[e]+=1)}return{categories:ut(e),formats:r,tags:[...t].map(([e,t])=>({label:e,count:t})).sort((e,t)=>e.label.localeCompare(t.label)),triangleBands:n}}function ft(e){return e.normalize(`NFKC`).toLowerCase()}function pt(e,t){if(!t)return!0;let n=t.split(`/`),r=st(e.category);return n.every((e,t)=>r[t]===e)}function mt(e,t){return t===`zh`&&e.name_zh.trim()?e.name_zh:e.name_en}function ht(e,t){return e===null&&t===null?0:e===null?1:t===null?-1:e-t}function gt(e,t,n,r){let i=ft(t.query.trim()),a=new Set(t.tags),o=new Set(t.formats),s=e.filter(e=>{if(i&&!ft([e.id,e.name_en,e.name_zh,e.category??``,...e.tags].join(` `)).includes(i)||!pt(e,t.categoryPath)||[...a].some(t=>!e.tags.includes(t))||o.size>0&&![...o].some(t=>lt(e,t))||t.triangleBand&&ct(e.triangles)!==t.triangleBand||t.license&&e.license!==t.license||t.source&&e.source!==t.source||t.withPreview&&!e.preview_url&&!e.glb_url)return!1;if(t.dimension){if(!e.dimensions_m)return!1;let n=Math.max(...e.dimensions_m);if(t.dimension===`under-1m`?n>=1:n<1)return!1}return!0});return s.sort((e,t)=>{if(n===`name-asc`){let n=r===`zh`?`zh-CN`:`en`;return mt(e,r).localeCompare(mt(t,r),n)||e.id.localeCompare(t.id,void 0,{numeric:!0})}return n===`triangles-asc`?ht(e.triangles,t.triangles)||e.id.localeCompare(t.id,void 0,{numeric:!0}):n===`triangles-desc`&&(e.triangles===null||t.triangles===null?ht(e.triangles,t.triangles):t.triangles-e.triangles)||e.id.localeCompare(t.id,void 0,{numeric:!0})}),s}function _t(e,t){if(!Number.isSafeInteger(t)||t<1)throw RangeError(`Virtual grid columns must be a positive integer.`);let n=[];for(let r=0;r<e.length;r+=t)n.push(e.slice(r,r+t));return n}function vt(e){return!!(e.query.trim()||e.categoryPath||e.formats.length||e.tags.length||e.triangleBand||e.license||e.source||e.dimension||e.withPreview)}var yt={query:``,categoryPath:null,formats:[],tags:[],triangleBand:null};function bt(){return{filters:{...yt},sort:`id-asc`,view:`grid`,density:`medium`,asset:null,dock:`right`,expanded:!1,selected:[]}}var xt=/^LPW-\d{5}$/;function St(e){let t=[...new Set(e.filter(e=>xt.test(e)).map(e=>Number(e.slice(4))))].sort((e,t)=>e-t),n=[];for(let e=0;e<t.length;e++){let r=t[e],i=r;for(;t[e+1]===i+1;)i=t[++e];n.push(r===i?r.toString(36):`${r.toString(36)}-${i.toString(36)}`)}return n.join(`.`)}function Ct(e){let t=[];for(let n of e.split(`.`)){if(!/^[0-9a-z]+(?:-[0-9a-z]+)?$/.test(n))continue;let[e,r]=n.split(`-`),i=parseInt(e,36),a=r?parseInt(r,36):i;if(!(i>a||a>99999||a-i>=1e4)){for(let e=i;e<=a&&t.length<1e4;e++)t.push(`LPW-${String(e).padStart(5,`0`)}`);if(t.length>=1e4)break}}return[...new Set(t)].sort()}var wt=e=>[...new Set(e.filter(Boolean))];function Tt(e){let t=new URLSearchParams(e),n=bt(),r=e=>{let n=t.get(e);if(n?.startsWith(`"`))try{let e=JSON.parse(n);if(typeof e==`string`)return e}catch{}return n},i=e=>t.getAll(e).flatMap(e=>{if(!e.startsWith(`[`))return[e];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}catch{return[]}}),a=r(`triangles`);n.filters={query:(r(`q`)??``).slice(0,500),categoryPath:r(`category`)?.slice(0,300)||null,formats:wt(i(`format`)).filter(e=>e===`glb`||e===`blend`).sort(),tags:wt(i(`tag`)).slice(0,50).sort(),triangleBand:a===`under-5k`||a===`5k-to-25k`||a===`25k-plus`?a:null,license:r(`license`)?.slice(0,300)||null,source:r(`source`)?.slice(0,300)||null,dimension:r(`dimension`)===`under-1m`?`under-1m`:r(`dimension`)===`1m-plus`?`1m-plus`:null,withPreview:r(`preview`)===`1`};let o=r(`sort`)??``;at(o)&&(n.sort=o),r(`view`)===`list`&&(n.view=`list`);let s=r(`density`);(s===`small`||s===`large`)&&(n.density=s);let c=r(`asset`);n.asset=c&&xt.test(c)?c:null;let l=r(`dock`);return(l===`left`||l===`bottom`)&&(n.dock=l),n.expanded=!!(n.asset&&r(`expanded`)===`1`),n.selected=wt([...i(`selected`),...Ct(r(`selection`)??``)]).filter(e=>xt.test(e)).slice(0,1e4).sort(),n}function Et(e){let t=new URLSearchParams,n=e.filters;n.query&&t.set(`q`,n.query),n.categoryPath&&t.set(`category`,n.categoryPath);for(let e of[...n.formats].sort())t.append(`format`,e);for(let e of[...new Set(n.tags)].sort())t.append(`tag`,e);n.triangleBand&&t.set(`triangles`,n.triangleBand),n.license&&t.set(`license`,n.license),n.source&&t.set(`source`,n.source),n.dimension&&t.set(`dimension`,n.dimension),n.withPreview&&t.set(`preview`,`1`),e.sort!==`id-asc`&&t.set(`sort`,e.sort),e.view!==`grid`&&t.set(`view`,e.view),e.density!==`medium`&&t.set(`density`,e.density),e.asset&&t.set(`asset`,e.asset),e.dock!==`right`&&t.set(`dock`,e.dock),e.asset&&e.expanded&&t.set(`expanded`,`1`);let r=[...new Set(e.selected)].sort();if(r.length>20)t.set(`selection`,St(r));else for(let e of r)t.append(`selected`,e);return t.toString()}function Dt({modelUrl:e,previewUrl:t,assetName:n}){let{t:r}=m(),i=(0,x.useRef)(null),a=(0,x.useRef)(null),[o,s]=(0,x.useState)(`loading`),[c,l]=(0,x.useState)(!1),[u,d]=(0,x.useState)(!1),[f,p]=(0,x.useState)(!1),[g,v]=(0,x.useState)(!1),[b,S]=(0,x.useState)(!1);(0,x.useEffect)(()=>{let e=i.current;v(typeof e?.requestFullscreen==`function`);let t=()=>p(document.fullscreenElement===e);return document.addEventListener(`fullscreenchange`,t),()=>document.removeEventListener(`fullscreenchange`,t)},[]),(0,x.useEffect)(()=>{if(!e){s(`error`);return}let t=a.current;if(!t)return;let n=!0;s(`loading`);let r=()=>{n&&s(`ready`)},i=()=>{n&&s(`error`)};return t.addEventListener(`load`,r),t.addEventListener(`error`,i),h(()=>import(`./model-viewer-BPdKr1IB.js`).then(()=>{n&&t.loaded&&s(`ready`)}),[]).catch(()=>{n&&s(`error`)}),()=>{n=!1,t.removeEventListener(`load`,r),t.removeEventListener(`error`,i)}},[e]);function C(){let e=a.current;e&&(e.cameraOrbit=`auto auto auto`,e.cameraTarget=`auto auto auto`,e.fieldOfView=`auto`,e.resetTurntableRotation(0),e.jumpCameraToGoal())}async function w(){let e=i.current;if(e){S(!1);try{document.fullscreenElement===e?await document.exitFullscreen():await e.requestFullscreen()}catch{S(!0)}}}return(0,Y.jsxs)(`section`,{className:`viewer-panel`,"aria-label":r(`asset.viewerLabel`),children:[(0,Y.jsxs)(`div`,{className:`viewer-stage`,ref:i,children:[t&&!u&&o!==`ready`&&(0,Y.jsx)(`img`,{className:`viewer-poster`,src:t,alt:n,onError:()=>d(!0)}),e&&(0,Y.jsx)(`model-viewer`,{ref:a,className:o===`error`?`model-viewer model-viewer-hidden`:`model-viewer`,src:e,alt:n,poster:t??void 0,loading:`lazy`,reveal:`auto`,"camera-controls":!0,"auto-rotate":c,"auto-rotate-delay":`1000`,"rotation-per-second":`18deg`,"interaction-prompt":`none`,"touch-action":`pan-y`,"camera-orbit":`auto auto auto`,"camera-target":`auto auto auto`,"field-of-view":`auto`}),o===`loading`&&e&&(0,Y.jsx)(`div`,{className:`viewer-status`,role:`status`,children:r(`asset.viewerLoading`)}),o===`error`&&(0,Y.jsx)(`div`,{className:`viewer-status viewer-status-error`,role:`status`,children:r(e?`asset.viewerError`:`asset.viewerMissing`)}),(!t||u)&&o!==`ready`&&(0,Y.jsx)(`div`,{className:`viewer-no-preview`,children:r(`asset.noPreview`)})]}),(0,Y.jsxs)(`div`,{className:`viewer-controls`,"aria-label":r(`asset.viewerControls`),children:[(0,Y.jsxs)(X,{type:`button`,size:`sm`,variant:`secondary`,onClick:C,disabled:o!==`ready`,children:[(0,Y.jsx)(y,{"aria-hidden":`true`}),r(`asset.resetView`)]}),(0,Y.jsxs)(X,{type:`button`,size:`sm`,variant:c?`default`:`secondary`,"aria-pressed":c,onClick:()=>l(e=>!e),disabled:o!==`ready`,children:[(0,Y.jsx)(ee,{"aria-hidden":`true`}),r(c?`asset.rotateOff`:`asset.rotateOn`)]}),(0,Y.jsxs)(X,{type:`button`,size:`sm`,variant:`secondary`,onClick:()=>void w(),disabled:!g,"aria-pressed":f,children:[(0,Y.jsx)(_,{"aria-hidden":`true`}),r(f?`asset.exitFullscreen`:`asset.enterFullscreen`)]})]}),b&&(0,Y.jsx)(`p`,{className:`viewer-note`,role:`status`,children:r(`asset.fullscreenUnavailable`)})]})}function Z({...e}){return(0,Y.jsx)(s,{"data-slot":`collapsible`,...e})}function Ot({...e}){return(0,Y.jsx)(p,{"data-slot":`collapsible-trigger`,...e})}function kt({...e}){return(0,Y.jsx)(c,{"data-slot":`collapsible-content`,...e})}function At(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function jt(e){return e===null||typeof e==`string`||typeof e==`boolean`?!0:typeof e==`number`?Number.isFinite(e):Array.isArray(e)?e.every(jt):At(e)&&Object.values(e).every(jt)}function Q(e,t){if(e==null||e===``)return null;if(typeof e!=`string`)throw Error(`Metadata field "${t}" must be a string or null.`);return e.trim()||null}function Mt(e,t){if(e==null)return null;if(!jt(e))throw Error(`Metadata field "${t}" must contain JSON data.`);return e}function Nt(e){if(!At(e)||e.rights_confirmed!==!0)return null;let t=Q(e.url,`source_input_image.url`),n=Q(e.rights_statement,`source_input_image.rights_statement`);if(!t||!n)return null;try{return{url:u(t,`source_input_image.url`),rights_statement:n}}catch{return null}}function Pt(e){if(e==null)return[];if(!Array.isArray(e))throw Error(`Metadata field "preview_urls" must be an array.`);return e.map((e,t)=>u(e,`preview_urls[${t}]`))}function Ft(e,t){if(!At(e))throw Error(`Release metadata must be a JSON object.`);let n=Q(e.id,`id`);if(n&&n!==t)throw Error(`Release metadata ID does not match the asset.`);let r=Q(e.published_at_utc,`published_at_utc`);if(r&&Number.isNaN(Date.parse(r)))throw Error(`Metadata field "published_at_utc" must be a date string.`);return{id:n,source:Q(e.source,`source`),revision:Q(e.revision,`revision`),published_at_utc:r,quality:Mt(e.quality,`quality`),recipe:Mt(e.recipe,`recipe`),preview_urls:Pt(e.preview_urls),source_input_image:Nt(e.source_input_image)}}function It(e){return e.trim()||null}function Lt(e){let t=e.trim();if(!t)return null;let n;try{n=JSON.parse(t)}catch{throw Error(`Recipe metadata is not valid JSON.`)}if(!jt(n))throw Error(`Recipe metadata must contain JSON data.`);return n}async function Rt(e,t,n,r){if(!e)return{status:`not-supplied`};try{let i=await n(e,{signal:r});if(!i.ok)return{status:`unavailable`};let a=await i.text();if(a.length>1e6)return{status:`unavailable`};let o=t(a);return o===null?{status:`not-supplied`}:{status:`available`,value:o}}catch{if(r?.aborted)throw new DOMException(`Metadata read aborted.`,`AbortError`);return{status:`unavailable`}}}async function zt(e,t=fetch,n){let[r,i,a]=await Promise.all([Rt(e.metadata_url,t=>Ft(JSON.parse(t),e.id),t,n),Rt(e.prompt_url,It,t,n),Rt(e.settings_url,Lt,t,n)]);return{release:r,prompt:i,recipe:a}}function Bt(e){let[t,n]=(0,x.useState)(0),[r,i]=(0,x.useState)({status:`loading`});return(0,x.useEffect)(()=>{let t=new AbortController;return i({status:`loading`}),zt(e,fetch,t.signal).then(e=>{t.signal.aborted||i({status:`ready`,details:e})}).catch(()=>{t.signal.aborted||i({status:`error`})}),()=>t.abort()},[e,t]),{state:r,retry:()=>n(e=>e+1)}}function Vt(e){return JSON.stringify(e,null,2)}function $(e,t){return e===null||e===``?t:String(e)}function Ht(e){return e!=null}function Ut({title:e,status:t,value:n,notSupplied:r,unavailable:i}){return(0,Y.jsxs)(Z,{className:`metadata-block`,children:[(0,Y.jsx)(Ot,{render:(0,Y.jsx)(X,{variant:`ghost`,className:`justify-start`}),children:e}),(0,Y.jsxs)(kt,{children:[t===`available`&&(0,Y.jsx)(`pre`,{className:`metadata-text`,children:n}),t===`loading`&&(0,Y.jsx)(`p`,{className:`metadata-note`,role:`status`,children:`…`}),t===`not-supplied`&&(0,Y.jsx)(`p`,{className:`metadata-note`,children:r}),t===`unavailable`&&(0,Y.jsx)(`p`,{className:`metadata-note`,role:`status`,children:i})]})]})}function Wt({asset:e,release:t}){let{t:n}=m(),r=(0,x.useMemo)(()=>[...new Set([e.preview_url,...e.preview_urls,...t?.preview_urls??[]])].filter(e=>!!e),[e.preview_url,e.preview_urls,t?.preview_urls]);return r.length===0?(0,Y.jsx)(`p`,{className:`metadata-note`,children:n(`asset.notSupplied`)}):(0,Y.jsx)(`div`,{className:`preview-gallery`,children:r.map((e,t)=>(0,Y.jsxs)(`figure`,{children:[(0,Y.jsx)(`img`,{src:e,loading:`lazy`,alt:n(`asset.previewImageAlt`,{index:t+1})}),(0,Y.jsx)(`figcaption`,{children:n(`asset.previewLabel`,{index:t+1})})]},e))})}function Gt({asset:e}){let{t}=m(),{state:n,retry:r}=Bt(e),i=n.status===`ready`&&n.details.release.status===`available`?n.details.release.value:null,a=t(`asset.notSupplied`),o=t(`asset.metadataUnavailable`),s=n.status===`ready`?n.details.prompt:null,c=n.status===`ready`?n.details.recipe:null,l=i?.recipe,u=i?.quality,d=c?.status===`available`?Vt(c.value):Ht(l)?Vt(l):void 0,f=c?.status===`available`||Ht(l),p=c?.status===`unavailable`||n.status===`error`||n.status===`ready`&&n.details.release.status===`unavailable`,h=f?`available`:n.status===`loading`?`loading`:p?`unavailable`:`not-supplied`,g=Ht(u)?Vt(u):void 0,_=n.status===`loading`?`loading`:n.status===`error`||n.details.release.status===`unavailable`?`unavailable`:Ht(u)?`available`:`not-supplied`;return(0,Y.jsxs)(`section`,{className:`asset-metadata`,"aria-labelledby":`asset-metadata-heading`,children:[(0,Y.jsxs)(`header`,{className:`metadata-heading`,children:[(0,Y.jsx)(`div`,{children:(0,Y.jsx)(`h2`,{id:`asset-metadata-heading`,children:t(`asset.metadataTitle`)})}),n.status===`error`&&(0,Y.jsx)(X,{variant:`link`,type:`button`,onClick:r,children:t(`catalog.retry`)})]}),(0,Y.jsxs)(`dl`,{className:`asset-facts`,children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`dt`,{children:t(`asset.category`)}),(0,Y.jsx)(`dd`,{children:$(e.category,a)})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`dt`,{children:t(`asset.triangles`)}),(0,Y.jsx)(`dd`,{children:$(e.triangles,a)})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`dt`,{children:t(`asset.vertices`)}),(0,Y.jsx)(`dd`,{children:$(e.vertices,a)})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`dt`,{children:t(`asset.dimensions`)}),(0,Y.jsx)(`dd`,{children:e.dimensions_m?`${e.dimensions_m.join(` × `)} m`:a})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`dt`,{children:t(`asset.fileSize`)}),(0,Y.jsx)(`dd`,{children:e.file_size_bytes===null?a:`${e.file_size_bytes.toLocaleString()} B`})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`dt`,{children:t(`asset.formats`)}),(0,Y.jsx)(`dd`,{children:[lt(e,`glb`)?`GLB`:null,lt(e,`blend`)?`BLEND`:null].filter(Boolean).join(`, `)||a})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`dt`,{children:t(`asset.license`)}),(0,Y.jsx)(`dd`,{children:$(e.license,a)})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`dt`,{children:t(`asset.source`)}),(0,Y.jsx)(`dd`,{children:$(i?.source??e.source,a)})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`dt`,{children:t(`asset.revision`)}),(0,Y.jsx)(`dd`,{children:$(i?.revision??e.revision,a)})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`dt`,{children:t(`asset.publishedAt`)}),(0,Y.jsx)(`dd`,{children:$(i?.published_at_utc??e.published_at_utc,a)})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`dt`,{children:t(`asset.sourceHash`)}),(0,Y.jsx)(`dd`,{className:`hash-value`,children:e.source_sha256})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`dt`,{children:t(`asset.tags`)}),(0,Y.jsx)(`dd`,{children:e.tags.length>0?e.tags.join(`, `):a})]})]}),(0,Y.jsxs)(`div`,{className:`metadata-sections`,children:[(0,Y.jsx)(Ut,{title:t(`asset.prompt`),status:s?.status??(n.status===`loading`?`loading`:n.status===`error`?`unavailable`:`not-supplied`),value:s?.status===`available`?s.value:void 0,notSupplied:a,unavailable:o}),(0,Y.jsx)(Ut,{title:t(`asset.recipe`),status:h,value:d,notSupplied:a,unavailable:o}),(0,Y.jsx)(Ut,{title:t(`asset.quality`),status:_,value:g,notSupplied:a,unavailable:o}),(0,Y.jsxs)(Z,{className:`metadata-block`,children:[(0,Y.jsx)(Ot,{render:(0,Y.jsx)(X,{variant:`ghost`,className:`justify-start`}),children:t(`asset.previews`)}),(0,Y.jsx)(kt,{children:(0,Y.jsx)(Wt,{asset:e,release:i})})]})]}),(0,Y.jsxs)(Z,{className:`metadata-scope`,children:[(0,Y.jsx)(Ot,{render:(0,Y.jsx)(X,{variant:`ghost`,className:`justify-start`}),children:t(`asset.metadataScope`)}),(0,Y.jsx)(kt,{children:(0,Y.jsx)(`p`,{className:`metadata-note`,children:t(`asset.metadataAsPublished`)})})]}),i?.source_input_image&&(0,Y.jsxs)(`figure`,{className:`source-input-image`,children:[(0,Y.jsx)(`img`,{src:i.source_input_image.url,alt:t(`asset.sourceInputImageAlt`),loading:`lazy`}),(0,Y.jsxs)(`figcaption`,{children:[(0,Y.jsx)(`strong`,{children:t(`asset.sourceInputImage`)}),(0,Y.jsx)(`span`,{children:i.source_input_image.rights_statement})]})]})]})}function Kt({asset:e,locale:t,compact:n=!1}){let{t:r}=m(),i=l(e,t),a=(0,Y.jsx)(Gt,{asset:e});return(0,Y.jsxs)(Y.Fragment,{children:[!n&&(0,Y.jsxs)(`header`,{className:`asset-detail-heading`,children:[(0,Y.jsx)(`span`,{className:`asset-id`,children:e.id}),(0,Y.jsx)(`h1`,{children:i}),t===`zh`&&e.name_zh.trim()&&(0,Y.jsx)(`p`,{className:`detail-local-name`,children:e.name_en})]}),(0,Y.jsxs)(`div`,{className:`asset-detail`,children:[(0,Y.jsx)(Dt,{modelUrl:e.glb_url,previewUrl:e.preview_url,assetName:i}),(0,Y.jsxs)(`aside`,{className:`asset-detail-copy`,"aria-label":r(`asset.detailTitle`),children:[(0,Y.jsx)(`h2`,{className:`detail-actions-heading`,children:r(`asset.filesTitle`)}),(0,Y.jsxs)(`div`,{className:`detail-actions`,children:[e.glb_url&&(0,Y.jsx)(X,{variant:`default`,nativeButton:!1,render:(0,Y.jsx)(`a`,{href:e.glb_url,download:!0}),children:r(`asset.downloadGlb`)}),e.blend_url&&(0,Y.jsx)(X,{variant:`outline`,nativeButton:!1,render:(0,Y.jsx)(`a`,{href:e.blend_url,download:!0}),children:r(`asset.downloadBlend`)}),!e.glb_url&&!e.blend_url&&(0,Y.jsx)(`span`,{className:`detail-note`,children:r(`asset.filesNotSupplied`)})]}),n&&a]})]}),!n&&a]})}function qt({state:e,onRetry:t}){let{t:n}=m();return e.status===`ready`?null:(0,Y.jsxs)(`section`,{className:`catalog-state`,"aria-live":`polite`,children:[e.status===`loading`&&(0,Y.jsx)(`div`,{className:`state-panel`,children:(0,Y.jsx)(`p`,{className:`state-loading`,role:`status`,children:n(`catalog.loading`)})}),e.status===`empty`&&(0,Y.jsx)(`div`,{className:`state-panel`,children:(0,Y.jsx)(`h2`,{children:n(`catalog.emptyTitle`)})}),e.status===`error`&&(0,Y.jsxs)(`div`,{className:`state-panel state-panel-error`,role:`alert`,children:[(0,Y.jsx)(`h2`,{children:n(`catalog.errorTitle`)}),(0,Y.jsx)(`p`,{children:n(`catalog.errorDescription`)}),(0,Y.jsxs)(Z,{className:`catalog-error-details`,children:[(0,Y.jsx)(Ot,{render:(0,Y.jsx)(X,{variant:`ghost`,className:`justify-start`}),children:n(`catalog.errorDetails`)}),(0,Y.jsx)(kt,{children:(0,Y.jsx)(`code`,{children:e.message})})]}),(0,Y.jsx)(X,{className:`retry-button`,variant:`default`,type:`button`,onClick:t,children:n(`catalog.retry`)})]})]})}function Jt(){let[e,t]=(0,x.useState)(0),[n,r]=(0,x.useState)({status:`loading`});return(0,x.useEffect)(()=>{let e=new AbortController;return r({status:`loading`}),f(e.signal).then(t=>{e.signal.aborted||r(t?{status:`ready`,catalog:t}:{status:`empty`})}).catch(t=>{e.signal.aborted||r({status:`error`,message:t instanceof Error?t.message:`Unknown catalog error.`})}),()=>e.abort()},[e]),{state:n,retry:()=>t(e=>e+1)}}export{_,kt as a,Tt as c,gt as d,_t as f,rt as g,X as h,Z as i,Et as l,at as m,qt as n,Ot as o,vt as p,Kt as r,yt as s,Jt as t,dt as u};
|
|
|
|
|
|
assets/use-on-change-Da5Kx5YO.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
import{r as e,t}from"./rolldown-runtime-XKyaHtl9.js";import{t as n}from"./react-DlmbjZJV.js";import{t as r}from"./jsx-runtime-LKYXHABd.js";import{t as i}from"./with-selector-DBm9DdtQ.js";var a=t((e=>{var t=n();function r(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function i(){}var a={d:{f:i,r:function(){throw Error(r(522))},D:i,C:i,L:i,m:i,X:i,S:i,M:i},p:0,findDOMNode:null},o=Symbol.for(`react.portal`),s=Symbol.for(`react.recoverable`),c=Symbol.for(`react.optimistic_key`);function l(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:r==null?null:r===c?c:``+r,children:e,containerInfo:t,implementation:n}}var u=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function d(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=a,e.browser=function(e){return{$$typeof:s,_reason:e}},e.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(r(299));return l(e,t,null,n)},e.flushSync=function(e){var t=u.T,n=a.p;try{if(u.T=null,a.p=2,e)return e()}finally{u.T=t,a.p=n,a.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,a.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&a.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=d(n,t.crossOrigin),i=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?a.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:i,fetchPriority:o}):n===`script`&&a.d.X(e,{crossOrigin:r,integrity:i,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`){if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=d(t.as,t.crossOrigin);a.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0})}}else t??a.d.M(e)}},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=d(n,t.crossOrigin);a.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`){if(t){var n=d(t.as,t.crossOrigin);a.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0})}else a.d.m(e)}},e.requestFormReset=function(e){a.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return u.H.useFormState(e,t,n)},e.useFormStatus=function(){return u.H.useHostTransitionStatus()},e.version=`19.3.1`})),o=t(((e,t)=>{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=a()})),s=e(n(),1),c=r(),l=()=>{throw Error("You need to wrap your application inside `FrameworkProvider`.")},u=(0,s.createContext)({useParams:l,useRouter:l,usePathname:l});function d({Link:e,useRouter:t,useParams:n,usePathname:r,Image:i,children:a}){let o=(0,s.useMemo)(()=>({usePathname:r,useRouter:t,Link:e,Image:i,useParams:n}),[e,r,t,n,i]);return(0,c.jsx)(u,{value:o,children:a})}function f(){return(0,s.use)(u).usePathname()}function p(){return(0,s.use)(u).useRouter()}function m(e){let{Image:t}=(0,s.use)(u);if(!t){let{src:t,alt:n,priority:r,...i}=e;return(0,c.jsx)(`img`,{alt:n,src:t,fetchPriority:r?`high`:`auto`,...i})}return(0,c.jsx)(t,{...e})}function h(e){let{Link:t}=(0,s.use)(u);if(!t){let{href:t,prefetch:n,...r}=e;return(0,c.jsx)(`a`,{href:t,...r})}return(0,c.jsx)(t,{...e})}var g=(0,s.createContext)({});function _({translations:e,children:t}){let n=(0,s.use)(g);return(0,c.jsx)(g,{value:(0,s.useMemo)(()=>({...n,...e}),[n,e]),children:t})}var v=/\\?\{([^}]+)\}/g;function y({note:e}={}){let t=(0,s.use)(g);return(0,s.useMemo)(()=>b(t,{note:e}),[t,e])}function b(e,{note:t}={}){let n=(n,r={})=>{let{note:i,variables:a}=r,o=[];t&&o.push(t),i&&o.push(i);let s=e[x(n,o)]??n;return a&&(s=s.replaceAll(v,(e,t)=>e[0]===`\\`?e.slice(1):t in a?a[t]:e)),s};return n.jsx=(n,r={})=>{let{note:i,variables:a,tags:o}=r,s=[];t&&s.push(t),i&&s.push(i);let c=e[x(n,s)]??n;return o?w(c,a,o):a?S(c,a):c},n.translations=e,n}function x(e,t){return e+t.map(e=>`(${e})`).join(``)}function S(e,t){let n=0,r=[];for(let i of e.matchAll(v)){let[a,o]=i;n<i.index&&r.push(e.slice(n,i.index)),n=i.index+a.length,a[0]===`\\`?r.push(a.slice(1)):o in t?r.push(D(t[o],n)):r.push(a)}return r.push(e.slice(n)),r}var C=/\\?<([^>]+)>/g;function w(e,t,n){let r=[{children:[]}],i=0,a=()=>{let e=r.pop();r[r.length-1].children.push(D(e.tag&&n[e.tag]?E(n[e.tag],e.children):e.children,i))};for(let o of e.matchAll(C)){let s=r[r.length-1],[c,l]=o;if(i<o.index){let n=e.slice(i,o.index);s.children.push(t?S(n,t):n)}if(i=o.index+c.length,c[0]===`\\`){let e=c.slice(1);s.children.push(t?S(e,t):e)}else if(l[0]===`/`){let e=l.slice(1);s.tag===e?a():s.children.push(t?S(c,t):c)}else if(l.at(-1)===`/`){let e=l.slice(0,-1);n[e]&&s.children.push(D(E(n[e]),i))}else r.push({children:[],tag:l})}if(i<e.length){let n=e.slice(i);r[r.length-1].children.push(t?S(n,t):n)}for(;r.length>1;)a();return r[0].children}function T({text:e,note:t,variables:n,tags:r}){let i=(0,s.use)(g);return(0,s.useMemo)(()=>b(i).jsx(e,{note:t,variables:n,tags:r}),[i,e,t,n,r])}function E(e,t){return(0,s.isValidElement)(e)?t===void 0?e:(0,s.cloneElement)(e,void 0,t):e(t)}function D(e,t){return(0,s.isValidElement)(e)?(0,s.cloneElement)(e,{key:t}):e}var O=(0,s.createContext)({});function k(){return(0,s.use)(O)}var A={};function j({locales:e=[],locale:t,defaultLanguage:n,hideLocale:r=`never`,onLocaleChange:i,children:a,translations:o=A}){let l=p(),u=f(),d=e=>{if(i)return i(e);let a=u;if(r===`never`||r===`default-locale`&&t!==n){let e=u.indexOf(`/`,1);a=e===-1?`/`:u.slice(e)}(r!==`default-locale`||e!==n)&&(a=`/${e}${a===`/`?``:a}`),l.push(a)},m=(0,s.useRef)(d);return m.current=d,(0,c.jsx)(O,{value:(0,s.useMemo)(()=>({locale:t,locales:e,onChange:e=>m.current(e)}),[t,e]),children:(0,c.jsx)(_,{translations:o,children:a})})}function M(e,t){return function(n,...r){let i=new URL(e);return i.searchParams.set(`code`,n.toString()),r.forEach(e=>i.searchParams.append(`args[]`,e)),`${t} error #${n}; visit ${i} for the full message.`}}var N=M(`https://base-ui.com/production-error`,`Base UI`),P=s.createContext(void 0);function F(e){let t=s.useContext(P);if(!e&&t===void 0)throw Error(N(27));return t}var I={};function L(e,t){let n=s.useRef(I);return n.current===I&&(n.current=e(t)),n}function R(e,t,n,r){let i=L(B).current;return ee(i,e,t,n,r)&&ne(i,[e,t,n,r]),i.callback}function z(e){let t=L(B).current;return te(t,e)&&ne(t,e),t.callback}function B(){return{callback:null,cleanup:null,refs:[]}}function ee(e,t,n,r,i){return e.refs[0]!==t||e.refs[1]!==n||e.refs[2]!==r||e.refs[3]!==i}function te(e,t){return e.refs.length!==t.length||e.refs.some((e,n)=>e!==t[n])}function ne(e,t){e.refs=t,e.callback=t.every(e=>e==null)?null:n=>{if(e.cleanup&&=(e.cleanup(),null),n!=null){let r=Array(t.length).fill(null);for(let e=0;e<t.length;e+=1){let i=t[e];if(i!=null)switch(typeof i){case`function`:{let t=i(n);typeof t==`function`&&(r[e]=t);break}case`object`:i.current=n}}e.cleanup=()=>{for(let e=0;e<t.length;e+=1){let n=t[e];if(n!=null)switch(typeof n){case`function`:{let t=r[e];typeof t==`function`?t():n(null);break}case`object`:n.current=null}}}}}}var V=e(o(),1),re=19;function ie(e){return re>=e}function ae(e){if(!s.isValidElement(e))return null;let t=e,n=t.props;return(ie(19)?n?.ref:t.ref)??null}function H(e,t){if(e&&!t)return e;if(!e&&t)return t;if(e||t)return{...e,...t}}function U(){}var oe=Object.freeze([]),W=Object.freeze({});function se(e,t){let n={};for(let r in e){let i=e[r];if(t?.hasOwnProperty(r)){let e=t[r](i);e!=null&&Object.assign(n,e)}else i===!0?n[`data-${r.toLowerCase()}`]=``:i&&(n[`data-${r.toLowerCase()}`]=i.toString())}return n}function ce(e,t){return typeof e==`function`?e(t):e}function le(e,t){return typeof e==`function`?e(t):e}var ue={};function de(e,t,n,r,i){if(!n&&!r&&!i&&!e)return pe(t);let a=pe(e);return t&&(a=me(a,t)),n&&(a=me(a,n)),r&&(a=me(a,r)),i&&(a=me(a,i)),a}function fe(e){if(e.length===0)return ue;if(e.length===1)return pe(e[0]);let t=pe(e[0]);for(let n=1;n<e.length;n+=1)t=me(t,e[n]);return t}function pe(e){return ve(e)?{...e(ue)}:he(e)}function me(e,t){return ve(t)?t(e):ge(e,t)}function he(e){let t={...e};for(let e in t){let n=t[e];_e(e,n)&&(t[e]=be(n))}return t}function ge(e,t){if(!t)return e;for(let n in t){let r=t[n];switch(n){case`style`:e[n]=H(e.style,r);break;case`className`:e[n]=Se(e.className,r);break;default:e[n]=_e(n,r)?ye(e[n],r):r}}return e}function _e(e,t){let n=e.charCodeAt(0),r=e.charCodeAt(1),i=e.charCodeAt(2);return n===111&&r===110&&i>=65&&i<=90&&(typeof t==`function`||t===void 0)}function ve(e){return typeof e==`function`}function ye(e,t){return t?e?(...n)=>{let r=n[0];if(Ce(r)){let i=r;xe(i);let a=t(...n);return i.baseUIHandlerPrevented||e?.(...n),a}let i=t(...n);return e?.(...n),i}:be(t):e}function be(e){return e&&((...t)=>{let n=t[0];return Ce(n)&&xe(n),e(...t)})}function xe(e){return e.preventBaseUIHandler=()=>{e.baseUIHandlerPrevented=!0},e}function Se(e,t){return t?e?t+` `+e:t:e}function Ce(e){return typeof e==`object`&&!!e&&`nativeEvent`in e}function we(e,t,n={}){let r=t.render;n.enabled!==!1&&(r=Oe(r));let i=Te(t,n,r);if(n.enabled===!1)return null;let a=n.state??W;return ke(e,r,i,a)}function Te(e,t,n){let{className:r,style:i}=e,{state:a=W,ref:o,props:s,stateAttributesMapping:c,enabled:l=!0}=t,u=l?ce(r,a):void 0,d=l?le(i,a):void 0,f=l?se(a,c):W,p=l&&s?Ee(s):void 0,m=l?H(f,p)??{}:W;return typeof document<`u`&&(l?m.ref=Array.isArray(o)?z([m.ref,ae(n),...o]):R(m.ref,ae(n),o):R(null,null)),l?(u!==void 0&&(m.className=Se(m.className,u)),d!==void 0&&(m.style=H(m.style,d)),m):W}function Ee(e){return Array.isArray(e)?fe(e):de(void 0,e)}var De=Symbol.for(`react.lazy`);function Oe(e){if(e?.$$typeof!==De)return e;let t=s.Children.toArray(e)[0];return s.isValidElement(t)?t:e}function ke(e,t,n,r){if(t){if(typeof t==`function`)return t(n,r);let e=de(n,t.props);return e.ref=n.ref,s.cloneElement(t,e)}return Ae(e,n)}function Ae(e,t){return e===`button`?(0,s.createElement)(`button`,{type:`button`,...t,key:t.key}):e===`img`?(0,s.createElement)(`img`,{alt:``,...t,key:t.key}):s.createElement(e,t)}var je=`data-starting-style`,Me=`data-ending-style`,Ne={[je]:``},Pe={[Me]:``},Fe={transitionStatus(e){return e===`starting`?Ne:e===`ending`?Pe:null}},Ie=`data-open`,Le=`data-closed`,Re=je,ze=Me,Be=`data-anchor-hidden`,Ve=`data-popup-open`,He=`data-pressed`,Ue={[Ve]:``},We={[Ve]:``,[He]:``},Ge={[Ie]:``},Ke={[Le]:``},qe={[Be]:``},Je={open(e){return e?Ue:null}},Ye={open(e){return e?We:null}},Xe={open(e){return e?Ge:Ke},anchorHidden(e){return e?qe:null}},Ze={...Xe,...Fe};function Qe(){return typeof window<`u`}function G(e){return et(e)?(e.nodeName||``).toLowerCase():`#document`}function K(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function $e(e){return((et(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function et(e){return Qe()?e instanceof Node||e instanceof K(e).Node:!1}function tt(e){return Qe()?e instanceof Element||e instanceof K(e).Element:!1}function q(e){return Qe()?e instanceof HTMLElement||e instanceof K(e).HTMLElement:!1}function nt(e){return!Qe()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof K(e).ShadowRoot}function rt(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=pt(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function it(e){return/^(table|td|th)$/.test(G(e))}function at(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var ot=/transform|translate|scale|rotate|perspective|filter/,st=/paint|layout|strict|content/,J=e=>!!e&&e!==`none`,ct;function lt(e){let t=tt(e)?pt(e):e;return J(t.transform)||J(t.translate)||J(t.scale)||J(t.rotate)||J(t.perspective)||!dt()&&(J(t.backdropFilter)||J(t.filter))||ot.test(t.willChange||``)||st.test(t.contain||``)}function ut(e){let t=ht(e);for(;q(t)&&!ft(t);){if(lt(t))return t;if(at(t))return null;t=ht(t)}return null}function dt(){return ct??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),ct}function ft(e){return/^(html|body|#document)$/.test(G(e))}function pt(e){return K(e).getComputedStyle(e)}function mt(e){return tt(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function ht(e){if(G(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||nt(e)&&e.host||$e(e);return nt(t)?t.host:t}function gt(e){let t=ht(e);return ft(t)?(e.ownerDocument||e).body:q(t)&&rt(t)?t:gt(t)}function _t(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=gt(e),i=r===e.ownerDocument?.body,a=K(r);if(i){let e=vt(a);return t.concat(a,a.visualViewport||[],rt(r)?r:[],e&&n?_t(e):[])}return t.concat(r,_t(r,[],n))}function vt(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}var yt={...s},bt=yt.useInsertionEffect,xt=bt&&bt!==yt.useLayoutEffect?bt:e=>e();function Y(e){let t=L(St).current;return t.next=e,xt(t.effect),t.trampoline}function St(){let e={next:void 0,callback:Ct,trampoline:(...t)=>e.callback?.(...t),effect:()=>{e.callback=e.next}};return e}function Ct(){}var X=typeof document<`u`?s.useLayoutEffect:()=>{};function Z(e){return e?.ownerDocument||document}function wt(e,t,n,r){let i=!1,a=!1,o=r??W;return{reason:e,event:t??new Event(`base-ui`),cancel(){i=!0},allowPropagation(){a=!0},get isCanceled(){return i},get isPropagationAllowed(){return a},trigger:n,...o}}function Tt(e,t,n){let r=n??W;return{reason:e,event:t??new Event(`base-ui`),...r}}var Et=`none`,Dt=`trigger-press`,Ot=`trigger-hover`,kt=`trigger-focus`,At=`outside-press`,jt=`item-press`,Mt=`close-press`,Nt=`link-press`,Pt=`focus-out`,Ft=`escape-key`,It=`list-navigation`,Lt=`keyboard`,Rt=`pointer`,zt=`cancel-open`,Bt=`sibling-open`,Vt=`disabled`,Ht=`missing`,Ut=`initial`,Wt=`imperative-action`;function Gt(){let[,e]=s.useState({});return s.useCallback(()=>{e({})},[])}var Kt=0;function qt(e,t=`mui`){let n=s.useRef(void 0),r=Gt(),i=e??n.current;return s.useEffect(()=>{n.current??(Kt+=1,n.current=`${t}-${Kt}`,e??r())},[e,t,r]),i}var Jt=yt.useId;function Yt(e,t){if(Jt!==void 0){let n=Jt();return e??(t?`${t}-${n}`:n)}return qt(e,t)}function Xt(e){return Yt(e,`base-ui`)}function Zt(e){s.useEffect(e,oe)}var Qt=0,$t=class e{static create(){return new e}currentId=Qt;start(e,t){this.clear(),this.currentId=setTimeout(()=>{this.currentId=Qt,t()},e)}isStarted(){return this.currentId!==Qt}clear=()=>{this.currentId!==Qt&&(clearTimeout(this.currentId),this.currentId=Qt)};disposeEffect=()=>this.clear};function en(){let e=L($t.create).current;return Zt(e.disposeEffect),e}function tn(){return typeof navigator>`u`?{userAgent:``,platform:``,maxTouchPoints:0}:{userAgent:navigator.userAgent,platform:navigator.platform??``,maxTouchPoints:navigator.maxTouchPoints??0}}var{userAgent:nn,platform:rn,maxTouchPoints:an}=tn(),on=nn.toLowerCase(),sn=rn.toLowerCase(),cn=/^i(os$|p)/.test(sn)||sn===`macintel`&&an>1,ln=`android`,un=sn===ln||on.includes(ln),dn=!cn&&sn.startsWith(`mac`);sn.startsWith(`win`),!un&&/^(linux|chrome os)/.test(sn);var fn=dn||cn,pn=typeof CSS<`u`&&!!CSS.supports?.(`-webkit-backdrop-filter:none`);!pn&&on.includes(`firefox`),!pn&&on.includes(`chrom`);var mn=fn,hn=/jsdom|happydom/.test(on);function gn(e){e.preventDefault(),e.stopPropagation()}function _n(e){return`nativeEvent`in e}function vn(e){return e.pointerType===``&&e.isTrusted?!0:un&&e.pointerType?e.type===`click`&&e.buttons===1:e.detail===0&&!e.pointerType}function yn(e){return hn?!1:!un&&e.width===0&&e.height===0||e.type===`pointerdown`&&e.width===1&&e.height===1&&e.pressure===0&&e.detail===0&&e.pointerType===`mouse`&&(un||e.buttons===0)||e.width<1&&e.height<1&&e.pressure===0&&e.detail===0&&e.pointerType===`touch`}function bn(e,t){let n=[`mouse`,`pen`];return t||n.push(``,void 0),n.includes(e)}function xn(e){let t=e.type;return t===`click`||t===`mousedown`||t===`keydown`||t===`keyup`}function Sn(e){let t=e.activeElement;for(;t?.shadowRoot?.activeElement!=null;)t=t.shadowRoot.activeElement;return t}function Q(e,t){if(!e||!t)return!1;let n=t.getRootNode?.();if(e.contains(t))return!0;if(n&&nt(n)){let n=t;for(;n;){if(e===n)return!0;n=n.parentNode||n.host}}return!1}function Cn(e,t){let n=e;for(;n;){if(tt(n)&&n.matches(t))return n;n=n.assignedSlot??n.parentNode??(nt(n)?n.host:null)}return null}function wn(e){return`composedPath`in e?e.composedPath()[0]??e.target:e.target}var Tn=`data-base-ui-focusable`,En=`input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])`,Dn=`ArrowLeft`,On=`ArrowRight`,kn=`ArrowUp`,An=`ArrowDown`,jn=`data-trigger-disabled`;function Mn(e,t){if(!tt(e))return!1;let n=e;if(t.hasElement(n))return!n.hasAttribute(jn);for(let[,e]of t.entries())if(Q(e,n))return!e.hasAttribute(jn);return!1}function Nn(e,t){if(t==null)return!1;if(`composedPath`in e)return e.composedPath().includes(t);let n=e;return n.target!=null&&t.contains(n.target)}function Pn(e){return e.matches(`html,body`)}function Fn(e){return q(e)&&e.matches(`input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])`)}function In(e){return Cn(e,`button,a[href],[role="button"],select,[tabindex]:not([tabindex="-1"]),${En}`)!=null}function Ln(e){return e?e.getAttribute(`role`)===`combobox`&&Fn(e):!1}function Rn(e){if(!e||hn)return!0;try{return e.matches(`:focus-visible`)}catch{return!0}}function zn(e){return e?e.hasAttribute(`data-base-ui-focusable`)?e:e.querySelector(`[data-base-ui-focusable]`)||e:null}function $(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}function Bn(...e){return()=>{for(let t=0;t<e.length;t+=1){let n=e[t];n&&n()}}}function Vn(e){let t=L(Hn,e).current;return t.next=e,X(t.effect),t}function Hn(e){let t={current:e,next:e,effect:()=>{t.current=t.next}};return t}var Un=null;globalThis.requestAnimationFrame;var Wn=new class{callbacks=[];callbacksCount=0;nextId=1;startId=1;isScheduled=!1;tick=e=>{this.isScheduled=!1;let t=this.callbacks,n=this.callbacksCount;if(this.callbacks=[],this.callbacksCount=0,this.startId=this.nextId,n>0)for(let n=0;n<t.length;n+=1)t[n]?.(e)};request(e){let t=this.nextId;return this.nextId+=1,this.callbacks.push(e),this.callbacksCount+=1,this.isScheduled||=(requestAnimationFrame(this.tick),!0),t}cancel(e){let t=e-this.startId;t<0||t>=this.callbacks.length||this.callbacks[t]!==null&&(this.callbacks[t]=null,--this.callbacksCount)}},Gn=class e{static create(){return new e}static request(e){return Wn.request(e)}static cancel(e){return Wn.cancel(e)}currentId=Un;request(e){this.cancel(),this.currentId=Wn.request(()=>{this.currentId=Un,e()})}cancel=()=>{this.currentId!==Un&&(Wn.cancel(this.currentId),this.currentId=Un)};disposeEffect=()=>this.cancel};function Kn(){let e=L(Gn.create).current;return Zt(e.disposeEffect),e}var qn={clipPath:`inset(50%)`,overflow:`hidden`,whiteSpace:`nowrap`,border:0,padding:0,width:1,height:1,margin:-1},Jn={...qn,position:`fixed`,margin:0,top:0,left:0},Yn={...qn,position:`absolute`},Xn=s.forwardRef(function(e,t){let[n,r]=s.useState();X(()=>{mn&&pn&&r(`button`)},[]);let i={tabIndex:0,role:n};return(0,c.jsx)(`span`,{...e,ref:t,style:Jn,"aria-hidden":!n||void 0,...i,"data-base-ui-focus-guard":``})});function Zn(e,t){return t<0||t>=e.length}function Qn(e,t){return tr(e.current,{disabledIndices:t})}function $n(e,t){return tr(e.current,{decrement:!0,startingIndex:e.current.length,disabledIndices:t})}function er(e,t,n){let{decrement:r,loopFocus:i,allowEscape:a,disabledIndices:o,minIndex:s,maxIndex:c}=n,l=()=>tr(e,{startingIndex:t,decrement:r,disabledIndices:o}),u,d=!1;if(!i)u=r?Math.max(s,l()):Math.min(c,l());else if(r?t<=s:t>=c){let n=r?-1:e.length;a&&t!==n?u=-1:(u=r?c:s,d=!0)}else u=l();return{index:Zn(e,u)?-1:u,wrapped:d}}function tr(e,{startingIndex:t=-1,decrement:n=!1,disabledIndices:r,amount:i=1}={}){let a=t;do a+=n?-i:i;while(a>=0&&a<=e.length-1&&nr(e,a,r));return a}function nr(e,t,n){if(typeof n==`function`?n(t):n?.includes(t)??!1)return!0;let r=e[t];return r?!ir(r)||r.matches(`:disabled`)?!0:!n&&(r.hasAttribute(`disabled`)||r.getAttribute(`aria-disabled`)===`true`):!1}function rr(e){return e.visibility===`hidden`||e.visibility===`collapse`}function ir(e,t=e?pt(e):null){return!e||!e.isConnected||!t||rr(t)?!1:typeof e.checkVisibility==`function`?e.checkVisibility():t.display!==`none`&&t.display!==`contents`}var ar=`a[href],button,input,select,textarea,summary,details,iframe,object,embed,[tabindex],[contenteditable]:not([contenteditable="false"]),audio[controls],video[controls]`;function or(e){let t=e.assignedSlot;if(t)return t;if(e.parentElement)return e.parentElement;let n=e.getRootNode();return nt(n)?n.host:null}function sr(e){for(let t of Array.from(e.children))if(G(t)===`summary`)return t;return null}function cr(e,t){let n=sr(t);return!!n&&(e===n||Q(n,e))}function lr(e){let t=e?G(e):``;return e!=null&&e.matches(ar)&&(t!==`summary`||e.parentElement!=null&&G(e.parentElement)===`details`&&sr(e.parentElement)===e)&&(t!==`details`||sr(e)==null)&&(t!==`input`||e.type!==`hidden`)}function ur(e){if(!lr(e)||!e.isConnected||e.matches(`:disabled`))return!1;for(let t=e;t;t=or(t)){let n=t!==e,r=G(t)===`slot`;if(t.hasAttribute(`inert`)||n&&G(t)===`details`&&!t.open&&!cr(e,t)||t.hasAttribute(`hidden`)||!r&&!dr(t,n))return!1}return!0}function dr(e,t){let n=pt(e);return t?n.display!==`none`:ir(e,n)}function fr(e){let t=e.tabIndex;if(t<0){let t=G(e);if(t===`details`||t===`audio`||t===`video`||q(e)&&e.isContentEditable)return 0}return t}function pr(e){if(G(e)!==`input`)return null;let t=e;return t.type===`radio`&&t.name!==``?t:null}function mr(e,t){let n=pr(e);if(!n)return!0;let r=t.find(e=>{let t=pr(e);return t?.name===n.name&&t.form===n.form&&t.checked});return r?r===n:t.find(e=>{let t=pr(e);return t?.name===n.name&&t.form===n.form})===n}function hr(e){if(q(e)&&G(e)===`slot`){let t=e.assignedElements({flatten:!0});if(t.length>0)return t}return q(e)&&e.shadowRoot?Array.from(e.shadowRoot.children):Array.from(e.children)}function gr(e,t){hr(e).forEach(e=>{lr(e)&&t.push(e),gr(e,t)})}function _r(e,t,n){hr(e).forEach(e=>{q(e)&&e.matches(t)&&n.push(e),_r(e,t,n)})}function vr(e){return ur(e)&&fr(e)>=0}function yr(e){let t=[];return gr(e,t),t.filter(ur)}function br(e){let t=yr(e);return t.filter(e=>fr(e)>=0&&mr(e,t))}function xr(e,t){let n=br(e),r=n.length;if(r===0)return;let i=Sn(Z(e)),a=n.indexOf(i);return n[a===-1?t===1?0:r-1:a+t]}function Sr(e){return xr(Z(e).body,1)||e}function Cr(e){return xr(Z(e).body,-1)||e}function wr(e,t,n){if(!e)return null;let r=[];gr(Z(e).body,r);let i=r.indexOf(e);if(i===-1)return null;let a=r.filter(ur);for(let e=1;e<r.length;e+=1){let o=r[(i+t*e+r.length)%r.length];if(!Q(n,o)&&vr(o)&&mr(o,a))return o}return r[i]}function Tr(e,t){let n=t||e.currentTarget,r=e.relatedTarget;return!r||!Q(n,r)}function Er(e){br(e).forEach(e=>{e.dataset.tabindex=e.getAttribute(`tabindex`)||``,e.setAttribute(`tabindex`,`-1`)})}function Dr(e){let t=[];_r(e,`[data-tabindex]`,t),t.forEach(e=>{let t=e.dataset.tabindex;delete e.dataset.tabindex,t?e.setAttribute(`tabindex`,t):e.removeAttribute(`tabindex`)})}function Or(e,t,n=!0){return e.filter(e=>e.parentId===t).flatMap(t=>[...!n||t.context?.open?[t]:[],...Or(e,t.id,n)])}function kr(e,t){let n=[],r=e.find(e=>e.id===t)?.parentId;for(;r;){let t=e.find(e=>e.id===r);r=t?.parentId,t&&(n=n.concat(t))}return n}function Ar(e){return`data-base-ui-${e}`}var jr=0;function Mr(e,t={}){let{preventScroll:n=!1,sync:r=!1,shouldFocus:i}=t;cancelAnimationFrame(jr);function a(){(!i||i())&&e?.focus({preventScroll:n})}if(r)return a(),U;let o=requestAnimationFrame(a);return jr=o,()=>{jr===o&&(cancelAnimationFrame(o),jr=0)}}var Nr=`data-base-ui-inert`,Pr=new WeakMap,Fr=new WeakSet,Ir=new WeakMap,Lr=0;function Rr(e){return e?nt(e)?e.host:Rr(e.parentNode):null}var zr=(e,t)=>t.map(t=>{if(e.contains(t))return t;let n=Rr(t);return e.contains(n)?n:null}).filter(e=>e!=null),Br=e=>{let t=new Set;return e.forEach(e=>{let n=e;for(;n&&!t.has(n);)t.add(n),n=n.parentNode}),t},Vr=(e,t,n)=>{let r=[],i=e=>{e&&!n.has(e)&&Array.from(e.children).forEach(e=>{G(e)!==`script`&&(t.has(e)?i(e):r.push(e))})};return i(e),r};function Hr(e,t,n,{mark:r=!0}){let i=zr(t,e),a=r?Vr(t,Br(i),new Set(i)):[],o=[],s=[];if(n){let e=zr(t,Array.from(t.querySelectorAll(`[aria-live]`))),n=i.concat(e);Vr(t,Br(n),new Set(n)).forEach(e=>{let t=e.getAttribute(`aria-hidden`),n=t!==null&&t!==`false`,r=(Pr.get(e)||0)+1;Pr.set(e,r),o.push(e),r===1&&n&&Fr.add(e),n||e.setAttribute(`aria-hidden`,`true`)})}return r&&a.forEach(e=>{let t=(Ir.get(e)||0)+1;Ir.set(e,t),s.push(e),t===1&&e.setAttribute(Nr,``)}),Lr+=1,()=>{o.forEach(e=>{let t=(Pr.get(e)||0)-1;Pr.set(e,t),t||(Fr.has(e)||e.removeAttribute(`aria-hidden`),Fr.delete(e))}),r&&s.forEach(e=>{let t=(Ir.get(e)||0)-1;Ir.set(e,t),t||e.removeAttribute(Nr)}),--Lr,Lr||(Pr=new WeakMap,Fr=new WeakSet,Ir=new WeakMap)}}function Ur(e,t={}){let{ariaHidden:n=!1,mark:r=!0}=t,i=Z(e[0]).body;return Hr(e,i,n,{mark:r})}var Wr={style:{transition:`none`}},Gr=`data-base-ui-click-trigger`,Kr={fallbackAxisSide:`none`},qr={fallbackAxisSide:`end`},Jr={clipPath:`inset(50%)`,position:`fixed`,top:0,left:0},Yr=s.createContext(null),Xr=()=>s.useContext(Yr),Zr=Ar(`portal`);function Qr(e={}){let{ref:t,container:n,componentProps:r=W,elementProps:i}=e,a=Yt(),o=Xr()?.portalNode,[c,l]=s.useState(null),[u,d]=s.useState(null),f=Y(e=>{e!==null&&d(e)}),p=s.useRef(null);X(()=>{if(n===null){p.current&&(p.current=null,d(null),l(null));return}let e=(n&&(et(n)?n:n.current))??o??document.body;e==null?p.current&&(p.current=null,d(null),l(null)):p.current!==e&&(p.current=e,d(null),l(e))},[n,o]);let m=we(`div`,r,{ref:[t,f],props:[{id:a,[Zr]:``},i]}),h=c&&m?V.createPortal(m,c):null;return{node:u,nodeId:s.isValidElement(m)?m.props.id:void 0,subtree:h}}var $r=s.forwardRef(function(e,t){let{render:n,className:r,style:i,children:a,container:o,portalOwnerRole:l,...u}=e,{node:d,nodeId:f,subtree:p}=Qr({container:o,ref:t,componentProps:e,elementProps:u}),m=s.useRef(null),h=s.useRef(null),g=s.useRef(null),_=s.useRef(null),[v,y]=s.useState(null),b=s.useRef(!1),x=v?.modal,S=v?.open,C=!!v&&!v.modal&&v.open&&!!d;s.useEffect(()=>{if(!d||x)return;function e(e){d&&e.relatedTarget&&Tr(e)&&(e.type===`focusin`?b.current&&=(Dr(d),!1):(Er(d),b.current=!0))}return Bn($(d,`focusin`,e,!0),$(d,`focusout`,e,!0))},[d,x]),X(()=>{d&&S===!0&&b.current&&(Dr(d),b.current=!1)},[S,d]);let w=s.useMemo(()=>({beforeOutsideRef:m,afterOutsideRef:h,beforeInsideRef:g,afterInsideRef:_,portalNode:d,setFocusManagerState:y}),[d]);return(0,c.jsxs)(s.Fragment,{children:[p,(0,c.jsxs)(Yr.Provider,{value:w,children:[C&&d&&(0,c.jsx)(Xn,{"data-type":`outside`,ref:m,onFocus:e=>{Tr(e,d)?g.current?.focus():Cr(v?v.domReference:null)?.focus()}}),C&&d&&(0,c.jsx)(`span`,{role:l,"aria-owns":f,style:Jr}),d&&V.createPortal(a,d),C&&d&&(0,c.jsx)(Xn,{"data-type":`outside`,ref:h,onFocus:e=>{Tr(e,d)?_.current?.focus():(Sr(v?v.domReference:null)?.focus(),v?.closeOnFocusOut&&v?.onOpenChange(!1,wt(`focus-out`,e.nativeEvent)))}})]})]})});function ei(){let e=new Map;return{emit(t,n){e.get(t)?.forEach(e=>e(n))},on(t,n){e.has(t)||e.set(t,new Set),e.get(t).add(n)},off(t,n){e.get(t)?.delete(n)}}}var ti=class{nodesRef={current:[]};events=ei();addNode(e){this.nodesRef.current.push(e)}removeNode(e){let t=this.nodesRef.current.findIndex(t=>t===e);t!==-1&&this.nodesRef.current.splice(t,1)}},ni=s.createContext(null),ri=s.createContext(null),ii=()=>s.useContext(ni)?.id||null,ai=e=>{let t=s.useContext(ri);return e??t};function oi(e){let t=Yt(),n=ai(e),r=ii();return X(()=>{if(!t)return;let e={id:t,parentId:r};return n?.addNode(e),()=>{n?.removeNode(e)}},[n,t,r]),t}function si(e){let{children:t,id:n}=e,r=ii();return(0,c.jsx)(ni.Provider,{value:s.useMemo(()=>({id:n,parentId:r}),[n,r]),children:t})}function ci(e){let{children:t,externalTree:n}=e,r=L(()=>n??new ti).current;return(0,c.jsx)(ri.Provider,{value:r,children:t})}function li(e){return e==null?e:`current`in e?e.current:e}function ui(e,t){let n=K(wn(e));return e instanceof n.KeyboardEvent?`keyboard`:e instanceof n.FocusEvent?t||`keyboard`:`pointerType`in e?e.pointerType||(vn(e)?`keyboard`:t||`mouse`):`touches`in e?`touch`:e instanceof n.MouseEvent?t||(e.detail===0?`keyboard`:`mouse`):``}var di=20,fi=[];function pi(){fi=fi.filter(e=>e.deref()?.isConnected)}function mi(e){pi(),e&&G(e)!==`body`&&(fi.push(new WeakRef(e)),fi.length>di&&(fi=fi.slice(-20)))}function hi(){return pi(),fi[fi.length-1]?.deref()}function gi(e){return e?vr(e)?e:br(e)[0]||e:null}function _i(e){if(e.hasAttribute(`tabindex`)&&!e.hasAttribute(`data-tabindex`)||!e.getAttribute(`role`)?.includes(`dialog`))return;let t=yr(e).filter(e=>{let t=e.getAttribute(`data-tabindex`)||``;return vr(e)||e.hasAttribute(`data-tabindex`)&&!t.startsWith(`-`)}),n=e.getAttribute(`tabindex`);t.length===0?n!==`0`&&(e.setAttribute(`tabindex`,`0`),e.setAttribute(`data-tabindex`,`0`)):(n!==`-1`||e.hasAttribute(`data-tabindex`)&&e.getAttribute(`data-tabindex`)!==`-1`)&&(e.setAttribute(`tabindex`,`-1`),e.setAttribute(`data-tabindex`,`-1`))}function vi(e){let{context:t,children:n,disabled:r=!1,initialFocus:i=!0,returnFocus:a=!0,explicitReturnFocus:o,restoreFocus:l=!1,modal:u=!0,closeOnFocusOut:d=!0,openInteractionType:f=``,nextFocusableElement:p,previousFocusableElement:m,beforeContentFocusGuardRef:h,externalTree:g,getInsideElements:_}=e,v=t.useState(`open`),y=t.useState(`domReferenceElement`),b=t.useState(`floatingElement`),{events:x,dataRef:S}=t.context,C=Y(()=>S.current.floatingContext?.nodeId),w=i===!1,T=Ln(y)&&w,E=Vn(i),D=Vn(a),O=Vn(o),k=Vn(f),A=Vn(v),j=ai(g),M=Xr(),N=s.useRef(!1),P=s.useRef(!1),F=s.useRef(!1),I=s.useRef(null),L=s.useRef(``),z=s.useRef(``),B=s.useRef(null),ee=s.useRef(null),te=R(B,h,M?.beforeInsideRef),ne=R(ee,M?.afterInsideRef),V=en(),re=en(),ie=Kn(),ae=M!=null,H=zn(b),U=Y((e=H)=>e?br(e):[]),oe=Y(()=>_?.().filter(e=>e!=null)??[]);s.useEffect(()=>{if(r||!u)return;function e(e){e.key===`Tab`&&Q(H,Sn(Z(H)))&&U().length===0&&!T&&gn(e)}return $(Z(H),`keydown`,e)},[r,H,u,T,U]),s.useEffect(()=>{if(r||!v)return;let e=Z(H);function t(){F.current=!1}function n(e){let t=wn(e),n=oe(),r=Q(b,t)||Q(y,t)||Q(M?.portalNode,t)||n.some(e=>e===t||Q(e,t));F.current=!r,z.current=e.pointerType||`keyboard`,Cn(t,`[data-base-ui-click-trigger]`)&&(P.current=!0,re.start(0,()=>{P.current=!1}))}function i(){z.current=`keyboard`}return Bn($(e,`pointerdown`,n,!0),$(e,`pointerup`,t,!0),$(e,`pointercancel`,t,!0),$(e,`keydown`,i,!0),t)},[r,b,y,H,v,M,re,oe]),s.useEffect(()=>{if(r||!d)return;let e=Z(H);function n(){P.current=!0,re.start(0,()=>{P.current=!1})}function i(e){let t=wn(e);vr(t)&&(I.current=t)}function a(n){let r=n.relatedTarget,i=n.currentTarget,a=wn(n);u&&r==null&&a!=null&&Q(b,a)&&mi(a),queueMicrotask(()=>{let o=C(),s=t.context.triggerElements,c=oe(),d=r?.hasAttribute(Ar(`focus-guard`))&&[B.current,ee.current,M?.beforeInsideRef.current,M?.afterInsideRef.current,M?.beforeOutsideRef.current,M?.afterOutsideRef.current,li(m),li(p)].includes(r),f=!(Q(y,r)||Q(b,r)||Q(r,b)||Q(M?.portalNode,r)||c.some(e=>e===r||Q(e,r))||s.hasMatchingElement(e=>Q(e,r))||d||j&&(Or(j.nodesRef.current,o).find(e=>Q(e.context?.elements.floating,r)||Q(e.context?.elements.domReference,r))||kr(j.nodesRef.current,o).find(e=>[e.context?.elements.floating,zn(e.context?.elements.floating)].includes(r)||e.context?.elements.domReference===r)));if(i===y&&H&&_i(H),l&&i!==y&&!ir(a)&&Sn(e)===e.body){if(q(H)&&(H.focus(),l===`popup`)){ie.request(()=>{H.focus()});return}let e=U(),t=I.current,n=(t&&e.includes(t)?t:null)||e[e.length-1]||H;q(n)&&n.focus()}S.current.insideReactTree?S.current.insideReactTree=!1:(T||!u)&&r&&f&&!P.current&&(T||r!==hi())&&(N.current=!0,t.setOpen(!1,wt(Pt,n)))})}function o(){F.current||(S.current.insideReactTree=!0,V.start(0,()=>{S.current.insideReactTree=!1}))}let s=q(y)?y:null;if(b||s)return Bn(s&&$(s,`focusout`,a),s&&$(s,`pointerdown`,n),b&&$(b,`focusin`,i),b&&$(b,`focusout`,a),b&&M&&$(b,`focusout`,o,!0))},[r,y,b,H,u,j,M,t,d,l,U,T,C,S,V,re,ie,p,m,oe]),s.useEffect(()=>{if(r||!b||!v)return;let e=Array.from(M?.portalNode?.querySelectorAll(`[${Ar(`portal`)}]`)||[]),t=(j?kr(j.nodesRef.current,C()):[]).find(e=>Ln(e.context?.elements.domReference||null))?.context?.elements.domReference,n=Ur([b,...e,B.current,ee.current,M?.beforeOutsideRef.current,M?.afterOutsideRef.current,...oe(),t,li(m),li(p),T?y:null].filter(e=>e!=null),{ariaHidden:u||T,mark:!1}),i=Ur([b,...e].filter(e=>e!=null));return()=>{i(),n()}},[v,r,y,b,u,M,T,j,C,p,m,oe]),X(()=>{if(!v||r||!q(H))return;L.current=``,z.current=``;let e=Z(H),t=Sn(e);queueMicrotask(()=>{let n=E.current,r=typeof n==`function`?n(k.current||``):n;if(r===void 0||r===!1||Q(H,t))return;let i=null,a=()=>(i??=U(H),i[0]||H),o;o=r===!0||r===null?a():li(r),o||=a();let s=Q(H,Sn(e)),c=S.current.openEvent,l=c?.type===`mousedown`&&vn(c);Mr(o,{sync:l,preventScroll:o===H,shouldFocus(){if(!A.current)return!1;if(s)return!0;let t=Sn(e);return!(t!==o&&Q(H,t))}})})},[r,v,H,U,E,k,A,S]);let W=s.useRef(null);X(()=>{if(r||!H){W.current=null;return}W.current&&=(W.current.cancelled=!0,null);let e=Z(H),t=Sn(e),n=k.current==null;mi(t);function i(e){if(e.open||(L.current=ui(e.nativeEvent,z.current)),(e.reason===`focus-out`&&e.triggerElement?.hasAttribute(Ar(`focus-guard`))||e.reason===`trigger-hover`&&e.nativeEvent.type===`mouseleave`)&&(N.current=!0),e.reason===`outside-press`){if(e.nested)N.current=!1;else if(vn(e.nativeEvent)||yn(e.nativeEvent))N.current=!1;else{let e=!1;Z(H).createElement(`div`).focus({get preventScroll(){return e=!0,!1}}),e?N.current=!1:N.current=!0}}}x.on(`openchange`,i);function a(e){let r=D.current,i=typeof r==`function`?r(e):r;if(i===void 0||i===!1)return null;i===null&&(i=!0);let a=y?.isConnected?y:null,o=t?.isConnected&&G(t)!==`body`?t:null,s=n?o||a:a||o;return s||=hi()||null,typeof i==`boolean`?s:li(i)||s||null}return()=>{x.off(`openchange`,i);let t=Sn(e),n=oe(),r=Q(b,t)||n.some(e=>e===t||Q(e,t))||j&&Or(j.nodesRef.current,C(),!1).some(e=>Q(e.context?.elements.floating,t)),o=D.current,s=L.current,c=a(s),l={cancelled:!1};W.current=l,queueMicrotask(()=>{W.current===l&&(W.current=null);let n=gi(c),i=O.current??typeof o!=`boolean`;if(!l.cancelled&&o&&!N.current&&q(n)&&(i||n===t||t===e.body||r)){let e={preventScroll:!0};s===`keyboard`&&(e.focusVisible=!0),n.focus(e)}N.current=!1})}},[r,b,H,D,O,k,x,j,y,C,oe]),X(()=>{if(!pn||v||!b)return;let e=Sn(Z(b));q(e)&&Fn(e)&&Q(b,e)&&e.blur()},[v,b]),X(()=>{if(!r&&M)return M.setFocusManagerState({modal:u,closeOnFocusOut:d,open:v,onOpenChange:t.setOpen,domReference:y}),()=>{M.setFocusManagerState(null)}},[r,M,u,v,t,d,y]),X(()=>{if(!r&&H)return _i(H),()=>{queueMicrotask(pi)}},[r,H]);let se=!r&&(!u||!T)&&(ae||u);return(0,c.jsxs)(s.Fragment,{children:[se&&(0,c.jsx)(Xn,{"data-type":`inside`,ref:te,onFocus:e=>{if(u){let e=U();Mr(e[e.length-1])}else M?.portalNode&&(N.current=!1,Tr(e,M.portalNode)?Sr(y)?.focus():li(m??M.beforeOutsideRef)?.focus())}}),n,se&&(0,c.jsx)(Xn,{"data-type":`inside`,ref:ne,onFocus:e=>{u?Mr(U()[0]):M?.portalNode&&(d&&(N.current=!0),Tr(e,M.portalNode)?Cr(y)?.focus():li(p??M.afterOutsideRef)?.focus())}})]})}function yi(){return!1}function bi(e){return{escapeKey:typeof e==`boolean`?e:e?.escapeKey??!1,outsidePress:typeof e==`boolean`?e:e?.outsidePress??!0}}function xi(e,t={}){let{enabled:n=!0,escapeKey:r=!0,outsidePress:i=!0,outsidePressEvent:a=`sloppy`,referencePress:o=yi,bubbles:c,externalTree:l}=t,u=e.useState(`open`),d=e.useState(`floatingElement`),{dataRef:f,events:p}=e.context,m=ai(l),h=Y(typeof i==`function`?i:()=>!1),g=typeof i==`function`?h:i,_=g!==!1,v=Y(()=>a),{escapeKey:y,outsidePress:b}=bi(c),x=s.useRef(!1),S=s.useRef(!1),C=s.useRef(!1),w=s.useRef(!1),T=s.useRef(!1),E=s.useRef(``),D=s.useRef(null),O=en(),k=en(),A=en(),j=Y(()=>{k.clear(),f.current.insideReactTree=!1}),M=Y(e=>{let t=f.current.floatingContext?.nodeId;return(m?Or(m.nodesRef.current,t):[]).some(t=>t.context?.open&&!t.context.dataRef.current[e])}),N=Y(t=>Nn(t,e.select(`floatingElement`))||Nn(t,e.select(`domReferenceElement`))),P=Y(t=>{o()&&e.setOpen(!1,wt(Dt,t.nativeEvent))}),F=Y(t=>{if(!u||!n||!r||t.key!==`Escape`)return;let i=_n(t)?t.nativeEvent:t;if(T.current||i.isComposing||!y&&M(`__escapeKeyBubbles`))return;let a=wt(Ft,i);e.setOpen(!1,a),a.isCanceled||t.preventDefault(),!y&&!a.isPropagationAllowed&&t.stopPropagation()}),I=Y(()=>{f.current.insideReactTree=!0,k.start(0,j)}),L=Y(t=>{if(!u||!n||t.button!==0)return;let r=wn(t.nativeEvent);Q(e.select(`floatingElement`),r)&&(x.current||(x.current=!0,S.current=!1))}),R=Y(e=>{u&&n&&(e.defaultPrevented||e.nativeEvent.defaultPrevented)&&x.current&&(S.current=!0)});s.useEffect(()=>{function e(e){e.open||(w.current=!1)}return p.on(`openchange`,e),()=>{p.off(`openchange`,e)}},[p]),s.useEffect(()=>j,[j]),s.useEffect(()=>{if(!u||!n)return u||(w.current=!1,T.current=!1,E.current=``,D.current=null),j;f.current.__escapeKeyBubbles=y,f.current.__outsidePressBubbles=b;let t=new $t,i=Z(d);function a(){A.clear(),T.current=!0}function o(){T.current=!0,A.start(pn?5:0,()=>{T.current=!1})}function s(){C.current=!0,t.start(0,()=>{C.current=!1})}function c(){x.current=!1,S.current=!1}function l(){let e=E.current,t=e===`pen`||!e?`mouse`:e,n=v(),r=typeof n==`function`?n():n;return typeof r==`string`?r:r[t]}function p(e){let t=l();return t===`intentional`&&e.type!==`click`||t===`sloppy`&&e.type===`click`}function h(e){let t=f.current.floatingContext?.nodeId,n=m&&Or(m.nodesRef.current,t).some(t=>Nn(e,t.context?.elements.floating));return N(e)||n}function k(n){if(p(n)){n.type!==`click`&&!N(n)&&(t.clear(),C.current=!1),j();return}if(f.current.insideReactTree){j();return}let r=wn(n),i=`[${Ar(`inert`)}]`,a=tt(r)?r.getRootNode():null,o=Array.from((nt(a)?a:Z(e.select(`floatingElement`))).querySelectorAll(i)),s=e.context.triggerElements;if(r&&(s.hasElement(r)||s.hasMatchingElement(e=>Q(e,r))))return;let c=tt(r)?r:null;for(;c&&!ft(c);){let e=ht(c);if(ft(e)||!tt(e))break;c=e}if(!(o.length&&tt(r)&&!Pn(r)&&!Q(r,e.select(`floatingElement`))&&o.every(e=>!Q(c,e)))){if(q(r)&&!(`touches`in n)){let e=ft(r),t=pt(r),i=/auto|scroll/,a=e||i.test(t.overflowX),o=e||i.test(t.overflowY),s=a&&r.clientWidth>0&&r.scrollWidth>r.clientWidth,c=o&&r.clientHeight>0&&r.scrollHeight>r.clientHeight,l=t.direction===`rtl`,u=c&&(l?n.offsetX<=r.offsetWidth-r.clientWidth:n.offsetX>r.clientWidth),d=s&&n.offsetY>r.clientHeight;if(u||d)return}if(!h(n)){if(l()===`intentional`){if(n.detail!==0&&!vn(n)&&!w.current)return;if(C.current){t.clear(),C.current=!1;return}}typeof g==`function`&&!g(n)||M(`__outsidePressBubbles`)||(e.setOpen(!1,wt(At,n)),j())}}}function P(t){l()===`sloppy`&&t.pointerType!==`touch`&&e.select(`open`)&&n&&!N(t)&&k(t)}function I(t){if(l()!==`sloppy`||!e.select(`open`)||!n||N(t))return;let r=t.touches[0];r&&(D.current={startTime:Date.now(),startX:r.clientX,startY:r.clientY,dismissOnTouchEnd:!1,dismissOnMouseDown:!0},O.start(1e3,()=>{D.current&&(D.current.dismissOnTouchEnd=!1,D.current.dismissOnMouseDown=!1)}))}function L(e,t){let n=wn(e);if(!n)return;let r=$(n,e.type,()=>{t(e),r()})}function R(e){E.current=`touch`,L(e,I)}function z(e){O.clear(),e.type===`pointerdown`&&(e.button===0&&(w.current=!0),E.current=e.pointerType),(e.type!==`mousedown`||!D.current||D.current.dismissOnMouseDown)&&L(e,e=>{e.type===`pointerdown`?P(e):k(e)})}function B(e){if(e.type===`pointercancel`&&(w.current=!1),!x.current)return;let n=S.current;c(),l()===`intentional`&&(e.type===`pointercancel`?n&&s():h(e)||(n?s():(typeof g!=`function`||g(e))&&(t.clear(),C.current=!0,j())))}function ee(e){if(l()!==`sloppy`||!D.current||N(e))return;let t=e.touches[0];if(!t)return;let n=Math.abs(t.clientX-D.current.startX),r=Math.abs(t.clientY-D.current.startY),i=Math.sqrt(n*n+r*r);i>5&&(D.current.dismissOnTouchEnd=!0),i>10&&(k(e),O.clear(),D.current=null)}function te(e){L(e,ee)}function ne(e){l()===`sloppy`&&D.current&&!N(e)&&(D.current.dismissOnTouchEnd&&k(e),O.clear(),D.current=null)}function V(e){L(e,ne)}let re=Bn(r&&Bn($(i,`keydown`,F),$(i,`compositionstart`,a),$(i,`compositionend`,o)),_&&Bn($(i,`click`,z,!0),$(i,`pointerdown`,z,!0),$(i,`pointerup`,B,!0),$(i,`pointercancel`,B,!0),$(i,`mousedown`,z,!0),$(i,`mouseup`,B,!0),$(i,`touchstart`,R,{capture:!0,passive:!0}),$(i,`touchmove`,te,{capture:!0,passive:!0}),$(i,`touchend`,V,{capture:!0,passive:!0})));return()=>{re(),t.clear(),c(),C.current=!1}},[f,d,r,_,g,u,n,y,b,F,j,v,M,N,m,e,O,A]);let z=s.useMemo(()=>({onKeyDown:F,onPointerDown:P,onClick:P}),[F,P]),B=s.useMemo(()=>({onKeyDown:F,onPointerDown:R,onMouseDown:R,onClickCapture:I,onMouseDownCapture(e){I(),L(e)},onPointerDownCapture(e){I(),L(e)},onMouseUpCapture:I,onTouchEndCapture:I,onTouchMoveCapture:I}),[F,I,L,R]);return s.useMemo(()=>n?{reference:z,floating:B,trigger:z}:{},[n,z,B])}function Si(e){let{popupStore:t,treatPopupAsFloatingElement:n=!1,floatingRootContext:r,floatingId:i,nested:a,onOpenChange:o}=e,s=t.useState(`open`),c=t.useState(`activeTriggerElement`),l=t.useState(n?`popupElement`:`positionerElement`),u=o;return t.useSyncedValue(`floatingId`,i),X(()=>{let e={open:s,floatingId:i,referenceElement:c,floatingElement:l};tt(c)&&(e.domReferenceElement=c),r.state.positionReference===r.state.referenceElement&&(e.positionReference=c),r.update(e)},[s,i,c,l,r]),r.context.onOpenChange=u,r.context.nested=a,r}function Ci(e,t=!1,n=!1,r=!1){let[i,a]=s.useState(e&&t?`idle`:void 0),[o,c]=s.useState(e&&!r);return e&&!o&&(c(!0),a(`starting`)),!e&&o&&i!==`ending`&&!n&&a(`ending`),!e&&!o&&i===`ending`&&a(void 0),X(()=>{if(!e&&o&&i!==`ending`&&n){let e=Gn.request(()=>{a(`ending`)});return()=>{Gn.cancel(e)}}},[e,o,i,n]),X(()=>{if(!e||t||i===void 0)return;let n=Gn.request(()=>{a(void 0)});return()=>{Gn.cancel(n)}},[t,e,i]),X(()=>{if(!e||!t)return;e&&o&&i!==`idle`&&a(`starting`);let n=Gn.request(()=>{a(`idle`)});return()=>{Gn.cancel(n)}},[t,e,o,i]),{mounted:o,setMounted:c,transitionStatus:i}}function wi(e,t){return e.getAnimations(t).filter(e=>{let t=e.effect?.getTiming();return t?.duration!==1/0&&t?.iterations!==1/0})}var Ti=null;function Ei(e){if(!Ti){let e=[];Ti=e,queueMicrotask(()=>{Ti=null,V.flushSync(()=>{for(let t of e)t()})})}Ti.push(e)}function Di(e,t=!1,n=!1){let r=Kn();return Y((i,a=null)=>{r.cancel();let o=li(e);if(o==null)return;let s=o,c=()=>{n?Ei(()=>{a?.aborted||i()}):V.flushSync(i)};if(typeof s.getAnimations!=`function`||globalThis.BASE_UI_ANIMATIONS_DISABLED){i();return}function l(){Promise.all(wi(s).map(e=>e.finished.then(U))).then(()=>{a?.aborted||c()},()=>{a?.aborted||(wi(s).some(e=>e.pending||e.playState!==`finished`)?l():c())})}if(t){let e=je;if(!s.hasAttribute(e)){r.request(l);return}let t=new MutationObserver(()=>{s.hasAttribute(e)||(t.disconnect(),l())});t.observe(s,{attributes:!0,attributeFilter:[e]}),a?.addEventListener(`abort`,()=>t.disconnect(),{once:!0})}else r.request(l)})}function Oi(e){let{enabled:t=!0,open:n,ref:r,batch:i=!1,onComplete:a}=e,o=Y(a),c=Di(r,n,i);s.useEffect(()=>{if(!t)return;let e=new AbortController;return c(o,e.signal),()=>{e.abort()}},[t,n,o,c])}function ki(e){let{open:t,ref:n,preventUnmountOnClose:r,setPreventUnmountOnClose:i,onUnmount:a,animateInitialOpen:o}=e,c=Y(i),{mounted:l,setMounted:u,transitionStatus:d}=Ci(t,!1,!1,o),f=!t&&r;X(()=>{t&&c(!1)},[t,c]);let p=s.useRef(l),m=s.useRef(!1),h=Gt(),g=()=>{p.current=!1,u(!1),a()};X(()=>{p.current=l,m.current&&(m.current=!1,!t&&l&&g())});let _=Y(()=>{p.current&&(t?(m.current=!0,h()):g())});return Oi({enabled:l&&!t&&!f,open:t,ref:n,onComplete(){t||_()}}),{mounted:l,transitionStatus:d,preventUnmountingOnClose:f,forceUnmount:_}}var Ai={tabIndex:-1,[Tn]:``};function ji(e){return t=>t!==`touch`||e.current}function Mi(e,t=!1){let n=Yt(),r=ii()!=null,i=L(()=>e(n,r)).current;return Si({popupStore:i,treatPopupAsFloatingElement:t,floatingRootContext:i.state.floatingRootContext,floatingId:n,nested:r,onOpenChange:i.setOpen}),i}function Ni({handle:e,store:t}){return X(()=>e.attachStore(t),[e,t]),null}function Pi(e){let t=e.context.triggerElements.size;e.select(`open`)&&e.state.triggerCount!==t&&e.set(`triggerCount`,t)}function Fi(e,t){let n=s.useRef(null);return Y(r=>{let i=n.current;if(i!==null){if(i.element===r&&i.store===t&&i.id===e)return;n.current=null;let a=i.store;a.context.triggerElements.getById(i.id)===i.element&&(a.context.triggerElements.delete(i.id),Pi(a))}r!==null&&e!==void 0&&(n.current={store:t,id:e,element:r},t.context.triggerElements.add(e,r),Pi(t))})}function Ii(e,t,n,r=!1){let i=e.preventUnmountingOnClose;t?i=!1:r&&(i=!0);let a=n?.id??null,o=e.activeTriggerId,s=e.activeTriggerElement;return(a||t)&&(o=a,s=n??null),{open:t,preventUnmountingOnClose:i,activeTriggerId:o,activeTriggerElement:s,openedWithoutTrigger:t?n==null:e.openedWithoutTrigger}}function Li(e){let t=!1;return e.preventUnmountOnClose=()=>{t=!0},()=>t}function Ri(e,t,n,r){let i=n.useState(`isMountedByTrigger`,e),a=Fi(e,n),o=Y(t=>{let i=n.select(`open`),a=n.select(`activeTriggerId`);if(a===e){let e={activeTriggerElement:t,...i?r:null};n.update(e)}else if(a==null&&i&&!n.state.openedWithoutTrigger){let i={activeTriggerId:e??null,activeTriggerElement:t,...r};n.update(i)}}),s=Y(e=>{a(e),e&&o(e)});return X(()=>(s(t.current),()=>s(null)),[s,t,n,e]),X(()=>{if(i){let e={activeTriggerElement:t.current,...r};n.update(e)}},[i,n,t,...Object.values(r)]),{registerTrigger:s,isMountedByThisTrigger:i}}function zi(e,t={}){let{closeOnActiveTriggerUnmount:n=!1}=t,r=s.useRef(null),i=e.useState(`open`);X(()=>{if(!i){r.current=null,e.state.triggerCount!==0&&e.set(`triggerCount`,0),e.state.openedWithoutTrigger&&e.set(`openedWithoutTrigger`,!1);return}let t=e.context.triggerElements.size,a={};e.state.triggerCount!==t&&(a.triggerCount=t);let o=e.select(`activeTriggerId`),s=null;if(o){let t=e.context.triggerElements.getById(o);if(t)r.current=o,t!==e.state.activeTriggerElement&&(a.activeTriggerElement=t);else{for(let[t,n]of e.context.triggerElements.entries())if(n===e.state.activeTriggerElement){a.activeTriggerId=t,a.activeTriggerElement=n,r.current=t;break}a.activeTriggerId===void 0&&(r.current===o?s=o:r.current=null)}}else r.current=null;if(!s&&!o&&!e.state.openedWithoutTrigger&&t===1){let t=e.context.triggerElements.entries().next();if(!t.done){let[e,n]=t.value;a.activeTriggerId=e,a.activeTriggerElement=n,r.current=e}}(a.triggerCount!==void 0||a.activeTriggerId!==void 0||a.activeTriggerElement!==void 0)&&e.update(a),s&&n&&queueMicrotask(()=>{if(e.select(`open`)&&e.select(`activeTriggerId`)===s&&!e.context.triggerElements.getById(s)){let t=wt(Et);e.setOpen(!1,t),t.isCanceled||e.update({activeTriggerId:null,activeTriggerElement:null})}})},[i,e,e.useState(`triggerCount`),e.useState(`activeTriggerId`),e.useState(`activeTriggerElement`),n])}function Bi(e,t,n,r){let{mounted:i,transitionStatus:a,forceUnmount:o}=ki({open:e,ref:t.context.popupRef,preventUnmountOnClose:t.useState(`preventUnmountingOnClose`),setPreventUnmountOnClose:e=>t.set(`preventUnmountingOnClose`,e),animateInitialOpen:r,onUnmount(){t.update({activeTriggerId:null,activeTriggerElement:null,mounted:!1,preventUnmountingOnClose:!1}),n?.(),t.context.onOpenChangeComplete?.(!1)}});return L(()=>(t.set(`mounted`,i),null)),t.useSyncedValues({mounted:i,transitionStatus:a}),{forceUnmount:o,transitionStatus:a}}function Vi(e,t){e.useSyncedValues(t),X(()=>()=>{e.update({activeTriggerProps:W,inactiveTriggerProps:W,popupProps:W})},[e])}function Hi(e,t){X(()=>{!t&&e.state.openMethod!==null&&e.set(`openMethod`,null)},[t,e]),X(()=>()=>{e.state.openMethod!==null&&e.set(`openMethod`,null)},[e])}var Ui=class{idMap=new Map;add(e,t){this.idMap.set(e,t)}delete(e){this.idMap.delete(e)}hasElement(e){for(let t of this.idMap.values())if(t===e)return!0;return!1}hasMatchingElement(e){for(let t of this.idMap.values())if(e(t))return!0;return!1}getById(e){return this.idMap.get(e)}entries(){return this.idMap.entries()}elements(){return this.idMap.values()}get size(){return this.idMap.size}},Wi=i(),Gi=[],Ki=void 0;function qi(){return Ki}function Ji(e){Gi.push(e)}function Yi(e){let t=(t,n)=>{let r=L(Zi).current,i;try{Ki=r;for(let e of Gi)e.before(r);i=e(t,n);for(let e of Gi)e.after(r);r.didInitialize=!0}finally{Ki=void 0}return i};return t.displayName=e.displayName||e.name,t}function Xi(e){return s.forwardRef(Yi(e))}function Zi(){return{didInitialize:!1}}var Qi=ie(19)?ta:na;function $i(e,t,n,r,i){return Qi(e,t,n,r,i)}function ea(e,t,n,r,i){let a=s.useCallback(()=>t(e.getSnapshot(),n,r,i),[e,t,n,r,i]);return(0,s.useSyncExternalStore)(e.subscribe,a,a)}Ji({before(e){e.syncIndex=0,e.didInitialize||(e.syncTick=1,e.syncHooks=[],e.didChangeStore=!0,e.getSnapshot=()=>{let t=!1;for(let n=0;n<e.syncHooks.length;n+=1){let r=e.syncHooks[n],i=r.selector(r.store.state,r.a1,r.a2,r.a3);Object.is(r.value,i)||(t=!0,r.value=i)}return t&&(e.syncTick+=1),e.syncTick})},after(e){e.syncHooks.length>0&&(e.didChangeStore&&(e.didChangeStore=!1,e.subscribe=t=>{let n=new Set;for(let t of e.syncHooks)n.add(t.store);let r=[];for(let e of n)r.push(e.subscribe(t));return()=>{for(let e of r)e()}}),(0,s.useSyncExternalStore)(e.subscribe,e.getSnapshot,e.getSnapshot))}});function ta(e,t,n,r,i){let a=qi();if(!a)return ea(e,t,n,r,i);let o=a.syncIndex;a.syncIndex+=1;let s;return a.didInitialize?(s=a.syncHooks[o],s.store===e&&s.selector===t&&Object.is(s.a1,n)&&Object.is(s.a2,r)&&Object.is(s.a3,i)||(s.store!==e&&(a.didChangeStore=!0),s.store=e,s.selector=t,s.a1=n,s.a2=r,s.a3=i,s.value=t(e.getSnapshot(),n,r,i))):(s={store:e,selector:t,a1:n,a2:r,a3:i,value:t(e.getSnapshot(),n,r,i)},a.syncHooks.push(s)),s.value}function na(e,t,n,r,i){return(0,Wi.useSyncExternalStoreWithSelector)(e.subscribe,e.getSnapshot,e.getSnapshot,e=>t(e,n,r,i))}var ra=class{static create(e){return new this(e)}constructor(e){this.state=e,this.listeners=new Set,this.updateTick=0}subscribe=e=>(this.listeners.add(e),()=>{this.listeners.delete(e)});getSnapshot=()=>this.state;setState(e){if(this.state===e)return;this.state=e,this.updateTick+=1;let t=this.updateTick;for(let n of this.listeners){if(t!==this.updateTick)return;n(e)}}update(e){for(let t in e)if(!Object.is(this.state[t],e[t])){this.setState({...this.state,...e});return}}set(e,t){Object.is(this.state[e],t)||this.setState({...this.state,[e]:t})}notifyAll(){let e={...this.state};this.setState(e)}use(e,t,n,r){return $i(this,e,t,n,r)}},ia=class extends ra{constructor(e,t={},n){super(e),this.context=t,this.selectors=n}useSyncedValue(e,t){s.useDebugValue(e);let n=this;X(()=>{n.state[e]!==t&&n.set(e,t)},[n,e,t])}useSyncedValueWithCleanup(e,t){let n=this;X(()=>(n.state[e]!==t&&n.set(e,t),()=>{n.set(e,void 0)}),[n,e,t])}useSyncedValues(e){let t=this;X(()=>{t.update(e)},[t,...Object.values(e)])}useControlledProp(e,t){s.useDebugValue(e);let n=this,r=t!==void 0;X(()=>{r&&!Object.is(n.state[e],t)&&n.setState({...n.state,[e]:t})},[n,e,t,r])}select(e,t,n,r){let i=this.selectors[e];return i(this.state,t,n,r)}useState(e,t,n,r){return s.useDebugValue(e),$i(this,this.selectors[e],t,n,r)}useContextCallback(e,t){s.useDebugValue(e);let n=Y(t??U);this.context[e]=n}useStateSetter(e){let t=s.useRef(void 0);return t.current===void 0&&(t.current=t=>{this.set(e,t)}),t.current}observe(e,t){let n;n=typeof e==`function`?e:this.selectors[e];let r=n(this.state);return t(r,r,this),this.subscribe(e=>{let i=n(e);if(!Object.is(r,i)){let e=r;r=i,t(i,e,this)}})}},aa={open:e=>e.open,transitionStatus:e=>e.transitionStatus,domReferenceElement:e=>e.domReferenceElement,referenceElement:e=>e.positionReference??e.referenceElement,floatingElement:e=>e.floatingElement,floatingId:e=>e.floatingId},oa=class extends ia{constructor(e){let{syncOnly:t,nested:n,onOpenChange:r,triggerElements:i,...a}=e;super({...a,positionReference:a.referenceElement,domReferenceElement:a.referenceElement},{onOpenChange:r,dataRef:{current:{}},events:ei(),nested:n,triggerElements:i},aa),this.syncOnly=t}syncOpenEvent=(e,t)=>{(!e||!this.state.open||t!=null&&xn(t))&&(this.context.dataRef.current.openEvent=e?t:void 0)};dispatchOpenChange=(e,t)=>{this.syncOpenEvent(e,t.event);let n={open:e,reason:t.reason,nativeEvent:t.event,nested:this.context.nested,triggerElement:t.trigger};this.context.events.emit(`openchange`,n)};setOpen=(e,t)=>{this.syncOnly||this.dispatchOpenChange(e,t),this.context.onOpenChange?.(e,t)}};function sa(e,t,n=!1){return{open:!1,openProp:void 0,mounted:!1,transitionStatus:void 0,floatingRootContext:new oa({open:!1,transitionStatus:void 0,floatingElement:null,referenceElement:null,triggerElements:e,floatingId:t,syncOnly:!0,nested:n,onOpenChange:void 0}),floatingId:t,triggerCount:0,preventUnmountingOnClose:!1,payload:void 0,activeTriggerId:null,activeTriggerElement:null,openedWithoutTrigger:!1,triggerIdProp:void 0,popupElement:null,positionerElement:null,activeTriggerProps:W,inactiveTriggerProps:W,popupProps:W}}var ca=e=>e.triggerIdProp??e.activeTriggerId,la=e=>e.openProp??e.open,ua=e=>(e.popupElement?.id??e.floatingId)||void 0;function da(e,t){return t!==void 0&&la(e)&&ca(e)===t}function fa(e,t){return da(e,t)?!0:t!==void 0&&la(e)&&ca(e)==null&&!e.openedWithoutTrigger&&e.triggerCount===1}var pa={open:la,mounted:e=>e.mounted,transitionStatus:e=>la(e)&&!e.mounted?`starting`:e.transitionStatus,floatingRootContext:e=>e.floatingRootContext,triggerCount:e=>e.triggerCount,preventUnmountingOnClose:e=>e.preventUnmountingOnClose,payload:e=>e.payload,activeTriggerId:ca,activeTriggerElement:e=>e.mounted?e.activeTriggerElement:null,popupId:ua,isTriggerActive:(e,t)=>t!==void 0&&ca(e)===t,isOpenedByTrigger:(e,t)=>da(e,t),isMountedByTrigger:(e,t)=>t!==void 0&&ca(e)===t&&e.mounted,triggerProps:(e,t)=>t?e.activeTriggerProps:e.inactiveTriggerProps,triggerPopupId:(e,t)=>fa(e,t)?ua(e):void 0,popupProps:e=>e.popupProps,popupElement:e=>e.popupElement,positionerElement:e=>e.positionerElement},ma=`ArrowUp`,ha=`ArrowDown`,ga=`ArrowLeft`,_a=`ArrowRight`,va=`Home`,ya=new Set([ma,ha,ga,_a,va,`End`]),ba=[`Shift`,`Control`,`Alt`,`Meta`];function xa(e){return q(e)&&e.tagName===`INPUT`}function Sa(e){return!!(xa(e)&&e.selectionStart!=null||q(e)&&e.tagName===`TEXTAREA`)}function Ca(e,t,n,r){if(!e||!t||!t.scrollTo)return;let i=e.scrollLeft,a=e.scrollTop,o=e.clientWidth<e.scrollWidth,s=e.clientHeight<e.scrollHeight;if(o&&r!==`vertical`){let r=wa(e,t,`left`),a=Ta(e),o=Ta(t);n===`ltr`&&(r+t.offsetWidth+o.scrollMarginRight>e.scrollLeft+e.clientWidth-a.scrollPaddingRight?i=r+t.offsetWidth+o.scrollMarginRight-e.clientWidth+a.scrollPaddingRight:r-o.scrollMarginLeft<e.scrollLeft+a.scrollPaddingLeft&&(i=r-o.scrollMarginLeft-a.scrollPaddingLeft)),n===`rtl`&&(r-o.scrollMarginLeft<e.scrollLeft+a.scrollPaddingLeft?i=r-o.scrollMarginLeft-a.scrollPaddingLeft:r+t.offsetWidth+o.scrollMarginRight>e.scrollLeft+e.clientWidth-a.scrollPaddingRight&&(i=r+t.offsetWidth+o.scrollMarginRight-e.clientWidth+a.scrollPaddingRight))}if(s&&r!==`horizontal`){let n=wa(e,t,`top`),r=Ta(e),i=Ta(t);n-i.scrollMarginTop<e.scrollTop+r.scrollPaddingTop?a=n-i.scrollMarginTop-r.scrollPaddingTop:n+t.offsetHeight+i.scrollMarginBottom>e.scrollTop+e.clientHeight-r.scrollPaddingBottom&&(a=n+t.offsetHeight+i.scrollMarginBottom-e.clientHeight+r.scrollPaddingBottom)}e.scrollTo({left:i,top:a,behavior:`auto`})}function wa(e,t,n){let r=n===`left`?`offsetLeft`:`offsetTop`,i=0;for(;t.offsetParent&&(i+=t[r],t.offsetParent!==e);)t=t.offsetParent;return i}function Ta(e){let t=getComputedStyle(e);return{scrollMarginTop:parseFloat(t.scrollMarginTop)||0,scrollMarginRight:parseFloat(t.scrollMarginRight)||0,scrollMarginBottom:parseFloat(t.scrollMarginBottom)||0,scrollMarginLeft:parseFloat(t.scrollMarginLeft)||0,scrollPaddingTop:parseFloat(t.scrollPaddingTop)||0,scrollPaddingRight:parseFloat(t.scrollPaddingRight)||0,scrollPaddingBottom:parseFloat(t.scrollPaddingBottom)||0,scrollPaddingLeft:parseFloat(t.scrollPaddingLeft)||0}}function Ea(e){return ie(19)?e:e?`true`:void 0}var Da=s.forwardRef(function(e,t){let{cutout:n,...r}=e,i;if(n){let e=n.getBoundingClientRect();i=`polygon(0% 0%,100% 0%,100% 100%,0% 100%,0% 0%,${e.left}px ${e.top}px,${e.left}px ${e.bottom}px,${e.right}px ${e.bottom}px,${e.right}px ${e.top}px,${e.left}px ${e.top}px)`}return(0,c.jsx)(`div`,{ref:t,role:`presentation`,"data-base-ui-inert":``,...r,style:{position:`fixed`,inset:0,userSelect:`none`,WebkitUserSelect:`none`,clipPath:i}})}),Oa={},ka={},Aa=``;function ja(e,t){return rt(e)?e:t}function Ma(e,t,n){return/hidden|clip/.test(e.getComputedStyle(ja(t,n)).overflowY)}function Na(e){if(typeof document>`u`)return!1;let t=Z(e);return K(t).innerWidth-t.documentElement.clientWidth>0}function Pa(e){if(!(typeof CSS<`u`&&CSS.supports&&CSS.supports(`scrollbar-gutter`,`stable`))||typeof document>`u`)return!1;let t=Z(e),n=t.documentElement,r=t.body,i=ja(n,r),a=i.style.overflowY,o=n.style.scrollbarGutter;n.style.scrollbarGutter=`stable`,i.style.overflowY=`scroll`;let s=i.offsetWidth;i.style.overflowY=`hidden`;let c=i.offsetWidth;return i.style.overflowY=a,n.style.scrollbarGutter=o,s===c}function Fa(e){let t=Z(e),n=t.documentElement,r=t.body,i=ja(n,r),a={overflowY:i.style.overflowY,overflowX:i.style.overflowX};return Object.assign(i.style,{overflowY:`hidden`,overflowX:`hidden`}),()=>{Object.assign(i.style,a)}}function Ia(e){let t=Z(e),n=t.documentElement,r=t.body,i=K(n),a=0,o=0,s=!1,c=Gn.create();if(pn&&(i.visualViewport?.scale??1)!==1)return()=>{};function l(){let t=i.getComputedStyle(n),c=i.getComputedStyle(r),l=(t.scrollbarGutter||``).includes(`both-edges`)?`stable both-edges`:`stable`;a=n.scrollTop,o=n.scrollLeft,Oa={scrollbarGutter:n.style.scrollbarGutter,overflowY:n.style.overflowY,overflowX:n.style.overflowX},Aa=n.style.scrollBehavior,ka={position:r.style.position,height:r.style.height,width:r.style.width,boxSizing:r.style.boxSizing,overflowY:r.style.overflowY,overflowX:r.style.overflowX,scrollBehavior:r.style.scrollBehavior};let u=n.scrollHeight>n.clientHeight,d=n.scrollWidth>n.clientWidth,f=t.overflowY===`scroll`||c.overflowY===`scroll`,p=t.overflowX===`scroll`||c.overflowX===`scroll`,m=Math.max(0,i.innerWidth-r.clientWidth),h=Math.max(0,i.innerHeight-r.clientHeight),g=parseFloat(c.marginTop)+parseFloat(c.marginBottom),_=parseFloat(c.marginLeft)+parseFloat(c.marginRight),v=ja(n,r);s=Pa(e),s?(n.style.scrollbarGutter=l,v.style.overflowY=`hidden`,v.style.overflowX=`hidden`):(Object.assign(n.style,{scrollbarGutter:l,overflowY:`hidden`,overflowX:`hidden`}),(u||f)&&(n.style.overflowY=`scroll`),(d||p)&&(n.style.overflowX=`scroll`),Object.assign(r.style,{position:`relative`,height:g||h?`calc(100dvh - ${g+h}px)`:`100dvh`,width:_||m?`calc(100vw - ${_+m}px)`:`100vw`,boxSizing:`border-box`,overflowY:`hidden`,overflowX:`hidden`,scrollBehavior:`unset`}),r.scrollTop=a,r.scrollLeft=o,n.setAttribute(`data-base-ui-scroll-locked`,``),n.style.scrollBehavior=`unset`)}function u(){Object.assign(n.style,Oa),Object.assign(r.style,ka),s||(n.scrollTop=a,n.scrollLeft=o,n.removeAttribute(`data-base-ui-scroll-locked`),n.style.scrollBehavior=Aa)}function d(){u(),c.request(l)}l();let f=$(i,`resize`,d);return()=>{c.cancel(),u(),typeof i.removeEventListener==`function`&&f()}}var La=new class{lockCount=0;restore=null;timeoutLock=$t.create();timeoutUnlock=$t.create();acquire(e){return this.lockCount+=1,this.lockCount===1&&this.restore===null&&this.timeoutLock.start(0,()=>this.lock(e)),this.release}release=()=>{--this.lockCount,this.lockCount===0&&this.restore&&this.timeoutUnlock.start(0,this.unlock)};unlock=()=>{this.lockCount===0&&this.restore&&(this.restore?.(),this.restore=null)};lock(e){if(this.lockCount===0||this.restore!==null)return;let t=Z(e),n=t.documentElement,r=t.body,i=K(n);if(Ma(i,n,r)){let t=new i.MutationObserver(()=>{Ma(i,n,r)||(t.disconnect(),this.restore=null,this.lock(e))}),a={attributes:!0};t.observe(n,a),t.observe(r,a),this.restore=()=>t.disconnect();return}let a=cn||!Na(e);this.restore=a?Fa(e):Ia(e)}};function Ra(e=!0,t=null){X(()=>{if(e)return La.acquire(t)},[e,t])}var za=class extends ia{setState(e){}update(e){}set(e,t){}notifyAll(){}},Ba={...pa,modal:e=>e.modal,nested:e=>e.nested,nestedOpenDialogCount:e=>e.nestedOpenDialogCount,nestedOpenDrawerCount:e=>e.nestedOpenDrawerCount,disablePointerDismissal:e=>e.disablePointerDismissal,openMethod:e=>e.openMethod,descriptionElementId:e=>e.descriptionElementId,titleElementId:e=>e.titleElementId,viewportElement:e=>e.viewportElement,role:e=>e.role},Va=class extends ia{constructor(e,t,n){let r=new Ui,i=Ua(e,r,t,n);super(i,Wa(r),Ba)}setOpen=(e,t)=>{t.preventUnmountOnClose=()=>{this.set(`preventUnmountingOnClose`,!0)},!e&&t.trigger==null&&this.state.activeTriggerId!=null&&(t.trigger=this.state.activeTriggerElement??void 0),this.context.onOpenChange?.(e,t),!t.isCanceled&&(this.state.floatingRootContext.dispatchOpenChange(e,t),this.update(Ii(this.state,e,t.trigger)))}};function Ha(){let e=new Ui;return new za(Object.freeze(Ua(void 0,e)),Object.freeze(Wa(e)),Ba)}function Ua(e,t,n,r=!1){return{...sa(t,n,r),modal:!0,disablePointerDismissal:!1,viewportElement:null,descriptionElementId:void 0,titleElementId:void 0,openMethod:null,nested:!1,nestedOpenDialogCount:0,nestedOpenDrawerCount:0,role:`dialog`,...e}}function Wa(e){return{popupRef:s.createRef(),backdropRef:s.createRef(),internalBackdropRef:s.createRef(),outsidePressEnabledRef:{current:!0},triggerElements:e,onOpenChange:void 0,onOpenChangeComplete:void 0}}var Ga=48,Ka=(e,t=0)=>{let n=new Int32Array(e.length);for(let r=0;r<e.length;r++)n[r]=e.charCodeAt(r)-Ga-t;return n},qa=e=>{let t=new Int32Array(e.length+1);for(let n=0;n<e.length;n++)t[n+1]=t[n]+e[n];return t},Ja=e=>{let t=new Int32Array(e.length),n=0;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r)-Ga;n+=i>>>1^-(i&1),t[r]=n}return t},Ya=384,Xa=[],Za=qa(Ka(`E0500002005282000000002000150000020021820000011200000003022202000300004200120000200420001200021200301200010400162000010000220021010:2192001200220012000220012000200200200400010200040000000000400200108200110100000022010313000162002000020020012020080213000228200000000082000000000120002000120020020040101020300130001001010`)),Qa=qa(Ka(`:11111111211111119311546544411119731869:671397415686432441111111111161114151214313433415:78311132233313187211117221449443411141111151152226611131111112212518142224214215421421542142424242516171151615616347111111111197911327451111111111111111111113134714133513411111311111111111111111111112444411111342312715245411117:3`)),$a=`@containerabcdefghinlmoprstunderlineviawzccentlignnimatespectuto-colsrowsaglorightnessckdrop-sisbcontrastfiltergrayscalehue-rotateinvertopacityslurrightnessaturateepia-coniclinearpositionradialsizeockurrderttom-belrstxyespacing-xyaretoursorlnt-umnsendspantartainentrasteividerop-shadowurationcorationlay-xyasendillexontromlter-featuresstretchapr-xyayscaleidow-colsrowsue-rotatedentlinesetvert-beringsxyeshadoweiadingftnest-clamp-imageabein-lrstxyskx--b-coniclpositionrsizet-x-y-fromto-fromto-inearfromto-fromto-adialfromto-fromtofromtofromtofromtoblockhinlinew-screenesblockhinlinewbjectpacityrutlinederigin-offsetbelrstxyesrspective-originaceholderioghtng-offsettateundedw-xyz-belrstlreseslr-endspantartaturatecepiahizekewpace-taleroll-xyz-barmpbelrstxyesbelrstxyes-thumbrackadowrink-xyxyartrokeabextora-shadowpckingnsformitionlate-xyz-offsetill-changeoom`,eo=(()=>{let e=Za.length-1,t=new Int32Array(e);for(let n=e-1;n>=0;n--){let e=1,r=n+1;for(let i=Za[n];i<Za[n+1];i++)e+=t[r],r+=t[r];t[n]=e}let n=new Int32Array(Za[e]),r=0;for(let i=0;i<e;i++){let e=i+1;for(let a=Za[i];a<Za[i+1];a++)n[r++]=e,e+=t[e]}return n})(),to=Ka(`02000000000000900<=0?000B000F00F00ŏI0J0LNPRTVX0000]_a00000000000000000000000rst0000000zŏ00000000000
ŏ0000000ŏ00000000000000000000000000000000000000000000000000000000000000Ë000000000000000000000Þ000000000000000000ð0000000ø0ùúûüýþÿĀāĂ㥹Ć000000000000000000000000000000000000000000ħ0ĨĪ00000000000000000000ļĽ00000Ŭ000000`,1),no=qa(Ka(`123333359346463635126536711576`)),ro=Ka(`93203242332583253248325D>E?F@03263243255B:032523853:0325B:8GA032542H<C=12727B:0328432553;D>E?3257D>032585:0325B:;0328B:032`),io=Ka(`012113445661666666789111:5;;;;;;;;444;;;:62999<1161=62>>?61:21@ABCD4446996:64E:::;:?::64:F114GHHIHHHHIHH1HH1HH1HHHHHH::EEJ4444::EE4444441691;644444114244444:;K6666555555555555555999666664444444444444444444444226?6:66644L9M?D:111::::6DE199`),ao=Ja(`020200202020020020020020020020200200200200200200200002020202001003040106000200200200200200200200200200200200200200200200200200200200200200200200200200200200020020020020020020002020200202002002002002002002002002002020002002020020200220200200200200200200200200200200020020020000200020002000200200200020020020002000200200200020020202002020202000200200020022000200200020020002002000200220002002000200W0Z00020020002002020002002000200g0j0002002000200200020020002002000200200020020002000200002000002002002002002000200020000200002002002002002002002020020020200200200200200200200200202020020020020020020020020002002002020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020020002002002002002002000200200200200200200200200200020202020002000200020002002002002000020200200`),oo=(()=>{let e=new Int32Array(319).fill(-1),t=Ja(`02422242:222222242224222242442222222422222244442242226224222426222422442462222422622222222626222462242622422622422424242422222222422222222242422222222222222222622442224222222222222224424442262222222222222222222226224222424242422224422422422222`),n=Ja(`02222222222222222222202222222222222222222222221422222222222222222222222222222222222Y\\222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222221422222222222222222222222222222222222222Ŀł222222222222222222`);for(let r=0;r<t.length;r++)e[t[r]]=n[r];return e})(),so=`container |break-after- all auto avoid avoid-page column left page right|break-before- all auto avoid avoid-page column left page right|break-inside-a uto void void-column void-page|box-decoration- clone slice|box- border content| contents flow-root hidden table table-caption table-cell table-column table-column-group table-footer-group table-header-group table-row table-row-group| not-sr-only sr-only|float- end left none right start|clear- both end left none right start|isolat e ion-auto|overflow- auto clip hidden scroll visible|overflow-x- auto clip hidden scroll visible|overflow-y- auto clip hidden scroll visible|overscroll- auto contain none|overscroll-x- auto contain none|overscroll-y- auto contain none| absolute fixed relative static sticky| collapse invisible visible|justify- around baseline between center center-safe end end-safe evenly normal start stretch|justify-items- center center-safe end end-safe normal start stretch|justify-self- auto center center-safe end end-safe start stretch|items- baseline baseline-last center center-safe end end-safe start stretch|self- auto baseline baseline-last center center-safe end end-safe start stretch|place-content- around baseline between center center-safe end end-safe evenly start stretch|place-items- baseline center center-safe end end-safe start stretch|place-self- auto center center-safe end end-safe start stretch| antialiased subpixel-antialiased| italic not-italic|normal-nums |ordinal |slashed-zero | lining-nums oldstyle-nums| proportional-nums tabular-nums| diagonal-fractions stacked-fractions| no-underline overline| capitalize lowercase normal-case uppercase|truncate |whitespace- break-spaces normal nowrap pre pre-line pre-wrap|break- all keep normal words|wrap- anywhere break-word normal|hyphens- auto manual none|mix-blend- color color-burn color-dodge darken difference exclusion hard-light hue lighten luminosity multiply normal overlay plus-darker plus-lighter saturation screen soft-light|table- auto fixed|caption- bottom top|backface- hidden visible|appearance- auto none|scheme- dark light light-dark normal only-dark only-light|field-sizing- content fixed|pointer-events- auto none|resize -none -x -y|snap- align-none center end start|snap- always normal|snap- both none x y|snap- mandatory proximity|touch- auto manipulation none|touch-pan- left right x|touch-pan- down up y|touch-pinch-zoom |select- all auto none text|forced-color-adjust- auto none| normal size| baseline bottom middle sub super text-bottom text-top top| bounce none ping pulse spin| auto square video| auto fr max min px|none | auto full px| fixed local scroll|clip- border content padding text|origin- border content padding| bottom bottom-left bottom-right center left left-bottom left-top right right-bottom right-top top top-left top-right| no-repeat repeat repeat-round repeat-space repeat-x repeat-y| auto contain cover|blend- color color-burn color-dodge darken difference exclusion hard-light hue lighten luminosity multiply normal overlay saturation screen soft-light|to- b bl br l r t tl tr| auto dvh fit full lh lvh max min px screen svh| dashed dotted double hidden none solid| collapse separate|px |auto |full | content none strict| inline-size size|layout |paint |style | around baseline between center center-safe end end-safe evenly normal start stretch| alias all-scroll auto cell col-resize context-menu copy crosshair default e-resize ew-resize grab grabbing help move n-resize ne-resize nesw-resize no-drop none not-allowed ns-resize nw-resize nwse-resize pointer progress row-resize s-resize se-resize sw-resize text vertical-text w-resize wait zoom-in zoom-out| dashed dotted double solid wavy| auto from-font|reverse |initial | in in-out initial linear out| col col-reverse row row-reverse| nowrap wrap wrap-reverse| auto initial none| black bold extrabold extralight light medium normal semibold thin| condensed expanded extra-condensed extra-expanded normal semi-condensed semi-expanded ultra-condensed ultra-expanded|flow- col col-dense dense row row-dense| none subgrid| auto dvh dvw fit full lh lvh lvw max min px screen svh svw| block flex grid table| auto dvw fit full lvw max min px screen svw| loose none normal px relaxed snug tight|through |item | inside outside| decimal disc none| auto px| clip-border clip-content clip-fill clip-padding clip-stroke clip-view no-clip| add exclude intersect subtract| alpha luminance match|origin- border content fill padding stroke view|type- alpha luminance| circle ellipse| closest-corner closest-side farthest-corner farthest-side|at- bottom bottom-left bottom-right center left left-bottom left-top right right-bottom right-top top top-left top-right| dvh fit full lh lvh max min none px screen svh| auto dvh dvw fit full lh lvh lvw max min none px screen svh svw| dvw fit full lvw max min none px screen svw| auto dvh dvw fit full lvh lvw max min none prose px svh svw| auto dvh dvw fit full lvh lvw max min none px screen svh svw| contain cover fill none scale-down| first last none| distant dramatic midrange near none normal|inset | full none|3d | auto smooth|gutter- auto both stable| auto none thin| inner none| auto dvh dvw fit full lvh lvw max min px svh svw|base | center end justify left right start| clip ellipsis| balance nowrap pretty wrap| normal tight tighter wide wider widest| cpu gpu none| 3d flat| all colors none opacity shadow transform| discrete normal| full px| auto dvh dvw fit full lvh lvw max min px screen svh svw| auto contents scroll transform`.split(`|`).map(e=>{let t=e.split(` `),n=t.shift();for(let e=0;e<t.length;e++)t[e]=n+t[e];return t}),co=Ja(`0000000000000000000000000000000000000000000000000000000000000262242:6@200000006:240B428:4422400002046044222426220026642642462026224222824220022400000000\\00N222422242222222224062242222222422226264222422222222222222442804222422222222222222222222220<4<0204260002444020204224422`),lo=Ja(`ɠ222222222222222222222222222222222222222222222222222222222222˕4222226>6ʰ22ʷʺʷʺʷ42ʴ2ʓ22>621422ɶ222ɹɼɷɺɷɺ22ɱ42222ɨ2ɧ26622ɘɓ244ƸƵ222]d24242ǖǓƚÄȫ2263ȨȥȨ2222222ǣ222222222222222222ǂƽ2ƾƵ2222222422222ƜƑ22222222222222222222144Ŧţ22Ţş222222222222222222222ĸ2ı68ĦģĦɡŰ4Ġ«®ĝ822ĔđĔ2ē2222622`),uo=Ja(`02222222222222222222222222222222222222222222222222222222222222222202021422222222CF2200GJ021042222WZ222IL0ad2c10h2222U00X202[^2w0000120zy|}22
:22z22222222222G000qOVI00000{2<40000@00000G¦§000ª00000000000000021K¬«00®000000000000000000000222HGH_1¸222½2¾2222ÇÊ000°2±`),fo=new Int32Array(987),po=new Int32Array(987),mo=new Int32Array(987),ho=``,go=new Int32Array(1022);{let e=new Map,t=0,n=0;for(let r=0;r<co.length;r++)for(let i of so[uo[r]]){let a=e.get(i);a===void 0&&(a=t++,e.set(i,a),go[a*2]=ho.length,go[a*2+1]=i.length,ho+=i),fo[n]=co[r],po[n]=lo[r],mo[n]=a,n++}}var _o=Ja(`0b2N:222@R>F@286¦2@H2D266226FB22B2>BD\\6N22222Z222D222p`),vo=qa(Ka(`1::24444432:442:44:44>222222:44:4421322511111311111114`)),yo=Ja(`24A;33N=C@H4A;33N=C@<27;83:;8393NQ:3NQʰ222ˉºŴŽ2R2=18cƴÅŇ=cĞÛC1ƈǝȈ:ħ25=11D3A@4=<1;1DEr25;11B3?<6;:371BCn9@7=<8192>2E121@9@EHE@9>2T25511<398454131<=V25511<398454131<=ƧNž2Đå242L222290000f22500ɛ000ǘ222`),bo=Ka(`ij`),xo=Ka(``),So=Ka(`1`),Co={GROUP_COUNT:Ya,customValidatorNames:Xa,edgeStart:Za,labelStart:Qa,labelText:$a,edgeTarget:eo,nodeGroup:to,nodeVlist:oo,vlistPat:no,vlistOps:ro,vlistRef:io,vlistGroup:ao,litAnchor:fo,litGroup:po,litPool:mo,poolOffsets:go,poolText:ho,adjGid:_o,adjStart:vo,adjTgt:yo,patGid:bo,patTgt:xo,postfixLookupGroups:So,orderSensitiveModifiers:`* ** after backdrop before details-content file first-letter first-line marker placeholder selection`},wo=`line`in Error(),To=-1,Eo=-1,Do=(e,t,n)=>{let r=2166136261;for(let i=t;i<n;i++)r=Math.imul(r^e.charCodeAt(i),16777619);return r},Oo=(e,t,n)=>{let r=n-t,i=Math.imul(r,2654435761)^e.charCodeAt(t);if(r>3){let a=r>>2,o=r>>1;i=Math.imul(i^e.charCodeAt(t+1)<<8^e.charCodeAt(t+2)<<16^e.charCodeAt(t+a),2246822507),i=Math.imul(i^e.charCodeAt(t+o)<<8^e.charCodeAt(t+o+a)<<16^e.charCodeAt(n-3),3266489909),i^=e.charCodeAt(n-2)<<8^e.charCodeAt(n-1)<<16;for(let r=t+3,a=n-4;r<t+8&&r<a;r++,a--)i=Math.imul(i^e.charCodeAt(r)^e.charCodeAt(a)<<8,16777619)}return i^i>>>15},ko=(e,t,n={})=>{let{GROUP_COUNT:r,edgeStart:i,labelStart:a,labelText:o,edgeTarget:s,nodeGroup:c,nodeVlist:l,vlistPat:u,vlistOps:d,vlistRef:f,vlistGroup:p,litAnchor:m,litGroup:h,litPool:g,poolOffsets:_,poolText:v,adjGid:y,adjStart:b,adjTgt:x,patGid:S,patTgt:C,postfixLookupGroups:w,customValidatorNames:T,orderSensitiveModifiers:E}=e,D=new Int32Array(r).fill(-1);for(let e=0;e<y.length;e++)D[y[e]]=e;let O=0;for(let e=0;e+1<b.length;e++){let t=b[e+1]-b[e];t>O&&(O=t)}let k=32;for(;k<2*(1+O+S.length);)k<<=1;let A=new Int32Array(f.length+1);for(let e=0;e<f.length;e++)A[e+1]=A[e]+u[f[e]+1]-u[f[e]];let j=new Uint8Array(r);for(let e=0;e<w.length;e++)j[w[e]]=1;let M=i.length-1,N=new Uint8Array(M),P=0,F=!0;for(let e=0;e<m.length;e++){N[m[e]]=1;let t=_[g[e]*2+1];t>P&&(P=t);let n=v.charCodeAt(_[g[e]*2]);(n===91||n===40)&&(F=!1)}let I=1;for(;I<m.length*2;)I<<=1;let L=new Int32Array(I).fill(-1);for(let e=0;e<m.length;e++){let t=_[g[e]*2],n=(Do(v,t,t+_[g[e]*2+1])^Math.imul(m[e],2654435761)|0)&I-1;for(;L[n]!==-1;)n=n+1&I-1;L[n]=e}let R=(e,t,n,r)=>{let i=(Do(t,n,r)^Math.imul(e,2654435761)|0)&I-1,a=r-n;for(;;){let r=L[i];if(r===-1)return-1;if(m[r]===e&&_[g[r]*2+1]===a){let e=_[g[r]*2],i=!0;for(let r=0;r<a;r++)if(v.charCodeAt(e+r)!==t.charCodeAt(n+r)){i=!1;break}if(i)return h[r]}i=i+1&I-1}},z=n.cacheSize??8192,B=n.prefix??e.prefix??``,ee=B===``?``:B+`:`,te=ee.length,ne=(T??[]).map(e=>{let n=t&&t[e];if(!n)throw Error(`cn: missing validator `+e);return n}),V=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,re=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,ie=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,ae=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,H=0,U=-1,oe=-1,W=-1,se=-1,ce=e=>e>=97&&e<=122||e>=65&&e<=90||e>=48&&e<=57||e===95,le=e=>/\s/.test(String.fromCharCode(e)),ue=(e,t,n)=>{if(H=0,U=-1,n-t<3)return;let r=e.charCodeAt(t),i=e.charCodeAt(n-1);if(r===91&&i===93)H=1;else if(r===40&&i===41)H=2;else return;W=t+1,se=n-1;let a=t+1;if(ce(e.charCodeAt(a))){for(a++;a<n-1;){let t=e.charCodeAt(a);if(!ce(t)&&t!==45)break;a++}a<n-2&&e.charCodeAt(a)===58&&(U=t+1,oe=a,W=a+1)}},de=(e,t,n,r)=>{if(n-t!==r.length)return!1;for(let n=0;n<r.length;n++)if(e.charCodeAt(t+n)!==r.charCodeAt(n))return!1;return!0},fe=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,pe=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,me=e=>!!e&&!Number.isNaN(Number(e)),he=(e,t,n)=>{if(n-t<11||!de(e,t,t+10,`@container`))return!1;if(e.charCodeAt(t+10)===47)return n-t>=12;let r=e.charCodeAt(t+11);return r===115&&n-t>=17&&de(e,t+10,t+16,`-size/`)||r===110&&n-t>=19&&de(e,t+10,t+18,`-normal/`)},ge=[1,1,1,1,1,1,1,1,2,2,2,2,2,2,2],_e=`length|number|number weight|family-name|position percentage|length size bg-size|image url|shadow|length|family-name|position percentage|length size bg-size|image url|shadow|number weight`.split(`|`).map(e=>e.split(` `)),ve=[2,3,1,0,0,0,4,5,0,0,0,0,0,1,1],ye=(e,t,n,r)=>{if(e>=10){if(e>=25)return ne[e-25](t.slice(n,r));let i=e-10;if(H!==ge[i])return!1;if(U>=0){for(let e of _e[i])if(de(t,U,oe,e))return!0;return!1}switch(ve[i]){case 0:return!1;case 1:return!0;case 2:{let e=t.slice(W,se);return V.test(e)&&!re.test(e)}case 3:return me(t.slice(W,se));case 4:return ae.test(t.slice(W,se));default:return ie.test(t.slice(W,se))}}switch(e){case 0:return!0;case 1:return H===0;case 2:return H===1;case 3:return H===2;case 4:return fe.test(t.slice(n,r));case 5:return me(t.slice(n,r));case 6:{let e=t.slice(n,r);return!!e&&Number.isInteger(Number(e))}case 7:return r>n&&t.charCodeAt(r-1)===37&&me(t.slice(n,r-1));case 8:return pe.test(t.slice(n,r));default:return he(t,n,r)}},be=new Set(typeof E==`string`?E.split(` `):E),xe=(e,t,n,r,i,a)=>{let o=Do(t,n,r)^(i?2654435769:0),s=e.get(o);if(s!==void 0)outer:for(let e=0;e<s.length;e++){let a=s[e];if(a.imp===i&&a.k.length===r-n){for(let e=0;e<a.k.length;e++)if(a.k.charCodeAt(e)!==t.charCodeAt(n+e))continue outer;return a.id}}else e.set(o,s=[]);let c=t.slice(n,r),l=a(c);return s.push({k:c,imp:i,id:l}),l},Se=new Map,Ce=new Map,we=2,Te=4096,Ee=(e,t)=>{let n=[],r=0,i=0,a=0;for(let t=0;t<e.length;t++){let o=e.charCodeAt(t);r===0&&i===0&&o===58?(n.push(e.slice(a,t)),a=t+1):o===91?r++:o===93?r--:o===40?i++:o===41&&i--}n.push(e.slice(a));let o=n[0];if(n.length>1){let e=[],t=[];for(let r of n)r.charCodeAt(0)===91||be.has(r)?(t.length&&(e.push(...t.sort()),t=[]),e.push(r)):t.push(r);t.length&&e.push(...t.sort()),o=e.join(`:`)}let s=t?o+` !`:o,c=Ce.get(s);return c===void 0&&Ce.set(s,c=we++),c},De=new Map,Oe=r,ke=r+4096,Ae=()=>Oe++,je=2097152,Me=8192,Ne=new Int32Array(Me),Pe=Array(Me).fill(null),Fe=new Int32Array(Me),Ie=new Int32Array(Me),Le=new Uint8Array(Me),Re=0,ze=(e,t,n,r,i,a,o,s)=>{let c=e;if(Pe[e]!==null){if(Pe[e|1]===null)c=e|1;else if(!(Re++&3))c=e|Re>>2&1;else return}Pe[c]=t.slice(n,r),Ne[c]=i,Fe[c]=a,Ie[c]=o,Le[c]=s},Be=()=>Pe.fill(null),Ve=256,He=[new Int32Array(Ve),new Int32Array(Ve),new Int32Array(Ve),new Int32Array(Ve)],[Ue,We,Ge,Ke]=He,qe=new Uint8Array(Ve),Je=new Uint8Array(Ve),Ye=()=>{Ve*=2,He=He.map(e=>{let t=new Int32Array(Ve);return t.set(e),t}),[Ue,We,Ge,Ke]=He;let e=new Uint8Array(Ve);e.set(qe),qe=e,Je=new Uint8Array(Ve)},Xe=64,Ze=new Int32Array(Xe),Qe=new Int32Array(Xe),G=new Int32Array(r),K=2048,$e=21,et=new Float64Array(K),tt=new Int32Array(K),q=0,nt=(e,t)=>{if(e===0&&t<r)return G[t]===q?1:(G[t]=q,0);let n=e*2097152+t+1,i=Math.imul(n,2654435761)>>>$e;for(;tt[i]===q;){if(et[i]===n)return 1;i=i+1&K-1}return et[i]=n,tt[i]=q,0},rt=(e,t,n,r,i)=>{if(n-t>=2&&e.charCodeAt(t)===91&&e.charCodeAt(n-1)===93){let r=-1;for(let i=t+1;i<n-1;i++)if(e.charCodeAt(i)===58){r=i;break}return r===-1||r===t+1?To:xe(De,e,t+1,r,0,Ae)}if(r>=0&&c[r]>=0)return c[r];for(let t=i-1;t>=0;t--){let r=Qe[t];if(r>n)continue;let i=Ze[t],a=n-r;if(N[i]===1&&a>0&&a<=P){let t=e.charCodeAt(r);if(F===!1||t!==91&&t!==40){let t=R(i,e,r,n);if(t>=0)return t}}let o=l[i];if(o<0)continue;let s=f[o],c=u[s],m=u[s+1];if(c===m)continue;ue(e,r,n);let h=A[o]-c;for(let t=c;t<m;t++)if(ye(d[t],e,r,n))return p[h+t]}return To},it=e=>{let t=e.length,n=0,c=0,u=!1;(we>Te||Se.size>Te)&&(Se=new Map,Ce=new Map,we=2,Be()),Oe>ke&&(De=new Map,Oe=r,Be());let d=0;for(;d<t;){let f=e.charCodeAt(d);if(f===32||f>=9&&f<=13||f>=160&&le(f)){f!==32&&(u=!0),d++;continue}let p=d,m=0;for(;d<t;){if(f=e.charCodeAt(d),f<=32){if(f===32)break;if(f>=9&&f<=13){u=!0;break}}else if(f>=160&&le(f)){u=!0;break}m=Math.imul(m^f,16777619),d++}let h=d,g=h-p;n===Ve&&Ye();let _=n++;Ue[_]=p,We[_]=h,c+=g,m^=Math.imul(g,2654435761);let v=m^m>>>15,y=v&8190;{let t=-1;if(Ne[y]===v&&Pe[y]!==null&&Pe[y].length===g?t=y:Ne[y|1]===v&&Pe[y|1]!==null&&Pe[y|1].length===g&&(t=y|1),t>=0){let n=Pe[t],r=!0;for(let t=0;t<g;t++)if(n.charCodeAt(t)!==e.charCodeAt(p+t)){r=!1;break}if(r){Ge[_]=Fe[t],Ke[_]=Ie[t],qe[_]=Le[t];continue}}}let b=p;if(te!==0){if(h-p<=te||!e.startsWith(ee,p)){Ge[_]=To,ze(y,e,p,h,v,To,0,0);continue}b=p+te}let x=0,S=0,C=-1,w=-1;for(let t=b;t<h;t++){let n=e.charCodeAt(t);if(x===0&&S===0){if(n===58){C=t;continue}if(n===47){w=t;continue}}n===91?x++:n===93?x--:n===40?S++:n===41&&S--}let T=C>=b?C+1:b,E=T,D=h,O=!1,k=0;D>E&&e.charCodeAt(D-1)===33?(O=!0,D--):D>E&&e.charCodeAt(E)===33&&(O=!0,E++,k=1);let A=-1;w>T&&(A=w+k,A>=D&&(A=-1));let M=E;D-E>1&&e.charCodeAt(E)===45&&(M=E+1);let P=0,F=0,I=0,L=-1,R=0;(l[0]>=0||N[0]===1)&&(Ze[0]=0,Qe[0]=M,R=1);let z=Eo,B=0;for(let t=M;t<D;t++)if(t===A&&(z=F<I?Eo:P,B=R),P!==Eo){let n=e.charCodeAt(t),r=-1;if(F<I)o.charCodeAt(F)===n?(F++,F===I&&(r=P=L)):P=Eo;else{let e=i[P],t=i[P+1],c=Eo;for(let i=e;i<t;i++){let e=a[i];if(o.charCodeAt(e)===n){a[i+1]-e===1?r=c=s[i]:(F=e+1,I=a[i+1],L=s[i],c=P);break}}P=c}if(r>=0&&(l[r]>=0||N[r]===1)&&t+1<D&&e.charCodeAt(t+1)===45){if(R===Xe){Xe*=2;let e=new Int32Array(Xe);e.set(Ze),Ze=e;let t=new Int32Array(Xe);t.set(Qe),Qe=t}Ze[R]=r,Qe[R]=t+2,R++}}A===D&&(z=F<I?Eo:P,B=R);let ne=F<I?Eo:P,V,re=!1;if(A>=0){if(re=!0,V=rt(e,E,A,z,B),V!==To&&V<r&&j[V]){let t=rt(e,E,D,ne,R);t!==To&&t!==V&&(V=t,re=!1)}else V===To&&(V=rt(e,E,D,ne,R),re=!1)}else V=rt(e,E,D,ne,R);let ie=0,ae=0;V===To?Ge[_]=To:(ae=+!!re,ie=b>=C?+!!O:xe(Se,e,b,C,+!!O,e=>Ee(e,O)),Ge[_]=V,qe[_]=ae,Ke[_]=ie),ze(y,e,p,h,v,V,ie,ae)}if(n===0)return``;if(n===1)return Ue[0]===0&&We[0]===t?e:e.slice(Ue[0],We[0]);if(n*k>K){for(;n*k>K;)K<<=1,$e--;et=new Float64Array(K),tt=new Int32Array(K)}if(we>=je||Oe>=je)throw Error(`cn: too many distinct classes in one merge`);q=q+1|0,q===0&&(G.fill(0),tt.fill(0),q=1);let f=!1;for(let e=n-1;e>=0;e--){let t=Ge[e];if(t===To){Je[e]=1;continue}let n=Ke[e];if(nt(n,t)===1)Je[e]=0,f=!0;else if(Je[e]=1,t<r){let r=D[t];if(r>=0)for(let e=b[r];e<b[r+1];e++)nt(n,x[e]);if(qe[e]&1)for(let e=0;e<S.length;e++)S[e]===t&&nt(n,C[e])}}if(!f&&!u&&t===c+n-1)return e;let p=``,m=0;for(;m<n;){if(!Je[m]){m++;continue}let t=Ue[m],r=We[m],i=m+1;for(;i<n&&Je[i]&&Ue[i]===r+1&&e.charCodeAt(r)===32;)r=We[i],i++;p.length>0&&(p+=` `),p+=e.slice(t,r),m=i}return p},at=16384,ot=new Int32Array(at*2),st=0,J=1,ct=Object.create(null),lt=Object.create(null),ut=new Map,dt=new Map,ft=0,pt=0,mt=()=>{st^=at,J=J+1|0,pt=0},ht=e=>{let t=ct[e];if(t!==void 0)return t;let n=Oo(e,0,e.length),r=(n&16383)+st,i=ot[r]===(n^J)||ot[r^at]===(n^J-1);return i&&(t=lt[e],t!==void 0)?(ct[e]=t,t):(t=it(e),i?(ct[e]=t,++ft>z&&(ft=0,lt=ct,ct=Object.create(null),mt())):(ot[r]=n^J,++pt>at&&mt()),t)},gt=e=>{let t=ut.get(e);if(t!==void 0)return t;let n=Oo(e,0,e.length),r=(n&16383)+st,i=ot[r]===(n^J)||ot[r^at]===(n^J-1);return i&&(t=dt.get(e),t!==void 0)?(ut.set(e,t),t):(t=it(e),i?(ut.set(e,t),++ft>z&&(ft=0,dt=ut,ut=new Map,mt())):(ot[r]=n^J,++pt>at&&mt()),t)},_t=e=>{let t=Oo(e,0,e.length),n=(t&16383)+st;return ot[n]===(t^J)||ot[n^at]===(t^J-1)||(ot[n]=t^J,++pt>at&&mt(),!1)},vt=z===0?it:wo?e=>{let t=ut.get(e);return t===void 0?gt(e):t}:ht;return{merge:function(){return arguments.length===1&&typeof arguments[0]==`string`?vt(arguments[0]):vt(Mo.apply(null,arguments))},mergeString:vt,seenBefore:z===0?()=>!1:_t,mergeUncached:it}},Ao=(e,t)=>{if(!e)return``;if(typeof e==`string`)return e;let n=``;if(typeof e.length==`number`&&(!t||Array.isArray(e))){let r=e;for(let e=0;e<r.length;e++){let i=r[e];if(!i)continue;let a=typeof i==`string`?i:Ao(i,t);a&&(n&&(n+=` `),n+=a)}return n}if(t){if(typeof e==`number`)return``+e;if(typeof e==`object`)for(let t in e)e[t]&&(n&&(n+=` `),n+=t)}return n},jo=(e,t)=>{let n=``;for(let r=0;r<e.length;r++){let i=e[r];if(!i)continue;let a=typeof i==`string`?i:Ao(i,t);a&&(n&&(n+=` `),n+=a)}return n},Mo=function(){return jo(arguments,!1)},No=256,Po=16,Fo=1024,Io=4096,Lo=(e,t)=>{let n=t===void 0?()=>!0:t.seenBefore,r=t===void 0?e:t.mergeUncached,i=new Map,a=new Map,o=0,s=null,c=null,l=[],u=[],d=0,f=(t,n,r)=>{c===null&&(c=Array(Io).fill(``),l=Array(Io).fill(``),u=Array(Io).fill(``));let i=Oo(t,0,t.length)&4094;if(c[i]===t&&l[i]===n)return u[i];if(c[i|1]===t&&l[i|1]===n)return u[i|1];let a=e(r?n+` `+t:t),o=c[i]===``?i:i|(c[i|1]===``?1:d++&1);return c[o]=t,l[o]=n,u[o]=a,a},p=(e,t,n,r)=>{let i=0;if(t){if(t!==e.a0)return!1;i=1}if(n){if(n!==(i===0?e.a0:e.a1))return!1;i++}if(r){if(r!==(i===0?e.a0:i===1?e.a1:e.a2))return!1;i++}return i===e.t},m=(e,t)=>{let n=e.a,r=0;for(let e=0;e<t.length;e++){let i=t[e];if(i){if(i!==n[r])return!1;r++}}return r===e.t},h=(t,c)=>{let l=t.length,u=s===null?null:s.n;if(!c){if(u!==null&&m(u,t))return s=u,u.r;if(s!==null&&s!==u&&m(s,t))return s.r}let d=``,p=-1,h=0,g=!1;for(let e=0;e<l;e++){let n=t[e];if(n){if(typeof n!=`string`){if(n=t[e]=Ao(n,!0),!n)continue;g=!0}p<0&&(d=n,p=e),h++}}if(h===0)return``;if(h===1)return e(d);if(g){if(u!==null&&m(u,t))return s=u,u.r;if(s!==null&&s!==u&&m(s,t))return s.r}let _=i.get(d);_===void 0&&(_=a.get(d),_!==void 0&&i.set(d,_));let v=null;if(_!==void 0){if(_.skip>0){_.skip--,s=null;let e=d;for(let n=p+1;n<l;n++){let r=t[n];r&&(e+=` `+r)}return f(e,``,!1)}let e=_.e;outer:for(let n=0;n<e.length;n++){let r=e[n];if(r.t!==h)continue;let i=r.a,a=1;for(let e=p+1;e<l;e++){let n=t[e];if(n&&n!==i[a++])continue outer}v=r;break}v!==null&&(_.miss=0)}if(v===null){let s=d,c=[d];for(let e=p+1;e<l;e++){let n=t[e];n&&(s+=` `+n,c.push(n))}if(!n(s))return r(s);v={r:e(s),t:c.length,a0:c[0],a1:c[1],a2:c[2]??``,a:c,n:null},_===void 0?i.set(d,_={e:[],miss:0,skip:0,at:0}):++_.miss>Po&&(_.miss=Po,_.skip=Fo,_.e.length=0,_.at=0);let u=_.e;u.length<No?u.push(v):(u[_.at]=v,_.at=_.at+1&255),++o>1e3&&(o=0,a=i,i=new Map)}return s!==null&&s!==v&&(s.n=v),s=v,v.r},g=t=>Array.isArray(t)?h(t.slice(),!1):e(Ao(t,!0));return function(t,n,r){let a=arguments.length;if((a|1)==3){let e=s;if(e!==null){let i=e.n;if(i!==null&&p(i,t,n,r))return s=i,i.r;if(e!==i&&p(e,t,n,r))return e.r}if(a===2&&typeof n==`string`&&n!==``){let e=i.get(t);if(e!==void 0&&e.skip>0)return e.skip--,s=null,f(n,t,!0)}return h([t,n,r],!0)}if(a===1)return typeof t==`string`?e(t):g(t);let o=s;if(o!==null){let e=o.n;if(e!==null){let t=e.a,n=0,r=!0;for(let e=0;e<a;e++){let i=arguments[e];if(i){if(i!==t[n]){r=!1;break}n++}}if(r&&n===e.t)return s=e,e.r}if(o!==e){let e=o.a,t=0,n=!0;for(let r=0;r<a;r++){let i=arguments[r];if(i){if(i!==e[t]){n=!1;break}t++}}if(n&&t===o.t)return o.r}}let c=[];for(let e=0;e<a;e++)c.push(arguments[e]);return h(c,!0)}},Ro=ko(Co),zo=Lo(Ro.mergeString,Ro);Ro.merge;function Bo(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`){if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=Bo(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n)}return r}function Vo(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=Bo(e))&&(r&&(r+=` `),r+=t);return r}var Ho=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,Uo=Vo,Wo=(e,t)=>n=>{if(t?.variants==null)return Uo(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=Ho(t)||Ho(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return Uo(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},Go=`bg-fd-primary text-fd-primary-foreground hover:bg-fd-primary/80`,Ko={default:Go,primary:Go,outline:`border hover:bg-fd-accent hover:text-fd-accent-foreground`,ghost:`hover:bg-fd-accent hover:text-fd-accent-foreground`,secondary:`border bg-fd-secondary text-fd-secondary-foreground hover:bg-fd-accent hover:text-fd-accent-foreground`},qo=Wo(`inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring`,{variants:{variant:Ko,color:Ko,size:{sm:`gap-1 px-2 py-1.5 text-xs`,icon:`p-1.5 [&_svg]:size-5`,"icon-sm":`p-1.5 [&_svg]:size-4.5`,"icon-xs":`p-1 [&_svg]:size-4`}}});function Jo(...e){return t=>{e.forEach(e=>{typeof e==`function`?e(t):e&&(e.current=t)})}}var Yo=e=>e?.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase();function Xo(e,t,n=[]){if(t==null)throw Error(`[lucide]: iconNode is required when icon name is used`);return{name:Yo(e),size:24,node:t,...n.length>0?{aliases:n}:{}}}var Zo=e=>{let t=``,n=!1;for(let r of e)r===`-`||r===`_`||r<=` `?n=t.length>0:(t.length===0?t+=r.toLowerCase():t+=n?r.toUpperCase():r,n=!1);return t},Qo=e=>{let t=Zo(e);return t.charAt(0).toUpperCase()+t.slice(1)},$o=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),es={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":2,"stroke-linecap":`round`,"stroke-linejoin":`round`};function ts(e){return e!=null}function ns(e,t={}){let n=t.attributeNames??{},r=e=>n[e]??e,i=e.size??e.width??es.width,a=e.size??e.height??es.height,o=e.aliases?.filter(e=>typeof e==`string`&&e.trim()!==``).map(e=>`lucide-${e}`)??[],s=[...e.name?[`lucide-${e.name}`]:[],...o],c=t.className?.split(` `).filter(Boolean)??[],l=t.includeDefaultClasses===!1?$o(...c):$o(`lucide`,...s,...c),u=t.absoluteStrokeWidth?Number(t.strokeWidth??es[`stroke-width`])*Number(e.size??e.width??es.width)/Number(t.size??t.width??es.width):t.strokeWidth??es[`stroke-width`];return[`svg`,{...Object.entries(es).reduce((e,[t,n])=>(e[r(t)]=n,e),{}),...`color`in t&&t.color&&{[r(`stroke`)]:t.color},...`size`in t&&ts(t.size)&&{[r(`width`)]:t.size,[r(`height`)]:t.size},...`width`in t&&ts(t.width)&&{[r(`width`)]:t.width},...`height`in t&&ts(t.height)&&{[r(`height`)]:t.height},[r(`stroke-width`)]:u,...l&&{[r(`class`)]:l},[r(`viewBox`)]:`0 0 ${i} ${a}`,...t.hasA11yProp===!1?{[r(`aria-hidden`)]:`true`}:{},...`attributes`in t&&t.attributes},e.node.map(e=>{let[n,i,a]=e,o=t.nonScalingStroke?{[r(`vector-effect`)]:`non-scaling-stroke`,...i}:i;return a?[n,o,a]:[n,o]})]}function rs(e,t={}){return ns(e,{...t,attributeNames:{...t.attributeNames,class:`className`,"stroke-width":`strokeWidth`,"stroke-linecap":`strokeLinecap`,"stroke-linejoin":`strokeLinejoin`,"vector-effect":`vectorEffect`}})}var is=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},as=(0,s.createContext)({}),os=()=>(0,s.useContext)(as),ss=(0,s.forwardRef)(({color:e,size:t,width:n,height:r,strokeWidth:i,absoluteStrokeWidth:a,nonScalingStroke:o,className:c=``,children:l,iconNode:u=[],icon:d={node:u,aliases:[],size:24},...f},p)=>{let{size:m=24,strokeWidth:h=2,absoluteStrokeWidth:g=!1,nonScalingStroke:_=!1,color:v=`currentColor`,className:y=``}=os()??{},b=!!l||is(f),[x,S,C=[]]=rs(d,{color:e??v,width:n??t??m,height:r??t??m,strokeWidth:i??h,absoluteStrokeWidth:a??g,nonScalingStroke:o??_,className:$o(y,c),hasA11yProp:b,attributes:f});return(0,s.createElement)(x,{ref:p,...S},[...C.map(([e,t])=>(0,s.createElement)(e,t)),...Array.isArray(l)?l:[l]])});function cs(e,t=[],n=[]){let r=typeof e==`string`?Xo(e,t,n):e,i=(0,s.forwardRef)(({className:e,...t},n)=>(0,s.createElement)(ss,{ref:n,icon:r,className:e,...t}));return r.name&&(i.displayName=Qo(r.name)),i}var ls={name:`search`,size:24,node:[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]};ls.node;var us=cs(ls),ds=e=>typeof e==`object`&&!!e&&e.nodeType===1,fs=(e,t)=>(!t||e!==`hidden`)&&e!==`visible`&&e!==`clip`,ps=(e,t)=>{if(e.clientHeight<e.scrollHeight||e.clientWidth<e.scrollWidth){let n=getComputedStyle(e,null);return fs(n.overflowY,t)||fs(n.overflowX,t)||(e=>{let t=(e=>{if(!e.ownerDocument||!e.ownerDocument.defaultView)return null;try{return e.ownerDocument.defaultView.frameElement}catch{return null}})(e);return!!t&&(t.clientHeight<e.scrollHeight||t.clientWidth<e.scrollWidth)})(e)}return!1},ms=(e,t,n,r,i,a,o,s)=>a<e&&o>t||a>e&&o<t?0:a<=e&&s<=n||o>=t&&s>=n?a-e-r:o>t&&s<n||a<e&&s>n?o-t+i:0,hs=e=>e.parentElement??(e.getRootNode().host||null),gs=(e,t)=>{if(typeof document>`u`)return[];let{scrollMode:n,block:r,inline:i,boundary:a,skipOverflowHiddenElements:o}=t,s=typeof a==`function`?a:e=>e!==a;if(!ds(e))throw TypeError(`Invalid target`);let c=document.scrollingElement||document.documentElement,l=[],u=e;for(;ds(u)&&s(u);){if(u=hs(u),u===c){l.push(u);break}u!=null&&u===document.body&&ps(u)&&!ps(document.documentElement)||u!=null&&ps(u,o)&&l.push(u)}let d=window.visualViewport?.width??innerWidth,f=window.visualViewport?.height??innerHeight,{scrollX:p,scrollY:m}=window,{height:h,width:g,top:_,right:v,bottom:y,left:b}=e.getBoundingClientRect(),{top:x,right:S,bottom:C,left:w}=(e=>{let t=window.getComputedStyle(e);return{top:parseFloat(t.scrollMarginTop)||0,right:parseFloat(t.scrollMarginRight)||0,bottom:parseFloat(t.scrollMarginBottom)||0,left:parseFloat(t.scrollMarginLeft)||0}})(e),T=r===`start`||r===`nearest`?_-x:r===`end`?y+C:_+h/2-x+C,E=i===`center`?b+g/2-w+S:i===`end`?v+S:b-w,D=[];for(let e=0;e<l.length;e++){let t=l[e],{height:a,width:o,top:s,right:u,bottom:x,left:S}=t.getBoundingClientRect();if(n===`if-needed`&&_>=0&&b>=0&&y<=f&&v<=d&&(t===c&&!ps(t)||_>=s&&y<=x&&b>=S&&v<=u))return D;let C=getComputedStyle(t),w=parseInt(C.borderLeftWidth,10),O=parseInt(C.borderTopWidth,10),k=parseInt(C.borderRightWidth,10),A=parseInt(C.borderBottomWidth,10),j=0,M=0,N=`offsetWidth`in t?t.offsetWidth-t.clientWidth-w-k:0,P=`offsetHeight`in t?t.offsetHeight-t.clientHeight-O-A:0,F=`offsetWidth`in t?t.offsetWidth===0?0:o/t.offsetWidth:0,I=`offsetHeight`in t?t.offsetHeight===0?0:a/t.offsetHeight:0;if(c===t)j=r===`start`?T:r===`end`?T-f:r===`nearest`?ms(m,m+f,f,O,A,m+T,m+T+h,h):T-f/2,M=i===`start`?E:i===`center`?E-d/2:i===`end`?E-d:ms(p,p+d,d,w,k,p+E,p+E+g,g),j=Math.max(0,j+m),M=Math.max(0,M+p);else{j=r===`start`?T-s-O:r===`end`?T-x+A+P:r===`nearest`?ms(s,x,a,O,A+P,T,T+h,h):T-(s+a/2)+P/2,M=i===`start`?E-S-w:i===`center`?E-(S+o/2)+N/2:i===`end`?E-u+k+N:ms(S,u,o,w,k+N,E,E+g,g);let{scrollLeft:e,scrollTop:n}=t;j=I===0?0:Math.max(0,Math.min(n+j/I,t.scrollHeight-a/I+P)),M=F===0?0:Math.max(0,Math.min(e+M/F,t.scrollWidth-o/F+N)),T+=n-j,E+=e-M}D.push({el:t,top:j,left:M})}return D},_s=e=>!1===e?{block:`end`,inline:`nearest`}:(e=>e===Object(e)&&Object.keys(e).length!==0)(e)?e:{block:`start`,inline:`nearest`};function vs(e,t){if(!e.isConnected||!(e=>{let t=e;for(;t&&t.parentNode;){if(t.parentNode===document)return!0;t=t.parentNode instanceof ShadowRoot?t.parentNode.host:t.parentNode}return!1})(e))return;let n=(e=>{let t=window.getComputedStyle(e);return{top:parseFloat(t.scrollMarginTop)||0,right:parseFloat(t.scrollMarginRight)||0,bottom:parseFloat(t.scrollMarginBottom)||0,left:parseFloat(t.scrollMarginLeft)||0}})(e);if((e=>typeof e==`object`&&typeof e.behavior==`function`)(t))return t.behavior(gs(e,t));let r=typeof t==`boolean`||t==null?void 0:t.behavior;for(let{el:i,top:a,left:o}of gs(e,_s(t))){let e=a-n.top+n.bottom,t=o-n.left+n.right;i.scroll({top:e,left:t,behavior:r})}}function ys(e,t){return e===t?!0:Array.isArray(e)&&Array.isArray(t)?t.length===e.length&&e.every((e,n)=>ys(e,t[n])):!1}function bs(e,t,n=(e,t)=>!ys(e,t)){let[r,i]=(0,s.useState)(e);n(r,e)&&(t(e,r),i(e))}export{ci as $,Le as $n,mn as $t,Xi as A,X as An,Kn as At,Mi as B,K as Bn,An as Bt,Sa as C,Bt as Cn,d as Cr,ir as Ct,oa as D,wt as Dn,p as Dr,Jn as Dt,pa as E,Dt as En,f as Er,Xn as Et,ji as F,vt as Fn,In as Ft,Oi as G,rt as Gn,Cn as Gt,Ri as H,tt as Hn,On as Ht,Ii as I,G as In,Mn as It,Ci as J,dt as Jn,bn as Jt,Di as K,it as Kn,Q as Kt,zi as L,mt as Ln,Ln as Lt,Ai as M,pt as Mn,Bn as Mt,Ni as N,ut as Nn,$ as Nt,ia as O,Tt as On,o as Or,Yn as Ot,Li as P,$e as Pn,zn as Pt,si as Q,Je as Qn,hn as Qt,Bi as R,_t as Rn,Fn as Rt,ba as S,Rt as Sn,y as Sr,er as St,sa as T,Ot as Tn,h as Tr,nr as Tt,Fi as U,q as Un,kn as Ut,Hi as V,lt as Vn,Dn as Vt,ki as W,ft as Wn,Sn as Wt,xi as X,Ze as Xn,yn as Xt,Si as Y,Xe as Yn,vn as Yt,vi as Z,Ye as Zn,gn as Zt,ga as _,Nt as _n,F as _r,wr as _t,cs as a,Zt as an,je as ar,Gr as at,ya as b,Et as bn,k as br,$n as bt,Wo as c,zt as cn,xe as cr,qr as ct,Va as d,Ft as dn,oe as dr,Ar as dt,pn as en,ze as er,oi as et,Ha as f,Pt as fn,W as fr,Or as ft,ha as g,Lt as gn,P as gr,Cr as gt,Ea as h,jt as hn,L as hr,Sr as ht,us as i,en as in,Me as ir,$r as it,Ui as j,Y as jn,Vn as jt,Yi as k,Z as kn,Gn as kt,Vo as l,Mt as ln,de as lr,Jr as lt,Da as m,Ut as mn,R as mr,Dr as mt,ys as n,dn as nn,Re as nr,ai as nt,Jo as o,Xt as on,Oe as or,Wr as ot,Ra as p,Wt as pn,U as pr,Er as pt,wi as q,at as qn,wn as qt,vs as r,$t as rn,Fe as rr,ti as rt,qo as s,Yt as sn,we as sr,Kr as st,bs as t,cn as tn,Ie as tr,ii as tt,zo as u,Vt as un,le as ur,Mr as ut,_a as v,It as vn,N as vr,Tr as vt,Ca as w,kt as wn,m as wr,Zn as wt,va as x,At as xn,T as xr,Qn as xt,ma as y,Ht as yn,j as yr,tr as yt,Vi as z,ht as zn,Rn as zt};
|
assets/use-search-eSAjMJVB-DEsp1VDZ.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/parse-CsgDThRb-2_xqSTAW.js","assets/rolldown-runtime-XKyaHtl9.js"])))=>i.map(i=>d[i]);
|
| 2 |
+
import{r as e}from"./rolldown-runtime-XKyaHtl9.js";import{t}from"./react-DlmbjZJV.js";import{t as n}from"./preload-helper-BLdHbfdN.js";function r(e){let t=e.trim().replace(/[.*+?^${}()|[\]\\]/g,`\\$&`).replace(/\s+/g,`|`);return t?new RegExp(t,`gi`):null}var i=e(t(),1),a={query:``};function o(e,{delayMs:t=100,allowEmpty:r=!1}={}){let[o,s]=(0,i.useState)(``),[c,l]=(0,i.useState)(a),u=o.length===0&&!r;return u&&c!==a&&l(a),(0,i.useEffect)(()=>{if(u)return;let r=!0,i=setTimeout(async()=>{try{let[t,{parseResults:i}]=await Promise.all([e(o),n(()=>import(`./parse-CsgDThRb-2_xqSTAW.js`),__vite__mapDeps([0,1]))]);r&&l({query:o,run:e,data:{query:o,items:i(t)}})}catch(t){r&&l(n=>({...n,query:o,run:e,error:t}))}},t);return()=>{r=!1,clearTimeout(i)}},[o,u,t,e]),{search:o,onSearchChange:s,isLoading:!u&&(c.query!==o||c.run!==e),data:c.data,error:c.error}}function s(e){return(0,i.useCallback)(t=>{let n=r(e);if(!t||!n||typeof Highlight>`u`)return()=>{};let i=CSS.highlights.get(`fd-search`);i||CSS.highlights.set(`fd-search`,i=new Highlight);let a=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,e=>e instanceof Element?e.hasAttribute(`data-highlight-ignore`)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT),o=[];for(;a.nextNode();){let e=a.currentNode;for(let t of e.data.matchAll(n)){let n=new StaticRange({startContainer:e,startOffset:t.index,endContainer:e,endOffset:t.index+t[0].length});i.add(n),o.push(n)}}return()=>{for(let e of o)i.delete(e)}},[e])}export{o as n,s as t};
|
assets/{useTranslation-DdiJj5BA.js → useTranslation-D9SCoej_.js}
RENAMED
|
@@ -1 +1 @@
|
|
| 1 |
-
import{r as e}from"./rolldown-runtime-XKyaHtl9.js";import{t}from"./react-DlmbjZJV.js";import{Ct as n,
|
|
|
|
| 1 |
+
import{r as e}from"./rolldown-runtime-XKyaHtl9.js";import{t}from"./react-DlmbjZJV.js";import{Ct as n,bt as r,xt as i}from"./layout.shared-ThDtfT9i.js";var a=e(t()),o=(e,t,n,r)=>{let i=[n,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(i,`warn`,`react-i18next::`,!0);p(i[0])&&(i[0]=`react-i18next:: ${i[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...i):console?.warn&&console.warn(...i)},s={},c=(e,t,n,r)=>{p(n)&&s[n]||(p(n)&&(s[n]=new Date),o(e,t,n,r))},l=(e,t)=>()=>{if(e.isInitialized)t();else{let n=()=>{setTimeout(()=>{e.off(`initialized`,n)},0),t()};e.on(`initialized`,n)}},u=(e,t,n)=>{e.loadNamespaces(t,l(e,n))},d=(e,t,n,r)=>{if(p(n)&&(n=[n]),e.options.preload&&e.options.preload.indexOf(t)>-1)return u(e,n,r);n.forEach(t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)}),e.loadLanguages(t,l(e,r))},f=(e,t,n={})=>!t.languages||!t.languages.length?(c(t,`NO_LANGUAGES`,`i18n.languages were undefined or empty`,{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:n.lng,precheck:(t,r)=>{if(n.bindI18n&&n.bindI18n.indexOf(`languageChanging`)>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!r(t.isLanguageChangingTo,e))return!1}}),p=e=>typeof e==`string`,m=e=>typeof e==`object`&&!!e,h=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,g={"&":`&`,"&":`&`,"<":`<`,"<":`<`,">":`>`,">":`>`,"'":`'`,"'":`'`,""":`"`,""":`"`," ":`\xA0`," ":`\xA0`,"©":`©`,"©":`©`,"®":`®`,"®":`®`,"…":`…`,"…":`…`,"/":`/`,"/":`/`},_=e=>g[e],v={bindI18n:`languageChanged`,bindI18nStore:``,transEmptyNodeValue:``,transSupportBasicHtmlNodes:!0,transWrapTextNodes:``,transKeepBasicHtmlNodesFor:[`br`,`strong`,`i`,`p`],useSuspense:!0,unescape:e=>e.replace(h,_),transDefaultProps:void 0},y=()=>v,b,x=()=>b,S={t:(e,t)=>{if(p(t))return t;if(m(t)&&p(t.defaultValue))return t.defaultValue;if(typeof e==`function`)return``;if(Array.isArray(e)){let t=e[e.length-1];return typeof t==`function`?``:t}return e},ready:!1},C=()=>()=>{},w=(e,t={})=>{let{i18n:o}=t,{i18n:s,defaultNS:l}=(0,a.useContext)(r)||{},m=o||s||x();m&&!m.reportNamespaces&&(m.reportNamespaces=new i),m||c(m,`NO_I18NEXT_INSTANCE`,`useTranslation: You will need to pass in an i18next instance by using initReactI18next or by passing it via props or context. In monorepo setups, make sure there is only one instance of react-i18next.`);let h=(0,a.useMemo)(()=>({...y(),...m?.options?.react,...t}),[m,t]),{useSuspense:g,keyPrefix:_,bindI18n:v,bindI18nStore:b}=h,w=e||l||m?.options?.defaultNS,T=p(w)?[w]:w||[`translation`],E=JSON.stringify(T),D=(0,a.useMemo)(()=>T,[E]);m?.reportNamespaces?.addUsedNamespaces?.(D);let O=(0,a.useRef)(0),k=(0,a.useCallback)(e=>{if(!m)return C;let t=()=>{O.current+=1,e()};return v&&m.on(v,t),b&&m.store.on(b,t),()=>{v&&v.split(` `).forEach(e=>m.off(e,t)),b&&b.split(` `).forEach(e=>m.store.off(e,t))}},[m,v,b]),A=(0,a.useRef)(),j=(0,a.useCallback)(()=>{if(!m)return S;let e=!!(m.isInitialized||m.initializedStoreOnce)&&D.every(e=>f(e,m,h)),r=t.lng||m.language,i=O.current,a=typeof _==`function`?n(_,{...m.options,ns:D}):_,o=A.current;if(o&&o.i18n===m&&o.ready===e&&o.lng===r&&o.namespaces===D&&o.keyPrefix===a&&o.revision===i)return o;let s={t:m.getFixedT(r,h.nsMode===`fallback`?D:D[0],_,{scopeNs:D}),i18n:m,ready:e,lng:r,namespaces:D,keyPrefix:a,revision:i};return A.current=s,s},[m,D,_,h,t.lng]),[M,N]=(0,a.useState)(0),{t:P,ready:F}=(0,a.useSyncExternalStore)(k,j,j),I;m&&g&&!F&&(I=new Promise(e=>{let n=()=>e();t.lng?d(m,t.lng,D,n):u(m,D,n)}),{t:P,ready:F}=j()),(0,a.useEffect)(()=>{if(m&&!F&&!g){let e=()=>N(e=>e+1);t.lng?d(m,t.lng,D,e):u(m,D,e)}},[m,t.lng,D,F,g,M]);let L=m||{},R=(0,a.useRef)(null),z=(0,a.useRef)(),B=e=>`${e.language}|${e.resolvedLanguage}|${e.languages?.join(`,`)}`,V=e=>{let t=Object.getOwnPropertyDescriptors(e);t.__original&&delete t.__original;let n=Object.create(Object.getPrototypeOf(e),t);if(!Object.prototype.hasOwnProperty.call(n,`__original`))try{Object.defineProperty(n,"__original",{value:e,writable:!1,enumerable:!1,configurable:!1})}catch{}return n},H=(0,a.useMemo)(()=>{let e=L,t=e&&B(e),n=e;e&&(R.current&&R.current.__original===e&&z.current===t?n=R.current:(n=V(e),R.current=n,z.current=t));let r=!F&&!g?(...e)=>(c(m,`USE_T_BEFORE_READY`,`useTranslation: t was called before ready. When using useSuspense: false, make sure to check the ready flag before using t.`),P(...e)):P,i=[r,n,F];return i.t=r,i.i18n=n,i.ready=F,i},[P,L,F,L.resolvedLanguage,L.language,L.languages]);if(m&&g&&!F){let e=!1;try{e=!1}catch{}throw e&&c(m,`SUSPENDED_WHILE_LOADING`,`useTranslation: suspended while translations are loading (useSuspense is true by default). Add a <Suspense> boundary above this component, or set react.useSuspense: false in the i18next init options. https://react.i18next.com/latest/usetranslation-hook`),I}return H};export{w as t};
|
en/asset/index.html
CHANGED
|
@@ -1 +1,3 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-ClgAa0c4.css" data-precedence="default"/><title>Lowpoly World — Public 3D Asset Gallery</title><meta name="description" content="A static gallery for human-approved low-poly assets published in Hugging Face Dataset."/><link rel="modulepreload" href="/assets/index-DEDbfth6.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/search-BN8TeJzU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-R7iKUM_S.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-BilCH_HV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-CQLqrWbY.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/asset-B_RjD9N6.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-DdiJj5BA.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-catalog-B4zb4r4j.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><main id="nd-home-layout" class="flex flex-1 flex-col [--fd-layout-width:1400px]"><header id="nd-nav" class="sticky h-14 top-0 z-40" data-closed=""><nav class="backdrop-blur-lg border-b transition-[box-shadow,background-color,border-radius] bg-fd-background/80"><div class="flex h-14 w-full mx-auto max-w-(--fd-layout-width) items-center px-4"><a class="inline-flex items-center gap-2.5 font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><ul class="flex flex-row items-center gap-2 px-6 max-sm:hidden"><li class="list-none text-sm"><a class="[&_svg]:size-4 inline-flex items-center gap-1 p-2 text-fd-muted-foreground transition-colors hover:text-fd-accent-foreground data-[active=true]:text-fd-primary active" aria-current="page" data-active="false" href="/en/index.html" data-status="active">Assets</a></li><li class="list-none text-sm"><a class="[&_svg]:size-4 inline-flex items-center gap-1 p-2 text-fd-muted-foreground transition-colors hover:text-fd-accent-foreground data-[active=true]:text-fd-primary" data-active="false" href="/en/docs/index.html">Documentation</a></li></ul><div class="flex flex-row items-center justify-end gap-1.5 flex-1 max-lg:hidden"><button type="button" aria-disabled="false" data-base-ui-click-trigger="" id="base-ui-_R_67aqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center gap-2 border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground w-full rounded-full ps-2.5 max-w-[240px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button><button class="inline-flex items-center rounded-full border p-1 overflow-hidden *:rounded-full" aria-label="Toggle Theme" data-theme-toggle=""><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sun size-6.5 p-1.5 text-fd-muted-foreground" aria-hidden="true"><circle cx="12" cy="12" r="4"></circle><path d="M12 2v2"></path><path d="M12 20v2"></path><path d="m4.93 4.93 1.41 1.41"></path><path d="m17.66 17.66 1.41 1.41"></path><path d="M2 12h2"></path><path d="M20 12h2"></path><path d="m6.34 17.66-1.41 1.41"></path><path d="m19.07 4.93-1.41 1.41"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon size-6.5 p-1.5 text-fd-muted-foreground" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></button><button type="button" aria-disabled="false" data-base-ui-click-trigger="" id="base-ui-_R_fe7aqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground gap-1.5 p-1.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-5" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg></button><ul class="flex flex-row gap-2 items-center empty:hidden"><li class="list-none -mx-1 first:ms-0 last:me-0"><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-5" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a></li><li class="list-none -mx-1 first:ms-0 last:me-0"><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-5" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a></li></ul></div><div class="flex flex-row items-center ms-auto -me-1.5 lg:hidden"><button type="button" aria-disabled="false" data-base-ui-click-trigger="" id="base-ui-_R_6naqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-disabled="false" aria-expanded="false" aria-label="Toggle Menu" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div></div></nav></header><main id="main-content" class="detail-main"><a href="/en/index.html" role="button" tabindex="0" data-slot="button" class="group/button inline-flex shrink-0 items-center justify-center rounded-lg border-[0.5px] border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-none outline-none select-none focus-visible:border-ring focus-visible:outline-[0.5px] focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 text-primary underline-offset-4 hover:underline h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 back-link">Back to catalog</a><h1 class="detail-heading">Asset details</h1><section class="catalog-state" aria-live="polite"><div class="state-panel"><p class="state-loading" role="status">Loading the public catalog…</p></div></section></main></main><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/asset/":$R[10]={preloads:$R[11]=["/assets/asset-B_RjD9N6.js","/assets/useTranslation-DdiJj5BA.js","/assets/use-catalog-B4zb4r4j.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216454,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793638216454,s:"success",ssr:!0},$R[15]={i:"#$lang#asset##en#asset#",u:1793638216454,s:"success",ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>Lowpoly World — Public 3D Asset Gallery</title><meta name="description" content="A static gallery for human-approved low-poly assets published in Hugging Face Dataset."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/asset-B29kNjHy.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/gallery-shell-BUNd-Rj8.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
+
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground mb-6" href="/en/docs/index.html">Documentation</a><div class="flex flex-col"></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="true" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8 site-main gallery-main layout:[--fd-page-width:100%]" role="main"><div class="detail-main"><a href="/en/index.html" role="button" tabindex="0" data-slot="button" class="group/button inline-flex shrink-0 items-center justify-center rounded-lg border-[0.5px] border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-none outline-none select-none focus-visible:border-ring focus-visible:outline-[0.5px] focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 text-primary underline-offset-4 hover:underline h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 back-link">Back to catalog</a><h1 class="detail-heading">Asset details</h1><section class="catalog-state" aria-live="polite"><div class="state-panel"><p class="state-loading" role="status">Loading the public catalog…</p></div></section></div></article></div></div></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/asset/":$R[10]={preloads:$R[11]=["/assets/asset-B29kNjHy.js","/assets/useTranslation-D9SCoej_.js","/assets/gallery-shell-BUNd-Rj8.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511504,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793640511504,s:"success",ssr:!0},$R[15]={i:"#$lang#asset##en#asset#",u:1793640511504,s:"success",ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
en/docs/blender/index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/blender/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Use in Blender</h1><p class="mb-8 text-lg text-fd-muted-foreground">Open a published BLEND source file in Blender.</p><div class="prose flex-1">
|
| 4 |
<ol>
|
| 5 |
<li>Open an asset detail page.</li>
|
| 6 |
<li>Select <strong>Download BLEND</strong> when the link is present.</li>
|
|
@@ -8,4 +8,4 @@
|
|
| 8 |
<li>Check the scene, linked textures, scale, origin, and materials before editing.</li>
|
| 9 |
</ol>
|
| 10 |
<p>The website does not test every file with every Blender release. A missing BLEND URL means the
|
| 11 |
-
publisher did not supply a public BLEND link in the catalog.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/formats/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">3D Formats</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/threejs/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">Use in Three.js</span></span></a></nav></article></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216563,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793638216563,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#blender",u:1793638216606,s:"success",l:$R[16]={path:"blender.mdx",locale:"en",contentLocale:"en",title:"Use in Blender",description:"Open a published BLEND source file in Blender.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>Use in Blender | Lowpoly World</title><meta name="description" content="Open a published BLEND source file in Blender."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/blender/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Use in Blender</h1><p class="mb-8 text-lg text-fd-muted-foreground">Open a published BLEND source file in Blender.</p><div class="prose flex-1">
|
| 4 |
<ol>
|
| 5 |
<li>Open an asset detail page.</li>
|
| 6 |
<li>Select <strong>Download BLEND</strong> when the link is present.</li>
|
|
|
|
| 8 |
<li>Check the scene, linked textures, scale, origin, and materials before editing.</li>
|
| 9 |
</ol>
|
| 10 |
<p>The website does not test every file with every Blender release. A missing BLEND URL means the
|
| 11 |
+
publisher did not supply a public BLEND link in the catalog.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/formats/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">3D Formats</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/threejs/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">Use in Three.js</span></span></a></nav></article></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511608,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793640511608,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#blender",u:1793640511639,s:"success",l:$R[16]={path:"blender.mdx",locale:"en",contentLocale:"en",title:"Use in Blender",description:"Open a published BLEND source file in Blender.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
en/docs/contributing/index.html
CHANGED
|
@@ -1,10 +1,10 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/contributing/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Contributing</h1><p class="mb-8 text-lg text-fd-muted-foreground">Contribute to the public website without publishing unapproved assets.</p><div class="prose flex-1">
|
| 4 |
<p>Contributions to this repository should improve the public website, its documentation, or its
|
| 5 |
offline tests. Keep changes small and describe their effect on the static output.</p>
|
| 6 |
<p>Do not commit model files, Google Drive content, review records, credentials, or unpublished
|
| 7 |
metadata. Do not add an asset to the public Dataset without separate rights review and explicit
|
| 8 |
publisher approval.</p>
|
| 9 |
<p>Before opening a pull request, install from the lockfile and run the website's configured checks.
|
| 10 |
-
The repository's CI workflow is the source of truth for required commands.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/dataset-schema/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Dataset Schema</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/release-notes/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">Release Notes</span></span></a></nav></article></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216622,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793638216622,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#contributing",u:1793638216656,s:"success",l:$R[16]={path:"contributing.mdx",locale:"en",contentLocale:"en",title:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>Contributing | Lowpoly World</title><meta name="description" content="Contribute to the public website without publishing unapproved assets."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/contributing/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Contributing</h1><p class="mb-8 text-lg text-fd-muted-foreground">Contribute to the public website without publishing unapproved assets.</p><div class="prose flex-1">
|
| 4 |
<p>Contributions to this repository should improve the public website, its documentation, or its
|
| 5 |
offline tests. Keep changes small and describe their effect on the static output.</p>
|
| 6 |
<p>Do not commit model files, Google Drive content, review records, credentials, or unpublished
|
| 7 |
metadata. Do not add an asset to the public Dataset without separate rights review and explicit
|
| 8 |
publisher approval.</p>
|
| 9 |
<p>Before opening a pull request, install from the lockfile and run the website's configured checks.
|
| 10 |
+
The repository's CI workflow is the source of truth for required commands.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/dataset-schema/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Dataset Schema</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/release-notes/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">Release Notes</span></span></a></nav></article></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511657,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793640511657,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#contributing",u:1793640511667,s:"success",l:$R[16]={path:"contributing.mdx",locale:"en",contentLocale:"en",title:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
en/docs/dataset-schema/index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/dataset-schema/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">Dataset Schema</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">On this page</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Dataset Schema</h1><p class="mb-8 text-lg text-fd-muted-foreground">Read the version 2 catalog pointer, snapshot, and optional asset metadata.</p><div class="prose flex-1">
|
| 4 |
<h2 id="catalog-pointer" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#catalog-pointer">Catalog pointer</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 5 |
<p><code>catalog/v1/latest.json</code> is a schema version 2 object. It contains <code>count</code>, <code>index_path</code>, and a
|
| 6 |
full <code>index_sha256</code>. The immutable snapshot path must match the first 20 hexadecimal characters of
|
|
@@ -28,4 +28,4 @@ and a non-empty <code>rights_statement</code>. It never treats a preview image a
|
|
| 28 |
<h2 id="url-boundary" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#url-boundary">URL boundary</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 29 |
<p>Every record URL must use HTTPS, omit embedded credentials, and stay under the
|
| 30 |
<code>daftAI2026/3d-assets</code> Dataset path. URLs to other repositories, external hosts, or non-HTTPS
|
| 31 |
-
schemes fail catalog validation.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/threejs/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Use in Three.js</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/contributing/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">Contributing</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>On this page</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#catalog-pointer" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Catalog pointer</a><a data-active="false" href="#required-record-values" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Required record values</a><a data-active="false" href="#detail-resources" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Detail resources</a><a data-active="false" href="#url-boundary" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">URL boundary</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216619,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793638216619,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#dataset-schema",u:1793638216638,s:"success",l:$R[16]={path:"dataset-schema.mdx",locale:"en",contentLocale:"en",title:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>Dataset Schema | Lowpoly World</title><meta name="description" content="Read the version 2 catalog pointer, snapshot, and optional asset metadata."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/dataset-schema/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">Dataset Schema</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">On this page</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Dataset Schema</h1><p class="mb-8 text-lg text-fd-muted-foreground">Read the version 2 catalog pointer, snapshot, and optional asset metadata.</p><div class="prose flex-1">
|
| 4 |
<h2 id="catalog-pointer" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#catalog-pointer">Catalog pointer</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 5 |
<p><code>catalog/v1/latest.json</code> is a schema version 2 object. It contains <code>count</code>, <code>index_path</code>, and a
|
| 6 |
full <code>index_sha256</code>. The immutable snapshot path must match the first 20 hexadecimal characters of
|
|
|
|
| 28 |
<h2 id="url-boundary" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#url-boundary">URL boundary</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 29 |
<p>Every record URL must use HTTPS, omit embedded credentials, and stay under the
|
| 30 |
<code>daftAI2026/3d-assets</code> Dataset path. URLs to other repositories, external hosts, or non-HTTPS
|
| 31 |
+
schemes fail catalog validation.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/threejs/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Use in Three.js</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/contributing/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">Contributing</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>On this page</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#catalog-pointer" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Catalog pointer</a><a data-active="false" href="#required-record-values" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Required record values</a><a data-active="false" href="#detail-resources" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Detail resources</a><a data-active="false" href="#url-boundary" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">URL boundary</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511654,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793640511654,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#dataset-schema",u:1793640511661,s:"success",l:$R[16]={path:"dataset-schema.mdx",locale:"en",contentLocale:"en",title:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
en/docs/download/index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/download/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">Download</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">On this page</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Download</h1><p class="mb-8 text-lg text-fd-muted-foreground">Download only the files linked by a verified public catalog record.</p><div class="prose flex-1">
|
| 4 |
<h2 id="single-files" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#single-files">Single files</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 5 |
<p>Open an asset from the verified catalog. Use <strong>Download GLB</strong> or <strong>Download BLEND</strong> when the corresponding file is published. Files come directly from the public Dataset, not a website proxy.</p>
|
| 6 |
<h2 id="multiple-assets" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#multiple-assets">Multiple assets</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
|
@@ -12,4 +12,4 @@
|
|
| 12 |
</ol>
|
| 13 |
<p>The manifest and commands pin files to a Dataset commit. This is not the source ZIP hash or the asset's version label. Install the <a href="https://huggingface.co/docs/huggingface_hub/guides/cli" rel="noreferrer noopener" target="_blank">official Hugging Face CLI</a> before running commands. The website does not run them for you.</p>
|
| 14 |
<p>File links hand saving to your browser. The page cannot confirm that a file was saved. Large selections are not assembled into a ZIP or loaded into browser memory.</p>
|
| 15 |
-
<p>If the Dataset commit cannot be read, fixed-version downloads remain unavailable until you retry. Missing files are never invented. A preview image is not a source model.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full active" href="/en/docs/index.html" data-status="active" aria-current="page"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Getting Started</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/license/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">License</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>On this page</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#single-files" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Single files</a><a data-active="false" href="#multiple-assets" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Multiple assets</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216512,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793638216512,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#download",u:1793638216592,s:"success",l:$R[16]={path:"download.mdx",locale:"en",contentLocale:"en",title:"Download",description:"Download only the files linked by a verified public catalog record.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>Download | Lowpoly World</title><meta name="description" content="Download only the files linked by a verified public catalog record."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/download/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">Download</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">On this page</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Download</h1><p class="mb-8 text-lg text-fd-muted-foreground">Download only the files linked by a verified public catalog record.</p><div class="prose flex-1">
|
| 4 |
<h2 id="single-files" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#single-files">Single files</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 5 |
<p>Open an asset from the verified catalog. Use <strong>Download GLB</strong> or <strong>Download BLEND</strong> when the corresponding file is published. Files come directly from the public Dataset, not a website proxy.</p>
|
| 6 |
<h2 id="multiple-assets" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#multiple-assets">Multiple assets</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
|
|
|
| 12 |
</ol>
|
| 13 |
<p>The manifest and commands pin files to a Dataset commit. This is not the source ZIP hash or the asset's version label. Install the <a href="https://huggingface.co/docs/huggingface_hub/guides/cli" rel="noreferrer noopener" target="_blank">official Hugging Face CLI</a> before running commands. The website does not run them for you.</p>
|
| 14 |
<p>File links hand saving to your browser. The page cannot confirm that a file was saved. Large selections are not assembled into a ZIP or loaded into browser memory.</p>
|
| 15 |
+
<p>If the Dataset commit cannot be read, fixed-version downloads remain unavailable until you retry. Missing files are never invented. A preview image is not a source model.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full active" href="/en/docs/index.html" data-status="active" aria-current="page"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Getting Started</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/license/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">License</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>On this page</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#single-files" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Single files</a><a data-active="false" href="#multiple-assets" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Multiple assets</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511580,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793640511580,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#download",u:1793640511634,s:"success",l:$R[16]={path:"download.mdx",locale:"en",contentLocale:"en",title:"Download",description:"Download only the files linked by a verified public catalog record.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
en/docs/faq/index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/faq/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">FAQ</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">On this page</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">FAQ</h1><p class="mb-8 text-lg text-fd-muted-foreground">Answers about empty catalogs, metadata, previews, and public files.</p><div class="prose flex-1">
|
| 4 |
<h2 id="why-is-the-gallery-empty" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#why-is-the-gallery-empty">Why is the gallery empty?</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 5 |
<p>The site shows an empty state when the public Dataset has no <code>catalog/v1/latest.json</code> pointer. It
|
| 6 |
does not create demo records.</p>
|
|
@@ -14,4 +14,4 @@ record and is not a substitute model.</p>
|
|
| 14 |
<p>No. Read the license published with that asset and confirm that it covers your use.</p>
|
| 15 |
<h2 id="are-source-input-images-public" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#are-source-input-images-public">Are source input images public?</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 16 |
<p>The page shows a source input image only when its release metadata includes a safe Dataset URL, an
|
| 17 |
-
explicit <code>rights_confirmed: true</code> value, and a rights statement.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/release-notes/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Release Notes</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>On this page</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#why-is-the-gallery-empty" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Why is the gallery empty?</a><a data-active="false" href="#why-does-a-field-say-not-supplied" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Why does a field say Not supplied?</a><a data-active="false" href="#why-does-the-viewer-show-an-image" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Why does the viewer show an image?</a><a data-active="false" href="#does-the-site-grant-a-model-license" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Does the site grant a model license?</a><a data-active="false" href="#are-source-input-images-public" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Are source input images public?</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216646,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793638216646,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#faq",u:1793638216666,s:"success",l:$R[16]={path:"faq.mdx",locale:"en",contentLocale:"en",title:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>FAQ | Lowpoly World</title><meta name="description" content="Answers about empty catalogs, metadata, previews, and public files."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/faq/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">FAQ</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">On this page</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">FAQ</h1><p class="mb-8 text-lg text-fd-muted-foreground">Answers about empty catalogs, metadata, previews, and public files.</p><div class="prose flex-1">
|
| 4 |
<h2 id="why-is-the-gallery-empty" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#why-is-the-gallery-empty">Why is the gallery empty?</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 5 |
<p>The site shows an empty state when the public Dataset has no <code>catalog/v1/latest.json</code> pointer. It
|
| 6 |
does not create demo records.</p>
|
|
|
|
| 14 |
<p>No. Read the license published with that asset and confirm that it covers your use.</p>
|
| 15 |
<h2 id="are-source-input-images-public" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#are-source-input-images-public">Are source input images public?</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 16 |
<p>The page shows a source input image only when its release metadata includes a safe Dataset URL, an
|
| 17 |
+
explicit <code>rights_confirmed: true</code> value, and a rights statement.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/release-notes/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Release Notes</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>On this page</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#why-is-the-gallery-empty" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Why is the gallery empty?</a><a data-active="false" href="#why-does-a-field-say-not-supplied" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Why does a field say Not supplied?</a><a data-active="false" href="#why-does-the-viewer-show-an-image" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Why does the viewer show an image?</a><a data-active="false" href="#does-the-site-grant-a-model-license" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Does the site grant a model license?</a><a data-active="false" href="#are-source-input-images-public" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Are source input images public?</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511674,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793640511674,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#faq",u:1793640511689,s:"success",l:$R[16]={path:"faq.mdx",locale:"en",contentLocale:"en",title:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
en/docs/formats/index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/formats/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">3D Formats</h1><p class="mb-8 text-lg text-fd-muted-foreground">Learn which published model and preview formats the gallery reads.</p><div class="prose flex-1">
|
| 4 |
<p>The gallery uses a published GLB URL for the interactive detail viewer. The viewer supports mouse
|
| 5 |
and touch camera controls. It loads a model only after a visitor opens that model's detail page.</p>
|
| 6 |
<p>BLEND is the Blender source format. The detail page shows a download action only when the record
|
|
@@ -9,4 +9,4 @@ contains a safe public BLEND URL.</p>
|
|
| 9 |
fails to load, the viewer keeps the same record's preview image. It never substitutes another
|
| 10 |
asset's image.</p>
|
| 11 |
<p>The gallery does not claim OpenUSD, FBX, OBJ, AR, or simulation-ready support unless a published
|
| 12 |
-
record and a future implementation explicitly provide it.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/license/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">License</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/blender/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">Use in Blender</span></span></a></nav></article></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216517,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793638216517,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#formats",u:1793638216585,s:"success",l:$R[16]={path:"formats.mdx",locale:"en",contentLocale:"en",title:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>3D Formats | Lowpoly World</title><meta name="description" content="Learn which published model and preview formats the gallery reads."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/formats/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">3D Formats</h1><p class="mb-8 text-lg text-fd-muted-foreground">Learn which published model and preview formats the gallery reads.</p><div class="prose flex-1">
|
| 4 |
<p>The gallery uses a published GLB URL for the interactive detail viewer. The viewer supports mouse
|
| 5 |
and touch camera controls. It loads a model only after a visitor opens that model's detail page.</p>
|
| 6 |
<p>BLEND is the Blender source format. The detail page shows a download action only when the record
|
|
|
|
| 9 |
fails to load, the viewer keeps the same record's preview image. It never substitutes another
|
| 10 |
asset's image.</p>
|
| 11 |
<p>The gallery does not claim OpenUSD, FBX, OBJ, AR, or simulation-ready support unless a published
|
| 12 |
+
record and a future implementation explicitly provide it.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/license/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">License</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/blender/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">Use in Blender</span></span></a></nav></article></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511583,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793640511583,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#formats",u:1793640511630,s:"success",l:$R[16]={path:"formats.mdx",locale:"en",contentLocale:"en",title:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
en/docs/index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">Getting Started</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">On this page</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Getting Started</h1><p class="mb-8 text-lg text-fd-muted-foreground">Browse the verified Lowpoly World public asset catalog.</p><div class="prose flex-1">
|
| 4 |
<p>Lowpoly World is a library of low-poly 3D models. Browse online, inspect a model in 3D, and download GLB or Blender source files.</p>
|
| 5 |
<h2 id="choose-an-entry" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#choose-an-entry">Choose an entry</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 6 |
<ul>
|
|
@@ -16,4 +16,4 @@
|
|
| 16 |
<p>Choose <strong>Download GLB</strong> for a portable 3D file, or <strong>Download BLEND</strong> to edit the native source in Blender. Downloads come directly from the public Dataset.</p>
|
| 17 |
<h2 id="check-before-reuse" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#check-before-reuse">Check before reuse</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 18 |
<p>Read the model's license, version, and published quality information. A preview is not an engineering or simulation certification. Missing fields are shown as <strong>Not supplied</strong>.</p>
|
| 19 |
-
<p>Use the <strong>Hugging Face</strong> icon in the header to open Data Studio and the original public files. Read <strong>License</strong>, <strong>Use in Blender</strong>, or <strong>Use in Three.js</strong> for the next steps.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full active" href="/en/index.html" data-status="active" aria-current="page"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium">Assets</span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/download/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">Download</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>On this page</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#choose-an-entry" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Choose an entry</a><a data-active="false" href="#find-a-model" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Find a model</a><a data-active="false" href="#preview-and-download" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Preview and download</a><a data-active="false" href="#check-before-reuse" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Check before reuse</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216500,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793638216500,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs",u:1793638216567,s:"success",l:$R[16]={path:"index.mdx",locale:"en",contentLocale:"en",title:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>Getting Started | Lowpoly World</title><meta name="description" content="Browse the verified Lowpoly World public asset catalog."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">Getting Started</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">On this page</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Getting Started</h1><p class="mb-8 text-lg text-fd-muted-foreground">Browse the verified Lowpoly World public asset catalog.</p><div class="prose flex-1">
|
| 4 |
<p>Lowpoly World is a library of low-poly 3D models. Browse online, inspect a model in 3D, and download GLB or Blender source files.</p>
|
| 5 |
<h2 id="choose-an-entry" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#choose-an-entry">Choose an entry</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 6 |
<ul>
|
|
|
|
| 16 |
<p>Choose <strong>Download GLB</strong> for a portable 3D file, or <strong>Download BLEND</strong> to edit the native source in Blender. Downloads come directly from the public Dataset.</p>
|
| 17 |
<h2 id="check-before-reuse" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#check-before-reuse">Check before reuse</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 18 |
<p>Read the model's license, version, and published quality information. A preview is not an engineering or simulation certification. Missing fields are shown as <strong>Not supplied</strong>.</p>
|
| 19 |
+
<p>Use the <strong>Hugging Face</strong> icon in the header to open Data Studio and the original public files. Read <strong>License</strong>, <strong>Use in Blender</strong>, or <strong>Use in Three.js</strong> for the next steps.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full active" href="/en/index.html" data-status="active" aria-current="page"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium">Assets</span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/download/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">Download</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>On this page</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#choose-an-entry" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Choose an entry</a><a data-active="false" href="#find-a-model" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Find a model</a><a data-active="false" href="#preview-and-download" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Preview and download</a><a data-active="false" href="#check-before-reuse" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Check before reuse</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511568,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793640511568,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs",u:1793640511624,s:"success",l:$R[16]={path:"index.mdx",locale:"en",contentLocale:"en",title:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
en/docs/license/index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/license/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">License</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">On this page</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">License</h1><p class="mb-8 text-lg text-fd-muted-foreground">Read the license recorded for each published asset before reuse.</p><div class="prose flex-1">
|
| 4 |
<h2 id="website-code" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#website-code">Website code</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 5 |
<p>The website source code is licensed under <a href="https://github.com/daftAI2026/lowpoly-world/blob/main/LICENSE" rel="noreferrer noopener" target="_blank">MIT</a>.
|
| 6 |
This software license does not cover models, preview images or source inputs.</p>
|
|
@@ -9,4 +9,4 @@ This software license does not cover models, preview images or source inputs.</p
|
|
| 9 |
CC BY 4.0 permits sharing and modification, including commercial use, with attribution and an indication of changes.
|
| 10 |
Check the <strong>License</strong> field on the asset detail page for the license of that record.</p>
|
| 11 |
<p>Third-party reference images and assets without publication rights are excluded.
|
| 12 |
-
A missing license is shown as <strong>Not supplied</strong>. Do not infer permission from a preview or file format.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/download/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Download</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/formats/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">3D Formats</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>On this page</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#website-code" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Website code</a><a data-active="false" href="#published-assets" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Published assets</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216515,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793638216515,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#license",u:1793638216601,s:"success",l:$R[16]={path:"license.mdx",locale:"en",contentLocale:"en",title:"License",description:"Read the license recorded for each published asset before reuse.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>License | Lowpoly World</title><meta name="description" content="Read the license recorded for each published asset before reuse."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/license/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">License</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">On this page</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">License</h1><p class="mb-8 text-lg text-fd-muted-foreground">Read the license recorded for each published asset before reuse.</p><div class="prose flex-1">
|
| 4 |
<h2 id="website-code" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#website-code">Website code</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 5 |
<p>The website source code is licensed under <a href="https://github.com/daftAI2026/lowpoly-world/blob/main/LICENSE" rel="noreferrer noopener" target="_blank">MIT</a>.
|
| 6 |
This software license does not cover models, preview images or source inputs.</p>
|
|
|
|
| 9 |
CC BY 4.0 permits sharing and modification, including commercial use, with attribution and an indication of changes.
|
| 10 |
Check the <strong>License</strong> field on the asset detail page for the license of that record.</p>
|
| 11 |
<p>Third-party reference images and assets without publication rights are excluded.
|
| 12 |
+
A missing license is shown as <strong>Not supplied</strong>. Do not infer permission from a preview or file format.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/download/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Download</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/formats/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">3D Formats</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>On this page</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#website-code" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Website code</a><a data-active="false" href="#published-assets" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Published assets</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511581,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793640511581,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#license",u:1793640511611,s:"success",l:$R[16]={path:"license.mdx",locale:"en",contentLocale:"en",title:"License",description:"Read the license recorded for each published asset before reuse.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
en/docs/release-notes/index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/release-notes/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">Release Notes</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">On this page</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Release Notes</h1><p class="mb-8 text-lg text-fd-muted-foreground">Track public website changes and their verified release state.</p><div class="prose flex-1">
|
| 4 |
<h2 id="2026-11-02-second-model-release" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#2026-11-02-second-model-release">2026-11-02: Second model release</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 5 |
<p>The Dataset adds 155 reviewed static models, bringing the published catalog to 165. GLB, Blender sources, and four model-rendered views were checked for each added asset. Models use CC BY 4.0; third-party reference photographs and private source records are not included.</p>
|
| 6 |
<h2 id="2026-11-02-bottom-preview-sizing" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#2026-11-02-bottom-preview-sizing">2026-11-02: Bottom preview sizing</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
|
@@ -18,4 +18,4 @@
|
|
| 18 |
<p>The static website is live in English and Simplified Chinese. It provides catalog browsing, model details, a 3D viewer, downloads, and 10 help topics in both languages.</p>
|
| 19 |
<p>HF serves prebuilt files. It does not run a website server or a remote build. Website code uses the <a href="https://github.com/daftAI2026/lowpoly-world/blob/main/LICENSE" rel="noreferrer noopener" target="_blank">MIT license</a>.</p>
|
| 20 |
<h2 id="release-boundaries" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#release-boundaries">Release boundaries</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 21 |
-
<p>Dataset snapshots and website deployments have separate histories. Publishing models updates the catalog; it does not deploy website code. The catalog is the source of the current model count.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/contributing/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Contributing</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/faq/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">FAQ</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>On this page</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#2026-11-02-second-model-release" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">2026-11-02: Second model release</a><a data-active="false" href="#2026-11-02-bottom-preview-sizing" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">2026-11-02: Bottom preview sizing</a><a data-active="false" href="#2026-11-02-official-control-components" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">2026-11-02: Official control components</a><a data-active="false" href="#2026-11-02-asset-workspace" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">2026-11-02: Asset workspace</a><a data-active="false" href="#2026-11-02-first-model-release" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">2026-11-02: First model release</a><a data-active="false" href="#2026-10-31-bilingual-gallery" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">2026-10-31: Bilingual gallery</a><a data-active="false" href="#release-boundaries" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Release boundaries</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216636,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793638216636,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#release-notes",u:1793638216671,s:"success",l:$R[16]={path:"release-notes.mdx",locale:"en",contentLocale:"en",title:"Release Notes",description:"Track public website changes and their verified release state.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>Release Notes | Lowpoly World</title><meta name="description" content="Track public website changes and their verified release state."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/release-notes/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">Release Notes</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">On this page</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Release Notes</h1><p class="mb-8 text-lg text-fd-muted-foreground">Track public website changes and their verified release state.</p><div class="prose flex-1">
|
| 4 |
<h2 id="2026-11-02-second-model-release" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#2026-11-02-second-model-release">2026-11-02: Second model release</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 5 |
<p>The Dataset adds 155 reviewed static models, bringing the published catalog to 165. GLB, Blender sources, and four model-rendered views were checked for each added asset. Models use CC BY 4.0; third-party reference photographs and private source records are not included.</p>
|
| 6 |
<h2 id="2026-11-02-bottom-preview-sizing" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#2026-11-02-bottom-preview-sizing">2026-11-02: Bottom preview sizing</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
|
|
|
| 18 |
<p>The static website is live in English and Simplified Chinese. It provides catalog browsing, model details, a 3D viewer, downloads, and 10 help topics in both languages.</p>
|
| 19 |
<p>HF serves prebuilt files. It does not run a website server or a remote build. Website code uses the <a href="https://github.com/daftAI2026/lowpoly-world/blob/main/LICENSE" rel="noreferrer noopener" target="_blank">MIT license</a>.</p>
|
| 20 |
<h2 id="release-boundaries" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#release-boundaries">Release boundaries</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">Copy Anchor Link</span></button></h2>
|
| 21 |
+
<p>Dataset snapshots and website deployments have separate histories. Publishing models updates the catalog; it does not deploy website code. The catalog is the source of the current model count.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/contributing/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Contributing</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/faq/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">FAQ</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>On this page</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#2026-11-02-second-model-release" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">2026-11-02: Second model release</a><a data-active="false" href="#2026-11-02-bottom-preview-sizing" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">2026-11-02: Bottom preview sizing</a><a data-active="false" href="#2026-11-02-official-control-components" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">2026-11-02: Official control components</a><a data-active="false" href="#2026-11-02-asset-workspace" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">2026-11-02: Asset workspace</a><a data-active="false" href="#2026-11-02-first-model-release" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">2026-11-02: First model release</a><a data-active="false" href="#2026-10-31-bilingual-gallery" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">2026-10-31: Bilingual gallery</a><a data-active="false" href="#release-boundaries" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">Release boundaries</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511659,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793640511659,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#release-notes",u:1793640511681,s:"success",l:$R[16]={path:"release-notes.mdx",locale:"en",contentLocale:"en",title:"Release Notes",description:"Track public website changes and their verified release state.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
en/docs/threejs/index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/threejs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Use in Three.js</h1><p class="mb-8 text-lg text-fd-muted-foreground">Load a public GLB URL with the official Three.js GLTFLoader.</p><div class="prose flex-1">
|
| 4 |
<p>Read <code>glb_url</code> from a verified catalog record. Use the official <code>GLTFLoader</code> from Three.js to load
|
| 5 |
that public URL into your scene:</p>
|
| 6 |
<figure dir="ltr" class="my-4 bg-fd-card rounded-xl shiki relative border not-prose overflow-hidden text-sm shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e" tabindex="-1"><div class="empty:hidden absolute top-2 right-2 z-2 backdrop-blur-lg rounded-lg text-fd-muted-foreground"><button type="button" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring p-1 [&_svg]:size-4 hover:text-fd-accent-foreground data-checked:text-fd-accent-foreground" aria-live="polite"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clipboard" aria-hidden="true"><rect width="8" height="4" x="8" y="2" rx="1" ry="1"></rect><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path></svg><span class="sr-only">Copy Text</span></button></div><div role="region" tabindex="0" class="text-[0.8125rem] py-3.5 overflow-auto max-h-[600px] fd-scroll-container focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-fd-ring" style="--padding-right:calc(var(--spacing) * 8)"><pre class="min-w-full w-max *:flex *:flex-col"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8"> { GLTFLoader } </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583">from</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF"> 'three/addons/loaders/GLTFLoader.js'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8">;</span></span>
|
|
@@ -11,4 +11,4 @@ that public URL into your scene:</p>
|
|
| 11 |
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8">});</span></span></code></pre></div></figure>
|
| 12 |
<p>Set <code>publicGlbUrl</code> from the record. Do not copy a URL from a different asset. Cross-origin access
|
| 13 |
depends on the Dataset response headers and browser policy. The gallery itself uses
|
| 14 |
-
<code><model-viewer></code> and does not expose a Three.js rendering API.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/blender/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Use in Blender</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/dataset-schema/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">Dataset Schema</span></span></a></nav></article></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216565,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793638216565,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#threejs",u:1793638216613,s:"success",l:$R[16]={path:"threejs.mdx",locale:"en",contentLocale:"en",title:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>Use in Three.js | Lowpoly World</title><meta name="description" content="Load a public GLB URL with the official Three.js GLTFLoader."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">Documentation</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/en/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">Getting Started</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">Download</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">License</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D Formats</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">Use in Blender</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/docs/threejs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">Use in Three.js</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">Dataset Schema</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">Contributing</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">Release Notes</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/en/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">FAQ</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="en"><h1 class="text-[1.75em] font-semibold">Use in Three.js</h1><p class="mb-8 text-lg text-fd-muted-foreground">Load a public GLB URL with the official Three.js GLTFLoader.</p><div class="prose flex-1">
|
| 4 |
<p>Read <code>glb_url</code> from a verified catalog record. Use the official <code>GLTFLoader</code> from Three.js to load
|
| 5 |
that public URL into your scene:</p>
|
| 6 |
<figure dir="ltr" class="my-4 bg-fd-card rounded-xl shiki relative border not-prose overflow-hidden text-sm shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e" tabindex="-1"><div class="empty:hidden absolute top-2 right-2 z-2 backdrop-blur-lg rounded-lg text-fd-muted-foreground"><button type="button" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring p-1 [&_svg]:size-4 hover:text-fd-accent-foreground data-checked:text-fd-accent-foreground" aria-live="polite"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clipboard" aria-hidden="true"><rect width="8" height="4" x="8" y="2" rx="1" ry="1"></rect><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path></svg><span class="sr-only">Copy Text</span></button></div><div role="region" tabindex="0" class="text-[0.8125rem] py-3.5 overflow-auto max-h-[600px] fd-scroll-container focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-fd-ring" style="--padding-right:calc(var(--spacing) * 8)"><pre class="min-w-full w-max *:flex *:flex-col"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8"> { GLTFLoader } </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583">from</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF"> 'three/addons/loaders/GLTFLoader.js'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8">;</span></span>
|
|
|
|
| 11 |
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8">});</span></span></code></pre></div></figure>
|
| 12 |
<p>Set <code>publicGlbUrl</code> from the record. Do not copy a URL from a different asset. Cross-origin access
|
| 13 |
depends on the Dataset response headers and browser policy. The gallery itself uses
|
| 14 |
+
<code><model-viewer></code> and does not expose a Three.js rendering API.</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/en/docs/blender/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Previous Page</span><span class="font-medium"><span class="fd-page-tree-item-name">Use in Blender</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/en/docs/dataset-schema/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">Next Page<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">Dataset Schema</span></span></a></nav></article></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511610,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793640511610,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#en#docs#threejs",u:1793640511643,s:"success",l:$R[16]={path:"threejs.mdx",locale:"en",contentLocale:"en",title:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"en:root",name:"Documentation",description:void 0,children:$R[20]=[$R[21]={$id:"en:index.mdx",type:"page",name:"Getting Started",description:"Browse the verified Lowpoly World public asset catalog.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/en/docs",$ref:"index.mdx"},$R[22]={$id:"en:download.mdx",type:"page",name:"Download",description:"Download only the files linked by a verified public catalog record.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/en/docs/download",$ref:"download.mdx"},$R[23]={$id:"en:license.mdx",type:"page",name:"License",description:"Read the license recorded for each published asset before reuse.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/en/docs/license",$ref:"license.mdx"},$R[24]={$id:"en:formats.mdx",type:"page",name:"3D Formats",description:"Learn which published model and preview formats the gallery reads.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"en:blender.mdx",type:"page",name:"Use in Blender",description:"Open a published BLEND source file in Blender.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/en/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"en:threejs.mdx",type:"page",name:"Use in Three.js",description:"Load a public GLB URL with the official Three.js GLTFLoader.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/en/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"en:dataset-schema.mdx",type:"page",name:"Dataset Schema",description:"Read the version 2 catalog pointer, snapshot, and optional asset metadata.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/en/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"en:contributing.mdx",type:"page",name:"Contributing",description:"Contribute to the public website without publishing unapproved assets.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/en/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"en:release-notes.mdx",type:"page",name:"Release Notes",description:"Track public website changes and their verified release state.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/en/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"en:faq.mdx",type:"page",name:"FAQ",description:"Answers about empty catalogs, metadata, previews, and public files.",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/en/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
en/index.html
CHANGED
|
@@ -1 +1,3 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-ClgAa0c4.css" data-precedence="default"/><title>Lowpoly World — Public 3D Asset Gallery</title><meta name="description" content="A static gallery for human-approved low-poly assets published in Hugging Face Dataset."/><link rel="modulepreload" href="/assets/index-DEDbfth6.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/search-BN8TeJzU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-R7iKUM_S.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-BilCH_HV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-CQLqrWbY.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_lang-BZjkeuLT.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/home-page-DyjVALDA.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-DdiJj5BA.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-catalog-B4zb4r4j.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><main id="nd-home-layout" class="flex flex-1 flex-col [--fd-layout-width:1400px]"><header id="nd-nav" class="sticky h-14 top-0 z-40" data-closed=""><nav class="backdrop-blur-lg border-b transition-[box-shadow,background-color,border-radius] bg-fd-background/80"><div class="flex h-14 w-full mx-auto max-w-(--fd-layout-width) items-center px-4"><a class="inline-flex items-center gap-2.5 font-semibold active" href="/en/index.html" data-status="active" aria-current="page">Lowpoly World</a><ul class="flex flex-row items-center gap-2 px-6 max-sm:hidden"><li class="list-none text-sm"><a class="[&_svg]:size-4 inline-flex items-center gap-1 p-2 text-fd-muted-foreground transition-colors hover:text-fd-accent-foreground data-[active=true]:text-fd-primary active" aria-current="page" data-active="true" href="/en/index.html" data-status="active">Assets</a></li><li class="list-none text-sm"><a class="[&_svg]:size-4 inline-flex items-center gap-1 p-2 text-fd-muted-foreground transition-colors hover:text-fd-accent-foreground data-[active=true]:text-fd-primary" data-active="false" href="/en/docs/index.html">Documentation</a></li></ul><div class="flex flex-row items-center justify-end gap-1.5 flex-1 max-lg:hidden"><button type="button" aria-disabled="false" data-base-ui-click-trigger="" id="base-ui-_R_67aqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center gap-2 border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground w-full rounded-full ps-2.5 max-w-[240px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>Search docs<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button><button class="inline-flex items-center rounded-full border p-1 overflow-hidden *:rounded-full" aria-label="Toggle Theme" data-theme-toggle=""><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sun size-6.5 p-1.5 text-fd-muted-foreground" aria-hidden="true"><circle cx="12" cy="12" r="4"></circle><path d="M12 2v2"></path><path d="M12 20v2"></path><path d="m4.93 4.93 1.41 1.41"></path><path d="m17.66 17.66 1.41 1.41"></path><path d="M2 12h2"></path><path d="M20 12h2"></path><path d="m6.34 17.66-1.41 1.41"></path><path d="m19.07 4.93-1.41 1.41"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon size-6.5 p-1.5 text-fd-muted-foreground" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></button><button type="button" aria-disabled="false" data-base-ui-click-trigger="" id="base-ui-_R_fe7aqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground gap-1.5 p-1.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-5" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg></button><ul class="flex flex-row gap-2 items-center empty:hidden"><li class="list-none -mx-1 first:ms-0 last:me-0"><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-5" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a></li><li class="list-none -mx-1 first:ms-0 last:me-0"><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-5" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a></li></ul></div><div class="flex flex-row items-center ms-auto -me-1.5 lg:hidden"><button type="button" aria-disabled="false" data-base-ui-click-trigger="" id="base-ui-_R_6naqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="Open Search" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-disabled="false" aria-expanded="false" aria-label="Toggle Menu" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div></div></nav></header><main id="main-content" class="site-main gallery-main"><h1 class="visually-hidden">Low-poly 3D assets</h1><section class="catalog-section" aria-label="Published assets"><section class="catalog-state" aria-live="polite"><div class="state-panel"><p class="state-loading" role="status">Loading the public catalog…</p></div></section></section></main></main><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/":$R[10]={preloads:$R[11]=["/assets/_lang-BZjkeuLT.js","/assets/home-page-DyjVALDA.js","/assets/useTranslation-DdiJj5BA.js","/assets/use-catalog-B4zb4r4j.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216519,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793638216519,s:"success",ssr:!0},$R[15]={i:"#$lang##en#",u:1793638216519,s:"success",ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>Lowpoly World — Public 3D Asset Gallery</title><meta name="description" content="A static gallery for human-approved low-poly assets published in Hugging Face Dataset."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_lang-DEpy21c3.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/home-page-Co41DnZj.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/gallery-shell-BUNd-Rj8.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
+
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Collapse Sidebar" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/en/index.html" data-status="active" aria-current="page">Assets</a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground mb-6" href="/en/docs/index.html">Documentation</a><div class="flex flex-col"></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/en/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="Open Sidebar" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="Choose a language" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>English</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="Options" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="true" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8 site-main gallery-main layout:[--fd-page-width:100%]" role="main"><h1 class="visually-hidden">Low-poly 3D assets</h1><section class="catalog-section" aria-label="Published assets"><section class="catalog-state" aria-live="polite"><div class="state-panel"><p class="state-loading" role="status">Loading the public catalog…</p></div></section></section></article></div></div></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/":$R[10]={preloads:$R[11]=["/assets/_lang-DEpy21c3.js","/assets/home-page-Co41DnZj.js","/assets/useTranslation-D9SCoej_.js","/assets/gallery-shell-BUNd-Rj8.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511585,s:"success",ssr:!0},$R[14]={i:"#$lang#en",u:1793640511585,s:"success",ssr:!0},$R[15]={i:"#$lang##en#",u:1793640511585,s:"success",ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
index.html
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/assets/app-
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><title>Lowpoly World — Public 3D Asset Gallery</title><meta name="description" content="A static gallery for human-approved low-poly assets published in Hugging Face Dataset."/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/routes-DdpootL-.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/home-page-Co41DnZj.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/gallery-shell-BUNd-Rj8.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><!--$--><!--/$--><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]}}},matches:$R[8]=[$R[9]={i:"__root__#",u:1793640511779,s:"success",ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
zh/asset/index.html
CHANGED
|
@@ -1 +1,3 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="zh"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-ClgAa0c4.css" data-precedence="default"/><title>Lowpoly World — 公开 3D 资产画廊</title><meta name="description" content="展示 Hugging Face Dataset 中经过人工批准的低多边形资产。"/><link rel="modulepreload" href="/assets/index-DEDbfth6.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/search-BN8TeJzU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-R7iKUM_S.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-BilCH_HV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-CQLqrWbY.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/asset-B_RjD9N6.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-DdiJj5BA.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-catalog-B4zb4r4j.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><main id="nd-home-layout" class="flex flex-1 flex-col [--fd-layout-width:1400px]"><header id="nd-nav" class="sticky h-14 top-0 z-40" data-closed=""><nav class="backdrop-blur-lg border-b transition-[box-shadow,background-color,border-radius] bg-fd-background/80"><div class="flex h-14 w-full mx-auto max-w-(--fd-layout-width) items-center px-4"><a class="inline-flex items-center gap-2.5 font-semibold active" href="/zh/index.html" data-status="active" aria-current="page">Lowpoly World</a><ul class="flex flex-row items-center gap-2 px-6 max-sm:hidden"><li class="list-none text-sm"><a class="[&_svg]:size-4 inline-flex items-center gap-1 p-2 text-fd-muted-foreground transition-colors hover:text-fd-accent-foreground data-[active=true]:text-fd-primary active" aria-current="page" data-active="false" href="/zh/index.html" data-status="active">模型库</a></li><li class="list-none text-sm"><a class="[&_svg]:size-4 inline-flex items-center gap-1 p-2 text-fd-muted-foreground transition-colors hover:text-fd-accent-foreground data-[active=true]:text-fd-primary" data-active="false" href="/zh/docs/index.html">使用文档</a></li></ul><div class="flex flex-row items-center justify-end gap-1.5 flex-1 max-lg:hidden"><button type="button" aria-disabled="false" data-base-ui-click-trigger="" id="base-ui-_R_67aqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center gap-2 border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground w-full rounded-full ps-2.5 max-w-[240px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>搜索文档<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button><button class="inline-flex items-center rounded-full border p-1 overflow-hidden *:rounded-full" aria-label="切换主题" data-theme-toggle=""><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sun size-6.5 p-1.5 text-fd-muted-foreground" aria-hidden="true"><circle cx="12" cy="12" r="4"></circle><path d="M12 2v2"></path><path d="M12 20v2"></path><path d="m4.93 4.93 1.41 1.41"></path><path d="m17.66 17.66 1.41 1.41"></path><path d="M2 12h2"></path><path d="M20 12h2"></path><path d="m6.34 17.66-1.41 1.41"></path><path d="m19.07 4.93-1.41 1.41"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon size-6.5 p-1.5 text-fd-muted-foreground" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></button><button type="button" aria-disabled="false" data-base-ui-click-trigger="" id="base-ui-_R_fe7aqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="选择语言" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground gap-1.5 p-1.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-5" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg></button><ul class="flex flex-row gap-2 items-center empty:hidden"><li class="list-none -mx-1 first:ms-0 last:me-0"><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-5" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a></li><li class="list-none -mx-1 first:ms-0 last:me-0"><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-5" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a></li></ul></div><div class="flex flex-row items-center ms-auto -me-1.5 lg:hidden"><button type="button" aria-disabled="false" data-base-ui-click-trigger="" id="base-ui-_R_6naqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="打开搜索" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-disabled="false" aria-expanded="false" aria-label="切换菜单" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div></div></nav></header><main id="main-content" class="detail-main"><a href="/zh/index.html" role="button" tabindex="0" data-slot="button" class="group/button inline-flex shrink-0 items-center justify-center rounded-lg border-[0.5px] border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-none outline-none select-none focus-visible:border-ring focus-visible:outline-[0.5px] focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 text-primary underline-offset-4 hover:underline h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 back-link">返回目录</a><h1 class="detail-heading">资产详情</h1><section class="catalog-state" aria-live="polite"><div class="state-panel"><p class="state-loading" role="status">正在读取公开目录…</p></div></section></main></main><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/asset/":$R[10]={preloads:$R[11]=["/assets/asset-B_RjD9N6.js","/assets/useTranslation-DdiJj5BA.js","/assets/use-catalog-B4zb4r4j.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216652,s:"success",ssr:!0},$R[14]={i:"#$lang#zh",u:1793638216652,s:"success",ssr:!0},$R[15]={i:"#$lang#asset##zh#asset#",u:1793638216652,s:"success",ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="zh"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>Lowpoly World — 公开 3D 资产画廊</title><meta name="description" content="展示 Hugging Face Dataset 中经过人工批准的低多边形资产。"/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/asset-B29kNjHy.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/gallery-shell-BUNd-Rj8.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
+
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/zh/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="收起侧边栏" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/index.html" data-status="active" aria-current="page">模型库</a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground mb-6" href="/zh/docs/index.html">使用文档</a><div class="flex flex-col"></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/zh/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="打开侧边栏" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="���择语言" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>简体中文</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="选项" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="true" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8 site-main gallery-main layout:[--fd-page-width:100%]" role="main"><div class="detail-main"><a href="/zh/index.html" role="button" tabindex="0" data-slot="button" class="group/button inline-flex shrink-0 items-center justify-center rounded-lg border-[0.5px] border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-none outline-none select-none focus-visible:border-ring focus-visible:outline-[0.5px] focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 text-primary underline-offset-4 hover:underline h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 back-link">返回目录</a><h1 class="detail-heading">资产详情</h1><section class="catalog-state" aria-live="polite"><div class="state-panel"><p class="state-loading" role="status">正在读取公开目录…</p></div></section></div></article></div></div></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/asset/":$R[10]={preloads:$R[11]=["/assets/asset-B29kNjHy.js","/assets/useTranslation-D9SCoej_.js","/assets/gallery-shell-BUNd-Rj8.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511678,s:"success",ssr:!0},$R[14]={i:"#$lang#zh",u:1793640511678,s:"success",ssr:!0},$R[15]={i:"#$lang#asset##zh#asset#",u:1793640511678,s:"success",ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
zh/docs/blender/index.html
CHANGED
|
@@ -1,10 +1,10 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="zh"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/zh/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="收起侧边栏" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>搜索文档<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/index.html" data-status="active" aria-current="page">模型库</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">使用文档</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">快速开始</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">下载</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">许可协议</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D 格式</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/zh/docs/blender/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">在 Blender 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">在 Three.js 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">数据集结构</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">参与贡献</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">发布说明</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">常见问题</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/zh/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="打开搜索" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="打开侧边栏" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="选择语言" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>简体中文</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="选项" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="zh"><h1 class="text-[1.75em] font-semibold">在 Blender 中使用</h1><p class="mb-8 text-lg text-fd-muted-foreground">在 Blender 中打开已发布的 BLEND 源文件。</p><div class="prose flex-1">
|
| 4 |
<ol>
|
| 5 |
<li>打开资产详情页。</li>
|
| 6 |
<li>当链接存在时,选择 <strong>下载 BLEND</strong>。</li>
|
| 7 |
<li>在 Blender 中打开下载的文件。</li>
|
| 8 |
<li>编辑前先检查场景、关联贴图、缩放比例、原点和材质。</li>
|
| 9 |
</ol>
|
| 10 |
-
<p>网站不会在每个 Blender 版本上测试所有文件。缺少 BLEND URL 意味着发布者未在目录中提供公开的 BLEND 链接。</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/zh/docs/formats/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>上一页</span><span class="font-medium"><span class="fd-page-tree-item-name">3D 格式</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/zh/docs/threejs/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">下一页<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">在 Three.js 中使用</span></span></a></nav></article></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216694,s:"success",ssr:!0},$R[14]={i:"#$lang#zh",u:1793638216694,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#zh#docs#blender",u:1793638216711,s:"success",l:$R[16]={path:"blender.zh.mdx",locale:"zh",contentLocale:"zh",title:"在 Blender 中使用",description:"在 Blender 中打开已发布的 BLEND 源文件。",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"zh:root",name:"文档",description:void 0,children:$R[20]=[$R[21]={$id:"zh:index.mdx",type:"page",name:"快速开始",description:"浏览经校验的 Lowpoly World 公开资产目录。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/zh/docs",$ref:"index.mdx"},$R[22]={$id:"zh:download.mdx",type:"page",name:"下载",description:"仅下载经校验的公开目录记录所链接的文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/zh/docs/download",$ref:"download.mdx"},$R[23]={$id:"zh:license.mdx",type:"page",name:"许可协议",description:"在复用前阅读每项已发布资产记录的许可说明。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/zh/docs/license",$ref:"license.mdx"},$R[24]={$id:"zh:formats.mdx",type:"page",name:"3D 格式",description:"了解画廊读取的已发布模型格式与预览图格式。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"zh:blender.mdx",type:"page",name:"在 Blender 中使用",description:"在 Blender 中打开已发布的 BLEND 源文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"zh:threejs.mdx",type:"page",name:"在 Three.js 中使用",description:"使用官方 Three.js GLTFLoader 加载公开的 GLB URL。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/zh/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"zh:dataset-schema.mdx",type:"page",name:"数据集结构",description:"读取版本 2 目录指针、快照与可选资产元数据。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/zh/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"zh:contributing.mdx",type:"page",name:"参与贡献",description:"在不发布未获批资产的前提下为公开网站做贡献。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/zh/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"zh:release-notes.mdx",type:"page",name:"发布说明",description:"跟踪公开网站变更及其经验证的发布状态。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/zh/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"zh:faq.mdx",type:"page",name:"常见问题",description:"关于空目录、元数据、预览图和公开文件的常见问题解答。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/zh/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="zh"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>在 Blender 中使用 | Lowpoly World</title><meta name="description" content="在 Blender 中打开已发布的 BLEND 源文件。"/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/zh/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="收起侧边栏" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>搜索文档<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/index.html" data-status="active" aria-current="page">模型库</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">使用文档</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">快速开始</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">下载</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">许可协议</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D 格式</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/zh/docs/blender/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">在 Blender 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">在 Three.js 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">数据集结构</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">参与贡献</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">发布说明</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">常见问题</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/zh/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="打开搜索" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="打开侧边栏" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="选择语言" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>简体中文</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="选项" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="zh"><h1 class="text-[1.75em] font-semibold">在 Blender 中使用</h1><p class="mb-8 text-lg text-fd-muted-foreground">在 Blender 中打开已发布的 BLEND 源文件。</p><div class="prose flex-1">
|
| 4 |
<ol>
|
| 5 |
<li>打开资产详情页。</li>
|
| 6 |
<li>当链接存在时,选择 <strong>下载 BLEND</strong>。</li>
|
| 7 |
<li>在 Blender 中打开下载的文件。</li>
|
| 8 |
<li>编辑前先检查场景、关联贴图、缩放比例、原点和材质。</li>
|
| 9 |
</ol>
|
| 10 |
+
<p>网站不会在每个 Blender 版本上测试所有文件。缺少 BLEND URL 意味着发布者未在目录中提供公开的 BLEND 链接。</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/zh/docs/formats/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>上一页</span><span class="font-medium"><span class="fd-page-tree-item-name">3D 格式</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/zh/docs/threejs/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">下一页<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">在 Three.js 中使用</span></span></a></nav></article></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511704,s:"success",ssr:!0},$R[14]={i:"#$lang#zh",u:1793640511704,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#zh#docs#blender",u:1793640511715,s:"success",l:$R[16]={path:"blender.zh.mdx",locale:"zh",contentLocale:"zh",title:"在 Blender 中使用",description:"在 Blender 中打开已发布的 BLEND 源文件。",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"zh:root",name:"文档",description:void 0,children:$R[20]=[$R[21]={$id:"zh:index.mdx",type:"page",name:"快速开始",description:"浏览经校验的 Lowpoly World 公开资产目录。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/zh/docs",$ref:"index.mdx"},$R[22]={$id:"zh:download.mdx",type:"page",name:"下载",description:"仅下载经校验的公开目录记录所链接的文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/zh/docs/download",$ref:"download.mdx"},$R[23]={$id:"zh:license.mdx",type:"page",name:"许可协议",description:"在复用前阅读每项已发布资产记录的许可说明。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/zh/docs/license",$ref:"license.mdx"},$R[24]={$id:"zh:formats.mdx",type:"page",name:"3D 格式",description:"了解画廊读取的已发布模型格式与预览图格式。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"zh:blender.mdx",type:"page",name:"在 Blender 中使用",description:"在 Blender 中打开已发布的 BLEND 源文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"zh:threejs.mdx",type:"page",name:"在 Three.js 中使用",description:"使用官方 Three.js GLTFLoader 加载公开的 GLB URL。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/zh/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"zh:dataset-schema.mdx",type:"page",name:"数据集结构",description:"读取版本 2 目录指针、快照与可选资产元数据。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/zh/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"zh:contributing.mdx",type:"page",name:"参与贡献",description:"在不发布未获批资产的前提下为公开网站做贡献。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/zh/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"zh:release-notes.mdx",type:"page",name:"发布说明",description:"跟踪公开网站变更及其经验证的发布状态。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/zh/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"zh:faq.mdx",type:"page",name:"常见问题",description:"关于空目录、元数据、预览图和公开文件的常见问题解答。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/zh/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
zh/docs/contributing/index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="zh"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/zh/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="收起侧边栏" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>搜索文档<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/index.html" data-status="active" aria-current="page">模型库</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">使用文档</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">快速开始</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">下载</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">许可协议</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D 格式</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">在 Blender 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">在 Three.js 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">数据集结构</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/zh/docs/contributing/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">参与贡献</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">发布说明</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">常见问题</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/zh/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="打开搜索" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="打开侧边栏" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="选择语言" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>简体中文</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="选项" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="zh"><h1 class="text-[1.75em] font-semibold">参与贡献</h1><p class="mb-8 text-lg text-fd-muted-foreground">在不发布未获批资产的前提下为公开网站做贡献。</p><div class="prose flex-1">
|
| 4 |
<p>对本仓库的贡献应聚焦于改进公开网站、其文档或离线测试。请保持改动精简,并说明其对静态构建产物的影响。</p>
|
| 5 |
<p>请勿提交模型文件、Google Drive 内容、审核记录、凭证或未发布的元数据。未经单独的权利审核与发布者明确批准,请勿向公开 Dataset 添加资产。</p>
|
| 6 |
-
<p>在发起拉取请求(Pull Request)前,请基于锁文件安装依赖并运行网站配置的检查项。仓库的 CI 工作流是必跑命令的唯一事实来源。</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/zh/docs/dataset-schema/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>上一页</span><span class="font-medium"><span class="fd-page-tree-item-name">数据集结构</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/zh/docs/release-notes/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">下一页<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">发布说明</span></span></a></nav></article></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216699,s:"success",ssr:!0},$R[14]={i:"#$lang#zh",u:1793638216699,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#zh#docs#contributing",u:1793638216730,s:"success",l:$R[16]={path:"contributing.zh.mdx",locale:"zh",contentLocale:"zh",title:"参与贡献",description:"在不发布未获批资产的前提下为公开网站做贡献。",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"zh:root",name:"文档",description:void 0,children:$R[20]=[$R[21]={$id:"zh:index.mdx",type:"page",name:"快速开始",description:"浏览经校验的 Lowpoly World 公开资产目录。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/zh/docs",$ref:"index.mdx"},$R[22]={$id:"zh:download.mdx",type:"page",name:"下载",description:"仅下载经校验的公开目录记录所链接的文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/zh/docs/download",$ref:"download.mdx"},$R[23]={$id:"zh:license.mdx",type:"page",name:"许可协议",description:"在复用前阅读每项已发布资产记录的许可说明。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/zh/docs/license",$ref:"license.mdx"},$R[24]={$id:"zh:formats.mdx",type:"page",name:"3D 格式",description:"了解画廊读取的已发布模型格式与预览图格式。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"zh:blender.mdx",type:"page",name:"在 Blender 中使用",description:"在 Blender 中打开已发布的 BLEND 源文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"zh:threejs.mdx",type:"page",name:"在 Three.js 中使用",description:"使用官方 Three.js GLTFLoader 加载公开的 GLB URL。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/zh/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"zh:dataset-schema.mdx",type:"page",name:"数据集结构",description:"读取版本 2 目录指针、快照与可选资产元数据。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/zh/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"zh:contributing.mdx",type:"page",name:"参与贡献",description:"在不发布未获批资产的前提下为公开网站做贡献。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/zh/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"zh:release-notes.mdx",type:"page",name:"发布说明",description:"跟踪公开网站变更及其经验证的发布状态。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/zh/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"zh:faq.mdx",type:"page",name:"常见问题",description:"关于空目录、元数据、预览图和公开文件的常见问题解答。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/zh/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="zh"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>参与贡献 | Lowpoly World</title><meta name="description" content="在不发布未获批资产的前提下为公开网站做贡献。"/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/zh/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="收起侧边栏" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>搜索文档<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/index.html" data-status="active" aria-current="page">模型库</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">使用文档</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">快速开始</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">下载</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">许可协议</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D 格式</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">在 Blender 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">在 Three.js 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">数据集结构</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/zh/docs/contributing/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">参与贡献</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">发布说明</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">常见问题</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/zh/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="打开搜索" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="打开侧边栏" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden to-40%"><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="选择语言" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>简体中文</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="选项" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="zh"><h1 class="text-[1.75em] font-semibold">参与贡献</h1><p class="mb-8 text-lg text-fd-muted-foreground">在不发布未获批资产的前提下为公开网站做贡献。</p><div class="prose flex-1">
|
| 4 |
<p>对本仓库的贡献应聚焦于改进公开网站、其文档或离线测试。请保持改动精简,并说明其对静态构建产物的影响。</p>
|
| 5 |
<p>请勿提交模型文件、Google Drive 内容、审核记录、凭证或未发布的元数据。未经单独的权利审核与发布者明确批准,请勿向公开 Dataset 添加资产。</p>
|
| 6 |
+
<p>在发起拉取请求(Pull Request)前,请基于锁文件安装依赖并运行网站配置的检查项。仓库的 CI 工作流是必跑命令的唯一事实来源。</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/zh/docs/dataset-schema/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>上一页</span><span class="font-medium"><span class="fd-page-tree-item-name">数据集结构</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/zh/docs/release-notes/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">下一页<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">发布说明</span></span></a></nav></article></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511719,s:"success",ssr:!0},$R[14]={i:"#$lang#zh",u:1793640511719,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#zh#docs#contributing",u:1793640511753,s:"success",l:$R[16]={path:"contributing.zh.mdx",locale:"zh",contentLocale:"zh",title:"参与贡献",description:"在不发布未获批资产的前提下为公开网站做贡献。",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"zh:root",name:"文档",description:void 0,children:$R[20]=[$R[21]={$id:"zh:index.mdx",type:"page",name:"快速开始",description:"浏览经校验的 Lowpoly World 公开资产目录。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/zh/docs",$ref:"index.mdx"},$R[22]={$id:"zh:download.mdx",type:"page",name:"下载",description:"仅下载经校验的公开目录记录所链接的文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/zh/docs/download",$ref:"download.mdx"},$R[23]={$id:"zh:license.mdx",type:"page",name:"许可协议",description:"在复用前阅读每项已发布资产记录的许可说明。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/zh/docs/license",$ref:"license.mdx"},$R[24]={$id:"zh:formats.mdx",type:"page",name:"3D 格式",description:"了解画廊读取的已发布模型格式与预览图格式。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"zh:blender.mdx",type:"page",name:"在 Blender 中使用",description:"在 Blender 中打开已发布的 BLEND 源文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"zh:threejs.mdx",type:"page",name:"在 Three.js 中使用",description:"使用官方 Three.js GLTFLoader 加载公开的 GLB URL。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/zh/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"zh:dataset-schema.mdx",type:"page",name:"数据集结构",description:"读取版本 2 目录指针、快照与可选资产元数据。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/zh/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"zh:contributing.mdx",type:"page",name:"参与贡献",description:"在不发布未获批资产的前提下为公开网站做贡献。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/zh/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"zh:release-notes.mdx",type:"page",name:"发布说明",description:"跟踪公开网站变更及其经验证的发布状态。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/zh/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"zh:faq.mdx",type:"page",name:"常见问题",description:"关于空目录、元数据、预览图和公开文件的常见问题解答。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/zh/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
zh/docs/dataset-schema/index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="zh"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/zh/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="收起侧边栏" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>搜索文档<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/index.html" data-status="active" aria-current="page">模型库</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">使用文档</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">快速开始</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">下载</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">许可协议</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D 格式</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">在 Blender 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">在 Three.js 中使用</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/zh/docs/dataset-schema/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">数据集结构</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">参与贡献</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">发布说明</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">常见问题</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/zh/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="打开搜索" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="打开侧边栏" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">数据集结构</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">本页内容</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="选择语言" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>简体中文</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="选项" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="zh"><h1 class="text-[1.75em] font-semibold">数据集结构</h1><p class="mb-8 text-lg text-fd-muted-foreground">读取版本 2 目录指针、快照与可选资产元数据。</p><div class="prose flex-1">
|
| 4 |
<h2 id="目录指针" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#目录指针">目录指针</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">复制标题链接</span></button></h2>
|
| 5 |
<p><code>catalog/v1/latest.json</code> 是结构版本(schema version)为 2 的对象。它包含 <code>count</code>、<code>index_path</code> 以及完整的 <code>index_sha256</code>。不可变快照路径必须与该摘要的前 20 位十六进制字符匹配。</p>
|
| 6 |
<p>快照同样使用结构版本 2。其 <code>count</code> 必须同时等于指针中的数量和资产记录条数。资产 ID 必须唯一。浏览器会在解析记录前校验原始快照字节。</p>
|
|
@@ -13,4 +13,4 @@
|
|
| 13 |
<p><code>prompt_url</code> 指向可选的纯文本。<code>settings_url</code> 指向可选的 JSON 配方参数。可选资源加载失败不会隐藏已通过校验的模型记录。</p>
|
| 14 |
<p>仅当 <code>source_input_image</code> 包含 Dataset URL、<code>rights_confirmed: true</code> 以及非空的 <code>rights_statement</code> 时,读取器才会显示该来源输入图。它绝不会将预览图当作来源输入图处理。</p>
|
| 15 |
<h2 id="url-边界" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#url-边界">URL 边界</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">复制标题链接</span></button></h2>
|
| 16 |
-
<p>每条记录的 URL 都必须使用 HTTPS、不包含内嵌凭证,并保持在 <code>daftAI2026/3d-assets</code> Dataset 路径下。指向其他仓库、外部主机或非 HTTPS 协议的 URL 均无法通过目录校验。</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/zh/docs/threejs/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>上一页</span><span class="font-medium"><span class="fd-page-tree-item-name">在 Three.js 中使用</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/zh/docs/contributing/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">下一页<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">参与贡献</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>本页内容</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#目录指针" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">目录指针</a><a data-active="false" href="#必填记录字段" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">必填记录字段</a><a data-active="false" href="#详情资源" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">详情资源</a><a data-active="false" href="#url-边界" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">URL 边界</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216698,s:"success",ssr:!0},$R[14]={i:"#$lang#zh",u:1793638216698,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#zh#docs#dataset-schema",u:1793638216725,s:"success",l:$R[16]={path:"dataset-schema.zh.mdx",locale:"zh",contentLocale:"zh",title:"数据集结构",description:"读取版本 2 目录指针、快照与可选资产元数据。",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"zh:root",name:"文档",description:void 0,children:$R[20]=[$R[21]={$id:"zh:index.mdx",type:"page",name:"快速开始",description:"浏览经校验的 Lowpoly World 公开资产目录。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/zh/docs",$ref:"index.mdx"},$R[22]={$id:"zh:download.mdx",type:"page",name:"下载",description:"仅下载经校验的公开目录记录所链接的文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/zh/docs/download",$ref:"download.mdx"},$R[23]={$id:"zh:license.mdx",type:"page",name:"许可协议",description:"在复用前阅读每项已发布资产记录的许可说明。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/zh/docs/license",$ref:"license.mdx"},$R[24]={$id:"zh:formats.mdx",type:"page",name:"3D 格式",description:"了解画廊读取的已发布模型格式与预览图格式。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"zh:blender.mdx",type:"page",name:"在 Blender 中使用",description:"在 Blender 中打开已发布的 BLEND 源文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"zh:threejs.mdx",type:"page",name:"在 Three.js 中使用",description:"使用官方 Three.js GLTFLoader 加载公开的 GLB URL。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/zh/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"zh:dataset-schema.mdx",type:"page",name:"数据集结构",description:"读取版本 2 目录指针、快照与可选资产元数据。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/zh/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"zh:contributing.mdx",type:"page",name:"参与贡献",description:"在不发布未获批资产的前提下为公开网站做贡献。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/zh/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"zh:release-notes.mdx",type:"page",name:"发布说明",description:"跟踪公开网站变更及其经验证的发布状态。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/zh/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"zh:faq.mdx",type:"page",name:"常见问题",description:"关于空目录、元数据、预览图和公开文件的常见问题解答。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/zh/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="zh"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>数据集结构 | Lowpoly World</title><meta name="description" content="读取版本 2 目录指针、快照与可选资产元数据。"/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/zh/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="收起侧边栏" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>搜索文档<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/index.html" data-status="active" aria-current="page">模型库</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">使用文档</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">快速开始</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/download/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">下载</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">许可协议</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D 格式</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">在 Blender 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">在 Three.js 中使用</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/zh/docs/dataset-schema/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">数据集结构</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">参与贡献</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">发布说明</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">常见问题</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/zh/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="打开搜索" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="打开侧边栏" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">数据集结构</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">本页内容</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="选择语言" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>简体中文</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="选项" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="zh"><h1 class="text-[1.75em] font-semibold">数据集结构</h1><p class="mb-8 text-lg text-fd-muted-foreground">读取版本 2 目录指针、快照与可选资产元数据。</p><div class="prose flex-1">
|
| 4 |
<h2 id="目录指针" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#目录指针">目录指针</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">复制标题链接</span></button></h2>
|
| 5 |
<p><code>catalog/v1/latest.json</code> 是结构版本(schema version)为 2 的对象。它包含 <code>count</code>、<code>index_path</code> 以及完整的 <code>index_sha256</code>。不可变快照路径必须与该摘要的前 20 位十六进制字符匹配。</p>
|
| 6 |
<p>快照同样使用结构版本 2。其 <code>count</code> 必须同时等于指针中的数量和资产记录条数。资产 ID 必须唯一。浏览器会在解析记录前校验原始快照字节。</p>
|
|
|
|
| 13 |
<p><code>prompt_url</code> 指向可选的纯文本。<code>settings_url</code> 指向可选的 JSON 配方参数。可选资源加载失败不会隐藏已通过校验的模型记录。</p>
|
| 14 |
<p>仅当 <code>source_input_image</code> 包含 Dataset URL、<code>rights_confirmed: true</code> 以及非空的 <code>rights_statement</code> 时,读取器才会显示该来源输入图。它绝不会将预览图当作来源输入图处理。</p>
|
| 15 |
<h2 id="url-边界" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#url-边界">URL 边界</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">复制标题链接</span></button></h2>
|
| 16 |
+
<p>每条记录的 URL 都必须使用 HTTPS、不包含内嵌凭证,并保持在 <code>daftAI2026/3d-assets</code> Dataset 路径下。指向其他仓库、外部主机或非 HTTPS 协议的 URL 均无法通过目录校验。</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full" href="/zh/docs/threejs/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>上一页</span><span class="font-medium"><span class="fd-page-tree-item-name">在 Three.js 中使用</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/zh/docs/contributing/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">下一页<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">参与贡献</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>本页内容</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#目录指针" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">目录指针</a><a data-active="false" href="#必填记录字段" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">必填记录字段</a><a data-active="false" href="#详情资源" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">详情资源</a><a data-active="false" href="#url-边界" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">URL 边界</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511705,s:"success",ssr:!0},$R[14]={i:"#$lang#zh",u:1793640511705,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#zh#docs#dataset-schema",u:1793640511721,s:"success",l:$R[16]={path:"dataset-schema.zh.mdx",locale:"zh",contentLocale:"zh",title:"数据集结构",description:"读取版本 2 目录指针、快照与可选资产元数据。",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"zh:root",name:"文档",description:void 0,children:$R[20]=[$R[21]={$id:"zh:index.mdx",type:"page",name:"快速开始",description:"浏览经校验的 Lowpoly World 公开资产目录。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/zh/docs",$ref:"index.mdx"},$R[22]={$id:"zh:download.mdx",type:"page",name:"下载",description:"仅下载经校验的公开目录记录所链接的文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/zh/docs/download",$ref:"download.mdx"},$R[23]={$id:"zh:license.mdx",type:"page",name:"许可协议",description:"在复用前阅读每项已发布资产记录的许可说明。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/zh/docs/license",$ref:"license.mdx"},$R[24]={$id:"zh:formats.mdx",type:"page",name:"3D 格式",description:"了解画廊读取的已发布模型格式与预览图格式。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"zh:blender.mdx",type:"page",name:"在 Blender 中使用",description:"在 Blender 中打开已发布的 BLEND 源文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"zh:threejs.mdx",type:"page",name:"在 Three.js 中使用",description:"使用官方 Three.js GLTFLoader 加载公开的 GLB URL。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/zh/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"zh:dataset-schema.mdx",type:"page",name:"数据集结构",description:"读取版本 2 目录指针、快照与可选资产元数据。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/zh/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"zh:contributing.mdx",type:"page",name:"参与贡献",description:"在不发布未获批资产的前提下为公开网站做贡献。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/zh/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"zh:release-notes.mdx",type:"page",name:"发布说明",description:"跟踪公开网站变更及其经验证的发布状态。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/zh/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"zh:faq.mdx",type:"page",name:"常见问题",description:"关于空目录、元数据、预览图和公开文件的常见问题解答。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/zh/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
zh/docs/download/index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="zh"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
-
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/zh/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" aria-label="收起侧边栏" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>搜索文档<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/index.html" data-status="active" aria-current="page">模型库</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">使用文档</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">快速开始</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/zh/docs/download/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">下载</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">许可协议</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D 格式</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">在 Blender 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">在 Three.js 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">数据集结构</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">参与贡献</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">发布说明</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">常见问题</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/zh/index.html" data-status="active" aria-current="page">Lowpoly World</a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="打开搜索" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="打开侧边栏" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">下载</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">本页内容</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="选择语言" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>简体中文</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="选项" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="zh"><h1 class="text-[1.75em] font-semibold">下载</h1><p class="mb-8 text-lg text-fd-muted-foreground">仅下载经校验的公开目录记录所链接的文件。</p><div class="prose flex-1">
|
| 4 |
<h2 id="下载单个文件" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#下载单个文件">下载单个文件</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">复制标题链接</span></button></h2>
|
| 5 |
<p>从经校验的目录打开资产。存在对应文件时,使用<strong>下载 GLB</strong>或<strong>下载 BLEND</strong>。文件直接来自公开 Dataset,不经过网站代理。</p>
|
| 6 |
<h2 id="下载多个资产" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#下载多个资产">下载多个资产</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">复制标题链接</span></button></h2>
|
|
@@ -12,4 +12,4 @@
|
|
| 12 |
</ol>
|
| 13 |
<p>清单和命令使用固定的 Dataset 提交版本,不使用源 ZIP 哈希或资产版本标签。运行命令前,先安装 <a href="https://huggingface.co/docs/huggingface_hub/guides/cli" rel="noreferrer noopener" target="_blank">Hugging Face 官方 CLI</a>。网站不会替你执行命令。</p>
|
| 14 |
<p>文件保存交给浏览器,页面无法确认文件是否已保存。批量选择不会在浏览器中组装 ZIP 或预载全部文件。</p>
|
| 15 |
-
<p>无法读取 Dataset 提交版本时,固定版本下载须重试后使用。网站不补造缺失文件。预览图不是源模型。</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full active" href="/zh/docs/index.html" data-status="active" aria-current="page"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>上一页</span><span class="font-medium"><span class="fd-page-tree-item-name">快速开始</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/zh/docs/license/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">下一页<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">许可协议</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>本页内容</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#下载单个文件" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">下载单个文件</a><a data-active="false" href="#下载多个资产" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">下载多个资产</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DEDbfth6.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/search-BN8TeJzU.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-R7iKUM_S.js","/assets/layout.shared-BilCH_HV.js","/assets/preload-helper-BLdHbfdN.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DEDbfth6.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-CQLqrWbY.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-xE9tg3Nw.js","/assets/useTranslation-DdiJj5BA.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793638216651,s:"success",ssr:!0},$R[14]={i:"#$lang#zh",u:1793638216651,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#zh#docs#download",u:1793638216678,s:"success",l:$R[16]={path:"download.zh.mdx",locale:"zh",contentLocale:"zh",title:"下载",description:"仅下载经校验的公开目录记录所链接的文件。",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"zh:root",name:"文档",description:void 0,children:$R[20]=[$R[21]={$id:"zh:index.mdx",type:"page",name:"快速开始",description:"浏览经校验的 Lowpoly World 公开资产目录。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/zh/docs",$ref:"index.mdx"},$R[22]={$id:"zh:download.mdx",type:"page",name:"下载",description:"仅下载经校验的公开目录记录所链接的文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/zh/docs/download",$ref:"download.mdx"},$R[23]={$id:"zh:license.mdx",type:"page",name:"许可协议",description:"在复用前阅读每项已发布资产记录的许可说明。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/zh/docs/license",$ref:"license.mdx"},$R[24]={$id:"zh:formats.mdx",type:"page",name:"3D 格式",description:"了解画廊读取的已发布模型格式与预览图格式。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"zh:blender.mdx",type:"page",name:"在 Blender 中使用",description:"在 Blender 中打开已发布的 BLEND 源文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"zh:threejs.mdx",type:"page",name:"在 Three.js 中使用",description:"使用官方 Three.js GLTFLoader 加载公开的 GLB URL。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/zh/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"zh:dataset-schema.mdx",type:"page",name:"数据集结构",description:"读取版本 2 目录指针、快照与可选资产元数据。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/zh/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"zh:contributing.mdx",type:"page",name:"参与贡献",description:"在不发布未获批资产的前提下为公开网站做贡献。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/zh/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"zh:release-notes.mdx",type:"page",name:"发布说明",description:"跟踪公开网站变更及其经验证的发布状态。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/zh/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"zh:faq.mdx",type:"page",name:"常见问题",description:"关于空目录、元数据、预览图和公开文件的常见问题解答。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/zh/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-DEDbfth6.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="zh"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/hugging-face-8sK58_pS.svg"/><link rel="stylesheet" href="/assets/app-os4DUCKe.css" data-precedence="default"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><title>下载 | Lowpoly World</title><meta name="description" content="仅下载经校验的公开目录记录所链接的文件。"/><link rel="modulepreload" href="/assets/index-CppN1qEU.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/rolldown-runtime-XKyaHtl9.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/react-DlmbjZJV.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-on-change-Da5Kx5YO.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/jsx-runtime-LKYXHABd.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/with-selector-DBm9DdtQ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useSelector-BnOeXcNr.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/lazyRouteComponent-DBEQERMJ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/layout.shared-ThDtfT9i.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/preload-helper-BLdHbfdN.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/url-BF81yL4m-Cs729U5G.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/use-search-eSAjMJVB-DEsp1VDZ.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/route-T9SvWTng.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/_-B7QAxwJh.js" fetchPriority="low"/><link rel="modulepreload" href="/assets/useTranslation-D9SCoej_.js" fetchPriority="low"/><link rel="license" href="data:text/plain;base64,VGhlIE1JVCBMaWNlbnNlIChNSVQpCgpDb3B5cmlnaHQgKGMpIDIwMTggQnJpYW4gVmF1Z2huCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="react-resizable-panels MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBGdW1hCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cm9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsCmluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbApjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKClRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbApjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCkZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCkxJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCk9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFClNPRlRXQVJFLgo=" type="text/plain" title="Fumadocs MIT"/><link rel="license" href="data:text/plain;base64,TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBzaGFkY24KClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==" type="text/plain" title="shadcn/ui MIT"/><link rel="license" href="/assets/OFL-Inter-CkXC2-KD.txt" type="text/plain" title="Inter OFL"/><link rel="license" href="/assets/OFL-Han-Sans-SC-C-pMJCH3.txt" type="text/plain" title="Han Sans SC OFL"/><link rel="license" href="/assets/OFL-Geist-Mono-D48Szx8o.txt" type="text/plain" title="Geist Mono OFL"/></head><body class="ui"><script>((e,i,s,u,m,a,l,h)=>{let d=document.documentElement,w=["light","dark"];function p(n){(Array.isArray(e)?e:[e]).forEach(y=>{let k=y==="class",S=k&&a?m.map(f=>a[f]||f):m;k?(d.classList.remove(...S),d.classList.add(a&&a[n]?a[n]:n)):d.setAttribute(y,n)}),R(n)}function R(n){h&&w.includes(n)&&(d.style.colorScheme=n)}function c(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(u)p(u);else try{let n=localStorage.getItem(i)||s,y=l&&n==="system"?c():n;p(y)}catch(n){}})("class","theme","light",null,["light","dark"],null,true,true)</script><!--$--><div data-closed="" role="presentation" hidden="" style="user-select:none;-webkit-user-select:none" class="fixed inset-0 z-50 backdrop-blur-xs bg-fd-overlay data-open:animate-fd-fade-in data-closed:animate-fd-fade-out"></div><!--/$--><!--$--><div id="fd-spacious-layout" class="relative grid min-h-(--fd-layout-height) bg-fd-card transition-[grid-template-columns] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none [--fd-layout-height:calc(100dvh-var(--fd-banner-height,0px))] [--fd-header-height:--spacing(14)] [--fd-page-width:760px] [--fd-sidebar-width:0px] [--fd-sidebar-col:var(--fd-sidebar-width)] [--fd-toc-width:0px] max-md:[--fd-docs-row-3:calc(var(--fd-banner-height,0px)+var(--fd-header-height)+var(--fd-toc-popover-height,0px))] md:h-(--fd-layout-height) md:overflow-clip print:h-auto print:overflow-visible" style="grid-template:"sidebar header right" auto
|
| 2 |
"sidebar toc-popover right" var(--fd-toc-popover-height, 0px)
|
| 3 |
+
"sidebar main right" 1fr / var(--fd-sidebar-col) minmax(0, 1fr) auto"><aside id="nd-sidebar" data-collapsed="false" class="[grid-area:sidebar] flex min-h-0 overflow-clip text-sm md:layout:[--fd-sidebar-width:268px] max-md:hidden"><div class="flex flex-col shrink-0 w-(--fd-sidebar-width) transition-[opacity,translate] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none"><div class="flex items-center gap-2 h-(--fd-header-height) my-2 ps-5.5 pe-3"><a class="inline-flex items-center gap-2 min-w-0 me-auto text-[0.9375rem] font-semibold active" href="/zh/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" aria-label="收起侧边栏" aria-controls="nd-sidebar" aria-expanded="true" data-collapsed="false" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 size-8 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></div><div class="flex flex-col gap-2 px-3 empty:hidden"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_kaqj6_" aria-haspopup="dialog" aria-expanded="false" data-search-full="" class="inline-flex items-center border bg-fd-secondary/50 p-1.5 text-sm text-fd-muted-foreground transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground h-10 gap-3 rounded-xl ps-[calc(--spacing(2.5)-1px)] pe-2 [&_svg]:shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search size-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg>搜索文档<div class="ms-auto inline-flex gap-0.5"><kbd class="rounded-md border bg-fd-background px-1.5">⌘</kbd><kbd class="rounded-md border bg-fd-background px-1.5">K</kbd></div></button></div><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" class="min-h-0 flex-1 mt-2"><div data-id="base-ui-_R_6aqj6_-viewport" tabindex="-1" class="size-full overscroll-contain px-3 pt-4 pb-8 mask-t-from-[calc(100%-16px)] mask-b-from-[calc(100%-32px)] base-ui-disable-scrollbar" style="overflow:scroll"><div class="relative flex flex-col"><div aria-hidden="true" class="absolute top-0 left-0 py-0.5 rounded-lg bg-fd-accent/60 bg-clip-content opacity-0 pointer-events-none transition-opacity duration-200 ease-[cubic-bezier(0.22,1,0.36,1)] motion-safe:transition-[translate,width,height,opacity]"></div><div class="flex flex-col"><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/index.html" data-status="active" aria-current="page">模型库</a><p class="inline-flex items-center gap-2 mt-6 empty:mb-0 first:mt-0 mb-1.5 px-2.5 text-xs font-medium text-fd-muted-foreground [&_svg]:size-3.5 [&_svg]:shrink-0">使用文档</p><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground active" href="/zh/docs/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open" aria-hidden="true"><path d="M12 5v16"></path><path d="M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z"></path></svg></span><span class="fd-page-tree-item-name">快速开始</span></a><a data-active="true" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 bg-fd-primary/10 text-fd-primary active" href="/zh/docs/download/index.html" data-status="active" aria-current="page"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download" aria-hidden="true"><path d="M12 15V3"></path><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><path d="m7 10 5 5 5-5"></path></svg></span><span class="fd-page-tree-item-name">下载</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/license/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="fd-page-tree-item-name">许可协议</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/formats/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">3D 格式</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/blender/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-box" aria-hidden="true"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"></path><path d="m3.3 7 8.7 5 8.7-5"></path><path d="M12 22V12"></path></svg></span><span class="fd-page-tree-item-name">在 Blender 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/threejs/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code" aria-hidden="true"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg></span><span class="fd-page-tree-item-name">在 Three.js 中使用</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/dataset-schema/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table" aria-hidden="true"><path d="M12 3v18"></path><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path></svg></span><span class="fd-page-tree-item-name">数据集结构</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/contributing/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-git-pull-request" aria-hidden="true"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" x2="6" y1="9" y2="21"></line></svg></span><span class="fd-page-tree-item-name">参与贡献</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/release-notes/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw-clock lucide-history" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"></path><path d="M3 3v5h5"></path><path d="M12 7v5l4 2"></path></svg></span><span class="fd-page-tree-item-name">发布说明</span></a><a data-active="false" class="relative flex w-full items-center gap-3 rounded-lg px-2.5 py-2 text-start wrap-anywhere outline-none transition-colors focus-visible:ring-2 focus-visible:ring-fd-ring [&_svg]:size-4 [&_svg]:shrink-0 text-fd-muted-foreground hover:text-fd-accent-foreground" href="/zh/docs/faq/index.html"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></span><span class="fd-page-tree-item-name">常见问题</span></a></div></div></div></div></div></aside><header id="nd-subnav" class="sticky top-(--fd-banner-height,0px) z-30 [grid-area:header] flex items-center h-(--fd-header-height) ps-4 pe-2.5 bg-fd-card md:hidden"><a class="inline-flex items-center gap-2.5 me-auto font-semibold active" href="/zh/index.html" data-status="active" aria-current="page"><span class="text-sm">Lowpoly World</span></a><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_4iqj6_" aria-haspopup="dialog" aria-expanded="false" data-search="" aria-label="打开搜索" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><button type="button" aria-label="打开侧边栏" aria-expanded="false" aria-controls="nd-sidebar-mobile" class="inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 p-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left lucide-sidebar" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button></header><!--$--><div class="sticky top-[calc(var(--fd-banner-height,0px)+var(--fd-header-height))] z-30 [grid-area:toc-popover] self-start md:hidden"><div data-closed="" class="max-md:layout:[--fd-toc-popover-height:--spacing(10)]"><header class="bg-fd-card"><button type="button" tabindex="0" aria-expanded="false" class="flex w-full h-10 items-center gap-2.5 px-4 text-start text-sm text-fd-muted-foreground focus-visible:outline-none"><svg role="progressbar" viewBox="0 0 18 18" width="18" height="18" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="9" cy="9" r="7.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="47.12388980384689" stroke-dashoffset="47.12388980384689" transform="rotate(-90 9 9)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden flex-1 transition-colors"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1"><span class="fd-page-tree-item-name">下载</span></span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-4 shrink-0 mx-0.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></header></div><div class="absolute inset-x-2 top-full h-[calc(var(--fd-layout-height)-var(--fd-header-height)-100%)] rounded-t-2xl border-x border-t outline-8 outline-fd-card [clip-path:inset(0_-8px_-8px)] bg-origin-border bg-linear-to-b from-fd-background to-transparent to-[16px] pointer-events-none"></div></div><div id="nd-page-panel" class="@container relative flex flex-col min-w-0 min-h-0 [grid-area:main] mx-2 bg-fd-background md:ms-0 md:my-2 md:overflow-clip md:rounded-2xl md:border md:shadow-sm print:overflow-visible"><header class="absolute inset-x-0 top-0 z-10 flex items-center gap-1.5 h-(--fd-header-height) ps-6 pe-4 bg-linear-to-b from-fd-background to-transparent pointer-events-none *:pointer-events-auto max-md:hidden from-50%"><div class="flex items-center gap-1.5 min-w-0 transition-[opacity,visibility] duration-300 motion-reduce:transition-none invisible opacity-0 @max-5xl:visible @max-5xl:opacity-100 @max-5xl:transition-none"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_fjcqqj6_" aria-haspopup="dialog" aria-expanded="false" class="flex items-center gap-2 min-w-0 h-8 px-1.5 -mx-1.5 rounded-lg text-start text-sm transition-colors text-fd-muted-foreground hover:bg-fd-accent/60 hover:text-fd-accent-foreground"><svg role="progressbar" viewBox="0 0 16 16" width="16" height="16" aria-valuenow="0" aria-valuemin="0" aria-valuemax="1" class="shrink-0"><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" class="stroke-current/25"></circle><circle cx="8" cy="8" r="6.5" fill="none" stroke-width="1.5" stroke="currentColor" stroke-linecap="round" stroke-dasharray="40.840704496667314" stroke-dashoffset="40.840704496667314" transform="rotate(-90 8 8)" class="transition-[stroke-dashoffset] duration-300"></circle></svg><span class="flex min-w-0 overflow-hidden"><span class="truncate motion-safe:animate-fd-roll-in" style="--fd-roll:1">本页内容</span></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="flex items-center gap-0.5 rounded-lg bg-fd-background ms-auto"><button type="button" tabindex="0" data-base-ui-click-trigger="" id="base-ui-_R_ukcqqj6_" aria-haspopup="dialog" aria-expanded="false" aria-label="选择语言" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 h-7.5 gap-1.5 px-2 text-fd-muted-foreground max-lg:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages size-4" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg><span>简体中文</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 transition-transform in-data-popup-open:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a href="https://huggingface.co/datasets/daftAI2026/3d-assets" rel="noreferrer noopener" target="_blank" aria-label="Hugging Face" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><img src="/assets/hugging-face-8sK58_pS.svg" width="20" height="20" alt="" aria-hidden="true"/></a><a href="https://github.com/daftAI2026/lowpoly-world" rel="noreferrer noopener" target="_blank" aria-label="GitHub" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground max-lg:hidden" data-active="false"><svg aria-hidden="true" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a><button type="button" tabindex="0" aria-haspopup="menu" aria-expanded="false" id="base-ui-_R_r4cqqj6_" aria-label="选项" class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1.5 [&_svg]:size-4.5 text-fd-muted-foreground data-popup-open:bg-fd-accent data-popup-open:text-fd-accent-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis lucide-more-horizontal" aria-hidden="true"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></header><div class="flex flex-1 items-start px-4 md:min-h-0 md:pt-(--fd-header-height) md:px-[max(--spacing(6),calc((100%-var(--fd-page-width)-var(--fd-toc-width))/2))] md:overflow-y-auto md:overscroll-y-contain md:scrollbar-thin md:scrollbar-gutter-stable md:[--fd-docs-height:calc(var(--fd-layout-height)-var(--spacing)*4-2px-var(--fd-header-height))]"><article id="nd-page" data-full="false" class="flex flex-col gap-4 w-full min-w-0 max-w-(--fd-page-width) pt-6 pb-8" lang="zh"><h1 class="text-[1.75em] font-semibold">下载</h1><p class="mb-8 text-lg text-fd-muted-foreground">仅下载经校验的公开目录记录所链接的文件。</p><div class="prose flex-1">
|
| 4 |
<h2 id="下载单个文件" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#下载单个文件">下载单个文件</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">复制标题链接</span></button></h2>
|
| 5 |
<p>从经校验的目录打开资产。存在对应文件时,使用<strong>下载 GLB</strong>或<strong>下载 BLEND</strong>。文件直接来自公开 Dataset,不经过网站代理。</p>
|
| 6 |
<h2 id="下载多个资产" class="group/heading flex scroll-m-28 flex-row items-center gap-1"><a data-card="" href="#下载多个资产">下载多个资产</a><button aria-live="polite" class="inline-flex items-center justify-center rounded-md text-sm font-medium duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground p-1 [&_svg]:size-4 not-prose shrink-0 text-fd-muted-foreground opacity-0 transition-opacity group-hover/heading:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><span class="sr-only">复制标题链接</span></button></h2>
|
|
|
|
| 12 |
</ol>
|
| 13 |
<p>清单和命令使用固定的 Dataset 提交版本,不使用源 ZIP 哈希或资产版本标签。运行命令前,先安装 <a href="https://huggingface.co/docs/huggingface_hub/guides/cli" rel="noreferrer noopener" target="_blank">Hugging Face 官方 CLI</a>。网站不会替你执行命令。</p>
|
| 14 |
<p>文件保存交给浏览器,页面无法确认文件是否已保存。批量选择不会在浏览器中组装 ZIP 或预载全部文件。</p>
|
| 15 |
+
<p>无法读取 Dataset 提交版本时,固定版本下载须重试后使用。网站不补造缺失文件。预览图不是源模型。</p></div><nav class="@container grid grid-cols-2 gap-3 mt-8"><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full active" href="/zh/docs/index.html" data-status="active" aria-current="page"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left size-3.5 transition-transform group-hover:-translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>上一页</span><span class="font-medium"><span class="fd-page-tree-item-name">快速开始</span></span></a><a class="group flex flex-col gap-1 rounded-2xl border p-4 text-sm transition-colors hover:bg-fd-accent/40 @max-md:col-span-full col-start-2 items-end text-end" href="/zh/docs/license/index.html"><span class="inline-flex items-center gap-1.5 text-fd-muted-foreground">下一页<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right size-3.5 transition-transform group-hover:translate-x-0.5 rtl:rotate-180" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span><span class="font-medium"><span class="fd-page-tree-item-name">许可协议</span></span></a></nav></article><div id="nd-toc" class="sticky top-0 flex flex-col shrink-0 w-(--fd-toc-width) h-full ps-16 pt-8 pb-4 overflow-clip *:min-w-[calc(var(--fd-toc-width)---spacing(16))] layout:[--fd-toc-width:--spacing(76)] transition-[width,padding,opacity,visibility] duration-300 ease-in-out motion-reduce:transition-none max-md:hidden @max-5xl:invisible @max-5xl:w-0 @max-5xl:ps-0 @max-5xl:opacity-0 @max-5xl:transition-none"><h3 class="inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-align-start lucide-text lucide-align-left size-4" aria-hidden="true"><path d="M21 5H3"></path><path d="M15 12H3"></path><path d="M17 19H3"></path></svg>本页内容</h3><div class="relative min-h-0 text-sm overflow-x-clip overflow-y-auto overscroll-contain [scrollbar-width:none] mask-[linear-gradient(to_bottom,transparent,white_16px,white_calc(100%-16px),transparent)] py-3"><div class="relative flex flex-col"><div class="absolute inset-0 bg-linear-to-r from-fd-primary/10 [clip-path:inset(0_0_100%)] data-ready:transition-[clip-path] duration-300 ease-out"></div><a data-active="false" href="#下载单个文件" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">下载单个文件</a><a data-active="false" href="#下载多个资产" class="group prose relative py-1 pe-2 text-[0.8125rem]/5 scroll-m-4 text-fd-muted-foreground hover:text-fd-accent-foreground transition-colors wrap-anywhere data-[active=true]:text-fd-primary" style="padding-inline-start:8px">下载多个资产</a></div></div></div></div></div><!--/$--></div><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--><script data-tsr-stream-part="">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CppN1qEU.js","/assets/rolldown-runtime-XKyaHtl9.js","/assets/react-DlmbjZJV.js","/assets/use-on-change-Da5Kx5YO.js","/assets/jsx-runtime-LKYXHABd.js","/assets/with-selector-DBm9DdtQ.js","/assets/useSelector-BnOeXcNr.js","/assets/lazyRouteComponent-DBEQERMJ.js","/assets/layout.shared-ThDtfT9i.js","/assets/preload-helper-BLdHbfdN.js","/assets/url-BF81yL4m-Cs729U5G.js","/assets/use-search-eSAjMJVB-DEsp1VDZ.js","/assets/remove-undefined-C_sjLeQT-CP3jfHCp.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CppN1qEU.js"}}]},"/$lang":$R[8]={preloads:$R[9]=["/assets/route-T9SvWTng.js"]},"/$lang/docs/$":$R[10]={preloads:$R[11]=["/assets/_-B7QAxwJh.js","/assets/useTranslation-D9SCoej_.js"]}}},matches:$R[12]=[$R[13]={i:"__root__#",u:1793640511678,s:"success",ssr:!0},$R[14]={i:"#$lang#zh",u:1793640511678,s:"success",ssr:!0},$R[15]={i:"#$lang#docs#$#zh#docs#download",u:1793640511694,s:"success",l:$R[16]={path:"download.zh.mdx",locale:"zh",contentLocale:"zh",title:"下载",description:"仅下载经校验的公开目录记录所链接的文件。",pageTree:$R[17]={$fumadocs_loader:"page-tree",data:$R[18]={type:"root",$ref:$R[19]={folder:"",meta:"meta.json"},$id:"zh:root",name:"文档",description:void 0,children:$R[20]=[$R[21]={$id:"zh:index.mdx",type:"page",name:"快速开始",description:"浏览经校验的 Lowpoly World 公开资产目录。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-book-open\" aria-hidden=\"true\">\x3Cpath d=\"M12 5v16\">\x3C/path>\x3Cpath d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\">\x3C/path>\x3C/svg>",url:"/zh/docs",$ref:"index.mdx"},$R[22]={$id:"zh:download.mdx",type:"page",name:"下载",description:"仅下载经校验的公开目录记录所链接的文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-download\" aria-hidden=\"true\">\x3Cpath d=\"M12 15V3\">\x3C/path>\x3Cpath d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\">\x3C/path>\x3Cpath d=\"m7 10 5 5 5-5\">\x3C/path>\x3C/svg>",url:"/zh/docs/download",$ref:"download.mdx"},$R[23]={$id:"zh:license.mdx",type:"page",name:"许可协议",description:"在复用前阅读每项已发布资产记录的许可说明。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-scale\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Cpath d=\"m19 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\">\x3C/path>\x3Cpath d=\"m5 8 3 8a5 5 0 0 1-6 0zV7\">\x3C/path>\x3Cpath d=\"M7 21h10\">\x3C/path>\x3C/svg>",url:"/zh/docs/license",$ref:"license.mdx"},$R[24]={$id:"zh:formats.mdx",type:"page",name:"3D 格式",description:"了解画廊读取的已发布模型格式与预览图格式。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/formats",$ref:"formats.mdx"},$R[25]={$id:"zh:blender.mdx",type:"page",name:"在 Blender 中使用",description:"在 Blender 中打开已发布的 BLEND 源文件。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-box\" aria-hidden=\"true\">\x3Cpath d=\"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z\">\x3C/path>\x3Cpath d=\"m3.3 7 8.7 5 8.7-5\">\x3C/path>\x3Cpath d=\"M12 22V12\">\x3C/path>\x3C/svg>",url:"/zh/docs/blender",$ref:"blender.mdx"},$R[26]={$id:"zh:threejs.mdx",type:"page",name:"在 Three.js 中使用",description:"使用官方 Three.js GLTFLoader 加载公开的 GLB URL。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-code\" aria-hidden=\"true\">\x3Cpath d=\"m16 18 6-6-6-6\">\x3C/path>\x3Cpath d=\"m8 6-6 6 6 6\">\x3C/path>\x3C/svg>",url:"/zh/docs/threejs",$ref:"threejs.mdx"},$R[27]={$id:"zh:dataset-schema.mdx",type:"page",name:"数据集结构",description:"读取版本 2 目录指针、快照与可选资产元数据。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-table\" aria-hidden=\"true\">\x3Cpath d=\"M12 3v18\">\x3C/path>\x3Crect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\">\x3C/rect>\x3Cpath d=\"M3 9h18\">\x3C/path>\x3Cpath d=\"M3 15h18\">\x3C/path>\x3C/svg>",url:"/zh/docs/dataset-schema",$ref:"dataset-schema.mdx"},$R[28]={$id:"zh:contributing.mdx",type:"page",name:"参与贡献",description:"在不发布未获批资产的前提下为公开网站做贡献。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-git-pull-request\" aria-hidden=\"true\">\x3Ccircle cx=\"18\" cy=\"18\" r=\"3\">\x3C/circle>\x3Ccircle cx=\"6\" cy=\"6\" r=\"3\">\x3C/circle>\x3Cpath d=\"M13 6h3a2 2 0 0 1 2 2v7\">\x3C/path>\x3Cline x1=\"6\" x2=\"6\" y1=\"9\" y2=\"21\">\x3C/line>\x3C/svg>",url:"/zh/docs/contributing",$ref:"contributing.mdx"},$R[29]={$id:"zh:release-notes.mdx",type:"page",name:"发布说明",description:"跟踪公开网站变更及其经验证的发布状态。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-rotate-ccw-clock lucide-history\" aria-hidden=\"true\">\x3Cpath d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\">\x3C/path>\x3Cpath d=\"M3 3v5h5\">\x3C/path>\x3Cpath d=\"M12 7v5l4 2\">\x3C/path>\x3C/svg>",url:"/zh/docs/release-notes",$ref:"release-notes.mdx"},$R[30]={$id:"zh:faq.mdx",type:"page",name:"常见问题",description:"关于空目录、元数据、预览图和公开文件的常见问题解答。",icon:"\x3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-circle-question-mark lucide-help-circle lucide-circle-help\" aria-hidden=\"true\">\x3Ccircle cx=\"12\" cy=\"12\" r=\"10\">\x3C/circle>\x3Cpath d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\">\x3C/path>\x3Cpath d=\"M12 17h.01\">\x3C/path>\x3C/svg>",url:"/zh/docs/faq",$ref:"faq.mdx"}]}}},ssr:!0}]})($R["tsr"]);$_TSR.e();{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('data-tsr-stream-part'))p.remove();s.remove()}</script><script type="module" async="" src="/assets/index-CppN1qEU.js"></script><script>document.currentScript.remove();/*$tsr-stream-boundary*/</script></body></html>
|