@playcanvas/web-components 0.1.8 → 0.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/app.d.ts +21 -1
- package/dist/asset.d.ts +3 -1
- package/dist/async-element.d.ts +2 -1
- package/dist/components/camera-component.d.ts +28 -4
- package/dist/components/collision-component.d.ts +4 -4
- package/dist/components/component.d.ts +3 -1
- package/dist/components/element-component.d.ts +4 -1
- package/dist/components/gsplat-component.d.ts +4 -1
- package/dist/components/light-component.d.ts +50 -4
- package/dist/components/listener-component.d.ts +4 -1
- package/dist/components/render-component.d.ts +4 -1
- package/dist/components/rigidbody-component.d.ts +4 -4
- package/dist/components/screen-component.d.ts +4 -1
- package/dist/components/script-component.d.ts +4 -1
- package/dist/components/script.d.ts +3 -1
- package/dist/components/sound-component.d.ts +5 -2
- package/dist/components/sound-slot.d.ts +3 -1
- package/dist/entity.d.ts +14 -3
- package/dist/fog.d.ts +28 -0
- package/dist/material.d.ts +3 -1
- package/dist/model.d.ts +3 -1
- package/dist/module.d.ts +6 -0
- package/dist/pwc.cjs +569 -96
- package/dist/pwc.cjs.map +1 -1
- package/dist/pwc.js +569 -96
- package/dist/pwc.js.map +1 -1
- package/dist/pwc.min.js +1 -1
- package/dist/pwc.min.js.map +1 -1
- package/dist/pwc.mjs +570 -97
- package/dist/pwc.mjs.map +1 -1
- package/dist/scene.d.ts +3 -1
- package/dist/sky.d.ts +3 -1
- package/package.json +10 -9
- package/src/app.ts +208 -2
- package/src/asset.ts +3 -1
- package/src/async-element.ts +2 -1
- package/src/components/camera-component.ts +69 -7
- package/src/components/collision-component.ts +4 -4
- package/src/components/component.ts +3 -1
- package/src/components/element-component.ts +4 -2
- package/src/components/gsplat-component.ts +4 -1
- package/src/components/light-component.ts +107 -7
- package/src/components/listener-component.ts +4 -1
- package/src/components/render-component.ts +4 -1
- package/src/components/rigidbody-component.ts +4 -4
- package/src/components/screen-component.ts +4 -1
- package/src/components/script-component.ts +26 -14
- package/src/components/script.ts +3 -1
- package/src/components/sound-component.ts +4 -1
- package/src/components/sound-slot.ts +3 -1
- package/src/entity.ts +149 -32
- package/src/fog.ts +121 -0
- package/src/material.ts +5 -3
- package/src/model.ts +3 -1
- package/src/module.ts +6 -0
- package/src/scene.ts +13 -11
- package/src/sky.ts +3 -1
package/dist/pwc.min.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("playcanvas")):"function"==typeof define&&define.amd?define(["exports","playcanvas"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).pd={},t.pc)}(this,(function(t,e){"use strict";class s extends HTMLElement{constructor(){super(),this._readyPromise=new Promise((t=>{this._readyResolve=t}))}get closestApp(){var t;return null===(t=this.parentElement)||void 0===t?void 0:t.closest("pc-app")}get closestEntity(){var t;return null===(t=this.parentElement)||void 0===t?void 0:t.closest("pc-entity")}_onReady(){this._readyResolve(),this.dispatchEvent(new CustomEvent("ready"))}ready(){return this._readyPromise.then((()=>this))}}class i extends HTMLElement{constructor(){super(),this.loadPromise=this.loadModule()}async loadModule(){const t=this.getAttribute("name"),s=this.getAttribute("glue"),i=this.getAttribute("wasm"),n=this.getAttribute("fallback");"Basis"===t?e.basisInitialize({glueUrl:s,wasmUrl:i,fallbackUrl:n}):(e.WasmModule.setConfig(t,{glueUrl:s,wasmUrl:i,fallbackUrl:n}),await new Promise((s=>{e.WasmModule.getInstance(t,(()=>s()))})))}getLoadPromise(){return this.loadPromise}}customElements.define("pc-module",i);class n extends s{constructor(){super(),this._canvas=null,this._alpha=!0,this._antialias=!0,this._depth=!0,this._stencil=!0,this._highResolution=!1,this.app=null,this._onWindowResize=this._onWindowResize.bind(this)}async connectedCallback(){const t=this.querySelectorAll(":scope > pc-module");await Promise.all(Array.from(t).map((t=>t.getLoadPromise()))),this._canvas=document.createElement("canvas"),this.appendChild(this._canvas),this.app=new e.Application(this._canvas,{graphicsDeviceOptions:{alpha:this._alpha,antialias:this._antialias,depth:this._depth,stencil:this._stencil},keyboard:new e.Keyboard(window),mouse:new e.Mouse(this._canvas)}),this.app.graphicsDevice.maxPixelRatio=this._highResolution?window.devicePixelRatio:1,this.app.setCanvasFillMode(e.FILLMODE_FILL_WINDOW),this.app.setCanvasResolution(e.RESOLUTION_AUTO);const s=this.querySelectorAll(":scope > pc-asset");Array.from(s).forEach((t=>{t.createAsset();const e=t.asset;e&&this.app.assets.add(e)}));const i=this.querySelectorAll(":scope > pc-material");Array.from(i).forEach((t=>{t.createMaterial()})),this.app.preload((()=>{this.app.start(),window.addEventListener("resize",this._onWindowResize),this._onReady()}))}disconnectedCallback(){this.app&&(this.app.destroy(),this.app=null),window.removeEventListener("resize",this._onWindowResize),this._canvas&&this.contains(this._canvas)&&(this.removeChild(this._canvas),this._canvas=null)}_onWindowResize(){this.app&&this.app.resizeCanvas()}set alpha(t){this._alpha=t}get alpha(){return this._alpha}set antialias(t){this._antialias=t}get antialias(){return this._antialias}set depth(t){this._depth=t}get depth(){return this._depth}set highResolution(t){this._highResolution=t,this.app&&(this.app.graphicsDevice.maxPixelRatio=t?window.devicePixelRatio:1)}get highResolution(){return this._highResolution}set stencil(t){this._stencil=t}get stencil(){return this._stencil}static get observedAttributes(){return["alpha","antialias","depth","stencil","high-resolution"]}attributeChangedCallback(t,e,s){switch(t){case"alpha":this.alpha="false"!==s;break;case"antialias":this.antialias="false"!==s;break;case"depth":this.depth="false"!==s;break;case"high-resolution":this.highResolution="false"!==s;break;case"stencil":this.stencil="false"!==s}}}customElements.define("pc-app",n);const a={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},o=t=>{const s=a[t.toLowerCase()];if(s)return(new e.Color).fromString(s);if(t.startsWith("#"))return(new e.Color).fromString(t);const i=t.split(" ").map(Number);return new e.Color(i)},r=t=>{const s=t.split(" ").map(Number);return new e.Vec2(s)},h=t=>{const s=t.split(" ").map(Number);return new e.Vec3(s)},l=t=>{const s=t.split(" ").map(Number);return new e.Vec4(s)};class c extends s{constructor(){super(...arguments),this._enabled=!0,this._name="Untitled",this._position=new e.Vec3,this._rotation=new e.Vec3,this._scale=new e.Vec3(1,1,1),this._tags=[],this.entity=null}async connectedCallback(){const t=this.closestApp;if(!t)return;await t.ready();const s=t.app;this.entity=new e.Entity(this._name,s);const i=this.getAttribute("enabled"),n=this.getAttribute("name"),a=this.getAttribute("position"),o=this.getAttribute("rotation"),r=this.getAttribute("scale"),l=this.getAttribute("tags");i&&(this.enabled="false"!==i),n&&(this.name=n),a&&(this.position=h(a)),o&&(this.rotation=h(o)),r&&(this.scale=h(r)),l&&(this.tags=l.split(",").map((t=>t.trim())));const c=this.closestEntity;c?c.ready().then((()=>{c.entity.addChild(this.entity),this._onReady()})):(s.root.addChild(this.entity),this._onReady())}disconnectedCallback(){if(this.entity){this.querySelectorAll("pc-entity").forEach((t=>{t.entity=null})),this.entity.destroy(),this.entity=null}}set enabled(t){this._enabled=t,this.entity&&(this.entity.enabled=t)}get enabled(){return this._enabled}set name(t){this._name=t,this.entity&&(this.entity.name=t)}get name(){return this._name}set position(t){this._position=t,this.entity&&this.entity.setLocalPosition(this._position)}get position(){return this._position}set rotation(t){this._rotation=t,this.entity&&this.entity.setLocalEulerAngles(this._rotation)}get rotation(){return this._rotation}set scale(t){this._scale=t,this.entity&&this.entity.setLocalScale(this._scale)}get scale(){return this._scale}set tags(t){this._tags=t,this.entity&&(this.entity.tags.clear(),this.entity.tags.add(this._tags))}get tags(){return this._tags}static get observedAttributes(){return["enabled","name","position","rotation","scale","tags"]}attributeChangedCallback(t,e,s){switch(t){case"enabled":this.enabled="false"!==s;break;case"name":this.name=s;break;case"position":this.position=h(s);break;case"rotation":this.rotation=h(s);break;case"scale":this.scale=h(s);break;case"tags":this.tags=s.split(",").map((t=>t.trim()))}}}customElements.define("pc-entity",c);const p=new Map([["bin","binary"],["css","css"],["frag","shader"],["glb","container"],["glsl","shader"],["hdr","texture"],["html","html"],["jpg","texture"],["js","script"],["json","json"],["mp3","audio"],["mjs","script"],["ply","gsplat"],["png","texture"],["txt","text"],["vert","shader"],["webp","texture"]]);class u extends HTMLElement{constructor(){super(...arguments),this._preload=!1,this.asset=null}disconnectedCallback(){this.destroyAsset()}createAsset(){var t;const s=this.getAttribute("id")||"",i=this.getAttribute("src")||"";let n=this.getAttribute("type");if(!n){const e=i.split(".").pop();n=null!==(t=p.get(e||""))&&void 0!==t?t:null}n?(this.asset=new e.Asset(s,n,{url:i}),this.asset.preload=this.preload):console.warn(`Unsupported asset type: ${i}`)}destroyAsset(){this.asset&&(this.asset.unload(),this.asset=null)}set preload(t){this._preload=t,this.asset&&(this.asset.preload=t)}get preload(){return this._preload}static get(t){const e=document.querySelector(`pc-asset[id="${t}"]`);return null==e?void 0:e.asset}static get observedAttributes(){return["preload"]}attributeChangedCallback(t,e,s){"preload"===t&&(this.preload=this.hasAttribute("preload"))}}customElements.define("pc-asset",u);class d extends s{constructor(t){super(),this._enabled=!0,this._component=null,this._componentName=t}getInitialComponentData(){return{}}async addComponent(){const t=this.closestEntity;if(t){await t.ready();const e=this.getInitialComponentData();this._component=t.entity.addComponent(this._componentName,e)}}initComponent(){}async connectedCallback(){var t;await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),await this.addComponent(),this.initComponent(),this._onReady()}disconnectedCallback(){this.component&&this.component.entity&&(this._component.entity.removeComponent(this._componentName),this._component=null)}get component(){return this._component}set enabled(t){this._enabled=t,this.component&&(this.component.enabled=t)}get enabled(){return this._enabled}static get observedAttributes(){return["enabled"]}attributeChangedCallback(t,e,s){if("enabled"===t)this.enabled="false"!==s}}class f extends d{constructor(){super("audiolistener")}get component(){return super.component}}customElements.define("pc-listener",f);class m extends d{constructor(){super("camera"),this._clearColor=new e.Color(.75,.75,.75,1),this._clearColorBuffer=!0,this._clearDepthBuffer=!0,this._clearStencilBuffer=!1,this._cullFaces=!0,this._farClip=1e3,this._flipFaces=!1,this._fov=45,this._frustumCulling=!0,this._nearClip=.1,this._orthographic=!1,this._orthoHeight=10,this._priority=0,this._rect=new e.Vec4(0,0,1,1),this._scissorRect=new e.Vec4(0,0,1,1)}getInitialComponentData(){return{clearColor:this._clearColor,clearColorBuffer:this._clearColorBuffer,clearDepthBuffer:this._clearDepthBuffer,clearStencilBuffer:this._clearStencilBuffer,cullFaces:this._cullFaces,farClip:this._farClip,flipFaces:this._flipFaces,fov:this._fov,frustumCulling:this._frustumCulling,nearClip:this._nearClip,orthographic:this._orthographic,orthoHeight:this._orthoHeight,priority:this._priority,rect:this._rect,scissorRect:this._scissorRect}}get xrAvailable(){var t;const s=null===(t=this.component)||void 0===t?void 0:t.system.app.xr;return s&&s.supported&&s.isAvailable(e.XRTYPE_VR)}startXr(t,e){this.component&&this.xrAvailable&&this.component.startXr(t,e,{callback:t=>{t&&console.error(`WebXR Immersive VR failed to start: ${t.message}`)}})}endXr(){this.component&&this.component.endXr()}get component(){return super.component}set clearColor(t){this._clearColor=t,this.component&&(this.component.clearColor=t)}get clearColor(){return this._clearColor}set clearColorBuffer(t){this._clearColorBuffer=t,this.component&&(this.component.clearColorBuffer=t)}get clearColorBuffer(){return this._clearColorBuffer}set clearDepthBuffer(t){this._clearDepthBuffer=t,this.component&&(this.component.clearDepthBuffer=t)}get clearDepthBuffer(){return this._clearDepthBuffer}set clearStencilBuffer(t){this._clearStencilBuffer=t,this.component&&(this.component.clearStencilBuffer=t)}get clearStencilBuffer(){return this._clearStencilBuffer}set cullFaces(t){this._cullFaces=t,this.component&&(this.component.cullFaces=t)}get cullFaces(){return this._cullFaces}set farClip(t){this._farClip=t,this.component&&(this.component.farClip=t)}get farClip(){return this._farClip}set flipFaces(t){this._flipFaces=t,this.component&&(this.component.flipFaces=t)}get flipFaces(){return this._flipFaces}set fov(t){this._fov=t,this.component&&(this.component.fov=t)}get fov(){return this._fov}set frustumCulling(t){this._frustumCulling=t,this.component&&(this.component.frustumCulling=t)}get frustumCulling(){return this._frustumCulling}set nearClip(t){this._nearClip=t,this.component&&(this.component.nearClip=t)}get nearClip(){return this._nearClip}set orthographic(t){this._orthographic=t,this.component&&(this.component.projection=t?e.PROJECTION_ORTHOGRAPHIC:e.PROJECTION_PERSPECTIVE)}get orthographic(){return this._orthographic}set orthoHeight(t){this._orthoHeight=t,this.component&&(this.component.orthoHeight=t)}get orthoHeight(){return this._orthoHeight}set priority(t){this._priority=t,this.component&&(this.component.priority=t)}get priority(){return this._priority}set rect(t){this._rect=t,this.component&&(this.component.rect=t)}get rect(){return this._rect}set scissorRect(t){this._scissorRect=t,this.component&&(this.component.scissorRect=t)}get scissorRect(){return this._scissorRect}static get observedAttributes(){return[...super.observedAttributes,"clear-color","clear-color-buffer","clear-depth-buffer","clear-stencil-buffer","cull-faces","far-clip","flip-faces","fov","frustum-culling","near-clip","orthographic","ortho-height","priority","rect","scissor-rect"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"clear-color":this.clearColor=o(s);break;case"clear-color-buffer":this.clearColorBuffer="false"!==s;break;case"clear-depth-buffer":this.clearDepthBuffer="false"!==s;break;case"clear-stencil-buffer":this.clearStencilBuffer="false"!==s;break;case"cull-faces":this.cullFaces="false"!==s;break;case"far-clip":this.farClip=parseFloat(s);break;case"flip-faces":this.flipFaces="true"!==s;break;case"fov":this.fov=parseFloat(s);break;case"frustum-culling":this.frustumCulling="false"!==s;break;case"near-clip":this.nearClip=parseFloat(s);break;case"orthographic":this.orthographic=this.hasAttribute("orthographic");break;case"ortho-height":this.orthoHeight=parseFloat(s);break;case"priority":this.priority=parseFloat(s);break;case"rect":this.rect=l(s);break;case"scissor-rect":this.scissorRect=l(s)}}}customElements.define("pc-camera",m);class g extends d{constructor(){super("collision"),this._angularOffset=new e.Quat,this._axis=1,this._convexHull=!1,this._halfExtents=new e.Vec3(.5,.5,.5),this._height=2,this._linearOffset=new e.Vec3,this._radius=.5,this._type="box"}getInitialComponentData(){return{axis:this._axis,angularOffset:this._angularOffset,convexHull:this._convexHull,halfExtents:this._halfExtents,height:this._height,linearOffset:this._linearOffset,radius:this._radius,type:this._type}}get component(){return super.component}set angularOffset(t){this._angularOffset=t,this.component&&(this.component.angularOffset=t)}get angularOffset(){return this._angularOffset}set axis(t){this._axis=t,this.component&&(this.component.axis=t)}get axis(){return this._axis}set convexHull(t){this._convexHull=t,this.component&&(this.component.convexHull=t)}get convexHull(){return this._convexHull}set halfExtents(t){this._halfExtents=t,this.component&&(this.component.halfExtents=t)}get halfExtents(){return this._halfExtents}set height(t){this._height=t,this.component&&(this.component.height=t)}get height(){return this._height}set linearOffset(t){this._linearOffset=t,this.component&&(this.component.linearOffset=t)}get linearOffset(){return this._linearOffset}set radius(t){this._radius=t,this.component&&(this.component.radius=t)}get radius(){return this._radius}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"angular-offset","axis","convex-hull","half-extents","height","linear-offset","radius","type"]}attributeChangedCallback(t,s,i){switch(super.attributeChangedCallback(t,s,i),t){case"angular-offset":this.angularOffset=(t=>{const[s,i,n]=t.split(" ").map(Number),a=new e.Quat;return a.setFromEulerAngles(s,i,n),a})(i);break;case"axis":this.axis=parseInt(i,10);break;case"convex-hull":this.convexHull=this.hasAttribute("convex-hull");break;case"half-extents":this.halfExtents=h(i);break;case"height":this.height=parseFloat(i);break;case"linear-offset":this.linearOffset=h(i);break;case"radius":this.radius=parseFloat(i);break;case"type":this.type=i}}}customElements.define("pc-collision",g);class _ extends d{constructor(){super("element"),this._anchor=new e.Vec4(.5,.5,.5,.5),this._asset="",this._autoWidth=!0,this._color=new e.Color(1,1,1,1),this._fontSize=32,this._lineHeight=32,this._pivot=new e.Vec2(.5,.5),this._text="",this._type="group",this._width=0,this._wrapLines=!1}initComponent(){this.component._text._material.useFog=!0}getInitialComponentData(){return{anchor:this._anchor,autoWidth:this._autoWidth,color:this._color,fontAsset:u.get(this._asset).id,fontSize:this._fontSize,lineHeight:this._lineHeight,pivot:this._pivot,type:this._type,text:this._text,width:this._width,wrapLines:this._wrapLines}}get component(){return super.component}set anchor(t){this._anchor=t,this.component&&(this.component.anchor=t)}get anchor(){return this._anchor}set asset(t){this._asset=t;const e=u.get(t);this.component&&e&&(this.component.fontAsset=e.id)}get asset(){return this._asset}set autoWidth(t){this._autoWidth=t,this.component&&(this.component.autoWidth=t)}get autoWidth(){return this._autoWidth}set color(t){this._color=t,this.component&&(this.component.color=t)}get color(){return this._color}set fontSize(t){this._fontSize=t,this.component&&(this.component.fontSize=t)}get fontSize(){return this._fontSize}set lineHeight(t){this._lineHeight=t,this.component&&(this.component.lineHeight=t)}get lineHeight(){return this._lineHeight}set pivot(t){this._pivot=t,this.component&&(this.component.pivot=t)}get pivot(){return this._pivot}set text(t){this._text=t,this.component&&(this.component.text=t)}get text(){return this._text}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}set width(t){this._width=t,this.component&&(this.component.width=t)}get width(){return this._width}set wrapLines(t){this._wrapLines=t,this.component&&(this.component.wrapLines=t)}get wrapLines(){return this._wrapLines}static get observedAttributes(){return[...super.observedAttributes,"anchor","asset","auto-width","color","font-size","line-height","pivot","text","type","width","wrap-lines"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"anchor":this.anchor=l(s);break;case"asset":this.asset=s;break;case"auto-width":this.autoWidth="false"!==s;break;case"color":this.color=o(s);break;case"font-size":this.fontSize=Number(s);break;case"line-height":this.lineHeight=Number(s);break;case"pivot":this.pivot=r(s);break;case"text":this.text=s;break;case"type":this.type=s;break;case"width":this.width=Number(s);break;case"wrap-lines":this.wrapLines=this.hasAttribute(t)}}}customElements.define("pc-element",_);class b extends d{constructor(){super("gsplat"),this._asset=""}getInitialComponentData(){return{asset:u.get(this._asset)}}get component(){return super.component}set asset(t){this._asset=t;const e=u.get(t);this.component&&e&&(this.component.asset=e)}get asset(){return this._asset}static get observedAttributes(){return[...super.observedAttributes,"asset"]}attributeChangedCallback(t,e,s){if(super.attributeChangedCallback(t,e,s),"asset"===t)this.asset=s}}customElements.define("pc-splat",b);class y extends d{constructor(){super("light"),this._castShadows=!1,this._color=new e.Color(1,1,1),this._innerConeAngle=40,this._intensity=1,this._normalOffsetBias=.05,this._outerConeAngle=45,this._range=10,this._shadowBias=.2,this._shadowDistance=16,this._shadowResolution=1024,this._type="directional"}getInitialComponentData(){return{castShadows:this._castShadows,color:this._color,innerConeAngle:this._innerConeAngle,intensity:this._intensity,normalOffsetBias:this._normalOffsetBias,outerConeAngle:this._outerConeAngle,range:this._range,shadowBias:this._shadowBias,shadowDistance:this._shadowDistance,shadowResolution:this._shadowResolution,type:this._type}}get component(){return super.component}set castShadows(t){this._castShadows=t,this.component&&(this.component.castShadows=t)}get castShadows(){return this._castShadows}set color(t){this._color=t,this.component&&(this.component.color=t)}get color(){return this._color}set innerConeAngle(t){this._innerConeAngle=t,this.component&&(this.component.innerConeAngle=t)}get innerConeAngle(){return this._innerConeAngle}set intensity(t){this._intensity=t,this.component&&(this.component.intensity=t)}get intensity(){return this._intensity}set normalOffsetBias(t){this._normalOffsetBias=t,this.component&&(this.component.normalOffsetBias=t)}get normalOffsetBias(){return this._normalOffsetBias}set outerConeAngle(t){this._outerConeAngle=t,this.component&&(this.component.outerConeAngle=t)}get outerConeAngle(){return this._outerConeAngle}set range(t){this._range=t,this.component&&(this.component.range=t)}get range(){return this._range}set shadowBias(t){this._shadowBias=t,this.component&&(this.component.shadowBias=t)}get shadowBias(){return this._shadowBias}set shadowDistance(t){this._shadowDistance=t,this.component&&(this.component.shadowDistance=t)}get shadowDistance(){return this._shadowDistance}set shadowResolution(t){this._shadowResolution=t,this.component&&(this.component.shadowResolution=t)}get shadowResolution(){return this._shadowResolution}set type(t){["directional","omni","spot"].includes(t)?(this._type=t,this.component&&(this.component.type=t)):console.warn(`Invalid light type '${t}', using default type '${this._type}'.`)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"color","cast-shadows","intensity","inner-cone-angle","normal-offset-bias","outer-cone-angle","range","shadow-bias","shadow-distance","shadow-resolution","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"color":this.color=o(s);break;case"cast-shadows":this.castShadows=this.hasAttribute("cast-shadows");break;case"inner-cone-angle":this.innerConeAngle=Number(s);break;case"intensity":this.intensity=Number(s);break;case"normal-offset-bias":this.normalOffsetBias=Number(s);break;case"outer-cone-angle":this.outerConeAngle=Number(s);break;case"range":this.range=Number(s);break;case"shadow-bias":this.shadowBias=Number(s);break;case"shadow-distance":this.shadowDistance=Number(s);break;case"shadow-resolution":this.shadowResolution=Number(s);break;case"type":this.type=s}}}customElements.define("pc-light",y);class v extends HTMLElement{constructor(){super(...arguments),this._diffuse=new e.Color(1,1,1),this._diffuseMap="",this._metalnessMap="",this._normalMap="",this._roughnessMap="",this.material=null}createMaterial(){this.material=new e.StandardMaterial,this.material.glossInvert=!0,this.material.useMetalness=!0,this.material.diffuse=this._diffuse,this.diffuseMap=this._diffuseMap,this.metalnessMap=this._metalnessMap,this.normalMap=this._normalMap,this.roughnessMap=this._roughnessMap,this.material.update()}disconnectedCallback(){this.material&&(this.material.destroy(),this.material=null)}setMap(t,e){if(this.material){const s=u.get(t);s&&(s.loaded?(this.material[e]=s.resource,this.material[e].anisotropy=4):s.once("load",(()=>{this.material[e]=s.resource,this.material[e].anisotropy=4,this.material.update()})))}}set diffuse(t){this._diffuse=t,this.material&&(this.material.diffuse=t)}get diffuse(){return this._diffuse}set diffuseMap(t){this._diffuseMap=t,this.setMap(t,"diffuseMap")}get diffuseMap(){return this._diffuseMap}set metalnessMap(t){this._metalnessMap=t,this.setMap(t,"metalnessMap")}get metalnessMap(){return this._metalnessMap}set normalMap(t){this._normalMap=t,this.setMap(t,"normalMap")}get normalMap(){return this._normalMap}set roughnessMap(t){this._roughnessMap=t,this.setMap(t,"glossMap")}get roughnessMap(){return this._roughnessMap}static get(t){const e=document.querySelector(`pc-material[id="${t}"]`);return null==e?void 0:e.material}static get observedAttributes(){return["diffuse","diffuse-map","metalness-map","normal-map","roughness-map"]}attributeChangedCallback(t,e,s){switch(t){case"diffuse":this.diffuse=o(s);break;case"diffuse-map":this.diffuseMap=s;break;case"metalness-map":this.metalnessMap=s;break;case"normal-map":this.normalMap=s;break;case"roughness-map":this.roughnessMap=s}}}customElements.define("pc-material",v);class C extends d{constructor(){super("render"),this._castShadows=!0,this._material="",this._receiveShadows=!0,this._type="asset"}getInitialComponentData(){return{type:this._type,castShadows:this._castShadows,material:v.get(this._material),receiveShadows:this._receiveShadows}}get component(){return super.component}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}set castShadows(t){this._castShadows=t,this.component&&(this.component.castShadows=t)}get castShadows(){return this._castShadows}set material(t){this._material=t,this.component&&(this.component.material=v.get(t))}get material(){return this._material}set receiveShadows(t){this._receiveShadows=t,this.component&&(this.component.receiveShadows=t)}get receiveShadows(){return this._receiveShadows}static get observedAttributes(){return[...super.observedAttributes,"cast-shadows","material","receive-shadows","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"cast-shadows":this.castShadows="false"!==s;break;case"material":this.material=s;break;case"receive-shadows":this.receiveShadows="false"!==s;break;case"type":this.type=s}}}customElements.define("pc-render",C);class w extends d{constructor(){super("rigidbody"),this._angularDamping=0,this._angularFactor=new e.Vec3(1,1,1),this._friction=.5,this._linearDamping=0,this._linearFactor=new e.Vec3(1,1,1),this._mass=1,this._restitution=0,this._rollingFriction=0,this._type="static"}getInitialComponentData(){return{angularDamping:this._angularDamping,angularFactor:this._angularFactor,friction:this._friction,linearDamping:this._linearDamping,linearFactor:this._linearFactor,mass:this._mass,restitution:this._restitution,rollingFriction:this._rollingFriction,type:this._type}}get component(){return super.component}set angularDamping(t){this._angularDamping=t,this.component&&(this.component.angularDamping=t)}get angularDamping(){return this._angularDamping}set angularFactor(t){this._angularFactor=t,this.component&&(this.component.angularFactor=t)}get angularFactor(){return this._angularFactor}set friction(t){this._friction=t,this.component&&(this.component.friction=t)}get friction(){return this._friction}set linearDamping(t){this._linearDamping=t,this.component&&(this.component.linearDamping=t)}get linearDamping(){return this._linearDamping}set linearFactor(t){this._linearFactor=t,this.component&&(this.component.linearFactor=t)}get linearFactor(){return this._linearFactor}set mass(t){this._mass=t,this.component&&(this.component.mass=t)}get mass(){return this._mass}set restitution(t){this._restitution=t,this.component&&(this.component.restitution=t)}get restitution(){return this._restitution}set rollingFriction(t){this._rollingFriction=t,this.component&&(this.component.rollingFriction=t)}get rollingFriction(){return this._rollingFriction}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"angular-damping","angular-factor","friction","linear-damping","linear-factor","mass","restitution","rolling-friction","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"angular-damping":this.angularDamping=parseFloat(s);break;case"angular-factor":this.angularFactor=h(s);break;case"friction":this.friction=parseFloat(s);break;case"linear-damping":this.linearDamping=parseFloat(s);break;case"linear-factor":this.linearFactor=h(s);break;case"mass":this.mass=parseFloat(s);break;case"restitution":this.restitution=parseFloat(s);break;case"rolling-friction":this.rollingFriction=parseFloat(s);break;case"type":this.type=s}}}customElements.define("pc-rigidbody",w);class k extends d{constructor(){super("screen"),this._screenSpace=!1,this._resolution=new e.Vec2(640,320),this._referenceResolution=new e.Vec2(640,320),this._priority=0,this._blend=!1,this._scaleBlend=.5}getInitialComponentData(){return{priority:this._priority,referenceResolution:this._referenceResolution,resolution:this._resolution,scaleBlend:this._scaleBlend,scaleMode:this._blend?e.SCALEMODE_BLEND:e.SCALEMODE_NONE,screenSpace:this._screenSpace}}get component(){return super.component}set priority(t){this._priority=t,this.component&&(this.component.priority=this._priority)}get priority(){return this._priority}set referenceResolution(t){this._referenceResolution=t,this.component&&(this.component.referenceResolution=this._referenceResolution)}get referenceResolution(){return this._referenceResolution}set resolution(t){this._resolution=t,this.component&&(this.component.resolution=this._resolution)}get resolution(){return this._resolution}set scaleBlend(t){this._scaleBlend=t,this.component&&(this.component.scaleBlend=this._scaleBlend)}get scaleBlend(){return this._scaleBlend}set blend(t){this._blend=t,this.component&&(this.component.scaleMode=this._blend?e.SCALEMODE_BLEND:e.SCALEMODE_NONE)}get blend(){return this._blend}set screenSpace(t){this._screenSpace=t,this.component&&(this.component.screenSpace=this._screenSpace)}get screenSpace(){return this._screenSpace}static get observedAttributes(){return[...super.observedAttributes,"blend","screen-space","resolution","reference-resolution","priority","scale-blend"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"priority":this.priority=parseInt(s,10);break;case"reference-resolution":this.referenceResolution=r(s);break;case"resolution":this.resolution=r(s);break;case"scale-blend":this.scaleBlend=parseFloat(s);break;case"blend":this.blend=this.hasAttribute("blend");break;case"screen-space":this.screenSpace=this.hasAttribute("screen-space")}}}customElements.define("pc-screen",k);const S=new e.Vec2,A=new e.Vec3,E=new e.Vec4;class x extends d{constructor(){super("script"),this.observer=new MutationObserver(this.handleMutations.bind(this)),this.observer.observe(this,{childList:!0}),this.addEventListener("scriptattributeschange",this.handleScriptAttributesChange.bind(this)),this.addEventListener("scriptenablechange",this.handleScriptEnableChange.bind(this))}initComponent(){this.querySelectorAll(":scope > pc-script").forEach((t=>{const e=t.getAttribute("name"),s=t.getAttribute("attributes");e&&this.createScript(e,s)}))}applyAttributes(t,s){try{const i=s?JSON.parse(s):{},n=(t,s,i)=>{if("string"==typeof i&&i.startsWith("asset:")){const e=i.slice(6),n=document.querySelector(`pc-asset#${e}`);if(n)return void(t[s]=n.asset)}if(Array.isArray(i)){if(t[s]instanceof e.Vec2)return void(t[s]=S.set(i[0],i[1]));if(t[s]instanceof e.Vec3)return void(t[s]=A.set(i[0],i[1],i[2]));if(t[s]instanceof e.Vec4)return void(t[s]=E.set(i[0],i[1],i[2],i[3]))}if(i&&"object"==typeof i&&!Array.isArray(i)){t[s]&&"object"==typeof t[s]||(t[s]={});for(const e in i)n(t[s],e,i[e])}else t[s]=i};for(const e in i)n(t,e,i[e])}catch(t){console.error(`Error parsing attributes JSON string ${s}:`,t)}}handleScriptAttributesChange(t){const e=t.target.getAttribute("name");if(!e||!this.component)return;const s=this.component.get(e);s&&this.applyAttributes(s,t.detail.attributes)}handleScriptEnableChange(t){const e=t.target.getAttribute("name");if(!e||!this.component)return;const s=this.component.get(e);s&&(s.enabled=t.detail.enabled)}createScript(t,e){return this.component?(this.component.on(`create:${t}`,(t=>{this.applyAttributes(t,e)})),this.component.create(t)):null}destroyScript(t){this.component&&this.component.destroy(t)}handleMutations(t){for(const e of t)e.addedNodes.forEach((t=>{if(t instanceof HTMLElement&&"pc-script"===t.tagName.toLowerCase()){const e=t.getAttribute("name"),s=t.getAttribute("attributes");e&&this.createScript(e,s)}})),e.removedNodes.forEach((t=>{if(t instanceof HTMLElement&&"pc-script"===t.tagName.toLowerCase()){const e=t.getAttribute("name");e&&this.destroyScript(e)}}))}disconnectedCallback(){var t;this.observer.disconnect(),null===(t=super.disconnectedCallback)||void 0===t||t.call(this)}get component(){return super.component}}customElements.define("pc-scripts",x);class M extends HTMLElement{constructor(){super(...arguments),this._attributes="{}",this._enabled=!0,this._name=""}set scriptAttributes(t){this._attributes=t,this.dispatchEvent(new CustomEvent("scriptattributeschange",{detail:{attributes:t},bubbles:!0}))}get scriptAttributes(){return this._attributes}set enabled(t){this._enabled=t,this.dispatchEvent(new CustomEvent("scriptenablechange",{detail:{enabled:t},bubbles:!0}))}get enabled(){return this._enabled}set name(t){this._name=t}get name(){return this._name}static get observedAttributes(){return["attributes","enabled","name"]}attributeChangedCallback(t,e,s){switch(t){case"attributes":this.scriptAttributes=s;break;case"enabled":this.enabled="false"!==s;break;case"name":this.name=s}}}customElements.define("pc-script",M);class D extends d{constructor(){super("sound"),this._distanceModel="linear",this._maxDistance=1e4,this._pitch=1,this._positional=!1,this._refDistance=1,this._rollOffFactor=1,this._volume=1}getInitialComponentData(){return{distanceModel:this._distanceModel,maxDistance:this._maxDistance,pitch:this._pitch,positional:this._positional,refDistance:this._refDistance,rollOffFactor:this._rollOffFactor,volume:this._volume}}get component(){return super.component}set distanceModel(t){this._distanceModel=t,this.component&&(this.component.distanceModel=t)}get distanceModel(){return this._distanceModel}set maxDistance(t){this._maxDistance=t,this.component&&(this.component.maxDistance=t)}get maxDistance(){return this._maxDistance}set pitch(t){this._pitch=t,this.component&&(this.component.pitch=t)}get pitch(){return this._pitch}set positional(t){this._positional=t,this.component&&(this.component.positional=t)}get positional(){return this._positional}set refDistance(t){this._refDistance=t,this.component&&(this.component.refDistance=t)}get refDistance(){return this._refDistance}set rollOffFactor(t){this._rollOffFactor=t,this.component&&(this.component.rollOffFactor=t)}get rollOffFactor(){return this._rollOffFactor}set volume(t){this._volume=t,this.component&&(this.component.volume=t)}get volume(){return this._volume}static get observedAttributes(){return[...super.observedAttributes,"distance-model","max-distance","pitch","positional","ref-distance","roll-off-factor","volume"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"distance-model":this.distanceModel=s;break;case"max-distance":this.maxDistance=parseFloat(s);break;case"pitch":this.pitch=parseFloat(s);break;case"positional":this.positional=this.hasAttribute("positional");break;case"ref-distance":this.refDistance=parseFloat(s);break;case"roll-off-factor":this.rollOffFactor=parseFloat(s);break;case"volume":this.volume=parseFloat(s)}}}customElements.define("pc-sounds",D);class F extends s{constructor(){super(...arguments),this._asset="",this._autoPlay=!1,this._duration=null,this._loop=!1,this._name="",this._overlap=!1,this._pitch=1,this._startTime=0,this._volume=1,this.soundSlot=null}async connectedCallback(){var t;await(null===(t=this.soundElement)||void 0===t?void 0:t.ready());const e={autoPlay:this._autoPlay,loop:this._loop,overlap:this._overlap,pitch:this._pitch,startTime:this._startTime,volume:this._volume};this._duration&&(e.duration=this._duration),this.soundSlot=this.soundElement.component.addSlot(this._name,e),this.asset=this._asset,this.soundSlot.play(),this._onReady()}disconnectedCallback(){this.soundElement.component.removeSlot(this._name)}get soundElement(){const t=this.parentElement;return t instanceof D?t:(console.warn("pc-sound-slot must be a direct child of a pc-sound element"),null)}set asset(t){var e;if(this._asset=t,this.soundSlot){const s=null===(e=u.get(t))||void 0===e?void 0:e.id;s&&(this.soundSlot.asset=s)}}get asset(){return this._asset}set autoPlay(t){this._autoPlay=t,this.soundSlot&&(this.soundSlot.autoPlay=t)}get autoPlay(){return this._autoPlay}set duration(t){this._duration=t,this.soundSlot&&(this.soundSlot.duration=t)}get duration(){return this._duration}set loop(t){this._loop=t,this.soundSlot&&(this.soundSlot.loop=t)}get loop(){return this._loop}set name(t){this._name=t,this.soundSlot&&(this.soundSlot.name=t)}get name(){return this._name}set overlap(t){this._overlap=t,this.soundSlot&&(this.soundSlot.overlap=t)}get overlap(){return this._overlap}set pitch(t){this._pitch=t,this.soundSlot&&(this.soundSlot.pitch=t)}get pitch(){return this._pitch}set startTime(t){this._startTime=t,this.soundSlot&&(this.soundSlot.startTime=t)}get startTime(){return this._startTime}set volume(t){this._volume=t,this.soundSlot&&(this.soundSlot.volume=t)}get volume(){return this._volume}static get observedAttributes(){return["asset","autoPlay","duration","loop","name","overlap","pitch","startTime","volume"]}attributeChangedCallback(t,e,s){switch(t){case"asset":this.asset=s;break;case"duration":this.duration=parseFloat(s);break;case"loop":this.loop=this.hasAttribute("loop");break;case"name":this.name=s;break;case"overlap":this.overlap=this.hasAttribute("overlap");break;case"pitch":this.pitch=parseFloat(s);break;case"startTime":this.startTime=parseFloat(s);break;case"volume":this.volume=parseFloat(s)}}}customElements.define("pc-sound",F);class R extends s{constructor(){super(...arguments),this._asset="",this._entity=null}connectedCallback(){this._loadModel(),this._onReady()}disconnectedCallback(){this._unloadModel()}_instantiate(t){this._entity=t.instantiateRenderEntity(),t.animations.length>0&&(this._entity.addComponent("anim"),this._entity.anim.assignAnimation("animation",t.animations[0].resource));const e=this.closestEntity;if(e)e.ready().then((()=>{e.entity.addChild(this._entity)}));else{const t=this.closestApp;t&&t.ready().then((()=>{t.app.root.addChild(this._entity)}))}}async _loadModel(){var t;this._unloadModel();const e=await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),s=null==e?void 0:e.app,i=u.get(this._asset);i&&(i.loaded?this._instantiate(i.resource):(i.once("load",(()=>{this._instantiate(i.resource)})),s.assets.load(i)))}_unloadModel(){var t;null===(t=this._entity)||void 0===t||t.destroy(),this._entity=null}set asset(t){this._asset=t,this.isConnected&&this._loadModel()}get asset(){return this._asset}static get observedAttributes(){return["asset"]}attributeChangedCallback(t,e,s){if("asset"===t)this.asset=s}}customElements.define("pc-model",R);class B extends s{constructor(){super(...arguments),this._fog="none",this._fogColor=new e.Color(1,1,1),this._fogDensity=0,this._fogStart=0,this._fogEnd=1e3,this.scene=null}async connectedCallback(){var t;await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),this.scene=this.closestApp.app.scene,this.updateSceneSettings(),this._onReady()}updateSceneSettings(){this.scene&&(this.scene.rendering.fog=this._fog,this.scene.rendering.fogColor=this._fogColor,this.scene.rendering.fogDensity=this._fogDensity,this.scene.rendering.fogStart=this._fogStart,this.scene.rendering.fogEnd=this._fogEnd)}set fog(t){this._fog=t,this.scene&&(this.scene.rendering.fog=t)}get fog(){return this._fog}set fogColor(t){this._fogColor=t,this.scene&&(this.scene.rendering.fogColor=t)}get fogColor(){return this._fogColor}set fogDensity(t){this._fogDensity=t,this.scene&&(this.scene.rendering.fogDensity=t)}get fogDensity(){return this._fogDensity}set fogStart(t){this._fogStart=t,this.scene&&(this.scene.rendering.fogStart=t)}get fogStart(){return this._fogStart}set fogEnd(t){this._fogEnd=t,this.scene&&(this.scene.rendering.fogEnd=t)}get fogEnd(){return this._fogEnd}static get observedAttributes(){return["fog","fog-color","fog-density","fog-start","fog-end"]}attributeChangedCallback(t,e,s){switch(t){case"fog":this.fog=s;break;case"fog-color":this.fogColor=o(s);break;case"fog-density":this.fogDensity=parseFloat(s);break;case"fog-start":this.fogStart=parseFloat(s);break;case"fog-end":this.fogEnd=parseFloat(s)}}}customElements.define("pc-scene",B);class O extends s{constructor(){super(...arguments),this._asset="",this._center=new e.Vec3(0,.01,0),this._intensity=1,this._rotation=new e.Vec3,this._level=0,this._lighting=!1,this._scale=new e.Vec3(100,100,100),this._type="infinite",this._scene=null}connectedCallback(){this._loadSkybox(),this._onReady()}disconnectedCallback(){this._unloadSkybox()}_generateSkybox(t){if(!this._scene)return;const s=t.resource,i=e.EnvLighting.generateSkyboxCubemap(s);if(i.anisotropy=4,this._scene.skybox=i,this._lighting){const t=e.EnvLighting.generateLightingSource(s),i=e.EnvLighting.generateAtlas(t);this._scene.envAtlas=i}const n=this._scene.layers.getLayerById(e.LAYERID_SKYBOX);n&&(n.enabled="none"!==this._type),this._scene.sky.type=this._type,this._scene.sky.node.setLocalScale(this._scale),this._scene.sky.center=this._center,this._scene.skyboxIntensity=this._intensity}async _loadSkybox(){var t;const e=await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),s=null==e?void 0:e.app;if(!s)return;const i=u.get(this._asset);i&&(this._scene=s.scene,i.loaded?this._generateSkybox(i):(i.once("load",(()=>{this._generateSkybox(i)})),s.assets.load(i)))}_unloadSkybox(){var t,e;this._scene&&(null===(t=this._scene.skybox)||void 0===t||t.destroy(),this._scene.skybox=null,null===(e=this._scene.envAtlas)||void 0===e||e.destroy(),this._scene.envAtlas=null,this._scene=null)}set asset(t){this._asset=t,this.isConnected&&this._loadSkybox()}get asset(){return this._asset}set center(t){this._center=t,this._scene&&(this._scene.sky.center=this._center)}get center(){return this._center}set intensity(t){this._intensity=t,this._scene&&(this._scene.skyboxIntensity=this._intensity)}get intensity(){return this._intensity}set level(t){this._level=t,this._scene&&(this._scene.skyboxMip=this._level)}get level(){return this._level}set lighting(t){this._lighting=t}get lighting(){return this._lighting}set rotation(t){this._rotation=t,this._scene&&(this._scene.skyboxRotation=(new e.Quat).setFromEulerAngles(t))}get rotation(){return this._rotation}set scale(t){this._scale=t,this._scene&&this._scene.sky.node.setLocalScale(this._scale)}get scale(){return this._scale}set type(t){if(this._type=t,this._scene){this._scene.sky.type=this._type;const t=this._scene.layers.getLayerById(e.LAYERID_SKYBOX);t&&(t.enabled="none"!==this._type)}}get type(){return this._type}static get observedAttributes(){return["asset","center","intensity","level","lighting","rotation","scale","type"]}attributeChangedCallback(t,e,s){switch(t){case"asset":this.asset=s;break;case"center":this.center=h(s);break;case"intensity":this.intensity=parseFloat(s);break;case"level":this.level=parseInt(s,10);break;case"lighting":this.lighting=this.hasAttribute(t);break;case"rotation":this.rotation=h(s);break;case"scale":this.scale=h(s);break;case"type":this.type=s}}}customElements.define("pc-sky",O),t.AppElement=n,t.AssetElement=u,t.AsyncElement=s,t.CameraComponentElement=m,t.CollisionComponentElement=g,t.ComponentElement=d,t.ElementComponentElement=_,t.EntityElement=c,t.GSplatComponentElement=b,t.LightComponentElement=y,t.ListenerComponentElement=f,t.MaterialElement=v,t.ModelElement=R,t.ModuleElement=i,t.RenderComponentElement=C,t.RigidBodyComponentElement=w,t.SceneElement=B,t.ScreenComponentElement=k,t.ScriptComponentElement=x,t.ScriptElement=M,t.SkyElement=O,t.SoundComponentElement=D,t.SoundSlotElement=F}));
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("playcanvas")):"function"==typeof define&&define.amd?define(["exports","playcanvas"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).pd={},t.pc)}(this,(function(t,e){"use strict";class s extends HTMLElement{constructor(){super(),this._readyPromise=new Promise((t=>{this._readyResolve=t}))}get closestApp(){var t;return null===(t=this.parentElement)||void 0===t?void 0:t.closest("pc-app")}get closestEntity(){var t;return null===(t=this.parentElement)||void 0===t?void 0:t.closest("pc-entity")}_onReady(){this._readyResolve(),this.dispatchEvent(new CustomEvent("ready"))}ready(){return this._readyPromise.then((()=>this))}}class i extends HTMLElement{constructor(){super(),this.loadPromise=this.loadModule()}async loadModule(){const t=this.getAttribute("name"),s=this.getAttribute("glue"),i=this.getAttribute("wasm"),n=this.getAttribute("fallback");"Basis"===t?e.basisInitialize({glueUrl:s,wasmUrl:i,fallbackUrl:n}):(e.WasmModule.setConfig(t,{glueUrl:s,wasmUrl:i,fallbackUrl:n}),await new Promise((s=>{e.WasmModule.getInstance(t,(()=>s()))})))}getLoadPromise(){return this.loadPromise}}customElements.define("pc-module",i);class n extends s{constructor(){super(),this._canvas=null,this._alpha=!0,this._antialias=!0,this._depth=!0,this._stencil=!0,this._highResolution=!1,this._hierarchyReady=!1,this._picker=null,this._hasPointerListeners={pointerenter:!1,pointerleave:!1,pointerdown:!1,pointerup:!1,pointermove:!1},this._hoveredEntity=null,this._pointerHandlers={pointermove:null,pointerdown:null,pointerup:null},this.app=null,this._onWindowResize=this._onWindowResize.bind(this)}async connectedCallback(){const t=this.querySelectorAll(":scope > pc-module");await Promise.all(Array.from(t).map((t=>t.getLoadPromise()))),this._canvas=document.createElement("canvas"),this.appendChild(this._canvas),this.app=new e.Application(this._canvas,{graphicsDeviceOptions:{alpha:this._alpha,antialias:this._antialias,depth:this._depth,stencil:this._stencil},keyboard:new e.Keyboard(window),mouse:new e.Mouse(this._canvas)}),this.app.graphicsDevice.maxPixelRatio=this._highResolution?window.devicePixelRatio:1,this.app.setCanvasFillMode(e.FILLMODE_FILL_WINDOW),this.app.setCanvasResolution(e.RESOLUTION_AUTO),this._pickerCreate();const s=this.querySelectorAll(":scope > pc-asset");Array.from(s).forEach((t=>{t.createAsset();const e=t.asset;e&&this.app.assets.add(e)}));const i=this.querySelectorAll(":scope > pc-material");Array.from(i).forEach((t=>{t.createMaterial()}));const n=this.querySelectorAll("pc-entity");Array.from(n).forEach((t=>{t.createEntity(this.app)})),n.forEach((t=>{t.buildHierarchy(this.app)})),this._hierarchyReady=!0,this.app.preload((()=>{this.app.start(),window.addEventListener("resize",this._onWindowResize),this._onReady()}))}disconnectedCallback(){this._pickerDestroy(),this.app&&(this.app.destroy(),this.app=null),window.removeEventListener("resize",this._onWindowResize),this._canvas&&this.contains(this._canvas)&&(this.removeChild(this._canvas),this._canvas=null)}_onWindowResize(){this.app&&this.app.resizeCanvas()}_pickerCreate(){const{width:t,height:s}=this.app.graphicsDevice;this._picker=new e.Picker(this.app,t,s),this._pointerHandlers.pointermove=this._onPointerMove.bind(this),this._pointerHandlers.pointerdown=this._onPointerDown.bind(this),this._pointerHandlers.pointerup=this._onPointerUp.bind(this),["pointermove","pointerdown","pointerup","pointerenter","pointerleave"].forEach((t=>{this.addEventListener(`${t}:connect`,(()=>this._onPointerListenerAdded(t))),this.addEventListener(`${t}:disconnect`,(()=>this._onPointerListenerRemoved(t)))}))}_pickerDestroy(){this._canvas&&Object.entries(this._pointerHandlers).forEach((([t,e])=>{e&&this._canvas.removeEventListener(t,e)})),this._picker=null,this._pointerHandlers={pointermove:null,pointerdown:null,pointerup:null}}_onPointerMove(t){if(!this._picker||!this.app)return;const e=this.app.root.findComponent("camera");if(!e)return;const s=this._canvas.getBoundingClientRect(),i=t.clientX-s.left,n=t.clientY-s.top;this._picker.prepare(e,this.app.scene);const a=this._picker.getSelection(i,n);let o=null;if(a.length>0){let t=a[0].node;for(;t&&!o;){const e=this.querySelector(`pc-entity[name="${t.name}"]`);e&&(o=e),t=t.parent}}this._hoveredEntity!==o&&(this._hoveredEntity&&this._hoveredEntity.hasListeners("pointerleave")&&this._hoveredEntity.dispatchEvent(new PointerEvent("pointerleave",t)),o&&o.hasListeners("pointerenter")&&o.dispatchEvent(new PointerEvent("pointerenter",t))),this._hoveredEntity=o,o&&o.hasListeners("pointermove")&&o.dispatchEvent(new PointerEvent("pointermove",t))}_onPointerDown(t){if(!this._picker||!this.app)return;const e=this.app.root.findComponent("camera");if(!e)return;const s=this._canvas.getBoundingClientRect(),i=t.clientX-s.left,n=t.clientY-s.top;this._picker.prepare(e,this.app.scene);const a=this._picker.getSelection(i,n);if(a.length>0){let e=a[0].node;for(;e;){const s=this.querySelector(`pc-entity[name="${e.name}"]`);if(s&&s.hasListeners("pointerdown")){s.dispatchEvent(new PointerEvent("pointerdown",t));break}e=e.parent}}}_onPointerUp(t){if(!this._picker||!this.app)return;const e=this.app.root.findComponent("camera");if(!e)return;const s=this._canvas.getBoundingClientRect(),i=t.clientX-s.left,n=t.clientY-s.top;this._picker.prepare(e,this.app.scene);const a=this._picker.getSelection(i,n);if(a.length>0){const e=this.querySelector(`pc-entity[name="${a[0].node.name}"]`);e&&e.hasListeners("pointerup")&&e.dispatchEvent(new PointerEvent("pointerup",t))}}_onPointerListenerAdded(t){if(!this._hasPointerListeners[t]&&this._canvas){this._hasPointerListeners[t]=!0;const e="pointerenter"===t||"pointerleave"===t?this._pointerHandlers.pointermove:this._pointerHandlers[t];e&&this._canvas.addEventListener("pointerenter"===t||"pointerleave"===t?"pointermove":t,e)}}_onPointerListenerRemoved(t){if(!Array.from(this.querySelectorAll("pc-entity")).some((e=>e.hasListeners(t)))&&this._canvas){this._hasPointerListeners[t]=!1;const e="pointerenter"===t||"pointerleave"===t?this._pointerHandlers.pointermove:this._pointerHandlers[t];e&&this._canvas.removeEventListener("pointerenter"===t||"pointerleave"===t?"pointermove":t,e)}}set alpha(t){this._alpha=t}get alpha(){return this._alpha}set antialias(t){this._antialias=t}get antialias(){return this._antialias}set depth(t){this._depth=t}get depth(){return this._depth}get hierarchyReady(){return this._hierarchyReady}set highResolution(t){this._highResolution=t,this.app&&(this.app.graphicsDevice.maxPixelRatio=t?window.devicePixelRatio:1)}get highResolution(){return this._highResolution}set stencil(t){this._stencil=t}get stencil(){return this._stencil}static get observedAttributes(){return["alpha","antialias","depth","stencil","high-resolution"]}attributeChangedCallback(t,e,s){switch(t){case"alpha":this.alpha="false"!==s;break;case"antialias":this.antialias="false"!==s;break;case"depth":this.depth="false"!==s;break;case"high-resolution":this.highResolution="false"!==s;break;case"stencil":this.stencil="false"!==s}}}customElements.define("pc-app",n);const a={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},o=t=>{const s=a[t.toLowerCase()];if(s)return(new e.Color).fromString(s);if(t.startsWith("#"))return(new e.Color).fromString(t);const i=t.split(" ").map(Number);return new e.Color(i)},r=t=>{const s=t.split(" ").map(Number);return new e.Vec2(s)},h=t=>{const s=t.split(" ").map(Number);return new e.Vec3(s)},c=t=>{const s=t.split(" ").map(Number);return new e.Vec4(s)};class l extends s{constructor(){super(...arguments),this._enabled=!0,this._name="Untitled",this._position=new e.Vec3,this._rotation=new e.Vec3,this._scale=new e.Vec3(1,1,1),this._tags=[],this._listeners={},this.entity=null}createEntity(t){this.entity=new e.Entity(this.getAttribute("name")||this._name,t);const s=this.getAttribute("enabled");s&&(this.entity.enabled="false"!==s);const i=this.getAttribute("position");i&&this.entity.setLocalPosition(h(i));const n=this.getAttribute("rotation");n&&this.entity.setLocalEulerAngles(h(n));const a=this.getAttribute("scale");a&&this.entity.setLocalScale(h(a));const o=this.getAttribute("tags");o&&this.entity.tags.add(o.split(",").map((t=>t.trim())));["onpointerenter","onpointerleave","onpointerdown","onpointerup","onpointermove"].forEach((t=>{const e=this.getAttribute(t);if(e){const s=t.substring(2),i=t=>{try{new Function("event",e).call(this,t)}catch(t){console.error("Error in event handler:",t)}};this.addEventListener(s,i)}}))}buildHierarchy(t){if(!this.entity)return;const e=this.closestEntity;(null==e?void 0:e.entity)?e.entity.addChild(this.entity):t.root.addChild(this.entity),this._onReady()}connectedCallback(){const t=this.closestApp;if(t&&t.hierarchyReady){const e=t.app;this.createEntity(e),this.buildHierarchy(e);const s=this.querySelectorAll("pc-entity");s.forEach((t=>{t.createEntity(e)})),s.forEach((t=>{t.buildHierarchy(e)}))}}disconnectedCallback(){if(this.entity){this.querySelectorAll("pc-entity").forEach((t=>{t.entity=null})),this.entity.destroy(),this.entity=null}}set enabled(t){this._enabled=t,this.entity&&(this.entity.enabled=t)}get enabled(){return this._enabled}set name(t){this._name=t,this.entity&&(this.entity.name=t)}get name(){return this._name}set position(t){this._position=t,this.entity&&this.entity.setLocalPosition(this._position)}get position(){return this._position}set rotation(t){this._rotation=t,this.entity&&this.entity.setLocalEulerAngles(this._rotation)}get rotation(){return this._rotation}set scale(t){this._scale=t,this.entity&&this.entity.setLocalScale(this._scale)}get scale(){return this._scale}set tags(t){this._tags=t,this.entity&&(this.entity.tags.clear(),this.entity.tags.add(this._tags))}get tags(){return this._tags}static get observedAttributes(){return["enabled","name","position","rotation","scale","tags","onpointerenter","onpointerleave","onpointerdown","onpointerup","onpointermove"]}attributeChangedCallback(t,e,s){switch(t){case"enabled":this.enabled="false"!==s;break;case"name":this.name=s;break;case"position":this.position=h(s);break;case"rotation":this.rotation=h(s);break;case"scale":this.scale=h(s);break;case"tags":this.tags=s.split(",").map((t=>t.trim()));break;case"onpointerenter":case"onpointerleave":case"onpointerdown":case"onpointerup":case"onpointermove":if(s){const e=t.substring(2),s=t=>{try{const s=this.getAttribute(e)||"";new Function("event",s).call(this,t)}catch(t){console.error("Error in event handler:",t)}};this.addEventListener(e,s)}}}addEventListener(t,e,s){this._listeners[t]||(this._listeners[t]=[]),this._listeners[t].push(e),super.addEventListener(t,e,s),t.startsWith("pointer")&&this.dispatchEvent(new CustomEvent(`${t}:connect`,{bubbles:!0}))}removeEventListener(t,e,s){this._listeners[t]&&(this._listeners[t]=this._listeners[t].filter((t=>t!==e))),super.removeEventListener(t,e,s),t.startsWith("pointer")&&this.dispatchEvent(new CustomEvent(`${t}:disconnect`,{bubbles:!0}))}hasListeners(t){var e;return Boolean(null===(e=this._listeners[t])||void 0===e?void 0:e.length)}}customElements.define("pc-entity",l);const p=new Map([["bin","binary"],["css","css"],["frag","shader"],["glb","container"],["glsl","shader"],["hdr","texture"],["html","html"],["jpg","texture"],["js","script"],["json","json"],["mp3","audio"],["mjs","script"],["ply","gsplat"],["png","texture"],["txt","text"],["vert","shader"],["webp","texture"]]);class u extends HTMLElement{constructor(){super(...arguments),this._preload=!1,this.asset=null}disconnectedCallback(){this.destroyAsset()}createAsset(){var t;const s=this.getAttribute("id")||"",i=this.getAttribute("src")||"";let n=this.getAttribute("type");if(!n){const e=i.split(".").pop();n=null!==(t=p.get(e||""))&&void 0!==t?t:null}n?(this.asset=new e.Asset(s,n,{url:i}),this.asset.preload=this.preload):console.warn(`Unsupported asset type: ${i}`)}destroyAsset(){this.asset&&(this.asset.unload(),this.asset=null)}set preload(t){this._preload=t,this.asset&&(this.asset.preload=t)}get preload(){return this._preload}static get(t){const e=document.querySelector(`pc-asset[id="${t}"]`);return null==e?void 0:e.asset}static get observedAttributes(){return["preload"]}attributeChangedCallback(t,e,s){"preload"===t&&(this.preload=this.hasAttribute("preload"))}}customElements.define("pc-asset",u);class d extends s{constructor(t){super(),this._enabled=!0,this._component=null,this._componentName=t}getInitialComponentData(){return{}}async addComponent(){const t=this.closestEntity;if(t){await t.ready();const e=this.getInitialComponentData();this._component=t.entity.addComponent(this._componentName,e)}}initComponent(){}async connectedCallback(){var t;await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),await this.addComponent(),this.initComponent(),this._onReady()}disconnectedCallback(){this.component&&this.component.entity&&(this._component.entity.removeComponent(this._componentName),this._component=null)}get component(){return this._component}set enabled(t){this._enabled=t,this.component&&(this.component.enabled=t)}get enabled(){return this._enabled}static get observedAttributes(){return["enabled"]}attributeChangedCallback(t,e,s){if("enabled"===t)this.enabled="false"!==s}}class m extends d{constructor(){super("audiolistener")}get component(){return super.component}}customElements.define("pc-listener",m);const f=new Map([["none",e.TONEMAP_NONE],["linear",e.TONEMAP_LINEAR],["filmic",e.TONEMAP_FILMIC],["hejl",e.TONEMAP_HEJL],["aces",e.TONEMAP_ACES],["aces2",e.TONEMAP_ACES2],["neutral",e.TONEMAP_NEUTRAL]]);class _ extends d{constructor(){super("camera"),this._clearColor=new e.Color(.75,.75,.75,1),this._clearColorBuffer=!0,this._clearDepthBuffer=!0,this._clearStencilBuffer=!1,this._cullFaces=!0,this._farClip=1e3,this._flipFaces=!1,this._fov=45,this._frustumCulling=!0,this._gamma="srgb",this._nearClip=.1,this._orthographic=!1,this._orthoHeight=10,this._priority=0,this._rect=new e.Vec4(0,0,1,1),this._scissorRect=new e.Vec4(0,0,1,1),this._tonemap="none"}getInitialComponentData(){return{clearColor:this._clearColor,clearColorBuffer:this._clearColorBuffer,clearDepthBuffer:this._clearDepthBuffer,clearStencilBuffer:this._clearStencilBuffer,cullFaces:this._cullFaces,farClip:this._farClip,flipFaces:this._flipFaces,fov:this._fov,frustumCulling:this._frustumCulling,gammaCorrection:"srgb"===this._gamma?e.GAMMA_SRGB:e.GAMMA_NONE,nearClip:this._nearClip,orthographic:this._orthographic,orthoHeight:this._orthoHeight,priority:this._priority,rect:this._rect,scissorRect:this._scissorRect,toneMapping:f.get(this._tonemap)}}get xrAvailable(){var t;const s=null===(t=this.component)||void 0===t?void 0:t.system.app.xr;return s&&s.supported&&s.isAvailable(e.XRTYPE_VR)}startXr(t,e){this.component&&this.xrAvailable&&this.component.startXr(t,e,{callback:t=>{t&&console.error(`WebXR Immersive VR failed to start: ${t.message}`)}})}endXr(){this.component&&this.component.endXr()}get component(){return super.component}set clearColor(t){this._clearColor=t,this.component&&(this.component.clearColor=t)}get clearColor(){return this._clearColor}set clearColorBuffer(t){this._clearColorBuffer=t,this.component&&(this.component.clearColorBuffer=t)}get clearColorBuffer(){return this._clearColorBuffer}set clearDepthBuffer(t){this._clearDepthBuffer=t,this.component&&(this.component.clearDepthBuffer=t)}get clearDepthBuffer(){return this._clearDepthBuffer}set clearStencilBuffer(t){this._clearStencilBuffer=t,this.component&&(this.component.clearStencilBuffer=t)}get clearStencilBuffer(){return this._clearStencilBuffer}set cullFaces(t){this._cullFaces=t,this.component&&(this.component.cullFaces=t)}get cullFaces(){return this._cullFaces}set farClip(t){this._farClip=t,this.component&&(this.component.farClip=t)}get farClip(){return this._farClip}set flipFaces(t){this._flipFaces=t,this.component&&(this.component.flipFaces=t)}get flipFaces(){return this._flipFaces}set fov(t){this._fov=t,this.component&&(this.component.fov=t)}get fov(){return this._fov}set frustumCulling(t){this._frustumCulling=t,this.component&&(this.component.frustumCulling=t)}get frustumCulling(){return this._frustumCulling}set gamma(t){this._gamma=t,this.component&&(this.component.gammaCorrection="srgb"===t?e.GAMMA_SRGB:e.GAMMA_NONE)}get gamma(){return this._gamma}set nearClip(t){this._nearClip=t,this.component&&(this.component.nearClip=t)}get nearClip(){return this._nearClip}set orthographic(t){this._orthographic=t,this.component&&(this.component.projection=t?e.PROJECTION_ORTHOGRAPHIC:e.PROJECTION_PERSPECTIVE)}get orthographic(){return this._orthographic}set orthoHeight(t){this._orthoHeight=t,this.component&&(this.component.orthoHeight=t)}get orthoHeight(){return this._orthoHeight}set priority(t){this._priority=t,this.component&&(this.component.priority=t)}get priority(){return this._priority}set rect(t){this._rect=t,this.component&&(this.component.rect=t)}get rect(){return this._rect}set scissorRect(t){this._scissorRect=t,this.component&&(this.component.scissorRect=t)}get scissorRect(){return this._scissorRect}set tonemap(t){var s;this._tonemap=t,this.component&&(this.component.toneMapping=null!==(s=f.get(t))&&void 0!==s?s:e.TONEMAP_NONE)}get tonemap(){return this._tonemap}static get observedAttributes(){return[...super.observedAttributes,"clear-color","clear-color-buffer","clear-depth-buffer","clear-stencil-buffer","cull-faces","far-clip","flip-faces","fov","frustum-culling","gamma","near-clip","orthographic","ortho-height","priority","rect","scissor-rect","tonemap"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"clear-color":this.clearColor=o(s);break;case"clear-color-buffer":this.clearColorBuffer="false"!==s;break;case"clear-depth-buffer":this.clearDepthBuffer="false"!==s;break;case"clear-stencil-buffer":this.clearStencilBuffer="false"!==s;break;case"cull-faces":this.cullFaces="false"!==s;break;case"far-clip":this.farClip=parseFloat(s);break;case"flip-faces":this.flipFaces="true"!==s;break;case"fov":this.fov=parseFloat(s);break;case"frustum-culling":this.frustumCulling="false"!==s;break;case"gamma":this.gamma=s;break;case"near-clip":this.nearClip=parseFloat(s);break;case"orthographic":this.orthographic=this.hasAttribute("orthographic");break;case"ortho-height":this.orthoHeight=parseFloat(s);break;case"priority":this.priority=parseFloat(s);break;case"rect":this.rect=c(s);break;case"scissor-rect":this.scissorRect=c(s);break;case"tonemap":this.tonemap=s}}}customElements.define("pc-camera",_);class g extends d{constructor(){super("collision"),this._angularOffset=new e.Quat,this._axis=1,this._convexHull=!1,this._halfExtents=new e.Vec3(.5,.5,.5),this._height=2,this._linearOffset=new e.Vec3,this._radius=.5,this._type="box"}getInitialComponentData(){return{axis:this._axis,angularOffset:this._angularOffset,convexHull:this._convexHull,halfExtents:this._halfExtents,height:this._height,linearOffset:this._linearOffset,radius:this._radius,type:this._type}}get component(){return super.component}set angularOffset(t){this._angularOffset=t,this.component&&(this.component.angularOffset=t)}get angularOffset(){return this._angularOffset}set axis(t){this._axis=t,this.component&&(this.component.axis=t)}get axis(){return this._axis}set convexHull(t){this._convexHull=t,this.component&&(this.component.convexHull=t)}get convexHull(){return this._convexHull}set halfExtents(t){this._halfExtents=t,this.component&&(this.component.halfExtents=t)}get halfExtents(){return this._halfExtents}set height(t){this._height=t,this.component&&(this.component.height=t)}get height(){return this._height}set linearOffset(t){this._linearOffset=t,this.component&&(this.component.linearOffset=t)}get linearOffset(){return this._linearOffset}set radius(t){this._radius=t,this.component&&(this.component.radius=t)}get radius(){return this._radius}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"angular-offset","axis","convex-hull","half-extents","height","linear-offset","radius","type"]}attributeChangedCallback(t,s,i){switch(super.attributeChangedCallback(t,s,i),t){case"angular-offset":this.angularOffset=(t=>{const[s,i,n]=t.split(" ").map(Number),a=new e.Quat;return a.setFromEulerAngles(s,i,n),a})(i);break;case"axis":this.axis=parseInt(i,10);break;case"convex-hull":this.convexHull=this.hasAttribute("convex-hull");break;case"half-extents":this.halfExtents=h(i);break;case"height":this.height=parseFloat(i);break;case"linear-offset":this.linearOffset=h(i);break;case"radius":this.radius=parseFloat(i);break;case"type":this.type=i}}}customElements.define("pc-collision",g);class b extends d{constructor(){super("element"),this._anchor=new e.Vec4(.5,.5,.5,.5),this._asset="",this._autoWidth=!0,this._color=new e.Color(1,1,1,1),this._fontSize=32,this._lineHeight=32,this._pivot=new e.Vec2(.5,.5),this._text="",this._type="group",this._width=0,this._wrapLines=!1}initComponent(){this.component._text._material.useFog=!0}getInitialComponentData(){return{anchor:this._anchor,autoWidth:this._autoWidth,color:this._color,fontAsset:u.get(this._asset).id,fontSize:this._fontSize,lineHeight:this._lineHeight,pivot:this._pivot,type:this._type,text:this._text,width:this._width,wrapLines:this._wrapLines}}get component(){return super.component}set anchor(t){this._anchor=t,this.component&&(this.component.anchor=t)}get anchor(){return this._anchor}set asset(t){this._asset=t;const e=u.get(t);this.component&&e&&(this.component.fontAsset=e.id)}get asset(){return this._asset}set autoWidth(t){this._autoWidth=t,this.component&&(this.component.autoWidth=t)}get autoWidth(){return this._autoWidth}set color(t){this._color=t,this.component&&(this.component.color=t)}get color(){return this._color}set fontSize(t){this._fontSize=t,this.component&&(this.component.fontSize=t)}get fontSize(){return this._fontSize}set lineHeight(t){this._lineHeight=t,this.component&&(this.component.lineHeight=t)}get lineHeight(){return this._lineHeight}set pivot(t){this._pivot=t,this.component&&(this.component.pivot=t)}get pivot(){return this._pivot}set text(t){this._text=t,this.component&&(this.component.text=t)}get text(){return this._text}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}set width(t){this._width=t,this.component&&(this.component.width=t)}get width(){return this._width}set wrapLines(t){this._wrapLines=t,this.component&&(this.component.wrapLines=t)}get wrapLines(){return this._wrapLines}static get observedAttributes(){return[...super.observedAttributes,"anchor","asset","auto-width","color","font-size","line-height","pivot","text","type","width","wrap-lines"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"anchor":this.anchor=c(s);break;case"asset":this.asset=s;break;case"auto-width":this.autoWidth="false"!==s;break;case"color":this.color=o(s);break;case"font-size":this.fontSize=Number(s);break;case"line-height":this.lineHeight=Number(s);break;case"pivot":this.pivot=r(s);break;case"text":this.text=s;break;case"type":this.type=s;break;case"width":this.width=Number(s);break;case"wrap-lines":this.wrapLines=this.hasAttribute(t)}}}customElements.define("pc-element",b);class y extends d{constructor(){super("gsplat"),this._asset=""}getInitialComponentData(){return{asset:u.get(this._asset)}}get component(){return super.component}set asset(t){this._asset=t;const e=u.get(t);this.component&&e&&(this.component.asset=e)}get asset(){return this._asset}static get observedAttributes(){return[...super.observedAttributes,"asset"]}attributeChangedCallback(t,e,s){if(super.attributeChangedCallback(t,e,s),"asset"===t)this.asset=s}}customElements.define("pc-splat",y);const v=new Map([["pcf1-16f",e.SHADOW_PCF1_16F],["pcf1-32f",e.SHADOW_PCF1_32F],["pcf3-16f",e.SHADOW_PCF3_16F],["pcf3-32f",e.SHADOW_PCF3_32F],["pcf5-16f",e.SHADOW_PCF5_16F],["pcf5-32f",e.SHADOW_PCF5_32F],["vsm-16f",e.SHADOW_VSM_16F],["vsm-32f",e.SHADOW_VSM_32F],["pcss-32f",e.SHADOW_PCSS_32F]]);class w extends d{constructor(){super("light"),this._castShadows=!1,this._color=new e.Color(1,1,1),this._innerConeAngle=40,this._intensity=1,this._normalOffsetBias=.05,this._outerConeAngle=45,this._range=10,this._shadowBias=.2,this._shadowDistance=16,this._shadowIntensity=1,this._shadowResolution=1024,this._shadowType="pcf3-32f",this._type="directional",this._vsmBias=.01}getInitialComponentData(){return{castShadows:this._castShadows,color:this._color,innerConeAngle:this._innerConeAngle,intensity:this._intensity,normalOffsetBias:this._normalOffsetBias,outerConeAngle:this._outerConeAngle,range:this._range,shadowBias:this._shadowBias,shadowDistance:this._shadowDistance,shadowIntensity:this._shadowIntensity,shadowResolution:this._shadowResolution,shadowType:v.get(this._shadowType),type:this._type,vsmBias:this._vsmBias}}get component(){return super.component}set castShadows(t){this._castShadows=t,this.component&&(this.component.castShadows=t)}get castShadows(){return this._castShadows}set color(t){this._color=t,this.component&&(this.component.color=t)}get color(){return this._color}set innerConeAngle(t){this._innerConeAngle=t,this.component&&(this.component.innerConeAngle=t)}get innerConeAngle(){return this._innerConeAngle}set intensity(t){this._intensity=t,this.component&&(this.component.intensity=t)}get intensity(){return this._intensity}set normalOffsetBias(t){this._normalOffsetBias=t,this.component&&(this.component.normalOffsetBias=t)}get normalOffsetBias(){return this._normalOffsetBias}set outerConeAngle(t){this._outerConeAngle=t,this.component&&(this.component.outerConeAngle=t)}get outerConeAngle(){return this._outerConeAngle}set range(t){this._range=t,this.component&&(this.component.range=t)}get range(){return this._range}set shadowBias(t){this._shadowBias=t,this.component&&(this.component.shadowBias=t)}get shadowBias(){return this._shadowBias}set shadowDistance(t){this._shadowDistance=t,this.component&&(this.component.shadowDistance=t)}get shadowDistance(){return this._shadowDistance}set shadowIntensity(t){this._shadowIntensity=t,this.component&&(this.component.shadowIntensity=t)}get shadowIntensity(){return this._shadowIntensity}set shadowResolution(t){this._shadowResolution=t,this.component&&(this.component.shadowResolution=t)}get shadowResolution(){return this._shadowResolution}set shadowType(t){var s;this._shadowType=t,this.component&&(this.component.shadowType=null!==(s=v.get(t))&&void 0!==s?s:e.SHADOW_PCF3_32F)}get shadowType(){return this._shadowType}set type(t){["directional","omni","spot"].includes(t)?(this._type=t,this.component&&(this.component.type=t)):console.warn(`Invalid light type '${t}', using default type '${this._type}'.`)}get type(){return this._type}set vsmBias(t){this._vsmBias=t,this.component&&(this.component.vsmBias=t)}get vsmBias(){return this._vsmBias}static get observedAttributes(){return[...super.observedAttributes,"color","cast-shadows","intensity","inner-cone-angle","normal-offset-bias","outer-cone-angle","range","shadow-bias","shadow-distance","shadow-intensity","shadow-resolution","shadow-type","type","vsm-bias"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"color":this.color=o(s);break;case"cast-shadows":this.castShadows=this.hasAttribute("cast-shadows");break;case"inner-cone-angle":this.innerConeAngle=Number(s);break;case"intensity":this.intensity=Number(s);break;case"normal-offset-bias":this.normalOffsetBias=Number(s);break;case"outer-cone-angle":this.outerConeAngle=Number(s);break;case"range":this.range=Number(s);break;case"shadow-bias":this.shadowBias=Number(s);break;case"shadow-distance":this.shadowDistance=Number(s);break;case"shadow-resolution":this.shadowResolution=Number(s);break;case"shadow-intensity":this.shadowIntensity=Number(s);break;case"shadow-type":this.shadowType=s;break;case"type":this.type=s;break;case"vsm-bias":this.vsmBias=Number(s)}}}customElements.define("pc-light",w);class C extends HTMLElement{constructor(){super(...arguments),this._diffuse=new e.Color(1,1,1),this._diffuseMap="",this._metalnessMap="",this._normalMap="",this._roughnessMap="",this.material=null}createMaterial(){this.material=new e.StandardMaterial,this.material.glossInvert=!1,this.material.useMetalness=!1,this.material.diffuse=this._diffuse,this.diffuseMap=this._diffuseMap,this.metalnessMap=this._metalnessMap,this.normalMap=this._normalMap,this.roughnessMap=this._roughnessMap,this.material.update()}disconnectedCallback(){this.material&&(this.material.destroy(),this.material=null)}setMap(t,e){if(this.material){const s=u.get(t);s&&(s.loaded?(this.material[e]=s.resource,this.material[e].anisotropy=4):s.once("load",(()=>{this.material[e]=s.resource,this.material[e].anisotropy=4,this.material.update()})))}}set diffuse(t){this._diffuse=t,this.material&&(this.material.diffuse=t)}get diffuse(){return this._diffuse}set diffuseMap(t){this._diffuseMap=t,this.setMap(t,"diffuseMap")}get diffuseMap(){return this._diffuseMap}set metalnessMap(t){this._metalnessMap=t,this.setMap(t,"metalnessMap")}get metalnessMap(){return this._metalnessMap}set normalMap(t){this._normalMap=t,this.setMap(t,"normalMap")}get normalMap(){return this._normalMap}set roughnessMap(t){this._roughnessMap=t,this.setMap(t,"glossMap")}get roughnessMap(){return this._roughnessMap}static get(t){const e=document.querySelector(`pc-material[id="${t}"]`);return null==e?void 0:e.material}static get observedAttributes(){return["diffuse","diffuse-map","metalness-map","normal-map","roughness-map"]}attributeChangedCallback(t,e,s){switch(t){case"diffuse":this.diffuse=o(s);break;case"diffuse-map":this.diffuseMap=s;break;case"metalness-map":this.metalnessMap=s;break;case"normal-map":this.normalMap=s;break;case"roughness-map":this.roughnessMap=s}}}customElements.define("pc-material",C);class k extends d{constructor(){super("render"),this._castShadows=!0,this._material="",this._receiveShadows=!0,this._type="asset"}getInitialComponentData(){return{type:this._type,castShadows:this._castShadows,material:C.get(this._material),receiveShadows:this._receiveShadows}}get component(){return super.component}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}set castShadows(t){this._castShadows=t,this.component&&(this.component.castShadows=t)}get castShadows(){return this._castShadows}set material(t){this._material=t,this.component&&(this.component.material=C.get(t))}get material(){return this._material}set receiveShadows(t){this._receiveShadows=t,this.component&&(this.component.receiveShadows=t)}get receiveShadows(){return this._receiveShadows}static get observedAttributes(){return[...super.observedAttributes,"cast-shadows","material","receive-shadows","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"cast-shadows":this.castShadows="false"!==s;break;case"material":this.material=s;break;case"receive-shadows":this.receiveShadows="false"!==s;break;case"type":this.type=s}}}customElements.define("pc-render",k);class E extends d{constructor(){super("rigidbody"),this._angularDamping=0,this._angularFactor=new e.Vec3(1,1,1),this._friction=.5,this._linearDamping=0,this._linearFactor=new e.Vec3(1,1,1),this._mass=1,this._restitution=0,this._rollingFriction=0,this._type="static"}getInitialComponentData(){return{angularDamping:this._angularDamping,angularFactor:this._angularFactor,friction:this._friction,linearDamping:this._linearDamping,linearFactor:this._linearFactor,mass:this._mass,restitution:this._restitution,rollingFriction:this._rollingFriction,type:this._type}}get component(){return super.component}set angularDamping(t){this._angularDamping=t,this.component&&(this.component.angularDamping=t)}get angularDamping(){return this._angularDamping}set angularFactor(t){this._angularFactor=t,this.component&&(this.component.angularFactor=t)}get angularFactor(){return this._angularFactor}set friction(t){this._friction=t,this.component&&(this.component.friction=t)}get friction(){return this._friction}set linearDamping(t){this._linearDamping=t,this.component&&(this.component.linearDamping=t)}get linearDamping(){return this._linearDamping}set linearFactor(t){this._linearFactor=t,this.component&&(this.component.linearFactor=t)}get linearFactor(){return this._linearFactor}set mass(t){this._mass=t,this.component&&(this.component.mass=t)}get mass(){return this._mass}set restitution(t){this._restitution=t,this.component&&(this.component.restitution=t)}get restitution(){return this._restitution}set rollingFriction(t){this._rollingFriction=t,this.component&&(this.component.rollingFriction=t)}get rollingFriction(){return this._rollingFriction}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"angular-damping","angular-factor","friction","linear-damping","linear-factor","mass","restitution","rolling-friction","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"angular-damping":this.angularDamping=parseFloat(s);break;case"angular-factor":this.angularFactor=h(s);break;case"friction":this.friction=parseFloat(s);break;case"linear-damping":this.linearDamping=parseFloat(s);break;case"linear-factor":this.linearFactor=h(s);break;case"mass":this.mass=parseFloat(s);break;case"restitution":this.restitution=parseFloat(s);break;case"rolling-friction":this.rollingFriction=parseFloat(s);break;case"type":this.type=s}}}customElements.define("pc-rigidbody",E);class A extends d{constructor(){super("screen"),this._screenSpace=!1,this._resolution=new e.Vec2(640,320),this._referenceResolution=new e.Vec2(640,320),this._priority=0,this._blend=!1,this._scaleBlend=.5}getInitialComponentData(){return{priority:this._priority,referenceResolution:this._referenceResolution,resolution:this._resolution,scaleBlend:this._scaleBlend,scaleMode:this._blend?e.SCALEMODE_BLEND:e.SCALEMODE_NONE,screenSpace:this._screenSpace}}get component(){return super.component}set priority(t){this._priority=t,this.component&&(this.component.priority=this._priority)}get priority(){return this._priority}set referenceResolution(t){this._referenceResolution=t,this.component&&(this.component.referenceResolution=this._referenceResolution)}get referenceResolution(){return this._referenceResolution}set resolution(t){this._resolution=t,this.component&&(this.component.resolution=this._resolution)}get resolution(){return this._resolution}set scaleBlend(t){this._scaleBlend=t,this.component&&(this.component.scaleBlend=this._scaleBlend)}get scaleBlend(){return this._scaleBlend}set blend(t){this._blend=t,this.component&&(this.component.scaleMode=this._blend?e.SCALEMODE_BLEND:e.SCALEMODE_NONE)}get blend(){return this._blend}set screenSpace(t){this._screenSpace=t,this.component&&(this.component.screenSpace=this._screenSpace)}get screenSpace(){return this._screenSpace}static get observedAttributes(){return[...super.observedAttributes,"blend","screen-space","resolution","reference-resolution","priority","scale-blend"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"priority":this.priority=parseInt(s,10);break;case"reference-resolution":this.referenceResolution=r(s);break;case"resolution":this.resolution=r(s);break;case"scale-blend":this.scaleBlend=parseFloat(s);break;case"blend":this.blend=this.hasAttribute("blend");break;case"screen-space":this.screenSpace=this.hasAttribute("screen-space")}}}customElements.define("pc-screen",A);class S extends d{constructor(){super("script"),this.observer=new MutationObserver(this.handleMutations.bind(this)),this.observer.observe(this,{childList:!0}),this.addEventListener("scriptattributeschange",this.handleScriptAttributesChange.bind(this)),this.addEventListener("scriptenablechange",this.handleScriptEnableChange.bind(this))}initComponent(){this.querySelectorAll(":scope > pc-script").forEach((t=>{const e=t.getAttribute("name"),s=t.getAttribute("attributes");e&&this.createScript(e,s)}))}applyAttributes(t,s){try{const i=s?JSON.parse(s):{},n=(t,s,i)=>{if("string"==typeof i&&i.startsWith("asset:")){const e=i.slice(6),n=document.querySelector(`pc-asset#${e}`);if(n)return void(t[s]=n.asset)}if(i&&"object"==typeof i&&Array.isArray(i)){if(i.length>0&&"object"==typeof i[0])return void(t[s]=i.map((t=>{const e={};for(const s in t)n(e,s,t[s]);return e})));if(2===i.length&&"number"==typeof i[0])return void(t[s]=new e.Vec2(i[0],i[1]));if(3===i.length&&"number"==typeof i[0])return void(t[s]=new e.Vec3(i[0],i[1],i[2]));if(4===i.length&&"number"==typeof i[0])return void(t[s]=new e.Vec4(i[0],i[1],i[2],i[3]))}if(i&&"object"==typeof i&&!Array.isArray(i)){t[s]&&"object"==typeof t[s]||(t[s]={});for(const e in i)n(t[s],e,i[e])}else t[s]=i};for(const e in i)n(t,e,i[e])}catch(t){console.error(`Error parsing attributes JSON string ${s}:`,t)}}handleScriptAttributesChange(t){const e=t.target.getAttribute("name");if(!e||!this.component)return;const s=this.component.get(e);s&&this.applyAttributes(s,t.detail.attributes)}handleScriptEnableChange(t){const e=t.target.getAttribute("name");if(!e||!this.component)return;const s=this.component.get(e);s&&(s.enabled=t.detail.enabled)}createScript(t,e){return this.component?(this.component.on(`create:${t}`,(t=>{this.applyAttributes(t,e)})),this.component.create(t)):null}destroyScript(t){this.component&&this.component.destroy(t)}handleMutations(t){for(const e of t)e.addedNodes.forEach((t=>{if(t instanceof HTMLElement&&"pc-script"===t.tagName.toLowerCase()){const e=t.getAttribute("name"),s=t.getAttribute("attributes");e&&this.createScript(e,s)}})),e.removedNodes.forEach((t=>{if(t instanceof HTMLElement&&"pc-script"===t.tagName.toLowerCase()){const e=t.getAttribute("name");e&&this.destroyScript(e)}}))}disconnectedCallback(){var t;this.observer.disconnect(),null===(t=super.disconnectedCallback)||void 0===t||t.call(this)}get component(){return super.component}}customElements.define("pc-scripts",S);class x extends HTMLElement{constructor(){super(...arguments),this._attributes="{}",this._enabled=!0,this._name=""}set scriptAttributes(t){this._attributes=t,this.dispatchEvent(new CustomEvent("scriptattributeschange",{detail:{attributes:t},bubbles:!0}))}get scriptAttributes(){return this._attributes}set enabled(t){this._enabled=t,this.dispatchEvent(new CustomEvent("scriptenablechange",{detail:{enabled:t},bubbles:!0}))}get enabled(){return this._enabled}set name(t){this._name=t}get name(){return this._name}static get observedAttributes(){return["attributes","enabled","name"]}attributeChangedCallback(t,e,s){switch(t){case"attributes":this.scriptAttributes=s;break;case"enabled":this.enabled="false"!==s;break;case"name":this.name=s}}}customElements.define("pc-script",x);class M extends d{constructor(){super("sound"),this._distanceModel="linear",this._maxDistance=1e4,this._pitch=1,this._positional=!1,this._refDistance=1,this._rollOffFactor=1,this._volume=1}getInitialComponentData(){return{distanceModel:this._distanceModel,maxDistance:this._maxDistance,pitch:this._pitch,positional:this._positional,refDistance:this._refDistance,rollOffFactor:this._rollOffFactor,volume:this._volume}}get component(){return super.component}set distanceModel(t){this._distanceModel=t,this.component&&(this.component.distanceModel=t)}get distanceModel(){return this._distanceModel}set maxDistance(t){this._maxDistance=t,this.component&&(this.component.maxDistance=t)}get maxDistance(){return this._maxDistance}set pitch(t){this._pitch=t,this.component&&(this.component.pitch=t)}get pitch(){return this._pitch}set positional(t){this._positional=t,this.component&&(this.component.positional=t)}get positional(){return this._positional}set refDistance(t){this._refDistance=t,this.component&&(this.component.refDistance=t)}get refDistance(){return this._refDistance}set rollOffFactor(t){this._rollOffFactor=t,this.component&&(this.component.rollOffFactor=t)}get rollOffFactor(){return this._rollOffFactor}set volume(t){this._volume=t,this.component&&(this.component.volume=t)}get volume(){return this._volume}static get observedAttributes(){return[...super.observedAttributes,"distance-model","max-distance","pitch","positional","ref-distance","roll-off-factor","volume"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"distance-model":this.distanceModel=s;break;case"max-distance":this.maxDistance=parseFloat(s);break;case"pitch":this.pitch=parseFloat(s);break;case"positional":this.positional=this.hasAttribute("positional");break;case"ref-distance":this.refDistance=parseFloat(s);break;case"roll-off-factor":this.rollOffFactor=parseFloat(s);break;case"volume":this.volume=parseFloat(s)}}}customElements.define("pc-sounds",M);class F extends s{constructor(){super(...arguments),this._asset="",this._autoPlay=!1,this._duration=null,this._loop=!1,this._name="",this._overlap=!1,this._pitch=1,this._startTime=0,this._volume=1,this.soundSlot=null}async connectedCallback(){var t;await(null===(t=this.soundElement)||void 0===t?void 0:t.ready());const e={autoPlay:this._autoPlay,loop:this._loop,overlap:this._overlap,pitch:this._pitch,startTime:this._startTime,volume:this._volume};this._duration&&(e.duration=this._duration),this.soundSlot=this.soundElement.component.addSlot(this._name,e),this.asset=this._asset,this.soundSlot.play(),this._onReady()}disconnectedCallback(){this.soundElement.component.removeSlot(this._name)}get soundElement(){const t=this.parentElement;return t instanceof M?t:(console.warn("pc-sound-slot must be a direct child of a pc-sound element"),null)}set asset(t){var e;if(this._asset=t,this.soundSlot){const s=null===(e=u.get(t))||void 0===e?void 0:e.id;s&&(this.soundSlot.asset=s)}}get asset(){return this._asset}set autoPlay(t){this._autoPlay=t,this.soundSlot&&(this.soundSlot.autoPlay=t)}get autoPlay(){return this._autoPlay}set duration(t){this._duration=t,this.soundSlot&&(this.soundSlot.duration=t)}get duration(){return this._duration}set loop(t){this._loop=t,this.soundSlot&&(this.soundSlot.loop=t)}get loop(){return this._loop}set name(t){this._name=t,this.soundSlot&&(this.soundSlot.name=t)}get name(){return this._name}set overlap(t){this._overlap=t,this.soundSlot&&(this.soundSlot.overlap=t)}get overlap(){return this._overlap}set pitch(t){this._pitch=t,this.soundSlot&&(this.soundSlot.pitch=t)}get pitch(){return this._pitch}set startTime(t){this._startTime=t,this.soundSlot&&(this.soundSlot.startTime=t)}get startTime(){return this._startTime}set volume(t){this._volume=t,this.soundSlot&&(this.soundSlot.volume=t)}get volume(){return this._volume}static get observedAttributes(){return["asset","autoPlay","duration","loop","name","overlap","pitch","startTime","volume"]}attributeChangedCallback(t,e,s){switch(t){case"asset":this.asset=s;break;case"duration":this.duration=parseFloat(s);break;case"loop":this.loop=this.hasAttribute("loop");break;case"name":this.name=s;break;case"overlap":this.overlap=this.hasAttribute("overlap");break;case"pitch":this.pitch=parseFloat(s);break;case"startTime":this.startTime=parseFloat(s);break;case"volume":this.volume=parseFloat(s)}}}customElements.define("pc-sound",F);class D extends s{constructor(){super(...arguments),this._asset="",this._entity=null}connectedCallback(){this._loadModel(),this._onReady()}disconnectedCallback(){this._unloadModel()}_instantiate(t){this._entity=t.instantiateRenderEntity(),t.animations.length>0&&(this._entity.addComponent("anim"),this._entity.anim.assignAnimation("animation",t.animations[0].resource));const e=this.closestEntity;if(e)e.ready().then((()=>{e.entity.addChild(this._entity)}));else{const t=this.closestApp;t&&t.ready().then((()=>{t.app.root.addChild(this._entity)}))}}async _loadModel(){var t;this._unloadModel();const e=await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),s=null==e?void 0:e.app,i=u.get(this._asset);i&&(i.loaded?this._instantiate(i.resource):(i.once("load",(()=>{this._instantiate(i.resource)})),s.assets.load(i)))}_unloadModel(){var t;null===(t=this._entity)||void 0===t||t.destroy(),this._entity=null}set asset(t){this._asset=t,this.isConnected&&this._loadModel()}get asset(){return this._asset}static get observedAttributes(){return["asset"]}attributeChangedCallback(t,e,s){if("asset"===t)this.asset=s}}customElements.define("pc-model",D);class L extends s{constructor(){super(...arguments),this._fog="none",this._fogColor=new e.Color(1,1,1),this._fogDensity=0,this._fogStart=0,this._fogEnd=1e3,this.scene=null}async connectedCallback(){var t;await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),this.scene=this.closestApp.app.scene,this.updateSceneSettings(),this._onReady()}updateSceneSettings(){this.scene&&(this.scene.fog.type=this._fog,this.scene.fog.color=this._fogColor,this.scene.fog.density=this._fogDensity,this.scene.fog.start=this._fogStart,this.scene.fog.end=this._fogEnd)}set fog(t){this._fog=t,this.scene&&(this.scene.fog.type=t)}get fog(){return this._fog}set fogColor(t){this._fogColor=t,this.scene&&(this.scene.fog.color=t)}get fogColor(){return this._fogColor}set fogDensity(t){this._fogDensity=t,this.scene&&(this.scene.fog.density=t)}get fogDensity(){return this._fogDensity}set fogStart(t){this._fogStart=t,this.scene&&(this.scene.fog.start=t)}get fogStart(){return this._fogStart}set fogEnd(t){this._fogEnd=t,this.scene&&(this.scene.fog.end=t)}get fogEnd(){return this._fogEnd}static get observedAttributes(){return["fog","fog-color","fog-density","fog-start","fog-end"]}attributeChangedCallback(t,e,s){switch(t){case"fog":this.fog=s;break;case"fog-color":this.fogColor=o(s);break;case"fog-density":this.fogDensity=parseFloat(s);break;case"fog-start":this.fogStart=parseFloat(s);break;case"fog-end":this.fogEnd=parseFloat(s)}}}customElements.define("pc-scene",L);class R extends s{constructor(){super(...arguments),this._asset="",this._center=new e.Vec3(0,.01,0),this._intensity=1,this._rotation=new e.Vec3,this._level=0,this._lighting=!1,this._scale=new e.Vec3(100,100,100),this._type="infinite",this._scene=null}connectedCallback(){this._loadSkybox(),this._onReady()}disconnectedCallback(){this._unloadSkybox()}_generateSkybox(t){if(!this._scene)return;const s=t.resource,i=e.EnvLighting.generateSkyboxCubemap(s);if(i.anisotropy=4,this._scene.skybox=i,this._lighting){const t=e.EnvLighting.generateLightingSource(s),i=e.EnvLighting.generateAtlas(t);this._scene.envAtlas=i}const n=this._scene.layers.getLayerById(e.LAYERID_SKYBOX);n&&(n.enabled="none"!==this._type),this._scene.sky.type=this._type,this._scene.sky.node.setLocalScale(this._scale),this._scene.sky.center=this._center,this._scene.skyboxIntensity=this._intensity}async _loadSkybox(){var t;const e=await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),s=null==e?void 0:e.app;if(!s)return;const i=u.get(this._asset);i&&(this._scene=s.scene,i.loaded?this._generateSkybox(i):(i.once("load",(()=>{this._generateSkybox(i)})),s.assets.load(i)))}_unloadSkybox(){var t,e;this._scene&&(null===(t=this._scene.skybox)||void 0===t||t.destroy(),this._scene.skybox=null,null===(e=this._scene.envAtlas)||void 0===e||e.destroy(),this._scene.envAtlas=null,this._scene=null)}set asset(t){this._asset=t,this.isConnected&&this._loadSkybox()}get asset(){return this._asset}set center(t){this._center=t,this._scene&&(this._scene.sky.center=this._center)}get center(){return this._center}set intensity(t){this._intensity=t,this._scene&&(this._scene.skyboxIntensity=this._intensity)}get intensity(){return this._intensity}set level(t){this._level=t,this._scene&&(this._scene.skyboxMip=this._level)}get level(){return this._level}set lighting(t){this._lighting=t}get lighting(){return this._lighting}set rotation(t){this._rotation=t,this._scene&&(this._scene.skyboxRotation=(new e.Quat).setFromEulerAngles(t))}get rotation(){return this._rotation}set scale(t){this._scale=t,this._scene&&this._scene.sky.node.setLocalScale(this._scale)}get scale(){return this._scale}set type(t){if(this._type=t,this._scene){this._scene.sky.type=this._type;const t=this._scene.layers.getLayerById(e.LAYERID_SKYBOX);t&&(t.enabled="none"!==this._type)}}get type(){return this._type}static get observedAttributes(){return["asset","center","intensity","level","lighting","rotation","scale","type"]}attributeChangedCallback(t,e,s){switch(t){case"asset":this.asset=s;break;case"center":this.center=h(s);break;case"intensity":this.intensity=parseFloat(s);break;case"level":this.level=parseInt(s,10);break;case"lighting":this.lighting=this.hasAttribute(t);break;case"rotation":this.rotation=h(s);break;case"scale":this.scale=h(s);break;case"type":this.type=s}}}customElements.define("pc-sky",R),t.AppElement=n,t.AssetElement=u,t.AsyncElement=s,t.CameraComponentElement=_,t.CollisionComponentElement=g,t.ComponentElement=d,t.ElementComponentElement=b,t.EntityElement=l,t.GSplatComponentElement=y,t.LightComponentElement=w,t.ListenerComponentElement=m,t.MaterialElement=C,t.ModelElement=D,t.ModuleElement=i,t.RenderComponentElement=k,t.RigidBodyComponentElement=E,t.SceneElement=L,t.ScreenComponentElement=A,t.ScriptComponentElement=S,t.ScriptElement=x,t.SkyElement=R,t.SoundComponentElement=M,t.SoundSlotElement=F}));
|
|
2
2
|
//# sourceMappingURL=pwc.min.js.map
|
package/dist/pwc.min.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pwc.min.js","sources":["../src/async-element.ts","../src/module.ts","../src/app.ts","../src/colors.ts","../src/utils.ts","../src/entity.ts","../src/asset.ts","../src/components/component.ts","../src/components/listener-component.ts","../src/components/camera-component.ts","../src/components/collision-component.ts","../src/components/element-component.ts","../src/components/gsplat-component.ts","../src/components/light-component.ts","../src/material.ts","../src/components/render-component.ts","../src/components/rigidbody-component.ts","../src/components/screen-component.ts","../src/components/script-component.ts","../src/components/script.ts","../src/components/sound-component.ts","../src/components/sound-slot.ts","../src/model.ts","../src/scene.ts","../src/sky.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["AsyncElement","HTMLElement","constructor","super","this","_readyPromise","Promise","resolve","_readyResolve","closestApp","_a","parentElement","closest","closestEntity","_onReady","dispatchEvent","CustomEvent","ready","then","ModuleElement","loadPromise","loadModule","name","getAttribute","glue","wasm","fallback","basisInitialize","glueUrl","wasmUrl","fallbackUrl","WasmModule","setConfig","getInstance","getLoadPromise","customElements","define","AppElement","_canvas","_alpha","_antialias","_depth","_stencil","_highResolution","app","_onWindowResize","bind","connectedCallback","moduleElements","querySelectorAll","all","Array","from","map","module","document","createElement","appendChild","Application","graphicsDeviceOptions","alpha","antialias","depth","stencil","keyboard","Keyboard","window","mouse","Mouse","graphicsDevice","maxPixelRatio","devicePixelRatio","setCanvasFillMode","FILLMODE_FILL_WINDOW","setCanvasResolution","RESOLUTION_AUTO","assetElements","forEach","assetElement","createAsset","asset","assets","add","materialElements","materialElement","createMaterial","preload","start","addEventListener","disconnectedCallback","destroy","removeEventListener","contains","removeChild","resizeCanvas","value","highResolution","observedAttributes","attributeChangedCallback","_oldValue","newValue","CSS_COLORS","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","parseColor","hexColor","toLowerCase","Color","fromString","startsWith","components","split","Number","parseVec2","Vec2","parseVec3","Vec3","parseVec4","Vec4","EntityElement","_enabled","_name","_position","_rotation","_scale","_tags","entity","Entity","enabledAttr","nameAttr","positionAttr","rotationAttr","scaleAttr","tagsAttr","enabled","position","rotation","scale","tags","tag","trim","addChild","root","child","setLocalPosition","setLocalEulerAngles","setLocalScale","clear","extToType","Map","AssetElement","_preload","destroyAsset","id","src","type","ext","pop","get","Asset","url","console","warn","unload","querySelector","_newValue","hasAttribute","ComponentElement","componentName","_component","_componentName","getInitialComponentData","addComponent","entityElement","data","initComponent","component","removeComponent","ListenerComponentElement","CameraComponentElement","_clearColor","_clearColorBuffer","_clearDepthBuffer","_clearStencilBuffer","_cullFaces","_farClip","_flipFaces","_fov","_frustumCulling","_nearClip","_orthographic","_orthoHeight","_priority","_rect","_scissorRect","clearColor","clearColorBuffer","clearDepthBuffer","clearStencilBuffer","cullFaces","farClip","flipFaces","fov","frustumCulling","nearClip","orthographic","orthoHeight","priority","rect","scissorRect","xrAvailable","xrManager","system","xr","supported","isAvailable","XRTYPE_VR","startXr","space","callback","err","error","message","endXr","projection","PROJECTION_ORTHOGRAPHIC","PROJECTION_PERSPECTIVE","parseFloat","CollisionComponentElement","_angularOffset","Quat","_axis","_convexHull","_halfExtents","_height","_linearOffset","_radius","_type","axis","angularOffset","convexHull","halfExtents","height","linearOffset","radius","x","y","z","q","setFromEulerAngles","parseQuat","parseInt","ElementComponentElement","_anchor","_asset","_autoWidth","_color","_fontSize","_lineHeight","_pivot","_text","_width","_wrapLines","_material","useFog","anchor","autoWidth","color","fontAsset","fontSize","lineHeight","pivot","text","width","wrapLines","GSplatComponentElement","LightComponentElement","_castShadows","_innerConeAngle","_intensity","_normalOffsetBias","_outerConeAngle","_range","_shadowBias","_shadowDistance","_shadowResolution","castShadows","innerConeAngle","intensity","normalOffsetBias","outerConeAngle","range","shadowBias","shadowDistance","shadowResolution","includes","MaterialElement","_diffuse","_diffuseMap","_metalnessMap","_normalMap","_roughnessMap","material","StandardMaterial","glossInvert","useMetalness","diffuse","diffuseMap","metalnessMap","normalMap","roughnessMap","update","setMap","property","loaded","resource","anisotropy","once","RenderComponentElement","_receiveShadows","receiveShadows","RigidBodyComponentElement","_angularDamping","_angularFactor","_friction","_linearDamping","_linearFactor","_mass","_restitution","_rollingFriction","angularDamping","angularFactor","friction","linearDamping","linearFactor","mass","restitution","rollingFriction","ScreenComponentElement","_screenSpace","_resolution","_referenceResolution","_blend","_scaleBlend","referenceResolution","resolution","scaleBlend","scaleMode","SCALEMODE_BLEND","SCALEMODE_NONE","screenSpace","blend","tmpV2","tmpV3","tmpV4","ScriptComponentElement","observer","MutationObserver","handleMutations","observe","childList","handleScriptAttributesChange","handleScriptEnableChange","scriptElement","scriptName","attributes","createScript","applyAttributes","script","attributesObject","JSON","parse","applyValue","target","key","assetId","slice","isArray","set","nestedKey","event","detail","on","create","destroyScript","mutations","mutation","addedNodes","node","tagName","removedNodes","disconnect","call","ScriptElement","_attributes","scriptAttributes","bubbles","SoundComponentElement","_distanceModel","_maxDistance","_pitch","_positional","_refDistance","_rollOffFactor","_volume","distanceModel","maxDistance","pitch","positional","refDistance","rollOffFactor","volume","SoundSlotElement","_autoPlay","_duration","_loop","_overlap","_startTime","soundSlot","soundElement","options","autoPlay","loop","overlap","startTime","duration","addSlot","play","removeSlot","ModelElement","_entity","_loadModel","_unloadModel","_instantiate","container","instantiateRenderEntity","animations","length","anim","assignAnimation","parentEntityElement","appElement","load","isConnected","SceneElement","_fog","_fogColor","_fogDensity","_fogStart","_fogEnd","scene","updateSceneSettings","rendering","fog","fogColor","fogDensity","fogStart","fogEnd","SkyElement","_center","_level","_lighting","_scene","_loadSkybox","_unloadSkybox","_generateSkybox","source","skybox","EnvLighting","generateSkyboxCubemap","lighting","generateLightingSource","envAtlas","generateAtlas","layer","layers","getLayerById","LAYERID_SKYBOX","sky","center","skyboxIntensity","_b","level","skyboxMip","skyboxRotation"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pwc.min.js","sources":["../src/async-element.ts","../src/module.ts","../src/app.ts","../src/colors.ts","../src/utils.ts","../src/entity.ts","../src/asset.ts","../src/components/component.ts","../src/components/listener-component.ts","../src/components/camera-component.ts","../src/components/collision-component.ts","../src/components/element-component.ts","../src/components/gsplat-component.ts","../src/components/light-component.ts","../src/material.ts","../src/components/render-component.ts","../src/components/rigidbody-component.ts","../src/components/screen-component.ts","../src/components/script-component.ts","../src/components/script.ts","../src/components/sound-component.ts","../src/components/sound-slot.ts","../src/model.ts","../src/scene.ts","../src/sky.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["AsyncElement","HTMLElement","constructor","super","this","_readyPromise","Promise","resolve","_readyResolve","closestApp","_a","parentElement","closest","closestEntity","_onReady","dispatchEvent","CustomEvent","ready","then","ModuleElement","loadPromise","loadModule","name","getAttribute","glue","wasm","fallback","basisInitialize","glueUrl","wasmUrl","fallbackUrl","WasmModule","setConfig","getInstance","getLoadPromise","customElements","define","AppElement","_canvas","_alpha","_antialias","_depth","_stencil","_highResolution","_hierarchyReady","_picker","_hasPointerListeners","pointerenter","pointerleave","pointerdown","pointerup","pointermove","_hoveredEntity","_pointerHandlers","app","_onWindowResize","bind","connectedCallback","moduleElements","querySelectorAll","all","Array","from","map","module","document","createElement","appendChild","Application","graphicsDeviceOptions","alpha","antialias","depth","stencil","keyboard","Keyboard","window","mouse","Mouse","graphicsDevice","maxPixelRatio","devicePixelRatio","setCanvasFillMode","FILLMODE_FILL_WINDOW","setCanvasResolution","RESOLUTION_AUTO","_pickerCreate","assetElements","forEach","assetElement","createAsset","asset","assets","add","materialElements","materialElement","createMaterial","entityElements","entityElement","createEntity","buildHierarchy","preload","start","addEventListener","disconnectedCallback","_pickerDestroy","destroy","removeEventListener","contains","removeChild","resizeCanvas","width","height","Picker","_onPointerMove","_onPointerDown","_onPointerUp","type","_onPointerListenerAdded","_onPointerListenerRemoved","Object","entries","handler","event","camera","root","findComponent","canvasRect","getBoundingClientRect","x","clientX","left","y","clientY","top","prepare","scene","selection","getSelection","newHoverEntity","length","node","querySelector","parent","hasListeners","PointerEvent","some","entity","value","hierarchyReady","highResolution","observedAttributes","attributeChangedCallback","_oldValue","newValue","CSS_COLORS","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","parseColor","hexColor","toLowerCase","Color","fromString","startsWith","components","split","Number","parseVec2","Vec2","parseVec3","Vec3","parseVec4","Vec4","EntityElement","_enabled","_name","_position","_rotation","_scale","_tags","_listeners","Entity","enabled","position","setLocalPosition","rotation","setLocalEulerAngles","scale","setLocalScale","tags","tag","trim","eventName","eventType","substring","eventHandler","Function","call","e","console","error","addChild","childEntities","child","clear","handlerStr","listener","options","push","bubbles","filter","l","Boolean","extToType","Map","AssetElement","_preload","destroyAsset","id","src","ext","pop","get","Asset","url","warn","unload","_newValue","hasAttribute","ComponentElement","componentName","_component","_componentName","getInitialComponentData","addComponent","data","initComponent","component","removeComponent","ListenerComponentElement","tonemaps","TONEMAP_NONE","TONEMAP_LINEAR","TONEMAP_FILMIC","TONEMAP_HEJL","TONEMAP_ACES","TONEMAP_ACES2","TONEMAP_NEUTRAL","CameraComponentElement","_clearColor","_clearColorBuffer","_clearDepthBuffer","_clearStencilBuffer","_cullFaces","_farClip","_flipFaces","_fov","_frustumCulling","_gamma","_nearClip","_orthographic","_orthoHeight","_priority","_rect","_scissorRect","_tonemap","clearColor","clearColorBuffer","clearDepthBuffer","clearStencilBuffer","cullFaces","farClip","flipFaces","fov","frustumCulling","gammaCorrection","GAMMA_SRGB","GAMMA_NONE","nearClip","orthographic","orthoHeight","priority","rect","scissorRect","toneMapping","xrAvailable","xrManager","system","xr","supported","isAvailable","XRTYPE_VR","startXr","space","callback","err","message","endXr","gamma","projection","PROJECTION_ORTHOGRAPHIC","PROJECTION_PERSPECTIVE","tonemap","parseFloat","CollisionComponentElement","_angularOffset","Quat","_axis","_convexHull","_halfExtents","_height","_linearOffset","_radius","_type","axis","angularOffset","convexHull","halfExtents","linearOffset","radius","z","q","setFromEulerAngles","parseQuat","parseInt","ElementComponentElement","_anchor","_asset","_autoWidth","_color","_fontSize","_lineHeight","_pivot","_text","_width","_wrapLines","_material","useFog","anchor","autoWidth","color","fontAsset","fontSize","lineHeight","pivot","text","wrapLines","GSplatComponentElement","shadowTypes","SHADOW_PCF1_16F","SHADOW_PCF1_32F","SHADOW_PCF3_16F","SHADOW_PCF3_32F","SHADOW_PCF5_16F","SHADOW_PCF5_32F","SHADOW_VSM_16F","SHADOW_VSM_32F","SHADOW_PCSS_32F","LightComponentElement","_castShadows","_innerConeAngle","_intensity","_normalOffsetBias","_outerConeAngle","_range","_shadowBias","_shadowDistance","_shadowIntensity","_shadowResolution","_shadowType","_vsmBias","castShadows","innerConeAngle","intensity","normalOffsetBias","outerConeAngle","range","shadowBias","shadowDistance","shadowIntensity","shadowResolution","shadowType","vsmBias","includes","MaterialElement","_diffuse","_diffuseMap","_metalnessMap","_normalMap","_roughnessMap","material","StandardMaterial","glossInvert","useMetalness","diffuse","diffuseMap","metalnessMap","normalMap","roughnessMap","update","setMap","property","loaded","resource","anisotropy","once","RenderComponentElement","_receiveShadows","receiveShadows","RigidBodyComponentElement","_angularDamping","_angularFactor","_friction","_linearDamping","_linearFactor","_mass","_restitution","_rollingFriction","angularDamping","angularFactor","friction","linearDamping","linearFactor","mass","restitution","rollingFriction","ScreenComponentElement","_screenSpace","_resolution","_referenceResolution","_blend","_scaleBlend","referenceResolution","resolution","scaleBlend","scaleMode","SCALEMODE_BLEND","SCALEMODE_NONE","screenSpace","blend","ScriptComponentElement","observer","MutationObserver","handleMutations","observe","childList","handleScriptAttributesChange","handleScriptEnableChange","scriptElement","scriptName","attributes","createScript","applyAttributes","script","attributesObject","JSON","parse","applyValue","target","key","assetId","slice","isArray","item","obj","itemKey","nestedKey","detail","on","create","destroyScript","mutations","mutation","addedNodes","tagName","removedNodes","disconnect","ScriptElement","_attributes","scriptAttributes","SoundComponentElement","_distanceModel","_maxDistance","_pitch","_positional","_refDistance","_rollOffFactor","_volume","distanceModel","maxDistance","pitch","positional","refDistance","rollOffFactor","volume","SoundSlotElement","_autoPlay","_duration","_loop","_overlap","_startTime","soundSlot","soundElement","autoPlay","loop","overlap","startTime","duration","addSlot","play","removeSlot","ModelElement","_entity","_loadModel","_unloadModel","_instantiate","container","instantiateRenderEntity","animations","anim","assignAnimation","parentEntityElement","appElement","load","isConnected","SceneElement","_fog","_fogColor","_fogDensity","_fogStart","_fogEnd","updateSceneSettings","fog","density","end","fogColor","fogDensity","fogStart","fogEnd","SkyElement","_center","_level","_lighting","_scene","_loadSkybox","_unloadSkybox","_generateSkybox","source","skybox","EnvLighting","generateSkyboxCubemap","lighting","generateLightingSource","envAtlas","generateAtlas","layer","layers","getLayerById","LAYERID_SKYBOX","sky","center","skyboxIntensity","_b","level","skyboxMip","skyboxRotation"],"mappings":"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"}
|