babylonjs-editor-tools 5.3.1 → 5.4.0-alpha.1
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/build/index.node.js +1 -1
- package/build/src/decorators/apply.js +6 -2
- package/build/src/decorators/apply.js.map +1 -1
- package/build/src/decorators/scene.js +18 -0
- package/build/src/decorators/scene.js.map +1 -1
- package/build/src/loading/container.js +7 -1
- package/build/src/loading/container.js.map +1 -1
- package/build/src/loading/loader.js +7 -4
- package/build/src/loading/loader.js.map +1 -1
- package/build/src/loading/script/preload.js +26 -11
- package/build/src/loading/script/preload.js.map +1 -1
- package/declaration/src/decorators/apply.d.ts +4 -0
- package/declaration/src/decorators/scene.d.ts +9 -0
- package/declaration/src/loading/script/preload.d.ts +1 -1
- package/package.json +1 -1
package/build/index.node.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var le=Object.defineProperty;var Or=Object.getOwnPropertyDescriptor;var Mr=Object.getOwnPropertyNames;var Dr=Object.prototype.hasOwnProperty;var i=(e,r)=>le(e,"name",{value:r,configurable:!0});var Rr=(e,r)=>{for(var t in r)le(e,t,{get:r[t],enumerable:!0})},wr=(e,r,t,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Mr(r))!Dr.call(e,n)&&n!==t&&le(e,n,{get:()=>r[n],enumerable:!(o=Or(r,n))||o.enumerable});return e};var Nr=e=>wr(le({},"__esModule",{value:!0}),e);var Nn={};Rr(Nn,{AdvancedAssetContainer:()=>re,Cinematic:()=>ie,NodeParticleSystemSet:()=>Ar.NodeParticleSystemSet,_applyScriptsForObject:()=>D,_preloadScriptsAssets:()=>pe,_registerScriptInstance:()=>je,_removeRegisteredScriptInstance:()=>Bt,animationFromSprite:()=>Tn,animationGroupFromScene:()=>mn,applyScriptOnObject:()=>Xr,configureEngineToUseCompressedTextures:()=>sn,configureShadowMapRefreshRate:()=>xe,configureShadowMapRenderListPredicate:()=>Ce,copyAndParseRagdollConfiguration:()=>$e,createDefaultRenderingPipeline:()=>xt,createMotionBlurPostProcess:()=>bt,createSSAO2RenderingPipeline:()=>St,createSSRRenderingPipeline:()=>pt,createVLSPostProcess:()=>mt,defaultPipelineCameraConfigurations:()=>H,disposeDefaultRenderingPipeline:()=>Be,disposeMotionBlurPostProcess:()=>_e,disposeSSAO2RenderingPipeline:()=>Re,disposeSSRRenderingPipeline:()=>Oe,disposeVLSPostProcess:()=>ve,forceCompileAllSceneMaterials:()=>on,generateCinematicAnimationGroup:()=>wn,getAllScriptsByClassForObject:()=>Kt,getAnimationTypeForObject:()=>oe,getDefaultRenderingPipeline:()=>ee,getMotionBlurPostProcess:()=>Fe,getPowerOfTwoUntil:()=>w,getSSAO2RenderingPipeline:()=>Qr,getSSRRenderingPipeline:()=>Wr,getScriptByClassForObject:()=>en,getVLSPostProcess:()=>$r,guiFromAsset:()=>cn,isAbstractMesh:()=>G,isAnyParticleSystem:()=>Ae,isArcRotateCamera:()=>Vr,isBone:()=>Fr,isCamera:()=>me,isCinematicGroup:()=>Dn,isCinematicKey:()=>rt,isCinematicKeyCut:()=>q,isCinematicKeyEvent:()=>Mn,isCinematicSound:()=>Rn,isDirectionalLight:()=>Br,isFreeCamera:()=>Lr,isGPUParticleSystem:()=>zr,isGroundMesh:()=>_r,isHemisphericLight:()=>kr,isInstancedMesh:()=>Z,isLight:()=>nt,isMesh:()=>M,isNode:()=>k,isParticleSystem:()=>Pe,isPointLight:()=>Gr,isScene:()=>be,isSpotLight:()=>Kr,isSprite:()=>Ie,isTexture:()=>he,isTransformNode:()=>K,loadMaterialFromFile:()=>nn,loadScene:()=>rn,motionBlurPostProcessCameraConfigurations:()=>W,nodeFromDescendants:()=>ln,nodeFromScene:()=>an,normalizeAtlasJson:()=>qe,onKeyboardEvent:()=>vn,onPointerEvent:()=>xn,parseCinematic:()=>On,parseCinematicKeyValue:()=>N,parseDefaultRenderingPipeline:()=>ke,parseKeyFrameAnimations:()=>et,parseMotionBlurPostProcess:()=>Ve,parseRagdollConfiguration:()=>Dt,parseSSAO2RenderingPipeline:()=>Ne,parseSSRRenderingPipeline:()=>De,parseVLSPostProcess:()=>Te,particleSystemFromScene:()=>un,playSpriteAnimationFromName:()=>tn,registerScriptAssetParser:()=>Zr,scriptAssetsCache:()=>R,scriptAssetsParsers:()=>ne,scriptsDictionary:()=>V,serializeDefaultRenderingPipeline:()=>Ke,serializeMotionBlurPostProcess:()=>Le,serializeSSAO2RenderingPipeline:()=>we,serializeSSRRenderingPipeline:()=>Me,serializeVLSPostProcess:()=>Ee,setDefaultRenderingPipelineRef:()=>Jr,setMotionBlurPostProcessRef:()=>Ur,setSSAO2RenderingPipelineRef:()=>qr,setSSRRenderingPipelineRef:()=>Hr,setVLSPostProcessRef:()=>Yr,soundFromScene:()=>pn,spriteFromSpriteManager:()=>En,ssaoRenderingPipelineCameraConfigurations:()=>Y,ssrRenderingPipelineCameraConfigurations:()=>$,visibleAsAsset:()=>Cn,visibleAsBoolean:()=>fn,visibleAsColor3:()=>hn,visibleAsColor4:()=>bn,visibleAsEntity:()=>Pn,visibleAsKeyMap:()=>In,visibleAsNumber:()=>dn,visibleAsString:()=>gn,visibleAsTexture:()=>An,visibleAsVector2:()=>yn,visibleAsVector3:()=>Sn,vlsPostProcessCameraConfigurations:()=>z});module.exports=Nr(Nn);function G(e){switch(e.getClassName?.()){case"Mesh":case"LineMesh":case"GroundMesh":case"InstancedMesh":return!0}return!1}i(G,"isAbstractMesh");function M(e){switch(e.getClassName?.()){case"Mesh":case"GroundMesh":return!0}return!1}i(M,"isMesh");function Z(e){return e.getClassName?.()==="InstancedMesh"}i(Z,"isInstancedMesh");function Fr(e){return e.getClassName?.()==="Bone"}i(Fr,"isBone");function _r(e){return e.getClassName?.()==="GroundMesh"}i(_r,"isGroundMesh");function K(e){return e.getClassName?.()==="TransformNode"}i(K,"isTransformNode");function he(e){return e?.getClassName?.()==="Texture"}i(he,"isTexture");function me(e){switch(e.getClassName?.()){case"Camera":case"FreeCamera":case"TargetCamera":case"EditorCamera":case"ArcRotateCamera":case"UniversalCamera":return!0}return!1}i(me,"isCamera");function Lr(e){switch(e.getClassName?.()){case"FreeCamera":case"UniversalCamera":return!0}return!1}i(Lr,"isFreeCamera");function Vr(e){return e.getClassName?.()==="ArcRotateCamera"}i(Vr,"isArcRotateCamera");function Gr(e){return e.getClassName?.()==="PointLight"}i(Gr,"isPointLight");function Br(e){return e.getClassName?.()==="DirectionalLight"}i(Br,"isDirectionalLight");function Kr(e){return e.getClassName?.()==="SpotLight"}i(Kr,"isSpotLight");function kr(e){return e.getClassName?.()==="HemisphericLight"}i(kr,"isHemisphericLight");function nt(e){switch(e.getClassName?.()){case"Light":case"PointLight":case"SpotLight":case"DirectionalLight":case"HemisphericLight":return!0}return!1}i(nt,"isLight");function k(e){return G(e)||K(e)||nt(e)||me(e)}i(k,"isNode");function be(e){return e.getClassName?.()==="Scene"}i(be,"isScene");function Pe(e){return e.getClassName?.()==="ParticleSystem"}i(Pe,"isParticleSystem");function zr(e){return e.getClassName?.()==="GPUParticleSystem"}i(zr,"isGPUParticleSystem");function Ae(e){switch(e.getClassName?.()){case"ParticleSystem":case"GPUParticleSystem":return!0}return!1}i(Ae,"isAnyParticleSystem");function Ie(e){return e.getClassName?.()==="Sprite"}i(Ie,"isSprite");var ot=require("babylonjs"),it=require("babylonjs");function Ce(e){e.lights.forEach(r=>{let t=r.getShadowGenerator()?.getShadowMap();t&&(t.renderListPredicate=o=>ot.Vector3.Distance(o.getAbsolutePosition(),r.getAbsolutePosition())<=r.range)})}i(Ce,"configureShadowMapRenderListPredicate");async function xe(e){e.executeWhenReady(()=>{e.lights.forEach(r=>{let t=r.getShadowGenerator()?.getShadowMap();t&&(t.refreshRate=r.metadata?.refreshRate??it.RenderTargetTexture.REFRESHRATE_RENDER_ONEVERYFRAME)})})}i(xe,"configureShadowMapRefreshRate");var st=require("babylonjs"),at=require("babylonjs"),lt=require("babylonjs"),x=null,z=new Map;function $r(){return x}i($r,"getVLSPostProcess");function Yr(e){x=e}i(Yr,"setVLSPostProcessRef");function ve(e){x&&e.activeCamera&&(x.dispose(e.activeCamera),x=null)}i(ve,"disposeVLSPostProcess");function mt(e,r){return r??=e.meshes.find(t=>M(t)),x=new lt.VolumetricLightScatteringPostProcess("VolumetricLightScatteringPostProcess",1,e.activeCamera,r,100,at.Texture.BILINEAR_SAMPLINGMODE,e.getEngine(),!1),x}i(mt,"createVLSPostProcess");function Ee(){return x?{meshId:x.mesh?.id,exposure:x.exposure,decay:x.decay,weight:x.weight,density:x.density,invert:x.invert,useCustomMeshPosition:x.useCustomMeshPosition,customMeshPosition:x.customMeshPosition.asArray()}:null}i(Ee,"serializeVLSPostProcess");function Te(e,r){let t=null;if(r.meshId){let n=e.getMeshById(r.meshId);n&&M(n)&&(t=n)}let o=mt(e,t);return o.exposure=r.exposure,o.decay=r.decay,o.weight=r.weight,o.density=r.density,o.invert=r.invert,o.useCustomMeshPosition=r.useCustomMeshPosition,o.customMeshPosition.copyFrom(st.Vector3.FromArray(r.customMeshPosition)),o}i(Te,"parseVLSPostProcess");var ct=require("babylonjs"),h=null,$=new Map;function Wr(){return h}i(Wr,"getSSRRenderingPipeline");function Hr(e){h=e}i(Hr,"setSSRRenderingPipelineRef");function Oe(){h&&(h.dispose(),h=null)}i(Oe,"disposeSSRRenderingPipeline");function pt(e,r){return h=new ct.SSRRenderingPipeline("SSRRenderingPipeline",e,[r]),h.samples=4,h}i(pt,"createSSRRenderingPipeline");function Me(){return h?{samples:h.samples,step:h.step,thickness:h.thickness,strength:h.strength,reflectionSpecularFalloffExponent:h.reflectionSpecularFalloffExponent,maxSteps:h.maxSteps,maxDistance:h.maxDistance,roughnessFactor:h.roughnessFactor,reflectivityThreshold:h.reflectivityThreshold,blurDispersionStrehgth:h.blurDispersionStrength,clipToFrustum:h.clipToFrustum,enableSmoothReflections:h.enableSmoothReflections,enableAutomaticThicknessComputation:h.enableAutomaticThicknessComputation,attenuateFacingCamera:h.attenuateFacingCamera,attenuateScreenBorders:h.attenuateScreenBorders,attenuateIntersectionDistance:h.attenuateIntersectionDistance,attenuateBackfaceReflection:h.attenuateBackfaceReflection,blurDownsample:h.blurDownsample,selfCollisionNumSkip:h.selfCollisionNumSkip,ssrDownsample:h.ssrDownsample,backfaceDepthTextureDownsample:h.backfaceDepthTextureDownsample}:null}i(Me,"serializeSSRRenderingPipeline");function De(e,r,t){if(h)return h;let o=pt(e,r);return o.samples=t.samples,o.step=t.step,o.thickness=t.thickness,o.strength=t.strength,o.reflectionSpecularFalloffExponent=t.reflectionSpecularFalloffExponent,o.maxSteps=t.maxSteps,o.maxDistance=t.maxDistance,o.roughnessFactor=t.roughnessFactor,o.reflectivityThreshold=t.reflectivityThreshold,o.blurDispersionStrength=t.blurDispersionStrehgth,o.clipToFrustum=t.clipToFrustum,o.enableSmoothReflections=t.enableSmoothReflections,o.enableAutomaticThicknessComputation=t.enableAutomaticThicknessComputation,o.attenuateFacingCamera=t.attenuateFacingCamera,o.attenuateScreenBorders=t.attenuateScreenBorders,o.attenuateIntersectionDistance=t.attenuateIntersectionDistance,o.attenuateBackfaceReflection=t.attenuateBackfaceReflection,o.blurDownsample=t.blurDownsample,o.selfCollisionNumSkip=t.selfCollisionNumSkip,o.ssrDownsample=t.ssrDownsample,o.backfaceDepthTextureDownsample=t.backfaceDepthTextureDownsample,o}i(De,"parseSSRRenderingPipeline");var ut=require("babylonjs"),v=null,X=new Map;function qo(){return v}i(qo,"getTAARenderingPipeline");function Uo(e){v=e}i(Uo,"setTAARenderingPipelineRef");function ft(){v&&(v.dispose(),v=null)}i(ft,"disposeTAARenderingPipeline");function jr(e,r){return v=new ut.TAARenderingPipeline("TAARenderingPipeline",e,[r]),v.samples=4,v}i(jr,"createTAARenderingPipeline");function gt(){return v?{factor:v.factor,samples:v.samples,clampHistory:v.clampHistory,reprojectHistory:v.reprojectHistory,disableOnCameraMove:v.disableOnCameraMove}:null}i(gt,"serializeTAARenderingPipeline");function dt(e,r,t){if(v)return v;let o=jr(e,r);return o.factor=t.factor,o.samples=t.samples,o.clampHistory=t.clampHistory,o.reprojectHistory=t.reprojectHistory,o.disableOnCameraMove=t.disableOnCameraMove,o}i(dt,"parseTAARenderingPipeline");var yt=require("babylonjs"),P=null,Y=new Map;function Qr(){return P}i(Qr,"getSSAO2RenderingPipeline");function qr(e){P=e}i(qr,"setSSAO2RenderingPipelineRef");function Re(){P&&(P.dispose(),P=null)}i(Re,"disposeSSAO2RenderingPipeline");function St(e,r){return P=new yt.SSAO2RenderingPipeline("SSAO2RenderingPipeline",e,1,[r]),P.samples=4,P}i(St,"createSSAO2RenderingPipeline");function we(){return P?{radius:P.radius,totalStrength:P.totalStrength,samples:P.samples,maxZ:P.maxZ,minZAspect:P.minZAspect,epsilon:P.epsilon,textureSamples:P.textureSamples,bypassBlur:P.bypassBlur,bilateralSamples:P.bilateralSamples,bilateralSoften:P.bilateralSoften,bilateralTolerance:P.bilateralTolerance,expensiveBlur:P.expensiveBlur}:null}i(we,"serializeSSAO2RenderingPipeline");function Ne(e,r,t){if(P)return P;let o=St(e,r);return o.radius=t.radius,o.totalStrength=t.totalStrength,o.samples=t.samples,o.maxZ=t.maxZ,o.minZAspect=t.minZAspect,o.epsilon=t.epsilon,o.textureSamples=t.textureSamples,o.bypassBlur=t.bypassBlur,o.bilateralSamples=t.bilateralSamples,o.bilateralSoften=t.bilateralSoften,o.bilateralTolerance=t.bilateralTolerance,o.expensiveBlur=t.expensiveBlur,o}i(Ne,"parseSSAO2RenderingPipeline");var ht=require("babylonjs"),E=null,W=new Map;function Fe(){return E}i(Fe,"getMotionBlurPostProcess");function Ur(e){E=e}i(Ur,"setMotionBlurPostProcessRef");function _e(){E&&(E.dispose(),E=null)}i(_e,"disposeMotionBlurPostProcess");function bt(e,r){return E=new ht.MotionBlurPostProcess("MotionBlurPostProcess",e,1,r),E.motionStrength=1,E.isObjectBased=!0,E}i(bt,"createMotionBlurPostProcess");function Le(){return E?{isObjectBased:E.isObjectBased,motionStrength:E.motionStrength,motionBlurSamples:E.motionBlurSamples}:null}i(Le,"serializeMotionBlurPostProcess");function Ve(e,r,t){if(E)return E;let o=bt(e,r);return o.isObjectBased=t.isObjectBased,o.motionStrength=t.motionStrength,o.motionBlurSamples=t.motionBlurSamples,o}i(Ve,"parseMotionBlurPostProcess");var Pt=require("babylonjs"),Ge=require("babylonjs"),At=require("babylonjs"),It=require("babylonjs"),Ct=require("babylonjs"),m=null,H=new Map;function ee(){return m}i(ee,"getDefaultRenderingPipeline");function Jr(e){m=e}i(Jr,"setDefaultRenderingPipelineRef");function Be(){m&&(m.dispose(),m=null)}i(Be,"disposeDefaultRenderingPipeline");function xt(e,r){return m=new Ct.DefaultRenderingPipeline("DefaultRenderingPipeline",!0,e,[r]),m.samples=4,m.depthOfField.lensSize=512,m.depthOfField.fStop=.25,m.depthOfField.focusDistance=55e3,m}i(xt,"createDefaultRenderingPipeline");function Ke(){return m?{samples:m.samples,fxaaEnabled:m.fxaaEnabled,imageProcessingEnabled:m.imageProcessingEnabled,exposure:m.imageProcessing?.exposure,contrast:m.imageProcessing?.contrast,fromLinearSpace:m.imageProcessing?.fromLinearSpace,toneMappingEnabled:m.imageProcessing?.toneMappingEnabled,toneMappingType:m.imageProcessing?.toneMappingType,ditheringEnabled:m.imageProcessing?.ditheringEnabled,ditheringIntensity:m.imageProcessing?.ditheringIntensity,bloomEnabled:m.bloomEnabled,bloomThreshold:m.bloomThreshold,bloomWeight:m.bloomWeight,bloomScale:m.bloomScale,bloomKernel:m.bloomKernel,sharpenEnabled:m.sharpenEnabled,sharpenEdgeAmount:m.sharpen.edgeAmount,sharpenColorAmount:m.sharpen.colorAmount,grainEnabled:m.grainEnabled,grainIntensity:m.grain.intensity,grainAnimated:m.grain.animated,depthOfFieldEnabled:m.depthOfFieldEnabled,depthOfFieldBlurLevel:m.depthOfFieldBlurLevel,lensSize:m.depthOfField.lensSize,fStop:m.depthOfField.fStop,focusDistance:m.depthOfField.focusDistance,focalLength:m.depthOfField.focalLength,vignetteEnabled:m.imageProcessing?.vignetteEnabled,vignetteColor:m.imageProcessing?.vignetteColor.asArray(),vignetteWeight:m.imageProcessing?.vignetteWeight,chromaticAberrationEnabled:m.chromaticAberrationEnabled,aberrationAmount:m.chromaticAberration.aberrationAmount,radialIntensity:m.chromaticAberration.radialIntensity,direction:m.chromaticAberration.direction.asArray(),centerPosition:m.chromaticAberration.centerPosition.asArray(),glowLayerEnabled:m.glowLayerEnabled,glowLayerIntensity:m.glowLayer?.intensity,glowLayerBlurKernelSize:m.glowLayer?.blurKernelSize,colorGradingEnabled:m.imageProcessing.colorGradingEnabled,colorGradingTexture:m.imageProcessing.colorGradingTexture?.serialize(),colorGradingWithGreenDepth:m.imageProcessing.imageProcessingConfiguration.colorGradingWithGreenDepth,colorCurvesEnabled:m.imageProcessing.colorCurvesEnabled,globalHue:m.imageProcessing.colorCurves?.globalHue,globalDensity:m.imageProcessing.colorCurves?.globalDensity,globalExposure:m.imageProcessing.colorCurves?.globalExposure,globalSaturation:m.imageProcessing.colorCurves?.globalSaturation,highlightsHue:m.imageProcessing.colorCurves?.highlightsHue,highlightsDensity:m.imageProcessing.colorCurves?.highlightsDensity,highlightsExposure:m.imageProcessing.colorCurves?.highlightsExposure,highlightsSaturation:m.imageProcessing.colorCurves?.highlightsSaturation,midtonesHue:m.imageProcessing.colorCurves?.midtonesHue,midtonesDensity:m.imageProcessing.colorCurves?.midtonesDensity,midtonesExposure:m.imageProcessing.colorCurves?.midtonesExposure,midtonesSaturation:m.imageProcessing.colorCurves?.midtonesSaturation,shadowsHue:m.imageProcessing.colorCurves?.shadowsHue,shadowsDensity:m.imageProcessing.colorCurves?.shadowsDensity,shadowsExposure:m.imageProcessing.colorCurves?.shadowsExposure,shadowsSaturation:m.imageProcessing.colorCurves?.shadowsSaturation}:null}i(Ke,"serializeDefaultRenderingPipeline");function ke(e,r,t,o){if(m)return m;let n=xt(e,r);if(n.samples=t.samples,n.fxaaEnabled=t.fxaaEnabled,n.imageProcessingEnabled=t.imageProcessingEnabled,n.imageProcessing){if(n.imageProcessing.exposure=t.exposure,n.imageProcessing.contrast=t.contrast,n.imageProcessing.fromLinearSpace=t.fromLinearSpace,n.imageProcessing.toneMappingEnabled=t.toneMappingEnabled,n.imageProcessing.toneMappingType=t.toneMappingType,n.imageProcessing.ditheringEnabled=t.ditheringEnabled,n.imageProcessing.ditheringIntensity=t.ditheringIntensity,n.imageProcessing.vignetteEnabled=t.vignetteEnabled??!1,n.imageProcessing.vignetteColor=Pt.Color4.FromArray(t.vignetteColor??[0,0,0]),n.imageProcessing.vignetteWeight=t.vignetteWeight??.3,n.imageProcessing.colorGradingEnabled=t.colorGradingEnabled??!1,n.imageProcessing.imageProcessingConfiguration.colorGradingWithGreenDepth=t.colorGradingWithGreenDepth??!0,t.colorGradingTexture){let a=null;if(t.colorGradingTexture.customType==="BABYLON.ColorGradingTexture"){let s=o+t.colorGradingTexture.name;a=new It.ColorGradingTexture(s,e),a.level=t.colorGradingTexture.level}else{let s=At.Texture.Parse(t.colorGradingTexture,e,o);he(s)&&(a=s)}n.imageProcessing.colorGradingTexture=a}n.imageProcessing.colorCurvesEnabled=t.colorCurvesEnabled??!1,n.imageProcessing.colorCurves&&(n.imageProcessing.colorCurves.globalHue=t.globalHue??30,n.imageProcessing.colorCurves.globalDensity=t.globalDensity??0,n.imageProcessing.colorCurves.globalExposure=t.globalExposure??0,n.imageProcessing.colorCurves.globalSaturation=t.globalSaturation??0,n.imageProcessing.colorCurves.highlightsHue=t.highlightsHue??30,n.imageProcessing.colorCurves.highlightsDensity=t.highlightsDensity??0,n.imageProcessing.colorCurves.highlightsExposure=t.highlightsExposure??0,n.imageProcessing.colorCurves.highlightsSaturation=t.highlightsSaturation??0,n.imageProcessing.colorCurves.midtonesHue=t.midtonesHue??30,n.imageProcessing.colorCurves.midtonesDensity=t.midtonesDensity??0,n.imageProcessing.colorCurves.midtonesExposure=t.midtonesExposure??0,n.imageProcessing.colorCurves.midtonesSaturation=t.midtonesSaturation??0,n.imageProcessing.colorCurves.shadowsHue=t.shadowsHue??30,n.imageProcessing.colorCurves.shadowsDensity=t.shadowsDensity??0,n.imageProcessing.colorCurves.shadowsExposure=t.shadowsExposure??0,n.imageProcessing.colorCurves.shadowsSaturation=t.shadowsSaturation??0)}return n.bloomEnabled=t.bloomEnabled,n.bloomThreshold=t.bloomThreshold,n.bloomWeight=t.bloomWeight,n.bloomScale=t.bloomScale,n.bloomKernel=t.bloomKernel,n.sharpenEnabled=t.sharpenEnabled,n.sharpen.edgeAmount=t.sharpenEdgeAmount,n.sharpen.colorAmount=t.sharpenColorAmount,n.grainEnabled=t.grainEnabled,n.grain.intensity=t.grainIntensity,n.grain.animated=t.grainAnimated,n.depthOfFieldEnabled=t.depthOfFieldEnabled,n.depthOfFieldBlurLevel=t.depthOfFieldBlurLevel,n.depthOfField.lensSize=t.lensSize,n.depthOfField.fStop=t.fStop,n.depthOfField.focusDistance=t.focusDistance,n.depthOfField.focalLength=t.focalLength,n.chromaticAberrationEnabled=t.chromaticAberrationEnabled??!1,n.chromaticAberration.aberrationAmount=t.aberrationAmount??10,n.chromaticAberration.radialIntensity=t.radialIntensity??1,n.chromaticAberration.direction=Ge.Vector2.FromArray(t.direction??[0,0]),n.chromaticAberration.centerPosition=Ge.Vector2.FromArray(t.centerPosition??[0,0]),n.glowLayerEnabled=t.glowLayerEnabled??!1,n.glowLayer&&(n.glowLayer.intensity=t.glowLayerIntensity??1,n.glowLayer.blurKernelSize=t.glowLayerBlurKernelSize??32),n}i(ke,"parseDefaultRenderingPipeline");function Ei(e){Y.set(e,we()),z.set(e,Ee()),$.set(e,Me()),W.set(e,Le()),H.set(e,Ke()),X.set(e,gt())}i(Ei,"saveRenderingConfigurationForCamera");function vt(e,r){Re(),ve(e.getScene()),Oe(),_e(),Be(),ft();let t=Y.get(e);t&&Ne(e.getScene(),e,t);let o=z.get(e);o&&Te(e.getScene(),o);let n=$.get(e);n&&De(e.getScene(),e,n);let a=W.get(e);a&&Ve(e.getScene(),e,a);let s=H.get(e);s&&ke(e.getScene(),e,s,r);let u=X.get(e);u&&dt(e.getScene(),e,u)}i(vt,"applyRenderingConfigurationForCamera");var te=require("babylonjs"),Et=require("babylonjs");function Tt(e){let r=e.metadata?.physicsAggregate;if(!r)return;let t;M(e)?t=e:Z(e)&&(t=e.sourceMesh);let o=new Et.PhysicsAggregate(e,r.shape.type,{mesh:t,mass:r.massProperties.mass});o.body.setMassProperties({mass:r.massProperties.mass,inertia:r.massProperties.inertia?te.Vector3.FromArray(r.massProperties.inertia):void 0,centerOfMass:r.massProperties.centerOfMass?te.Vector3.FromArray(r.massProperties.centerOfMass):void 0,inertiaOrientation:r.massProperties.inertiaOrientation?te.Quaternion.FromArray(r.massProperties.inertiaOrientation):void 0}),o.shape.density=r.shape.density,o.body.setMotionType(r.body.motionType),o.shape.material=r.material,e.physicsAggregate=o,e.metadata.physicsAggregate=void 0}i(Tt,"configurePhysicsAggregate");function Ot(e,r){(Array.isArray(r)?r:[]).forEach(o=>{let n=e.getCameraById(o.cameraId);n&&(o.ssao2RenderingPipeline&&Y.set(n,o.ssao2RenderingPipeline),o.vlsPostProcess&&z.set(n,o.vlsPostProcess),o.ssrRenderingPipeline&&$.set(n,o.ssrRenderingPipeline),o.motionBlurPostProcess&&W.set(n,o.motionBlurPostProcess),o.defaultRenderingPipeline&&H.set(n,o.defaultRenderingPipeline),o.taaRenderingPipeline&&X.set(n,o.taaRenderingPipeline))})}i(Ot,"applyRenderingConfigurations");function ce(e,r){let t=r.soundTracks??[];t.length||t.push(r.mainSoundTrack);for(let o=0,n=t.length;o<n;o++){let a=t[o].soundCollection.find(s=>s.id===e);if(a)return a}return null}i(ce,"getSoundById");var B=require("babylonjs"),Mt=require("babylonjs");function ze(e){let r=Mt.Vector3.FromArray(e);return r.equals(B.Axis.X)?B.Axis.X:r.equals(B.Axis.Y)?B.Axis.Y:r.equals(B.Axis.Z)?B.Axis.Z:r}i(ze,"parseAxis");function Dt(e){return e.runtimeConfiguration.forEach(r=>{r.rotationAxis&&(r.rotationAxis=ze(r.rotationAxis)),r.boneOffsetAxis&&(r.boneOffsetAxis=ze(r.boneOffsetAxis))}),e}i(Dt,"parseRagdollConfiguration");function $e(e){let r={rootNodeId:e.rootNodeId,skeletonName:e.skeletonName,scalingFactor:e.scalingFactor,runtimeConfiguration:e.runtimeConfiguration.map(t=>({name:t.name,bones:t.bones,width:t.width,depth:t.depth,height:t.height,size:t.size,joint:t.joint,min:t.min,max:t.max,boxOffset:t.boxOffset,rotationAxis:t.rotationAxis?.slice(),boneOffsetAxis:t.boneOffsetAxis?.slice()}))};return Dt(r)}i($e,"copyAndParseRagdollConfiguration");function Ye(e){return e&&JSON.parse(JSON.stringify(e))}i(Ye,"cloneJSObject");function j(e){let r=new Set;e.transformNodes.forEach(t=>{if(t.metadata?.isStaticGroup){let o=t.getDescendants(!1);o.push(t),o.forEach(n=>{if((G(n)||K(n)&&!n.isWorldMatrixFrozen)&&n.freezeWorldMatrix(),G(n)){let a=n.material;a&&!a.isFrozen&&!r.has(a)&&(r.add(a),a.onBindObservable.addOnce(()=>{a.freeze()}))}})}})}i(j,"configureTransformNodes");var We=require("babylonjs"),re=class{static{i(this,"AdvancedAssetContainer")}container;_rootUrl;_scriptsMap;_originalDescendants=[];_nodesMap=new Map;_animationGroupsMap=new Map;constructor(r,t,o){this.container=r,this._rootUrl=t,this._scriptsMap=o,r.populateRootNodes(),r.rootNodes.forEach(n=>{this._originalDescendants.push(n,...n.getDescendants(!1))}),this._originalDescendants.forEach(n=>{this._nodesMap.set(n,{node:n,metadata:Ye(n.metadata)})}),r.animationGroups.forEach(n=>{this._animationGroupsMap.set(n.name,n)})}removeDefault(){this.container.removeAllFromScene()}instantiate(r){let t=We.Tools.RandomId(),o=i(s=>`${s}-${t}`,"nameFunction"),n=this.container.instantiateModelsToScene(o,!1,r),a=[];return n.rootNodes.forEach(s=>{a.push(s,...s.getDescendants(!1))}),a.forEach((s,u)=>{let l=this._originalDescendants[u],c=l.id;s.id=We.Tools.RandomId(),s.metadata=Ye(this._nodesMap.get(l).metadata),a.forEach(f=>{f.metadata.scripts?.forEach(g=>{Object.keys(g.values||{}).forEach(p=>{let d=g.values[p];if(d.type==="entity"){d.value===c&&(d.value=s.id),d.value===l.name&&(d.value=s.name);let y=this._animationGroupsMap.get(d.value);y&&(d.value=o(y.name))}})})})}),a.forEach(s=>{D(this.container.scene,s,this._scriptsMap,this._rootUrl)}),j(this.container.scene),n}};var Rt=require("babylonjs"),wt=require("babylonjs");async function Nt(e,r,t){let n=e.split("/").pop().replace(".scene",".babylon"),a=await(0,wt.LoadAssetContainerAsync)(n,t,{rootUrl:r,pluginExtension:".babylon"});return Rt.SceneLoaderFlags.ForceFullSceneLoadingForIncremental&&t.meshes.forEach(s=>M(s)&&s._checkDelayState()),a.addAllToScene(),j(t),a}i(Nt,"preloadSceneScriptAsset");async function Ft(e,r){return await(await fetch(`${r}${e}`)).json()}i(Ft,"preloadCommonScriptAsset");var R=new Map,ne=new Map;function Zr(e,r){ne.has(e)&&console.warn(`A parser for the extension '${e}' was already registered. It will be overwritten.`),ne.set(e,r)}i(Zr,"registerScriptAssetParser");async function pe(e,r,t){[r,...r.transformNodes,...r.meshes,...r.lights,...r.cameras].filter(s=>s.metadata?.scripts?.length).map(s=>s.metadata.scripts).flat().forEach(s=>{if(s.values)for(let u in s.values){if(!s.values.hasOwnProperty(u))continue;let l=s.values[u];l.type==="asset"&&l.value&&!R.get(l.value)&&R.set(l.value,null)}});let a=[];R.forEach((s,u)=>{R.get(u)||a.push(new Promise(async l=>{try{let c=u.split(".").pop();switch(c){case"scene":R.set(u,new re(await Nt(u,e,r),e,t));break;default:if(ne.has(c)){let f=ne.get(c);R.set(u,await f({key:u,rootUrl:e,scene:r}));break}else R.set(u,await Ft(u,e));break}}catch(c){console.error(c)}l()}))}),await Promise.all(a)}i(pe,"_preloadScriptsAssets");var _t=require("babylonjs"),ue=require("babylonjs"),Lt=require("babylonjs"),fe=require("babylonjs"),Vt=require("babylonjs"),Gt=require("babylonjs-gui");function He(e,r,t,o,n){let a=o.constructor;if(!a)return;a._NodesFromScene?.forEach(l=>{o[l.propertyKey.toString()]=e.getNodeByName(l.nodeName)}),a._NodesFromDescendants?.forEach(l=>{let c=r.getDescendants?.(l.directDescendantsOnly,f=>f.name===l.nodeName)[0];o[l.propertyKey.toString()]=c??null}),a._AnimationGroups?.forEach(l=>{o[l.propertyKey.toString()]=e.getAnimationGroupByName(l.animationGroupName)}),a._SoundsFromScene?.forEach(l=>{let c=e.getSoundByName?.(l.soundName);o[l.propertyKey.toString()]=c??null}),(a._GuiFromAsset??[]).map(async l=>{let c=`${n}assets/${l.pathInAssets}`;try{let g=await(await fetch(c)).json(),S=Gt.AdvancedDynamicTexture.CreateFullscreenUI(g.name,!0,e);S.parseSerializedObject(g.content,!1),o[l.propertyKey.toString()]=S,l.onGuiCreated?.(o,S)}catch(f){throw console.error(`Failed to load GUI from asset: ${c}`),f}}),a._ParticleSystemsFromScene?.forEach(l=>{let c=e.particleSystems?.find(f=>f.name!==l.particleSystemName?!1:l.directDescendantsOnly?f.emitter===r:f);o[l.propertyKey.toString()]=c}),(a._VisibleInInspector??[]).forEach(async l=>{let c=l.propertyKey.toString(),f=t.values;if(!f)throw new Error(`No values found for script with key "${t.key}".`);if(f.hasOwnProperty(c)&&f[c].hasOwnProperty("value")){let g=f[c].value;switch(l.configuration.type){case"number":case"boolean":case"keymap":case"string":o[c]=g;break;case"vector2":o[c]=fe.Vector2.FromArray(g);break;case"vector3":o[c]=fe.Vector3.FromArray(g);break;case"color3":o[c]=ue.Color3.FromArray(g);break;case"color4":o[c]=ue.Color4.FromArray(g);break;case"entity":switch(l.configuration.entityType){case"node":o[c]=e.getNodeById(g)??null;break;case"animationGroup":o[c]=e.getAnimationGroupByName(g)??null;break;case"sound":o[c]=ce(g,e);break;case"particleSystem":o[c]=e.particleSystems?.find(p=>p.id===g)??null;break}break;case"texture":g&&(o[c]=Lt.Texture.Parse(g,e,n));break;case"asset":if(g){let p=l.configuration.assetType,d=R.get(g);switch(p){case"json":case"gui":case"scene":case"navmesh":o[c]=d;break;case"ragdoll":o[c]=$e(d);break;case"nodeParticleSystemSet":let y=Vt.NodeParticleSystemSet.Parse(d);o[c]=y;break;case"material":o[c]=_t.Material.Parse(d,e,n);break}}}}});let s=null,u=null;if(a._PointerEvents?.length){if(a._PointerEvents.find(f=>f.options.mode==="attachedMeshOnly")&&!G(r))throw new Error('@onPointerEvent with mode "attachedMeshOnly" can only be used on scripts attached to meshes (extends AbstractMesh).');if(a._PointerEvents.find(f=>f.options.mode!=="global")&&!k(r))throw new Error('@onPointerEvent with mode different from "global" can be used only on scripts attached to Node: Mesh, Light, Camera, TransformNode.');s=e.onPointerObservable.add(f=>{let g=null;a._PointerEvents.forEach(S=>{if(!S.eventTypes.includes(f.type))return;let p=S.propertyKey.toString();if(S.options.mode==="global")return o[p]?.(f);g=f.pickInfo,g||(g=e.pick(e.pointerX,e.pointerY,y=>y.isVisible&&y.isPickable&&y.isEnabled(!0)&&!y._masterMesh,!1));let d=g.pickedMesh;if(d&&(S.options.mode==="attachedMeshOnly"&&d===r||S.options.mode==="includeDescendants"&&k(r)&&[r,...r.getDescendants(!1)].find(C=>C===d)))return o[p]?.(f)})})}if(a._KeyboardEvents?.length&&(u=e.onKeyboardObservable.add(l=>{a._KeyboardEvents.forEach(c=>{c.eventTypes.includes(l.type)&&o[c.propertyKey.toString()]?.(l)})})),a._SpritesFromSpriteManager?.length){let l=r;if(!K(l)||!l.isSpriteManager)return console.error("@spriteFromSpriteManager decorator can only be used on SpriteManagerNode.");if(!l.spriteManager)return console.error(`SpriteManagerNode "${l.name}" has no sprite manager assigned.`);a._SpritesFromSpriteManager?.forEach(c=>{let f=l.spriteManager?.sprites.find(g=>g.name===c.spriteName)||null;o[c.propertyKey.toString()]=f})}if(a._AnimationsFromSprite?.length){if(!Ie(r))return console.error("@animationFromSprite decorator can only be used in scripts attached on Sprite.");let l=r.metadata?.spriteAnimations;if(!l?.length)return console.error(`Sprite "${r.name}" has no sprite animations assigned.`);a._AnimationsFromSprite.forEach(c=>{let f=l.find(g=>g.name===c.animationName);f?o[c.propertyKey.toString()]=f??null:console.warn(`Sprite animation named "${c.animationName}" not found on sprite "${r.name}".`)})}return{observers:{pointerObserver:s,keyboardObserver:u}}}i(He,"applyDecorators");function D(e,r,t,o){r.metadata?.scripts&&(r.metadata.scripts?.forEach(n=>{if(!n.enabled)return;let a=t[n.key];if(!a)return;let s=a,u={};if(a.default){s=new a.default(r);let l=He(e,r,n,s,o);Object.assign(u,l?.observers??{})}s.onStart&&(u.onStartObserver=e.onBeforeRenderObservable.addOnce(()=>s.onStart(r))),s.onUpdate&&(u.onUpdateObserver=e.onBeforeRenderObservable.add(()=>s.onUpdate(r))),je(r,s,n.key,u)}),r.metadata.scripts=void 0)}i(D,"_applyScriptsForObject");function Xr(e,r,t){if(t??=e.getScene?.(),!t)throw new Error("Cannot apply script on object: no scene available.");let o=new r(e),n={};return He(t,e,{values:{}},o,""),o.onStart&&(n.onStartObserver=t.onBeforeRenderObservable.addOnce(()=>o.onStart())),o.onUpdate&&t.onBeforeRenderObservable.add(()=>o.onUpdate()),je(e,o,"runtime",n),o}i(Xr,"applyScriptOnObject");var V=new Map;function je(e,r,t,o){let n={key:t,observers:o,instance:r};V.has(e)?V.get(e).push(n):V.set(e,[n]),(k(e)||Ae(e)||be(e))&&e.onDisposeObservable.addOnce((()=>{V.get(e)?.slice()?.forEach(s=>{Bt(e,s)}),V.delete(e)}))}i(je,"_registerScriptInstance");function Bt(e,r){r.observers.onStartObserver?.remove(),r.observers.onUpdateObserver?.remove(),r.observers.pointerObserver?.remove(),r.observers.keyboardObserver?.remove();try{r.instance.onStop?.(e)}catch(n){console.error(`Failed to call onStop for script ${r.key} on object ${e}`,n)}let t=V.get(e),o=t?.indexOf(r)??-1;o!==-1&&t?.splice(o,1)}i(Bt,"_removeRegisteredScriptInstance");function Kt(e,r){return V.get(e)?.filter(n=>n.instance.constructor===r)?.map(n=>n.instance)??null}i(Kt,"getAllScriptsByClassForObject");function en(e,r){return Kt(e,r)?.[0]??null}i(en,"getScriptByClassForObject");var zt=require("babylonjs"),kt=!1;function $t(){kt||(kt=!0,(0,zt.AddParser)("AudioEditorPlugin",(e,r,t,o)=>{e.sounds?.forEach(n=>{let a=t.sounds?.find(s=>s.name===n.name);a&&(a.id=n.id,a.uniqueId=n.uniqueId,r.onBeforeRenderObservable.addOnce(()=>{try{a.spatialSound=n.spatialSound}catch{}}))})}))}i($t,"registerAudioParser");function w(e){let r=1;for(;r<=e;)r<<=1;return r>>1}i(w,"getPowerOfTwoUntil");var Qe=require("babylonjs"),Yt=!1;function Wt(){if(Yt)return;Yt=!0;let e=Qe.SerializationHelper._TextureParser;Qe.SerializationHelper._TextureParser=(r,t,o)=>{if(t.loadingTexturesQuality==="high"||!r.metadata?.baseSize)return e(r,t,o);let n=r.metadata.baseSize.width,a=r.metadata.baseSize.height,s=n===w(n)||a===w(a),u="";switch(t.loadingTexturesQuality){case"medium":let d=n*.66>>0,y=a*.66>>0;s&&(d=w(d),y=w(y)),u=`_${d}_${y}`;break;case"low":case"very-low":let b=n*.33>>0,C=a*.33>>0;s&&(b=w(b),C=w(C)),u=`_${b}_${C}`;break}let l=r.name;if(!l||!u)return e(r,t,o);let c=l.split("/"),f=c.pop();if(!f)return e(r,t,o);let g=f.split(".").pop(),p=`${f.replace(`.${g}`,"")}${u}.${g}`;return c.push(p),r.name=c.join("/"),e(r,t,o)}}i(Wt,"registerTextureParser");var jt=require("babylonjs"),ge=require("babylonjs"),Ht=!1;function Qt(){if(Ht)return;Ht=!0;let e=(0,ge.GetParser)(jt.SceneComponentConstants.NAME_SHADOWGENERATOR);(0,ge.AddParser)("ShadowGeneratorEditorPlugin",(r,t,o,n)=>{t.loadingShadowsQuality!=="high"&&r.shadowGenerators?.forEach(a=>{switch(t.loadingShadowsQuality){case"medium":a.mapSize=a.mapSize*.5;break;case"low":a.mapSize=a.mapSize*.25;break;case"very-low":a.mapSize=a.mapSize*.125;break}a.mapSize=Math.max(128,w(a.mapSize))}),e?.(r,t,o,n)})}i(Qt,"registerShadowGeneratorParser");var Ut=require("babylonjs"),Jt=require("babylonjs"),qt=!1;function Zt(){qt||(qt=!0,(0,Jt.AddParser)("MorphTargetManagerEditorPlugin",(e,r,t,o)=>{e.morphTargetManagers.forEach(n=>{let s=t.meshes.find(c=>c.id===n.meshId)?.morphTargetManager;if(!s||n.targets.find(c=>!c.delayLoadingFile))return;let l=[];n.targets.forEach(c=>{if(!c.delayLoadingFile)return l.push(Promise.resolve(null));let f=`${o}${c.delayLoadingFile}`;r.addPendingData(f);let g=new Ut.WebRequest;g.responseType="arraybuffer",g.open("GET",f),g.send(),l.push(new Promise(S=>{g.addEventListener("load",()=>{r.removePendingData(f),S(g.response)})}))}),Promise.all(l).then(c=>{for(let f=0,g=s.numTargets;f<g;++f){let S=s.getTarget(f),p=n.targets[f],d=c[f];if(p.positionsCount){let y=new Float32Array(d,p.positionsOffset,p.positionsCount);S._positions=y,S.setPositions(y)}if(p.normalsCount){let y=new Float32Array(d,p.normalsOffset,p.normalsCount);S._normals=y,S.setNormals(y)}if(p.tangentsCount){let y=new Float32Array(d,p.tangentsOffset,p.tangentsCount);S._tangents=y,S.setTangents(y)}if(p.uvsCount){let y=new Float32Array(d,p.uvsOffset,p.uvsCount);S._uvs=y,S.setUVs(y)}if(p.uv2sCount){let y=new Float32Array(d,p.uv2sOffset,p.uv2sCount);S._uv2s=y,S.setUV2s(y)}}for(let f=0,g=s.numTargets;f<g;++f)s.getTarget(f)._onDataLayoutChanged.notifyObservers()})})}))}i(Zt,"registerMorphTargetManagerParser");function qe(e){if(!Array.isArray(e.frames)){let r=[];for(let t of Object.keys(e.frames))r.push({filename:t,...e.frames[t]});e.frames=r}}i(qe,"normalizeAtlasJson");function tn(e,r,t){let n=(e.metadata?.spriteAnimations??[]).find(a=>a.name===r);if(!n)return console.error(`Animation with name "${r}" not found on sprite.`);e.playAnimation(n.from,n.to,n.loop,n.delay,t)}i(tn,"playSpriteAnimationFromName");var er=require("babylonjs"),tr=require("babylonjs"),rr=require("babylonjs"),nr=require("babylonjs"),Ue=require("babylonjs"),Q=require("babylonjs"),or=require("babylonjs"),Xt=!1;function ir(){Xt||(Xt=!0,(0,or.AddParser)("SpriteMapNode",(e,r,t,o)=>{e.transformNodes?.forEach(n=>{if(!n.isSpriteMap)return;let a=t.transformNodes?.find(l=>l.id===n.id);if(!a)return;a.isSpriteMap=n.isSpriteMap;let s=`${o}${n.atlasJsonRelativePath}`;r.addPendingData(s);let u=new rr.WebRequest;u.open("GET",s),u.send(),u.addEventListener("load",()=>{r.removePendingData(s);let l=JSON.parse(u.responseText);qe(l);let c=`${er.Tools.GetFolderPath(s)}${l.meta.image}`,f=new Ue.Texture(c,r,!1,!1,Ue.Texture.NEAREST_NEAREST,null,null,null,!1,tr.Engine.TEXTUREFORMAT_RGBA),g=new nr.SpriteMap(a.name,l,f,{layerCount:n.options.layerCount,stageSize:Q.Vector2.FromArray(n.options.stageSize??[10,1]),outputSize:Q.Vector2.FromArray(n.options.outputSize??[100,100]),colorMultiply:Q.Vector3.FromArray(n.options.colorMultiply??[1,1,1]),flipU:!0},r);n.tiles.forEach(p=>{for(let d=0,y=p.repeatCount.x+1;d<y;++d)for(let b=0,C=p.repeatCount.y+1;b<C;++b){let O=d*(p.repeatOffset.x+1),T=b*(p.repeatOffset.y+1);g.changeTiles(p.layer,new Q.Vector2(p.position.x+O,(g.options.stageSize?.y??0)-1-p.position.y-T),p.tile)}});let S=g._output;S.parent=a,a.spriteMap=g})})}))}i(ir,"registerSpriteMapParser");var lr=require("babylonjs"),mr=require("babylonjs"),cr=require("babylonjs"),Je=require("babylonjs"),pr=require("babylonjs");function sr(e,r){r?.fogEnabled!==void 0&&(e.fogEnabled=r?.fogEnabled),r?.blendMode!==void 0&&(e.blendMode=r?.blendMode),r?.disableDepthWrite!==void 0&&(e.disableDepthWrite=r?.disableDepthWrite),r?.pixelPerfect!==void 0&&(e.pixelPerfect=r?.pixelPerfect),r?.useLogarithmicDepth!==void 0&&(e.useLogarithmicDepth=r?.useLogarithmicDepth),r?.metadata!==void 0&&(e.metadata=r?.metadata);for(let t of r?.sprites??[]){let o=mr.Sprite.Parse(t,e);o.uniqueId=t.uniqueId,o.metadata=t.metadata}}i(sr,"parseSerializedSpriteManager");var ar=!1;function ur(){ar||(ar=!0,(0,pr.AddParser)("SpriteManagerNode",(e,r,t,o)=>{e.transformNodes?.forEach(n=>{if(!n.isSpriteManager)return;let a=t.transformNodes?.find(s=>s.id===n.id);if(a){if(a.isSpriteManager=n.isSpriteManager,n.atlasJsonRelativePath){let s=`${o}${n.atlasJsonRelativePath}`;r.addPendingData(s);let u=new cr.WebRequest;u.open("GET",s),u.send(),u.addEventListener("load",()=>{r.removePendingData(s);let l=JSON.parse(u.responseText),c=`${lr.Tools.GetFolderPath(s)}${l.meta.image}`,f=new Je.SpriteManager(a.name,c,1e3,64,r,void 0,void 0,!0,l);a.spriteManager=f,n.spriteManager&&sr(f,n.spriteManager)})}else if(n.spriteManager?.textureUrl){let s=`${o}${n.spriteManager.textureUrl}`,u=new Je.SpriteManager(a.name,s,1e3,{width:n.spriteManager.cellWidth,height:n.spriteManager.cellHeight},r,void 0,void 0,!1);a.spriteManager=u,n.spriteManager&&sr(u,n.spriteManager)}}})}))}i(ur,"registerSpriteManagerParser");var gr=require("babylonjs"),dr=require("babylonjs"),fr=!1;function yr(){fr||(fr=!0,(0,gr.AddParser)("NodeParticleSystemSetEditorPlugin",(e,r,t,o)=>{e.meshes?.forEach(n=>{if(!n.isNodeParticleSystemMesh)return;let a=t.meshes?.find(s=>s.id===n.id);a&&(n.nodeParticleSystemSet.blocks?.forEach(s=>{s.url&&(s.url=`${o}${s.url}`)}),a.nodeParticleSystemSet=dr.NodeParticleSystemSet.Parse(n.nodeParticleSystemSet),a.nodeParticleSystemSet.id=n.nodeParticleSystemSet.id,a.nodeParticleSystemSet.uniqueId=n.uniqueId,r.addPendingData(n.id),a.nodeParticleSystemSet.buildAsync(r,!1).then(s=>{r.removePendingData(n.id),a.particleSystemSet=s,s.systems.forEach(u=>{if(Pe(u)){let l=u._sizeCreation.process;l&&(u._sizeCreation.process=(c,f)=>{l(c,f),c.scale.x*=100,c.scale.y*=100})}}),s.emitterNode=a,s.start()}))})}))}i(yr,"registerNodeParticleSystemSetParser");var Sr=require("babylonjs"),Ze=require("babylonjs"),hr=require("babylonjs"),br=require("babylonjs");async function rn(e,r,t,o,n){t.loadingQuality=n?.quality??"high",t.loadingTexturesQuality=n?.texturesQuality??t.loadingQuality,t.loadingShadowsQuality=n?.shadowsQuality??t.loadingQuality,$t(),Wt(),Qt(),Zt(),ir(),ur(),yr(),await(0,hr.AppendSceneAsync)(`${e}${r}`,t,{pluginExtension:".babylon",onProgress:i(s=>{let u=Math.min(s.loaded/s.total*.5);n?.onProgress?.(u)},"onProgress")}),n?.skipAssetsPreload||(await pe(e,t,o),await pe(e,t,o)),br.SceneLoaderFlags.ForceFullSceneLoadingForIncremental&&t.meshes.forEach(s=>M(s)&&s._checkDelayState());let a=t.getWaitingItemsCount();for(;!t.isDisposed&&(!t.isReady()||t.getWaitingItemsCount()>0);){await new Promise(u=>setTimeout(u,150));let s=a-t.getWaitingItemsCount();s===a&&t.textures.forEach(u=>{u.delayLoadState===Ze.Constants.DELAYLOADSTATE_NONE&&(u.delayLoadState=Ze.Constants.DELAYLOADSTATE_LOADED)}),n?.onProgress?.(.5+s/a*.5)}n?.onProgress?.(1),Ce(t),xe(t),t.metadata?.rendering&&(Ot(t,t.metadata.rendering),t.activeCamera&&vt(t.activeCamera,e)),t.metadata?.physicsGravity&&t.getPhysicsEngine()?.setGravity(Sr.Vector3.FromArray(t.metadata?.physicsGravity)),D(t,t,o,e),t.transformNodes.forEach(s=>{D(t,s,o,e)}),t.meshes.forEach(s=>{Tt(s),D(t,s,o,e)}),t.lights.forEach(s=>{D(t,s,o,e)}),t.cameras.forEach(s=>{D(t,s,o,e)}),t.spriteManagers?.forEach(s=>{s.sprites.forEach(u=>{D(t,u,o,e)})}),j(t)}i(rn,"loadScene");var Pr=require("babylonjs");async function nn(e,r,t){let n=await(await fetch(e+r)).json(),s=Pr.Tools.Instantiate(n.customType).Parse(n,t,e);return s.id=n.id,s.uniqueId=n.uniqueId,s}i(nn,"loadMaterialFromFile");function on(e){return Promise.all(e.materials.map(async r=>{let t=r.getBindedMeshes();await Promise.all(t.map(async o=>{Z(o)||await r.forceCompilationAsync(o,{clipPlane:!!e.clipPlane,useInstances:o.hasInstances})}))}))}i(on,"forceCompileAllSceneMaterials");function sn(e){e.setTextureFormatToUse(["-dxt.ktx","-astc.ktx","-pvrtc.ktx","-etc1.ktx","-etc2.ktx"])}i(sn,"configureEngineToUseCompressedTextures");var _=require("babylonjs");function oe(e){if(!isNaN(parseFloat(e))&&isFinite(e))return _.Animation.ANIMATIONTYPE_FLOAT;switch(e?.getClassName?.()){case"Vector2":return _.Animation.ANIMATIONTYPE_VECTOR2;case"Vector3":return _.Animation.ANIMATIONTYPE_VECTOR3;case"Quaternion":return _.Animation.ANIMATIONTYPE_QUATERNION;case"Color3":return _.Animation.ANIMATIONTYPE_COLOR3;case"Color4":return _.Animation.ANIMATIONTYPE_COLOR4;case"Size":return _.Animation.ANIMATIONTYPE_SIZE;case"Matrix":return _.Animation.ANIMATIONTYPE_MATRIX}return null}i(oe,"getAnimationTypeForObject");var Ar=require("babylonjs");function an(e){return function(r,t){let o=r.constructor;o._NodesFromScene??=[],o._NodesFromScene.push({propertyKey:t,nodeName:e})}}i(an,"nodeFromScene");function ln(e,r=!1){return function(t,o){let n=t.constructor;n._NodesFromDescendants??=[],n._NodesFromDescendants.push({propertyKey:o,nodeName:e,directDescendantsOnly:r})}}i(ln,"nodeFromDescendants");function mn(e){return function(r,t){let o=r.constructor;o._AnimationGroups??=[],o._AnimationGroups.push({animationGroupName:e,propertyKey:t})}}i(mn,"animationGroupFromScene");function cn(e,r){return function(t,o){let n=t.constructor;n._GuiFromAsset??=[],n._GuiFromAsset.push({propertyKey:o,pathInAssets:e,onGuiCreated:r})}}i(cn,"guiFromAsset");function pn(e){return function(r,t){let o=r.constructor;o._SoundsFromScene??=[],o._SoundsFromScene.push({propertyKey:t,soundName:e})}}i(pn,"soundFromScene");function un(e,r=!1){return function(t,o){let n=t.constructor;n._ParticleSystemsFromScene??=[],n._ParticleSystemsFromScene.push({propertyKey:o,particleSystemName:e,directDescendantsOnly:r})}}i(un,"particleSystemFromScene");function fn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"boolean"}})}}i(fn,"visibleAsBoolean");function gn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"string"}})}}i(gn,"visibleAsString");function dn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"number"}})}}i(dn,"visibleAsNumber");function yn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"vector2"}})}}i(yn,"visibleAsVector2");function Sn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"vector3"}})}}i(Sn,"visibleAsVector3");function hn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"color3"}})}}i(hn,"visibleAsColor3");function bn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"color4"}})}}i(bn,"visibleAsColor4");function Pn(e,r,t){return function(o,n){let a=o.constructor;a._VisibleInInspector??=[],a._VisibleInInspector.push({label:r,propertyKey:n,configuration:{...t,entityType:e,type:"entity"}})}}i(Pn,"visibleAsEntity");function An(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"texture"}})}}i(An,"visibleAsTexture");function In(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"keymap"}})}}i(In,"visibleAsKeyMap");function Cn(e,r,t){return function(o,n){let a=o.constructor;a._VisibleInInspector??=[],a._VisibleInInspector.push({label:r,propertyKey:n,configuration:{...t,assetType:e,type:"asset"}})}}i(Cn,"visibleAsAsset");function xn(e,r){return function(t,o){let n=t.constructor;n._PointerEvents??=[],n._PointerEvents.push({propertyKey:o,options:{mode:"global",...r??{}},eventTypes:Array.isArray(e)?e:[e]})}}i(xn,"onPointerEvent");function vn(e){return function(r,t){let o=r.constructor;o._KeyboardEvents??=[],o._KeyboardEvents.push({propertyKey:t,eventTypes:Array.isArray(e)?e:[e]})}}i(vn,"onKeyboardEvent");function En(e){return function(r,t){let o=r.constructor;o._SpritesFromSpriteManager??=[],o._SpritesFromSpriteManager.push({propertyKey:t,spriteName:e})}}i(En,"spriteFromSpriteManager");function Tn(e){return function(r,t){let o=r.constructor;o._AnimationsFromSprite??=[],o._AnimationsFromSprite.push({propertyKey:t,animationName:e})}}i(Tn,"animationFromSprite");var de=require("babylonjs");function Oc(e,r){let t;return e===de.Animation.ANIMATIONTYPE_FLOAT?t=r.value:t=r.value.clone(),{value:t,frame:r.frame,interpolation:r.interpolation,inTangent:e===de.Animation.ANIMATIONTYPE_FLOAT?r.inTangent:r.inTangent?.clone(),outTangent:e===de.Animation.ANIMATIONTYPE_FLOAT?r.outTangent:r.outTangent?.clone()}}i(Oc,"cloneKey");function ye(e,r){let t=r.split("."),o=e;for(let n=0;n<t.length;++n)o=o[t[n]];return o}i(ye,"getPropertyValue");function Xe(e,r,t){let o=null;e.onAnimationGroupPlayObservable.add(()=>{o=r.onAfterAnimationsObservable.add(()=>{t()})}),e.onAnimationGroupPauseObservable.add(()=>{o&&(r.onAfterAnimationsObservable.remove(o),o=null)}),e.onAnimationGroupEndObservable.add(()=>{o&&(r.onAfterAnimationsObservable.remove(o),o=null)})}i(Xe,"registerAfterAnimationCallback");var L=require("babylonjs"),Se=require("babylonjs"),F=require("babylonjs");function On(e,r){return{name:e.name,framesPerSecond:e.framesPerSecond,outputFramesPerSecond:e.outputFramesPerSecond,tracks:e.tracks.map(t=>{let o=null,n=null;if(t.node?(o=r.getNodeById(t.node),o||(o=r.particleSystems?.find(s=>s.id===t.node)??null)):t.defaultRenderingPipeline&&(o=ee()),t.propertyPath){let s=ye(o,t.propertyPath);n=oe(s)}let a=null;return t.sound&&(a=ce(t.sound,r)),{node:o,sound:a,propertyPath:t.propertyPath,defaultRenderingPipeline:t.defaultRenderingPipeline,animationGroup:t.animationGroup?r.getAnimationGroupByName(t.animationGroup):null,animationGroups:t.animationGroups,sounds:t.sounds,soundVolume:et(t.soundVolume??[],L.Animation.ANIMATIONTYPE_FLOAT),keyFrameEvents:t.keyFrameEvents?.map(s=>{let u={...s};switch(s.data?.type){case"set-enabled":u.data={type:"set-enabled",value:s.data.value,node:r.getNodeById(s.data.node)};break;case"apply-impulse":u.data={type:"apply-impulse",radius:s.data.radius,mesh:r.getMeshById(s.data.mesh),force:F.Vector3.FromArray(s.data.force),contactPoint:F.Vector3.FromArray(s.data.contactPoint)};break}return u}),keyFrameAnimations:o&&n!==null&&et(t.keyFrameAnimations??[],n)}})}}i(On,"parseCinematic");function N(e,r){if(e===null)return null;if(e!==void 0)switch(r){case L.Animation.ANIMATIONTYPE_FLOAT:return e;case L.Animation.ANIMATIONTYPE_VECTOR2:return F.Vector2.FromArray(e);case L.Animation.ANIMATIONTYPE_VECTOR3:return F.Vector3.FromArray(e);case L.Animation.ANIMATIONTYPE_QUATERNION:return F.Quaternion.FromArray(e);case L.Animation.ANIMATIONTYPE_COLOR3:return Se.Color3.FromArray(e);case L.Animation.ANIMATIONTYPE_COLOR4:return Se.Color4.FromArray(e);case L.Animation.ANIMATIONTYPE_MATRIX:return F.Matrix.FromArray(e)}}i(N,"parseCinematicKeyValue");function et(e,r){return e?.map(t=>{let o=t.type==="key"?t:null;if(o)return{...o,value:N(o.value,r),inTangent:N(o.inTangent,r),outTangent:N(o.outTangent,r)};let n=t.type==="cut"?t:null;if(n)return{...n,key1:{...n.key1,value:N(n.key1.value,r),inTangent:N(n.key1.inTangent,r),outTangent:N(n.key1.outTangent,r)},key2:{...n.key2,value:N(n.key2.value,r),inTangent:N(n.key2.inTangent,r),outTangent:N(n.key2.outTangent,r)}};throw new Error(`Unknown key frame type: ${t.type}`)})}i(et,"parseKeyFrameAnimations");function Ir(e,r){e.onEventObservable.notifyObservers(r.eventName)}i(Ir,"handleApplyEvent");function Cr(e){e.node?.setEnabled(e.value)}i(Cr,"handleSetEnabledEvent");var tt=require("babylonjs"),xr=tt.Vector3.Zero();function vr(e,r){let t=r.mesh?[r.mesh]:e.meshes.filter(o=>o.physicsAggregate);r.radius&&(t=t.filter(o=>{let n=o.getBoundingInfo().boundingBox.centerWorld;return tt.Vector3.Distance(n,r.contactPoint)<=r.radius})),t.forEach(o=>{if(o.physicsAggregate?.body){let n=r.contactPoint.subtract(o.getBoundingInfo().boundingBox.centerWorld);n.multiplyInPlace(r.force),o.physicsAggregate.body.setLinearVelocity(xr),o.physicsAggregate.body.setAngularVelocity(xr),o.physicsAggregate.body.applyImpulse(n.negateInPlace(),r.contactPoint)}})}i(vr,"handleApplyImpulseEvent");var Er=require("babylonjs"),Tr=require("babylonjs"),ie=class extends Tr.AnimationGroup{static{i(this,"Cinematic")}onEventObservable=new Er.Observable;onEvent(r,t){this.onEventObservable.add(o=>{r===o&&t()})}};function rt(e){return e.type==="key"}i(rt,"isCinematicKey");function q(e){return e.type==="cut"}i(q,"isCinematicKeyCut");function Mn(e){return e.type==="event"}i(Mn,"isCinematicKeyEvent");function Dn(e){return e.type==="group"}i(Dn,"isCinematicGroup");function Rn(e){return e.type==="sound"}i(Rn,"isCinematicSound");var I=require("babylonjs"),U=require("babylonjs");function wn(e,r,t){let o=new ie(e.name,r);return e.tracks.forEach(n=>{let a=n.animationGroup;if(a&&n.animationGroups?.length){let p=a.clone(`${a.name}-cinematic-temp`),d=r.animationGroups.indexOf(p);d!==-1&&r.animationGroups.splice(d,1),o.onAnimationEndObservable.add(()=>{a.stop(),p.stop()});let y=n.animationGroups.reduce((T,A)=>Math.min(T,A.frame),Number.MAX_VALUE)??0,b=n.animationGroups.reduce((T,A)=>Math.max(T,A.frame+A.endFrame),0)??0,C={frame:y},O=new I.Animation(p.name,"frame",60,I.Animation.ANIMATIONTYPE_FLOAT,I.Animation.ANIMATIONLOOPMODE_CYCLE,!1);if(O.setKeys([{frame:y,value:0},{frame:b,value:b}]),n.animationGroups.forEach(T=>{O.addEvent(new U.AnimationEvent(T.frame,()=>{let A=T.repeatCount??0;if(p.to=T.endFrame,p.speedRatio=T.speed,p.stop(),p.play(A>0),p.from!==T.startFrame&&p.goToFrame(T.startFrame),A){let J=0;p.onAnimationGroupLoopObservable.add(()=>{++J,J>A&&p.stop()})}}))}),o.addTargetedAnimation(O,C),(n.animationGroupWeight?.length??0)>=2&&n.animationGroupWeight.find(A=>q(A)?A.key1.value!==1||A.key2.value!==1:A.value!==1)){let A={weight:0},J=new I.Animation(`${p.name}-weights`,"weight",60,I.Animation.ANIMATIONTYPE_FLOAT,I.Animation.ANIMATIONLOOPMODE_CYCLE,!1),se=[];n.animationGroupWeight.forEach(ae=>{q(ae)?(se.push(ae.key1),se.push(ae.key2)):se.push(ae)}),J.setKeys(se),o.addTargetedAnimation(J,A),Xe(o,r,()=>{p.weight=A.weight})}}let s=n.sound,u=s?.getAudioBuffer();if(!t?.ignoreSounds&&s&&u&&n.sounds?.length){let p={dummy:0,volume:0},d=new I.Animation(s.name,"dummy",60,I.Animation.ANIMATIONTYPE_FLOAT,I.Animation.ANIMATIONLOOPMODE_CYCLE,!1),y=0;if(n.sounds?.forEach(b=>{let C=b.endFrame-b.startFrame;y=Math.max(y,b.frame+C),d.addEvent(new U.AnimationEvent(b.frame,O=>{let A=(O-b.frame+b.startFrame)/e.framesPerSecond;s.play(0,A)},!1)),d.addEvent(new U.AnimationEvent(b.frame+C,()=>{s.stop()}))}),d.setKeys([{frame:0,value:0},{frame:y,value:y}]),o.addTargetedAnimation(d,p),(n.soundVolume?.length??0)>=2){let b=new I.Animation(s.name,"volume",60,I.Animation.ANIMATIONTYPE_FLOAT,I.Animation.ANIMATIONLOOPMODE_CYCLE,!1),C=[];n.soundVolume.forEach(O=>{q(O)?(C.push(O.key1),C.push(O.key2)):C.push(O)}),b.setKeys(C),o.addTargetedAnimation(b,p),Xe(o,r,()=>{s.setVolume(p.volume)})}}if(n.keyFrameEvents){let p={dummy:0},d=new I.Animation("events","dummy",60,I.Animation.ANIMATIONTYPE_FLOAT,I.Animation.ANIMATIONLOOPMODE_CYCLE,!1),y=0;n.keyFrameEvents?.forEach(b=>{y=Math.max(y,b.frame),d.addEvent(new U.AnimationEvent(b.frame,()=>{switch(b.data?.type){case"event":Ir(o,b.data);break;case"set-enabled":Cr(b.data);break;case"apply-impulse":vr(r,b.data);break}}))}),d.setKeys([{frame:0,value:0},{frame:y+1,value:y+1}]),o.addTargetedAnimation(d,p)}let l=n.defaultRenderingPipeline?ee():n.node;if(!l||!n.propertyPath||!n.keyFrameAnimations)return;let c=ye(l,n.propertyPath),f=oe(c);if(f===null)return;let g=new I.Animation(n.propertyPath,n.propertyPath,60,f,I.Animation.ANIMATIONLOOPMODE_CYCLE,!1),S=[];n.keyFrameAnimations?.forEach(p=>{if(rt(p))return S.push(p);q(p)&&(S.push(p.key1),S.push(p.key2),me(l)&&n.propertyPath==="position"&&g.addEvent(new U.AnimationEvent(p.key1.frame,()=>{let d=Fe();if(!d)return;let y=d.motionStrength;d.motionStrength=0,requestAnimationFrame(()=>{d.motionStrength=y})})))}),g.setKeys(S),o.addTargetedAnimation(g,l)}),o.normalize(),o}i(wn,"generateCinematicAnimationGroup");0&&(module.exports={AdvancedAssetContainer,Cinematic,NodeParticleSystemSet,_applyScriptsForObject,_preloadScriptsAssets,_registerScriptInstance,_removeRegisteredScriptInstance,animationFromSprite,animationGroupFromScene,applyScriptOnObject,configureEngineToUseCompressedTextures,configureShadowMapRefreshRate,configureShadowMapRenderListPredicate,copyAndParseRagdollConfiguration,createDefaultRenderingPipeline,createMotionBlurPostProcess,createSSAO2RenderingPipeline,createSSRRenderingPipeline,createVLSPostProcess,defaultPipelineCameraConfigurations,disposeDefaultRenderingPipeline,disposeMotionBlurPostProcess,disposeSSAO2RenderingPipeline,disposeSSRRenderingPipeline,disposeVLSPostProcess,forceCompileAllSceneMaterials,generateCinematicAnimationGroup,getAllScriptsByClassForObject,getAnimationTypeForObject,getDefaultRenderingPipeline,getMotionBlurPostProcess,getPowerOfTwoUntil,getSSAO2RenderingPipeline,getSSRRenderingPipeline,getScriptByClassForObject,getVLSPostProcess,guiFromAsset,isAbstractMesh,isAnyParticleSystem,isArcRotateCamera,isBone,isCamera,isCinematicGroup,isCinematicKey,isCinematicKeyCut,isCinematicKeyEvent,isCinematicSound,isDirectionalLight,isFreeCamera,isGPUParticleSystem,isGroundMesh,isHemisphericLight,isInstancedMesh,isLight,isMesh,isNode,isParticleSystem,isPointLight,isScene,isSpotLight,isSprite,isTexture,isTransformNode,loadMaterialFromFile,loadScene,motionBlurPostProcessCameraConfigurations,nodeFromDescendants,nodeFromScene,normalizeAtlasJson,onKeyboardEvent,onPointerEvent,parseCinematic,parseCinematicKeyValue,parseDefaultRenderingPipeline,parseKeyFrameAnimations,parseMotionBlurPostProcess,parseRagdollConfiguration,parseSSAO2RenderingPipeline,parseSSRRenderingPipeline,parseVLSPostProcess,particleSystemFromScene,playSpriteAnimationFromName,registerScriptAssetParser,scriptAssetsCache,scriptAssetsParsers,scriptsDictionary,serializeDefaultRenderingPipeline,serializeMotionBlurPostProcess,serializeSSAO2RenderingPipeline,serializeSSRRenderingPipeline,serializeVLSPostProcess,setDefaultRenderingPipelineRef,setMotionBlurPostProcessRef,setSSAO2RenderingPipelineRef,setSSRRenderingPipelineRef,setVLSPostProcessRef,soundFromScene,spriteFromSpriteManager,ssaoRenderingPipelineCameraConfigurations,ssrRenderingPipelineCameraConfigurations,visibleAsAsset,visibleAsBoolean,visibleAsColor3,visibleAsColor4,visibleAsEntity,visibleAsKeyMap,visibleAsNumber,visibleAsString,visibleAsTexture,visibleAsVector2,visibleAsVector3,vlsPostProcessCameraConfigurations});
|
|
1
|
+
var le=Object.defineProperty;var Or=Object.getOwnPropertyDescriptor;var Dr=Object.getOwnPropertyNames;var Mr=Object.prototype.hasOwnProperty;var i=(e,r)=>le(e,"name",{value:r,configurable:!0});var Rr=(e,r)=>{for(var t in r)le(e,t,{get:r[t],enumerable:!0})},wr=(e,r,t,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Dr(r))!Mr.call(e,n)&&n!==t&&le(e,n,{get:()=>r[n],enumerable:!(o=Or(r,n))||o.enumerable});return e};var Nr=e=>wr(le({},"__esModule",{value:!0}),e);var Fn={};Rr(Fn,{AdvancedAssetContainer:()=>re,Cinematic:()=>ie,NodeParticleSystemSet:()=>Ar.NodeParticleSystemSet,_applyScriptsForObject:()=>R,_preloadScriptsAssets:()=>He,_registerScriptInstance:()=>Qe,_removeRegisteredScriptInstance:()=>pe,animationFromSprite:()=>On,animationGroupFromScene:()=>cn,applyScriptOnObject:()=>Xr,configureEngineToUseCompressedTextures:()=>sn,configureShadowMapRefreshRate:()=>xe,configureShadowMapRenderListPredicate:()=>Ce,copyAndParseRagdollConfiguration:()=>$e,createDefaultRenderingPipeline:()=>vt,createMotionBlurPostProcess:()=>Pt,createSSAO2RenderingPipeline:()=>ht,createSSRRenderingPipeline:()=>ut,createVLSPostProcess:()=>mt,defaultPipelineCameraConfigurations:()=>H,disposeDefaultRenderingPipeline:()=>Be,disposeMotionBlurPostProcess:()=>_e,disposeSSAO2RenderingPipeline:()=>Re,disposeSSRRenderingPipeline:()=>Oe,disposeVLSPostProcess:()=>ve,forceCompileAllSceneMaterials:()=>on,generateCinematicAnimationGroup:()=>Nn,getAllScriptsByClassForObject:()=>Kt,getAnimationTypeForObject:()=>oe,getDefaultRenderingPipeline:()=>ee,getMotionBlurPostProcess:()=>Fe,getPowerOfTwoUntil:()=>N,getSSAO2RenderingPipeline:()=>Qr,getSSRRenderingPipeline:()=>Wr,getScriptByClassForObject:()=>en,getVLSPostProcess:()=>$r,guiFromAsset:()=>pn,isAbstractMesh:()=>G,isAnyParticleSystem:()=>Ae,isArcRotateCamera:()=>Vr,isBone:()=>Fr,isCamera:()=>ce,isCinematicGroup:()=>Rn,isCinematicKey:()=>nt,isCinematicKeyCut:()=>U,isCinematicKeyEvent:()=>Mn,isCinematicSound:()=>wn,isDirectionalLight:()=>Br,isFreeCamera:()=>Lr,isGPUParticleSystem:()=>zr,isGroundMesh:()=>_r,isHemisphericLight:()=>kr,isInstancedMesh:()=>Z,isLight:()=>ot,isMesh:()=>M,isNode:()=>k,isParticleSystem:()=>Pe,isPointLight:()=>Gr,isScene:()=>be,isSpotLight:()=>Kr,isSprite:()=>Ie,isTexture:()=>he,isTransformNode:()=>K,loadMaterialFromFile:()=>nn,loadScene:()=>rn,motionBlurPostProcessCameraConfigurations:()=>W,nodeFromDescendants:()=>ln,nodeFromScene:()=>an,normalizeAtlasJson:()=>qe,onKeyboardEvent:()=>En,onPointerEvent:()=>vn,parseCinematic:()=>Dn,parseCinematicKeyValue:()=>F,parseDefaultRenderingPipeline:()=>ke,parseKeyFrameAnimations:()=>tt,parseMotionBlurPostProcess:()=>Ve,parseRagdollConfiguration:()=>Rt,parseSSAO2RenderingPipeline:()=>Ne,parseSSRRenderingPipeline:()=>Me,parseVLSPostProcess:()=>Te,particleSystemFromScene:()=>fn,playSpriteAnimationFromName:()=>tn,registerScriptAssetParser:()=>Zr,sceneAsset:()=>mn,scriptAssetsCache:()=>O,scriptAssetsParsers:()=>ne,scriptsDictionary:()=>w,serializeDefaultRenderingPipeline:()=>Ke,serializeMotionBlurPostProcess:()=>Le,serializeSSAO2RenderingPipeline:()=>we,serializeSSRRenderingPipeline:()=>De,serializeVLSPostProcess:()=>Ee,setDefaultRenderingPipelineRef:()=>Jr,setMotionBlurPostProcessRef:()=>qr,setSSAO2RenderingPipelineRef:()=>Ur,setSSRRenderingPipelineRef:()=>Hr,setVLSPostProcessRef:()=>Yr,soundFromScene:()=>un,spriteFromSpriteManager:()=>Tn,ssaoRenderingPipelineCameraConfigurations:()=>Y,ssrRenderingPipelineCameraConfigurations:()=>$,visibleAsAsset:()=>xn,visibleAsBoolean:()=>gn,visibleAsColor3:()=>bn,visibleAsColor4:()=>Pn,visibleAsEntity:()=>An,visibleAsKeyMap:()=>Cn,visibleAsNumber:()=>yn,visibleAsString:()=>dn,visibleAsTexture:()=>In,visibleAsVector2:()=>Sn,visibleAsVector3:()=>hn,vlsPostProcessCameraConfigurations:()=>z});module.exports=Nr(Fn);function G(e){switch(e.getClassName?.()){case"Mesh":case"LineMesh":case"GroundMesh":case"InstancedMesh":return!0}return!1}i(G,"isAbstractMesh");function M(e){switch(e.getClassName?.()){case"Mesh":case"GroundMesh":return!0}return!1}i(M,"isMesh");function Z(e){return e.getClassName?.()==="InstancedMesh"}i(Z,"isInstancedMesh");function Fr(e){return e.getClassName?.()==="Bone"}i(Fr,"isBone");function _r(e){return e.getClassName?.()==="GroundMesh"}i(_r,"isGroundMesh");function K(e){return e.getClassName?.()==="TransformNode"}i(K,"isTransformNode");function he(e){return e?.getClassName?.()==="Texture"}i(he,"isTexture");function ce(e){switch(e.getClassName?.()){case"Camera":case"FreeCamera":case"TargetCamera":case"EditorCamera":case"ArcRotateCamera":case"UniversalCamera":return!0}return!1}i(ce,"isCamera");function Lr(e){switch(e.getClassName?.()){case"FreeCamera":case"UniversalCamera":return!0}return!1}i(Lr,"isFreeCamera");function Vr(e){return e.getClassName?.()==="ArcRotateCamera"}i(Vr,"isArcRotateCamera");function Gr(e){return e.getClassName?.()==="PointLight"}i(Gr,"isPointLight");function Br(e){return e.getClassName?.()==="DirectionalLight"}i(Br,"isDirectionalLight");function Kr(e){return e.getClassName?.()==="SpotLight"}i(Kr,"isSpotLight");function kr(e){return e.getClassName?.()==="HemisphericLight"}i(kr,"isHemisphericLight");function ot(e){switch(e.getClassName?.()){case"Light":case"PointLight":case"SpotLight":case"DirectionalLight":case"HemisphericLight":return!0}return!1}i(ot,"isLight");function k(e){return G(e)||K(e)||ot(e)||ce(e)}i(k,"isNode");function be(e){return e.getClassName?.()==="Scene"}i(be,"isScene");function Pe(e){return e.getClassName?.()==="ParticleSystem"}i(Pe,"isParticleSystem");function zr(e){return e.getClassName?.()==="GPUParticleSystem"}i(zr,"isGPUParticleSystem");function Ae(e){switch(e.getClassName?.()){case"ParticleSystem":case"GPUParticleSystem":return!0}return!1}i(Ae,"isAnyParticleSystem");function Ie(e){return e.getClassName?.()==="Sprite"}i(Ie,"isSprite");var it=require("babylonjs"),st=require("babylonjs");function Ce(e){e.lights.forEach(r=>{let t=r.getShadowGenerator()?.getShadowMap();t&&(t.renderListPredicate=o=>it.Vector3.Distance(o.getAbsolutePosition(),r.getAbsolutePosition())<=r.range)})}i(Ce,"configureShadowMapRenderListPredicate");async function xe(e){e.executeWhenReady(()=>{e.lights.forEach(r=>{let t=r.getShadowGenerator()?.getShadowMap();t&&(t.refreshRate=r.metadata?.refreshRate??st.RenderTargetTexture.REFRESHRATE_RENDER_ONEVERYFRAME)})})}i(xe,"configureShadowMapRefreshRate");var at=require("babylonjs"),lt=require("babylonjs"),ct=require("babylonjs"),x=null,z=new Map;function $r(){return x}i($r,"getVLSPostProcess");function Yr(e){x=e}i(Yr,"setVLSPostProcessRef");function ve(e){x&&e.activeCamera&&(x.dispose(e.activeCamera),x=null)}i(ve,"disposeVLSPostProcess");function mt(e,r){return r??=e.meshes.find(t=>M(t)),x=new ct.VolumetricLightScatteringPostProcess("VolumetricLightScatteringPostProcess",1,e.activeCamera,r,100,lt.Texture.BILINEAR_SAMPLINGMODE,e.getEngine(),!1),x}i(mt,"createVLSPostProcess");function Ee(){return x?{meshId:x.mesh?.id,exposure:x.exposure,decay:x.decay,weight:x.weight,density:x.density,invert:x.invert,useCustomMeshPosition:x.useCustomMeshPosition,customMeshPosition:x.customMeshPosition.asArray()}:null}i(Ee,"serializeVLSPostProcess");function Te(e,r){let t=null;if(r.meshId){let n=e.getMeshById(r.meshId);n&&M(n)&&(t=n)}let o=mt(e,t);return o.exposure=r.exposure,o.decay=r.decay,o.weight=r.weight,o.density=r.density,o.invert=r.invert,o.useCustomMeshPosition=r.useCustomMeshPosition,o.customMeshPosition.copyFrom(at.Vector3.FromArray(r.customMeshPosition)),o}i(Te,"parseVLSPostProcess");var pt=require("babylonjs"),h=null,$=new Map;function Wr(){return h}i(Wr,"getSSRRenderingPipeline");function Hr(e){h=e}i(Hr,"setSSRRenderingPipelineRef");function Oe(){h&&(h.dispose(),h=null)}i(Oe,"disposeSSRRenderingPipeline");function ut(e,r){return h=new pt.SSRRenderingPipeline("SSRRenderingPipeline",e,[r]),h.samples=4,h}i(ut,"createSSRRenderingPipeline");function De(){return h?{samples:h.samples,step:h.step,thickness:h.thickness,strength:h.strength,reflectionSpecularFalloffExponent:h.reflectionSpecularFalloffExponent,maxSteps:h.maxSteps,maxDistance:h.maxDistance,roughnessFactor:h.roughnessFactor,reflectivityThreshold:h.reflectivityThreshold,blurDispersionStrehgth:h.blurDispersionStrength,clipToFrustum:h.clipToFrustum,enableSmoothReflections:h.enableSmoothReflections,enableAutomaticThicknessComputation:h.enableAutomaticThicknessComputation,attenuateFacingCamera:h.attenuateFacingCamera,attenuateScreenBorders:h.attenuateScreenBorders,attenuateIntersectionDistance:h.attenuateIntersectionDistance,attenuateBackfaceReflection:h.attenuateBackfaceReflection,blurDownsample:h.blurDownsample,selfCollisionNumSkip:h.selfCollisionNumSkip,ssrDownsample:h.ssrDownsample,backfaceDepthTextureDownsample:h.backfaceDepthTextureDownsample}:null}i(De,"serializeSSRRenderingPipeline");function Me(e,r,t){if(h)return h;let o=ut(e,r);return o.samples=t.samples,o.step=t.step,o.thickness=t.thickness,o.strength=t.strength,o.reflectionSpecularFalloffExponent=t.reflectionSpecularFalloffExponent,o.maxSteps=t.maxSteps,o.maxDistance=t.maxDistance,o.roughnessFactor=t.roughnessFactor,o.reflectivityThreshold=t.reflectivityThreshold,o.blurDispersionStrength=t.blurDispersionStrehgth,o.clipToFrustum=t.clipToFrustum,o.enableSmoothReflections=t.enableSmoothReflections,o.enableAutomaticThicknessComputation=t.enableAutomaticThicknessComputation,o.attenuateFacingCamera=t.attenuateFacingCamera,o.attenuateScreenBorders=t.attenuateScreenBorders,o.attenuateIntersectionDistance=t.attenuateIntersectionDistance,o.attenuateBackfaceReflection=t.attenuateBackfaceReflection,o.blurDownsample=t.blurDownsample,o.selfCollisionNumSkip=t.selfCollisionNumSkip,o.ssrDownsample=t.ssrDownsample,o.backfaceDepthTextureDownsample=t.backfaceDepthTextureDownsample,o}i(Me,"parseSSRRenderingPipeline");var ft=require("babylonjs"),v=null,X=new Map;function qo(){return v}i(qo,"getTAARenderingPipeline");function Jo(e){v=e}i(Jo,"setTAARenderingPipelineRef");function gt(){v&&(v.dispose(),v=null)}i(gt,"disposeTAARenderingPipeline");function jr(e,r){return v=new ft.TAARenderingPipeline("TAARenderingPipeline",e,[r]),v.samples=4,v}i(jr,"createTAARenderingPipeline");function dt(){return v?{factor:v.factor,samples:v.samples,clampHistory:v.clampHistory,reprojectHistory:v.reprojectHistory,disableOnCameraMove:v.disableOnCameraMove}:null}i(dt,"serializeTAARenderingPipeline");function yt(e,r,t){if(v)return v;let o=jr(e,r);return o.factor=t.factor,o.samples=t.samples,o.clampHistory=t.clampHistory,o.reprojectHistory=t.reprojectHistory,o.disableOnCameraMove=t.disableOnCameraMove,o}i(yt,"parseTAARenderingPipeline");var St=require("babylonjs"),P=null,Y=new Map;function Qr(){return P}i(Qr,"getSSAO2RenderingPipeline");function Ur(e){P=e}i(Ur,"setSSAO2RenderingPipelineRef");function Re(){P&&(P.dispose(),P=null)}i(Re,"disposeSSAO2RenderingPipeline");function ht(e,r){return P=new St.SSAO2RenderingPipeline("SSAO2RenderingPipeline",e,1,[r]),P.samples=4,P}i(ht,"createSSAO2RenderingPipeline");function we(){return P?{radius:P.radius,totalStrength:P.totalStrength,samples:P.samples,maxZ:P.maxZ,minZAspect:P.minZAspect,epsilon:P.epsilon,textureSamples:P.textureSamples,bypassBlur:P.bypassBlur,bilateralSamples:P.bilateralSamples,bilateralSoften:P.bilateralSoften,bilateralTolerance:P.bilateralTolerance,expensiveBlur:P.expensiveBlur}:null}i(we,"serializeSSAO2RenderingPipeline");function Ne(e,r,t){if(P)return P;let o=ht(e,r);return o.radius=t.radius,o.totalStrength=t.totalStrength,o.samples=t.samples,o.maxZ=t.maxZ,o.minZAspect=t.minZAspect,o.epsilon=t.epsilon,o.textureSamples=t.textureSamples,o.bypassBlur=t.bypassBlur,o.bilateralSamples=t.bilateralSamples,o.bilateralSoften=t.bilateralSoften,o.bilateralTolerance=t.bilateralTolerance,o.expensiveBlur=t.expensiveBlur,o}i(Ne,"parseSSAO2RenderingPipeline");var bt=require("babylonjs"),E=null,W=new Map;function Fe(){return E}i(Fe,"getMotionBlurPostProcess");function qr(e){E=e}i(qr,"setMotionBlurPostProcessRef");function _e(){E&&(E.dispose(),E=null)}i(_e,"disposeMotionBlurPostProcess");function Pt(e,r){return E=new bt.MotionBlurPostProcess("MotionBlurPostProcess",e,1,r),E.motionStrength=1,E.isObjectBased=!0,E}i(Pt,"createMotionBlurPostProcess");function Le(){return E?{isObjectBased:E.isObjectBased,motionStrength:E.motionStrength,motionBlurSamples:E.motionBlurSamples}:null}i(Le,"serializeMotionBlurPostProcess");function Ve(e,r,t){if(E)return E;let o=Pt(e,r);return o.isObjectBased=t.isObjectBased,o.motionStrength=t.motionStrength,o.motionBlurSamples=t.motionBlurSamples,o}i(Ve,"parseMotionBlurPostProcess");var At=require("babylonjs"),Ge=require("babylonjs"),It=require("babylonjs"),Ct=require("babylonjs"),xt=require("babylonjs"),c=null,H=new Map;function ee(){return c}i(ee,"getDefaultRenderingPipeline");function Jr(e){c=e}i(Jr,"setDefaultRenderingPipelineRef");function Be(){c&&(c.dispose(),c=null)}i(Be,"disposeDefaultRenderingPipeline");function vt(e,r){return c=new xt.DefaultRenderingPipeline("DefaultRenderingPipeline",!0,e,[r]),c.samples=4,c.depthOfField.lensSize=512,c.depthOfField.fStop=.25,c.depthOfField.focusDistance=55e3,c}i(vt,"createDefaultRenderingPipeline");function Ke(){return c?{samples:c.samples,fxaaEnabled:c.fxaaEnabled,imageProcessingEnabled:c.imageProcessingEnabled,exposure:c.imageProcessing?.exposure,contrast:c.imageProcessing?.contrast,fromLinearSpace:c.imageProcessing?.fromLinearSpace,toneMappingEnabled:c.imageProcessing?.toneMappingEnabled,toneMappingType:c.imageProcessing?.toneMappingType,ditheringEnabled:c.imageProcessing?.ditheringEnabled,ditheringIntensity:c.imageProcessing?.ditheringIntensity,bloomEnabled:c.bloomEnabled,bloomThreshold:c.bloomThreshold,bloomWeight:c.bloomWeight,bloomScale:c.bloomScale,bloomKernel:c.bloomKernel,sharpenEnabled:c.sharpenEnabled,sharpenEdgeAmount:c.sharpen.edgeAmount,sharpenColorAmount:c.sharpen.colorAmount,grainEnabled:c.grainEnabled,grainIntensity:c.grain.intensity,grainAnimated:c.grain.animated,depthOfFieldEnabled:c.depthOfFieldEnabled,depthOfFieldBlurLevel:c.depthOfFieldBlurLevel,lensSize:c.depthOfField.lensSize,fStop:c.depthOfField.fStop,focusDistance:c.depthOfField.focusDistance,focalLength:c.depthOfField.focalLength,vignetteEnabled:c.imageProcessing?.vignetteEnabled,vignetteColor:c.imageProcessing?.vignetteColor.asArray(),vignetteWeight:c.imageProcessing?.vignetteWeight,chromaticAberrationEnabled:c.chromaticAberrationEnabled,aberrationAmount:c.chromaticAberration.aberrationAmount,radialIntensity:c.chromaticAberration.radialIntensity,direction:c.chromaticAberration.direction.asArray(),centerPosition:c.chromaticAberration.centerPosition.asArray(),glowLayerEnabled:c.glowLayerEnabled,glowLayerIntensity:c.glowLayer?.intensity,glowLayerBlurKernelSize:c.glowLayer?.blurKernelSize,colorGradingEnabled:c.imageProcessing.colorGradingEnabled,colorGradingTexture:c.imageProcessing.colorGradingTexture?.serialize(),colorGradingWithGreenDepth:c.imageProcessing.imageProcessingConfiguration.colorGradingWithGreenDepth,colorCurvesEnabled:c.imageProcessing.colorCurvesEnabled,globalHue:c.imageProcessing.colorCurves?.globalHue,globalDensity:c.imageProcessing.colorCurves?.globalDensity,globalExposure:c.imageProcessing.colorCurves?.globalExposure,globalSaturation:c.imageProcessing.colorCurves?.globalSaturation,highlightsHue:c.imageProcessing.colorCurves?.highlightsHue,highlightsDensity:c.imageProcessing.colorCurves?.highlightsDensity,highlightsExposure:c.imageProcessing.colorCurves?.highlightsExposure,highlightsSaturation:c.imageProcessing.colorCurves?.highlightsSaturation,midtonesHue:c.imageProcessing.colorCurves?.midtonesHue,midtonesDensity:c.imageProcessing.colorCurves?.midtonesDensity,midtonesExposure:c.imageProcessing.colorCurves?.midtonesExposure,midtonesSaturation:c.imageProcessing.colorCurves?.midtonesSaturation,shadowsHue:c.imageProcessing.colorCurves?.shadowsHue,shadowsDensity:c.imageProcessing.colorCurves?.shadowsDensity,shadowsExposure:c.imageProcessing.colorCurves?.shadowsExposure,shadowsSaturation:c.imageProcessing.colorCurves?.shadowsSaturation}:null}i(Ke,"serializeDefaultRenderingPipeline");function ke(e,r,t,o){if(c)return c;let n=vt(e,r);if(n.samples=t.samples,n.fxaaEnabled=t.fxaaEnabled,n.imageProcessingEnabled=t.imageProcessingEnabled,n.imageProcessing){if(n.imageProcessing.exposure=t.exposure,n.imageProcessing.contrast=t.contrast,n.imageProcessing.fromLinearSpace=t.fromLinearSpace,n.imageProcessing.toneMappingEnabled=t.toneMappingEnabled,n.imageProcessing.toneMappingType=t.toneMappingType,n.imageProcessing.ditheringEnabled=t.ditheringEnabled,n.imageProcessing.ditheringIntensity=t.ditheringIntensity,n.imageProcessing.vignetteEnabled=t.vignetteEnabled??!1,n.imageProcessing.vignetteColor=At.Color4.FromArray(t.vignetteColor??[0,0,0]),n.imageProcessing.vignetteWeight=t.vignetteWeight??.3,n.imageProcessing.colorGradingEnabled=t.colorGradingEnabled??!1,n.imageProcessing.imageProcessingConfiguration.colorGradingWithGreenDepth=t.colorGradingWithGreenDepth??!0,t.colorGradingTexture){let a=null;if(t.colorGradingTexture.customType==="BABYLON.ColorGradingTexture"){let s=o+t.colorGradingTexture.name;a=new Ct.ColorGradingTexture(s,e),a.level=t.colorGradingTexture.level}else{let s=It.Texture.Parse(t.colorGradingTexture,e,o);he(s)&&(a=s)}n.imageProcessing.colorGradingTexture=a}n.imageProcessing.colorCurvesEnabled=t.colorCurvesEnabled??!1,n.imageProcessing.colorCurves&&(n.imageProcessing.colorCurves.globalHue=t.globalHue??30,n.imageProcessing.colorCurves.globalDensity=t.globalDensity??0,n.imageProcessing.colorCurves.globalExposure=t.globalExposure??0,n.imageProcessing.colorCurves.globalSaturation=t.globalSaturation??0,n.imageProcessing.colorCurves.highlightsHue=t.highlightsHue??30,n.imageProcessing.colorCurves.highlightsDensity=t.highlightsDensity??0,n.imageProcessing.colorCurves.highlightsExposure=t.highlightsExposure??0,n.imageProcessing.colorCurves.highlightsSaturation=t.highlightsSaturation??0,n.imageProcessing.colorCurves.midtonesHue=t.midtonesHue??30,n.imageProcessing.colorCurves.midtonesDensity=t.midtonesDensity??0,n.imageProcessing.colorCurves.midtonesExposure=t.midtonesExposure??0,n.imageProcessing.colorCurves.midtonesSaturation=t.midtonesSaturation??0,n.imageProcessing.colorCurves.shadowsHue=t.shadowsHue??30,n.imageProcessing.colorCurves.shadowsDensity=t.shadowsDensity??0,n.imageProcessing.colorCurves.shadowsExposure=t.shadowsExposure??0,n.imageProcessing.colorCurves.shadowsSaturation=t.shadowsSaturation??0)}return n.bloomEnabled=t.bloomEnabled,n.bloomThreshold=t.bloomThreshold,n.bloomWeight=t.bloomWeight,n.bloomScale=t.bloomScale,n.bloomKernel=t.bloomKernel,n.sharpenEnabled=t.sharpenEnabled,n.sharpen.edgeAmount=t.sharpenEdgeAmount,n.sharpen.colorAmount=t.sharpenColorAmount,n.grainEnabled=t.grainEnabled,n.grain.intensity=t.grainIntensity,n.grain.animated=t.grainAnimated,n.depthOfFieldEnabled=t.depthOfFieldEnabled,n.depthOfFieldBlurLevel=t.depthOfFieldBlurLevel,n.depthOfField.lensSize=t.lensSize,n.depthOfField.fStop=t.fStop,n.depthOfField.focusDistance=t.focusDistance,n.depthOfField.focalLength=t.focalLength,n.chromaticAberrationEnabled=t.chromaticAberrationEnabled??!1,n.chromaticAberration.aberrationAmount=t.aberrationAmount??10,n.chromaticAberration.radialIntensity=t.radialIntensity??1,n.chromaticAberration.direction=Ge.Vector2.FromArray(t.direction??[0,0]),n.chromaticAberration.centerPosition=Ge.Vector2.FromArray(t.centerPosition??[0,0]),n.glowLayerEnabled=t.glowLayerEnabled??!1,n.glowLayer&&(n.glowLayer.intensity=t.glowLayerIntensity??1,n.glowLayer.blurKernelSize=t.glowLayerBlurKernelSize??32),n}i(ke,"parseDefaultRenderingPipeline");function Ti(e){Y.set(e,we()),z.set(e,Ee()),$.set(e,De()),W.set(e,Le()),H.set(e,Ke()),X.set(e,dt())}i(Ti,"saveRenderingConfigurationForCamera");function Et(e,r){Re(),ve(e.getScene()),Oe(),_e(),Be(),gt();let t=Y.get(e);t&&Ne(e.getScene(),e,t);let o=z.get(e);o&&Te(e.getScene(),o);let n=$.get(e);n&&Me(e.getScene(),e,n);let a=W.get(e);a&&Ve(e.getScene(),e,a);let s=H.get(e);s&&ke(e.getScene(),e,s,r);let u=X.get(e);u&&yt(e.getScene(),e,u)}i(Et,"applyRenderingConfigurationForCamera");var te=require("babylonjs"),Tt=require("babylonjs");function Ot(e){let r=e.metadata?.physicsAggregate;if(!r)return;let t;M(e)?t=e:Z(e)&&(t=e.sourceMesh);let o=new Tt.PhysicsAggregate(e,r.shape.type,{mesh:t,mass:r.massProperties.mass});o.body.setMassProperties({mass:r.massProperties.mass,inertia:r.massProperties.inertia?te.Vector3.FromArray(r.massProperties.inertia):void 0,centerOfMass:r.massProperties.centerOfMass?te.Vector3.FromArray(r.massProperties.centerOfMass):void 0,inertiaOrientation:r.massProperties.inertiaOrientation?te.Quaternion.FromArray(r.massProperties.inertiaOrientation):void 0}),o.shape.density=r.shape.density,o.body.setMotionType(r.body.motionType),o.shape.material=r.material,e.physicsAggregate=o,e.metadata.physicsAggregate=void 0}i(Ot,"configurePhysicsAggregate");function Dt(e,r){(Array.isArray(r)?r:[]).forEach(o=>{let n=e.getCameraById(o.cameraId);n&&(o.ssao2RenderingPipeline&&Y.set(n,o.ssao2RenderingPipeline),o.vlsPostProcess&&z.set(n,o.vlsPostProcess),o.ssrRenderingPipeline&&$.set(n,o.ssrRenderingPipeline),o.motionBlurPostProcess&&W.set(n,o.motionBlurPostProcess),o.defaultRenderingPipeline&&H.set(n,o.defaultRenderingPipeline),o.taaRenderingPipeline&&X.set(n,o.taaRenderingPipeline))})}i(Dt,"applyRenderingConfigurations");function me(e,r){let t=r.soundTracks??[];t.length||t.push(r.mainSoundTrack);for(let o=0,n=t.length;o<n;o++){let a=t[o].soundCollection.find(s=>s.id===e);if(a)return a}return null}i(me,"getSoundById");var B=require("babylonjs"),Mt=require("babylonjs");function ze(e){let r=Mt.Vector3.FromArray(e);return r.equals(B.Axis.X)?B.Axis.X:r.equals(B.Axis.Y)?B.Axis.Y:r.equals(B.Axis.Z)?B.Axis.Z:r}i(ze,"parseAxis");function Rt(e){return e.runtimeConfiguration.forEach(r=>{r.rotationAxis&&(r.rotationAxis=ze(r.rotationAxis)),r.boneOffsetAxis&&(r.boneOffsetAxis=ze(r.boneOffsetAxis))}),e}i(Rt,"parseRagdollConfiguration");function $e(e){let r={rootNodeId:e.rootNodeId,skeletonName:e.skeletonName,scalingFactor:e.scalingFactor,runtimeConfiguration:e.runtimeConfiguration.map(t=>({name:t.name,bones:t.bones,width:t.width,depth:t.depth,height:t.height,size:t.size,joint:t.joint,min:t.min,max:t.max,boxOffset:t.boxOffset,rotationAxis:t.rotationAxis?.slice(),boneOffsetAxis:t.boneOffsetAxis?.slice()}))};return Rt(r)}i($e,"copyAndParseRagdollConfiguration");function Ye(e){return e&&JSON.parse(JSON.stringify(e))}i(Ye,"cloneJSObject");function j(e){let r=new Set;e.transformNodes.forEach(t=>{if(t.metadata?.isStaticGroup){let o=t.getDescendants(!1);o.push(t),o.forEach(n=>{if((G(n)||K(n)&&!n.isWorldMatrixFrozen)&&n.freezeWorldMatrix(),G(n)){let a=n.material;a&&!a.isFrozen&&!r.has(a)&&(r.add(a),a.onBindObservable.addOnce(()=>{a.freeze()}))}})}})}i(j,"configureTransformNodes");var We=require("babylonjs"),re=class{static{i(this,"AdvancedAssetContainer")}container;_rootUrl;_scriptsMap;_originalDescendants=[];_nodesMap=new Map;_animationGroupsMap=new Map;constructor(r,t,o){this.container=r,this._rootUrl=t,this._scriptsMap=o,r.populateRootNodes(),r.rootNodes.forEach(n=>{this._originalDescendants.push(n,...n.getDescendants(!1))}),this._originalDescendants.forEach(n=>{this._nodesMap.set(n,{node:n,metadata:Ye(n.metadata)})}),r.animationGroups.forEach(n=>{this._animationGroupsMap.set(n.name,n)})}removeDefault(){this.container.getNodes().forEach(r=>{w.get(r)?.forEach(o=>{pe(r,o)})}),this.container.removeAllFromScene()}instantiate(r){let t=We.Tools.RandomId(),o=i(s=>`${s}-${t}`,"nameFunction"),n=this.container.instantiateModelsToScene(o,!1,r),a=[];return n.rootNodes.forEach(s=>{a.push(s,...s.getDescendants(!1))}),a.forEach((s,u)=>{let l=this._originalDescendants[u],m=l.id;s.id=We.Tools.RandomId(),s.metadata=Ye(this._nodesMap.get(l).metadata),a.forEach(p=>{p.metadata.scripts?.forEach(g=>{Object.keys(g.values||{}).forEach(f=>{let d=g.values[f];if(d.type==="entity"){d.value===m&&(d.value=s.id),d.value===l.name&&(d.value=s.name);let y=this._animationGroupsMap.get(d.value);y&&(d.value=o(y.name))}})})})}),a.forEach(s=>{R(this.container.scene,s,this._scriptsMap,this._rootUrl)}),j(this.container.scene),n}};var wt=require("babylonjs"),Nt=require("babylonjs");async function Ft(e,r,t){let n=e.split("/").pop().replace(".scene",".babylon"),a=await(0,Nt.LoadAssetContainerAsync)(n,t,{rootUrl:r,pluginExtension:".babylon"});return wt.SceneLoaderFlags.ForceFullSceneLoadingForIncremental&&t.meshes.forEach(s=>M(s)&&s._checkDelayState()),a.addAllToScene(),j(t),a}i(Ft,"preloadSceneScriptAsset");async function _t(e,r){return await(await fetch(`${r}${e}`)).json()}i(_t,"preloadCommonScriptAsset");var O=new Map,ne=new Map;function Zr(e,r){ne.has(e)&&console.warn(`A parser for the extension '${e}' was already registered. It will be overwritten.`),ne.set(e,r)}i(Zr,"registerScriptAssetParser");async function He(e,r,t){[r,...r.transformNodes,...r.meshes,...r.lights,...r.cameras].filter(u=>u.metadata?.scripts?.length).map(u=>u.metadata.scripts).flat().forEach(u=>{if(t[u.key]?.default?._SceneAssets?.forEach(m=>{O.get(m.sceneName)||O.set(m.sceneName,null)}),u.values)for(let m in u.values){if(!u.values.hasOwnProperty(m))continue;let p=u.values[m];p.type==="asset"&&p.value&&!O.get(p.value)&&O.set(p.value,null)}});let a=0;for(let u of O.values())u===null&&++a;if(a===0)return a;let s=[];return O.forEach((u,l)=>{O.get(l)||s.push(new Promise(async m=>{try{let p=l.split(".").pop();switch(p){case"scene":O.set(l,new re(await Ft(l,e,r),e,t));break;default:if(ne.has(p)){let g=ne.get(p);O.set(l,await g({key:l,rootUrl:e,scene:r}));break}else O.set(l,await _t(l,e));break}}catch(p){console.error(p)}m()}))}),await Promise.all(s),a}i(He,"_preloadScriptsAssets");var Lt=require("babylonjs"),ue=require("babylonjs"),Vt=require("babylonjs"),fe=require("babylonjs"),Gt=require("babylonjs"),Bt=require("babylonjs-gui");function je(e,r,t,o,n){let a=o.constructor;if(!a)return;a._NodesFromScene?.forEach(l=>{o[l.propertyKey.toString()]=e.getNodeByName(l.nodeName)}),a._NodesFromDescendants?.forEach(l=>{let m=r.getDescendants?.(l.directDescendantsOnly,p=>p.name===l.nodeName)[0];o[l.propertyKey.toString()]=m??null}),a._AnimationGroups?.forEach(l=>{o[l.propertyKey.toString()]=e.getAnimationGroupByName(l.animationGroupName)}),a._SoundsFromScene?.forEach(l=>{let m=e.getSoundByName?.(l.soundName);o[l.propertyKey.toString()]=m??null}),(a._GuiFromAsset??[]).map(async l=>{let m=`${n}assets/${l.pathInAssets}`;try{let g=await(await fetch(m)).json(),S=Bt.AdvancedDynamicTexture.CreateFullscreenUI(g.name,!0,e);S.parseSerializedObject(g.content,!1),o[l.propertyKey.toString()]=S,l.onGuiCreated?.(o,S)}catch(p){throw console.error(`Failed to load GUI from asset: ${m}`),p}}),a._ParticleSystemsFromScene?.forEach(l=>{let m=e.particleSystems?.find(p=>p.name!==l.particleSystemName?!1:l.directDescendantsOnly?p.emitter===r:p);o[l.propertyKey.toString()]=m}),(a._VisibleInInspector??[]).forEach(l=>{let m=l.propertyKey.toString(),p=t.values;if(!p)throw new Error(`No values found for script with key "${t.key}".`);if(p.hasOwnProperty(m)&&p[m].hasOwnProperty("value")){let g=p[m].value;switch(l.configuration.type){case"number":case"boolean":case"keymap":case"string":o[m]=g;break;case"vector2":o[m]=fe.Vector2.FromArray(g);break;case"vector3":o[m]=fe.Vector3.FromArray(g);break;case"color3":o[m]=ue.Color3.FromArray(g);break;case"color4":o[m]=ue.Color4.FromArray(g);break;case"entity":switch(l.configuration.entityType){case"node":o[m]=e.getNodeById(g)??null;break;case"animationGroup":o[m]=e.getAnimationGroupByName(g)??null;break;case"sound":o[m]=me(g,e);break;case"particleSystem":o[m]=e.particleSystems?.find(f=>f.id===g)??null;break}break;case"texture":g&&(o[m]=Vt.Texture.Parse(g,e,n));break;case"asset":if(g){let f=l.configuration.assetType,d=O.get(g);switch(f){case"json":case"gui":case"scene":case"navmesh":o[m]=d;break;case"ragdoll":o[m]=$e(d);break;case"nodeParticleSystemSet":let y=Gt.NodeParticleSystemSet.Parse(d);o[m]=y;break;case"material":o[m]=Lt.Material.Parse(d,e,n);break}}}}});let s=null,u=null;if(a._PointerEvents?.length){if(a._PointerEvents.find(p=>p.options.mode==="attachedMeshOnly")&&!G(r))throw new Error('@onPointerEvent with mode "attachedMeshOnly" can only be used on scripts attached to meshes (extends AbstractMesh).');if(a._PointerEvents.find(p=>p.options.mode!=="global")&&!k(r))throw new Error('@onPointerEvent with mode different from "global" can be used only on scripts attached to Node: Mesh, Light, Camera, TransformNode.');s=e.onPointerObservable.add(p=>{let g=null;a._PointerEvents.forEach(S=>{if(!S.eventTypes.includes(p.type))return;let f=S.propertyKey.toString();if(S.options.mode==="global")return o[f]?.(p);g=p.pickInfo,g||(g=e.pick(e.pointerX,e.pointerY,y=>y.isVisible&&y.isPickable&&y.isEnabled(!0)&&!y._masterMesh,!1));let d=g.pickedMesh;if(d&&(S.options.mode==="attachedMeshOnly"&&d===r||S.options.mode==="includeDescendants"&&k(r)&&[r,...r.getDescendants(!1)].find(C=>C===d)))return o[f]?.(p)})})}if(a._KeyboardEvents?.length&&(u=e.onKeyboardObservable.add(l=>{a._KeyboardEvents.forEach(m=>{m.eventTypes.includes(l.type)&&o[m.propertyKey.toString()]?.(l)})})),a._SpritesFromSpriteManager?.length){let l=r;if(!K(l)||!l.isSpriteManager)return console.error("@spriteFromSpriteManager decorator can only be used on SpriteManagerNode.");if(!l.spriteManager)return console.error(`SpriteManagerNode "${l.name}" has no sprite manager assigned.`);a._SpritesFromSpriteManager?.forEach(m=>{let p=l.spriteManager?.sprites.find(g=>g.name===m.spriteName)||null;o[m.propertyKey.toString()]=p})}if(a._AnimationsFromSprite?.length){if(!Ie(r))return console.error("@animationFromSprite decorator can only be used in scripts attached on Sprite.");let l=r.metadata?.spriteAnimations;if(!l?.length)return console.error(`Sprite "${r.name}" has no sprite animations assigned.`);a._AnimationsFromSprite.forEach(m=>{let p=l.find(g=>g.name===m.animationName);p?o[m.propertyKey.toString()]=p??null:console.warn(`Sprite animation named "${m.animationName}" not found on sprite "${r.name}".`)})}return a._SceneAssets?.forEach(l=>{o[l.propertyKey.toString()]=O.get(l.sceneName)}),{observers:{pointerObserver:s,keyboardObserver:u}}}i(je,"applyDecorators");function R(e,r,t,o){r.metadata?.scripts&&(r.metadata.scripts?.forEach(n=>{if(!n.enabled)return;let a=t[n.key];if(!a)return;let s=a,u={};if(a.default){s=new a.default(r);let l=je(e,r,n,s,o);Object.assign(u,l?.observers??{})}s.onStart&&(u.onStartObserver=e.onBeforeRenderObservable.addOnce(()=>s.onStart(r))),s.onUpdate&&(u.onUpdateObserver=e.onBeforeRenderObservable.add(()=>s.onUpdate(r))),Qe(r,s,n.key,u)}),r.metadata.scripts=void 0)}i(R,"_applyScriptsForObject");function Xr(e,r,t){if(t??=e.getScene?.(),!t)throw new Error("Cannot apply script on object: no scene available.");let o=new r(e),n={};return je(t,e,{values:{}},o,""),o.onStart&&(n.onStartObserver=t.onBeforeRenderObservable.addOnce(()=>o.onStart())),o.onUpdate&&t.onBeforeRenderObservable.add(()=>o.onUpdate()),Qe(e,o,"runtime",n),o}i(Xr,"applyScriptOnObject");var w=new Map;function Qe(e,r,t,o){let n={key:t,observers:o,instance:r};w.has(e)?w.get(e).push(n):w.set(e,[n]),(k(e)||Ae(e)||be(e))&&e.onDisposeObservable.addOnce((()=>{w.get(e)?.slice()?.forEach(s=>{pe(e,s)}),w.delete(e)}))}i(Qe,"_registerScriptInstance");function pe(e,r){r.observers.onStartObserver?.remove(),r.observers.onUpdateObserver?.remove(),r.observers.pointerObserver?.remove(),r.observers.keyboardObserver?.remove();try{r.instance.onStop?.(e)}catch(n){console.error(`Failed to call onStop for script ${r.key} on object ${e}`,n)}let t=w.get(e),o=t?.indexOf(r)??-1;o!==-1&&t?.splice(o,1)}i(pe,"_removeRegisteredScriptInstance");function Kt(e,r){return w.get(e)?.filter(n=>n.instance.constructor===r)?.map(n=>n.instance)??null}i(Kt,"getAllScriptsByClassForObject");function en(e,r){return Kt(e,r)?.[0]??null}i(en,"getScriptByClassForObject");var zt=require("babylonjs"),kt=!1;function $t(){kt||(kt=!0,(0,zt.AddParser)("AudioEditorPlugin",(e,r,t,o)=>{e.sounds?.forEach(n=>{let a=t.sounds?.find(s=>s.name===n.name);a&&(a.id=n.id,a.uniqueId=n.uniqueId,r.onBeforeRenderObservable.addOnce(()=>{try{a.spatialSound=n.spatialSound}catch{}}))})}))}i($t,"registerAudioParser");function N(e){let r=1;for(;r<=e;)r<<=1;return r>>1}i(N,"getPowerOfTwoUntil");var Ue=require("babylonjs"),Yt=!1;function Wt(){if(Yt)return;Yt=!0;let e=Ue.SerializationHelper._TextureParser;Ue.SerializationHelper._TextureParser=(r,t,o)=>{if(t.loadingTexturesQuality==="high"||!r.metadata?.baseSize)return e(r,t,o);let n=r.metadata.baseSize.width,a=r.metadata.baseSize.height,s=n===N(n)||a===N(a),u="";switch(t.loadingTexturesQuality){case"medium":let d=n*.66>>0,y=a*.66>>0;s&&(d=N(d),y=N(y)),u=`_${d}_${y}`;break;case"low":case"very-low":let b=n*.33>>0,C=a*.33>>0;s&&(b=N(b),C=N(C)),u=`_${b}_${C}`;break}let l=r.name;if(!l||!u)return e(r,t,o);let m=l.split("/"),p=m.pop();if(!p)return e(r,t,o);let g=p.split(".").pop(),f=`${p.replace(`.${g}`,"")}${u}.${g}`;return m.push(f),r.name=m.join("/"),e(r,t,o)}}i(Wt,"registerTextureParser");var jt=require("babylonjs"),ge=require("babylonjs"),Ht=!1;function Qt(){if(Ht)return;Ht=!0;let e=(0,ge.GetParser)(jt.SceneComponentConstants.NAME_SHADOWGENERATOR);(0,ge.AddParser)("ShadowGeneratorEditorPlugin",(r,t,o,n)=>{t.loadingShadowsQuality!=="high"&&r.shadowGenerators?.forEach(a=>{switch(t.loadingShadowsQuality){case"medium":a.mapSize=a.mapSize*.5;break;case"low":a.mapSize=a.mapSize*.25;break;case"very-low":a.mapSize=a.mapSize*.125;break}a.mapSize=Math.max(128,N(a.mapSize))}),e?.(r,t,o,n)})}i(Qt,"registerShadowGeneratorParser");var qt=require("babylonjs"),Jt=require("babylonjs"),Ut=!1;function Zt(){Ut||(Ut=!0,(0,Jt.AddParser)("MorphTargetManagerEditorPlugin",(e,r,t,o)=>{e.morphTargetManagers.forEach(n=>{let s=t.meshes.find(m=>m.id===n.meshId)?.morphTargetManager;if(!s||n.targets.find(m=>!m.delayLoadingFile))return;let l=[];n.targets.forEach(m=>{if(!m.delayLoadingFile)return l.push(Promise.resolve(null));let p=`${o}${m.delayLoadingFile}`;r.addPendingData(p);let g=new qt.WebRequest;g.responseType="arraybuffer",g.open("GET",p),g.send(),l.push(new Promise(S=>{g.addEventListener("load",()=>{r.removePendingData(p),S(g.response)})}))}),Promise.all(l).then(m=>{for(let p=0,g=s.numTargets;p<g;++p){let S=s.getTarget(p),f=n.targets[p],d=m[p];if(f.positionsCount){let y=new Float32Array(d,f.positionsOffset,f.positionsCount);S._positions=y,S.setPositions(y)}if(f.normalsCount){let y=new Float32Array(d,f.normalsOffset,f.normalsCount);S._normals=y,S.setNormals(y)}if(f.tangentsCount){let y=new Float32Array(d,f.tangentsOffset,f.tangentsCount);S._tangents=y,S.setTangents(y)}if(f.uvsCount){let y=new Float32Array(d,f.uvsOffset,f.uvsCount);S._uvs=y,S.setUVs(y)}if(f.uv2sCount){let y=new Float32Array(d,f.uv2sOffset,f.uv2sCount);S._uv2s=y,S.setUV2s(y)}}for(let p=0,g=s.numTargets;p<g;++p)s.getTarget(p)._onDataLayoutChanged.notifyObservers()})})}))}i(Zt,"registerMorphTargetManagerParser");function qe(e){if(!Array.isArray(e.frames)){let r=[];for(let t of Object.keys(e.frames))r.push({filename:t,...e.frames[t]});e.frames=r}}i(qe,"normalizeAtlasJson");function tn(e,r,t){let n=(e.metadata?.spriteAnimations??[]).find(a=>a.name===r);if(!n)return console.error(`Animation with name "${r}" not found on sprite.`);e.playAnimation(n.from,n.to,n.loop,n.delay,t)}i(tn,"playSpriteAnimationFromName");var er=require("babylonjs"),tr=require("babylonjs"),rr=require("babylonjs"),nr=require("babylonjs"),Je=require("babylonjs"),Q=require("babylonjs"),or=require("babylonjs"),Xt=!1;function ir(){Xt||(Xt=!0,(0,or.AddParser)("SpriteMapNode",(e,r,t,o)=>{e.transformNodes?.forEach(n=>{if(!n.isSpriteMap)return;let a=t.transformNodes?.find(l=>l.id===n.id);if(!a)return;a.isSpriteMap=n.isSpriteMap;let s=`${o}${n.atlasJsonRelativePath}`;r.addPendingData(s);let u=new rr.WebRequest;u.open("GET",s),u.send(),u.addEventListener("load",()=>{r.removePendingData(s);let l=JSON.parse(u.responseText);qe(l);let m=`${er.Tools.GetFolderPath(s)}${l.meta.image}`,p=new Je.Texture(m,r,!1,!1,Je.Texture.NEAREST_NEAREST,null,null,null,!1,tr.Engine.TEXTUREFORMAT_RGBA),g=new nr.SpriteMap(a.name,l,p,{layerCount:n.options.layerCount,stageSize:Q.Vector2.FromArray(n.options.stageSize??[10,1]),outputSize:Q.Vector2.FromArray(n.options.outputSize??[100,100]),colorMultiply:Q.Vector3.FromArray(n.options.colorMultiply??[1,1,1]),flipU:!0},r);n.tiles.forEach(f=>{for(let d=0,y=f.repeatCount.x+1;d<y;++d)for(let b=0,C=f.repeatCount.y+1;b<C;++b){let D=d*(f.repeatOffset.x+1),T=b*(f.repeatOffset.y+1);g.changeTiles(f.layer,new Q.Vector2(f.position.x+D,(g.options.stageSize?.y??0)-1-f.position.y-T),f.tile)}});let S=g._output;S.parent=a,a.spriteMap=g})})}))}i(ir,"registerSpriteMapParser");var lr=require("babylonjs"),cr=require("babylonjs"),mr=require("babylonjs"),Ze=require("babylonjs"),pr=require("babylonjs");function sr(e,r){r?.fogEnabled!==void 0&&(e.fogEnabled=r?.fogEnabled),r?.blendMode!==void 0&&(e.blendMode=r?.blendMode),r?.disableDepthWrite!==void 0&&(e.disableDepthWrite=r?.disableDepthWrite),r?.pixelPerfect!==void 0&&(e.pixelPerfect=r?.pixelPerfect),r?.useLogarithmicDepth!==void 0&&(e.useLogarithmicDepth=r?.useLogarithmicDepth),r?.metadata!==void 0&&(e.metadata=r?.metadata);for(let t of r?.sprites??[]){let o=cr.Sprite.Parse(t,e);o.uniqueId=t.uniqueId,o.metadata=t.metadata}}i(sr,"parseSerializedSpriteManager");var ar=!1;function ur(){ar||(ar=!0,(0,pr.AddParser)("SpriteManagerNode",(e,r,t,o)=>{e.transformNodes?.forEach(n=>{if(!n.isSpriteManager)return;let a=t.transformNodes?.find(s=>s.id===n.id);if(a){if(a.isSpriteManager=n.isSpriteManager,n.atlasJsonRelativePath){let s=`${o}${n.atlasJsonRelativePath}`;r.addPendingData(s);let u=new mr.WebRequest;u.open("GET",s),u.send(),u.addEventListener("load",()=>{r.removePendingData(s);let l=JSON.parse(u.responseText),m=`${lr.Tools.GetFolderPath(s)}${l.meta.image}`,p=new Ze.SpriteManager(a.name,m,1e3,64,r,void 0,void 0,!0,l);a.spriteManager=p,n.spriteManager&&sr(p,n.spriteManager)})}else if(n.spriteManager?.textureUrl){let s=`${o}${n.spriteManager.textureUrl}`,u=new Ze.SpriteManager(a.name,s,1e3,{width:n.spriteManager.cellWidth,height:n.spriteManager.cellHeight},r,void 0,void 0,!1);a.spriteManager=u,n.spriteManager&&sr(u,n.spriteManager)}}})}))}i(ur,"registerSpriteManagerParser");var gr=require("babylonjs"),dr=require("babylonjs"),fr=!1;function yr(){fr||(fr=!0,(0,gr.AddParser)("NodeParticleSystemSetEditorPlugin",(e,r,t,o)=>{e.meshes?.forEach(n=>{if(!n.isNodeParticleSystemMesh)return;let a=t.meshes?.find(s=>s.id===n.id);a&&(n.nodeParticleSystemSet.blocks?.forEach(s=>{s.url&&(s.url=`${o}${s.url}`)}),a.nodeParticleSystemSet=dr.NodeParticleSystemSet.Parse(n.nodeParticleSystemSet),a.nodeParticleSystemSet.id=n.nodeParticleSystemSet.id,a.nodeParticleSystemSet.uniqueId=n.uniqueId,r.addPendingData(n.id),a.nodeParticleSystemSet.buildAsync(r,!1).then(s=>{r.removePendingData(n.id),a.particleSystemSet=s,s.systems.forEach(u=>{if(Pe(u)){let l=u._sizeCreation.process;l&&(u._sizeCreation.process=(m,p)=>{l(m,p),m.scale.x*=100,m.scale.y*=100})}}),s.emitterNode=a,s.start()}))})}))}i(yr,"registerNodeParticleSystemSetParser");var Sr=require("babylonjs"),Xe=require("babylonjs"),hr=require("babylonjs"),br=require("babylonjs");async function rn(e,r,t,o,n){if(t.loadingQuality=n?.quality??"high",t.loadingTexturesQuality=n?.texturesQuality??t.loadingQuality,t.loadingShadowsQuality=n?.shadowsQuality??t.loadingQuality,$t(),Wt(),Qt(),Zt(),ir(),ur(),yr(),await(0,hr.AppendSceneAsync)(`${e}${r}`,t,{pluginExtension:".babylon",onProgress:i(s=>{let u=Math.min(s.loaded/s.total*.5);n?.onProgress?.(u)},"onProgress")}),!n?.skipAssetsPreload){let s=0;do s=await He(e,t,o);while(s!==0)}br.SceneLoaderFlags.ForceFullSceneLoadingForIncremental&&t.meshes.forEach(s=>M(s)&&s._checkDelayState());let a=t.getWaitingItemsCount();for(;!t.isDisposed&&(!t.isReady()||t.getWaitingItemsCount()>0);){await new Promise(u=>setTimeout(u,150));let s=a-t.getWaitingItemsCount();s===a&&t.textures.forEach(u=>{u.delayLoadState===Xe.Constants.DELAYLOADSTATE_NONE&&(u.delayLoadState=Xe.Constants.DELAYLOADSTATE_LOADED)}),n?.onProgress?.(.5+s/a*.5)}n?.onProgress?.(1),Ce(t),xe(t),t.metadata?.rendering&&(Dt(t,t.metadata.rendering),t.activeCamera&&Et(t.activeCamera,e)),t.metadata?.physicsGravity&&t.getPhysicsEngine()?.setGravity(Sr.Vector3.FromArray(t.metadata?.physicsGravity)),R(t,t,o,e),t.transformNodes.forEach(s=>{R(t,s,o,e)}),t.meshes.forEach(s=>{Ot(s),R(t,s,o,e)}),t.lights.forEach(s=>{R(t,s,o,e)}),t.cameras.forEach(s=>{R(t,s,o,e)}),t.spriteManagers?.forEach(s=>{s.sprites.forEach(u=>{R(t,u,o,e)})}),j(t)}i(rn,"loadScene");var Pr=require("babylonjs");async function nn(e,r,t){let n=await(await fetch(e+r)).json(),s=Pr.Tools.Instantiate(n.customType).Parse(n,t,e);return s.id=n.id,s.uniqueId=n.uniqueId,s}i(nn,"loadMaterialFromFile");function on(e){return Promise.all(e.materials.map(async r=>{let t=r.getBindedMeshes();await Promise.all(t.map(async o=>{Z(o)||await r.forceCompilationAsync(o,{clipPlane:!!e.clipPlane,useInstances:o.hasInstances})}))}))}i(on,"forceCompileAllSceneMaterials");function sn(e){e.setTextureFormatToUse(["-dxt.ktx","-astc.ktx","-pvrtc.ktx","-etc1.ktx","-etc2.ktx"])}i(sn,"configureEngineToUseCompressedTextures");var L=require("babylonjs");function oe(e){if(!isNaN(parseFloat(e))&&isFinite(e))return L.Animation.ANIMATIONTYPE_FLOAT;switch(e?.getClassName?.()){case"Vector2":return L.Animation.ANIMATIONTYPE_VECTOR2;case"Vector3":return L.Animation.ANIMATIONTYPE_VECTOR3;case"Quaternion":return L.Animation.ANIMATIONTYPE_QUATERNION;case"Color3":return L.Animation.ANIMATIONTYPE_COLOR3;case"Color4":return L.Animation.ANIMATIONTYPE_COLOR4;case"Size":return L.Animation.ANIMATIONTYPE_SIZE;case"Matrix":return L.Animation.ANIMATIONTYPE_MATRIX}return null}i(oe,"getAnimationTypeForObject");var Ar=require("babylonjs");function an(e){return function(r,t){let o=r.constructor;o._NodesFromScene??=[],o._NodesFromScene.push({propertyKey:t,nodeName:e})}}i(an,"nodeFromScene");function ln(e,r=!1){return function(t,o){let n=t.constructor;n._NodesFromDescendants??=[],n._NodesFromDescendants.push({propertyKey:o,nodeName:e,directDescendantsOnly:r})}}i(ln,"nodeFromDescendants");function cn(e){return function(r,t){let o=r.constructor;o._AnimationGroups??=[],o._AnimationGroups.push({animationGroupName:e,propertyKey:t})}}i(cn,"animationGroupFromScene");function mn(e){return function(r,t){let o=r.constructor;o._SceneAssets??=[],o._SceneAssets.push({sceneName:e,propertyKey:t})}}i(mn,"sceneAsset");function pn(e,r){return function(t,o){let n=t.constructor;n._GuiFromAsset??=[],n._GuiFromAsset.push({propertyKey:o,pathInAssets:e,onGuiCreated:r})}}i(pn,"guiFromAsset");function un(e){return function(r,t){let o=r.constructor;o._SoundsFromScene??=[],o._SoundsFromScene.push({propertyKey:t,soundName:e})}}i(un,"soundFromScene");function fn(e,r=!1){return function(t,o){let n=t.constructor;n._ParticleSystemsFromScene??=[],n._ParticleSystemsFromScene.push({propertyKey:o,particleSystemName:e,directDescendantsOnly:r})}}i(fn,"particleSystemFromScene");function gn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"boolean"}})}}i(gn,"visibleAsBoolean");function dn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"string"}})}}i(dn,"visibleAsString");function yn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"number"}})}}i(yn,"visibleAsNumber");function Sn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"vector2"}})}}i(Sn,"visibleAsVector2");function hn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"vector3"}})}}i(hn,"visibleAsVector3");function bn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"color3"}})}}i(bn,"visibleAsColor3");function Pn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"color4"}})}}i(Pn,"visibleAsColor4");function An(e,r,t){return function(o,n){let a=o.constructor;a._VisibleInInspector??=[],a._VisibleInInspector.push({label:r,propertyKey:n,configuration:{...t,entityType:e,type:"entity"}})}}i(An,"visibleAsEntity");function In(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"texture"}})}}i(In,"visibleAsTexture");function Cn(e,r){return function(t,o){let n=t.constructor;n._VisibleInInspector??=[],n._VisibleInInspector.push({label:e,propertyKey:o,configuration:{...r,type:"keymap"}})}}i(Cn,"visibleAsKeyMap");function xn(e,r,t){return function(o,n){let a=o.constructor;a._VisibleInInspector??=[],a._VisibleInInspector.push({label:r,propertyKey:n,configuration:{...t,assetType:e,type:"asset"}})}}i(xn,"visibleAsAsset");function vn(e,r){return function(t,o){let n=t.constructor;n._PointerEvents??=[],n._PointerEvents.push({propertyKey:o,options:{mode:"global",...r??{}},eventTypes:Array.isArray(e)?e:[e]})}}i(vn,"onPointerEvent");function En(e){return function(r,t){let o=r.constructor;o._KeyboardEvents??=[],o._KeyboardEvents.push({propertyKey:t,eventTypes:Array.isArray(e)?e:[e]})}}i(En,"onKeyboardEvent");function Tn(e){return function(r,t){let o=r.constructor;o._SpritesFromSpriteManager??=[],o._SpritesFromSpriteManager.push({propertyKey:t,spriteName:e})}}i(Tn,"spriteFromSpriteManager");function On(e){return function(r,t){let o=r.constructor;o._AnimationsFromSprite??=[],o._AnimationsFromSprite.push({propertyKey:t,animationName:e})}}i(On,"animationFromSprite");var de=require("babylonjs");function Rm(e,r){let t;return e===de.Animation.ANIMATIONTYPE_FLOAT?t=r.value:t=r.value.clone(),{value:t,frame:r.frame,interpolation:r.interpolation,inTangent:e===de.Animation.ANIMATIONTYPE_FLOAT?r.inTangent:r.inTangent?.clone(),outTangent:e===de.Animation.ANIMATIONTYPE_FLOAT?r.outTangent:r.outTangent?.clone()}}i(Rm,"cloneKey");function ye(e,r){let t=r.split("."),o=e;for(let n=0;n<t.length;++n)o=o[t[n]];return o}i(ye,"getPropertyValue");function et(e,r,t){let o=null;e.onAnimationGroupPlayObservable.add(()=>{o=r.onAfterAnimationsObservable.add(()=>{t()})}),e.onAnimationGroupPauseObservable.add(()=>{o&&(r.onAfterAnimationsObservable.remove(o),o=null)}),e.onAnimationGroupEndObservable.add(()=>{o&&(r.onAfterAnimationsObservable.remove(o),o=null)})}i(et,"registerAfterAnimationCallback");var V=require("babylonjs"),Se=require("babylonjs"),_=require("babylonjs");function Dn(e,r){return{name:e.name,framesPerSecond:e.framesPerSecond,outputFramesPerSecond:e.outputFramesPerSecond,tracks:e.tracks.map(t=>{let o=null,n=null;if(t.node?(o=r.getNodeById(t.node),o||(o=r.particleSystems?.find(s=>s.id===t.node)??null)):t.defaultRenderingPipeline&&(o=ee()),t.propertyPath){let s=ye(o,t.propertyPath);n=oe(s)}let a=null;return t.sound&&(a=me(t.sound,r)),{node:o,sound:a,propertyPath:t.propertyPath,defaultRenderingPipeline:t.defaultRenderingPipeline,animationGroup:t.animationGroup?r.getAnimationGroupByName(t.animationGroup):null,animationGroups:t.animationGroups,sounds:t.sounds,soundVolume:tt(t.soundVolume??[],V.Animation.ANIMATIONTYPE_FLOAT),keyFrameEvents:t.keyFrameEvents?.map(s=>{let u={...s};switch(s.data?.type){case"set-enabled":u.data={type:"set-enabled",value:s.data.value,node:r.getNodeById(s.data.node)};break;case"apply-impulse":u.data={type:"apply-impulse",radius:s.data.radius,mesh:r.getMeshById(s.data.mesh),force:_.Vector3.FromArray(s.data.force),contactPoint:_.Vector3.FromArray(s.data.contactPoint)};break}return u}),keyFrameAnimations:o&&n!==null&&tt(t.keyFrameAnimations??[],n)}})}}i(Dn,"parseCinematic");function F(e,r){if(e===null)return null;if(e!==void 0)switch(r){case V.Animation.ANIMATIONTYPE_FLOAT:return e;case V.Animation.ANIMATIONTYPE_VECTOR2:return _.Vector2.FromArray(e);case V.Animation.ANIMATIONTYPE_VECTOR3:return _.Vector3.FromArray(e);case V.Animation.ANIMATIONTYPE_QUATERNION:return _.Quaternion.FromArray(e);case V.Animation.ANIMATIONTYPE_COLOR3:return Se.Color3.FromArray(e);case V.Animation.ANIMATIONTYPE_COLOR4:return Se.Color4.FromArray(e);case V.Animation.ANIMATIONTYPE_MATRIX:return _.Matrix.FromArray(e)}}i(F,"parseCinematicKeyValue");function tt(e,r){return e?.map(t=>{let o=t.type==="key"?t:null;if(o)return{...o,value:F(o.value,r),inTangent:F(o.inTangent,r),outTangent:F(o.outTangent,r)};let n=t.type==="cut"?t:null;if(n)return{...n,key1:{...n.key1,value:F(n.key1.value,r),inTangent:F(n.key1.inTangent,r),outTangent:F(n.key1.outTangent,r)},key2:{...n.key2,value:F(n.key2.value,r),inTangent:F(n.key2.inTangent,r),outTangent:F(n.key2.outTangent,r)}};throw new Error(`Unknown key frame type: ${t.type}`)})}i(tt,"parseKeyFrameAnimations");function Ir(e,r){e.onEventObservable.notifyObservers(r.eventName)}i(Ir,"handleApplyEvent");function Cr(e){e.node?.setEnabled(e.value)}i(Cr,"handleSetEnabledEvent");var rt=require("babylonjs"),xr=rt.Vector3.Zero();function vr(e,r){let t=r.mesh?[r.mesh]:e.meshes.filter(o=>o.physicsAggregate);r.radius&&(t=t.filter(o=>{let n=o.getBoundingInfo().boundingBox.centerWorld;return rt.Vector3.Distance(n,r.contactPoint)<=r.radius})),t.forEach(o=>{if(o.physicsAggregate?.body){let n=r.contactPoint.subtract(o.getBoundingInfo().boundingBox.centerWorld);n.multiplyInPlace(r.force),o.physicsAggregate.body.setLinearVelocity(xr),o.physicsAggregate.body.setAngularVelocity(xr),o.physicsAggregate.body.applyImpulse(n.negateInPlace(),r.contactPoint)}})}i(vr,"handleApplyImpulseEvent");var Er=require("babylonjs"),Tr=require("babylonjs"),ie=class extends Tr.AnimationGroup{static{i(this,"Cinematic")}onEventObservable=new Er.Observable;onEvent(r,t){this.onEventObservable.add(o=>{r===o&&t()})}};function nt(e){return e.type==="key"}i(nt,"isCinematicKey");function U(e){return e.type==="cut"}i(U,"isCinematicKeyCut");function Mn(e){return e.type==="event"}i(Mn,"isCinematicKeyEvent");function Rn(e){return e.type==="group"}i(Rn,"isCinematicGroup");function wn(e){return e.type==="sound"}i(wn,"isCinematicSound");var I=require("babylonjs"),q=require("babylonjs");function Nn(e,r,t){let o=new ie(e.name,r);return e.tracks.forEach(n=>{let a=n.animationGroup;if(a&&n.animationGroups?.length){let f=a.clone(`${a.name}-cinematic-temp`),d=r.animationGroups.indexOf(f);d!==-1&&r.animationGroups.splice(d,1),o.onAnimationEndObservable.add(()=>{a.stop(),f.stop()});let y=n.animationGroups.reduce((T,A)=>Math.min(T,A.frame),Number.MAX_VALUE)??0,b=n.animationGroups.reduce((T,A)=>Math.max(T,A.frame+A.endFrame),0)??0,C={frame:y},D=new I.Animation(f.name,"frame",60,I.Animation.ANIMATIONTYPE_FLOAT,I.Animation.ANIMATIONLOOPMODE_CYCLE,!1);if(D.setKeys([{frame:y,value:0},{frame:b,value:b}]),n.animationGroups.forEach(T=>{D.addEvent(new q.AnimationEvent(T.frame,()=>{let A=T.repeatCount??0;if(f.to=T.endFrame,f.speedRatio=T.speed,f.stop(),f.play(A>0),f.from!==T.startFrame&&f.goToFrame(T.startFrame),A){let J=0;f.onAnimationGroupLoopObservable.add(()=>{++J,J>A&&f.stop()})}}))}),o.addTargetedAnimation(D,C),(n.animationGroupWeight?.length??0)>=2&&n.animationGroupWeight.find(A=>U(A)?A.key1.value!==1||A.key2.value!==1:A.value!==1)){let A={weight:0},J=new I.Animation(`${f.name}-weights`,"weight",60,I.Animation.ANIMATIONTYPE_FLOAT,I.Animation.ANIMATIONLOOPMODE_CYCLE,!1),se=[];n.animationGroupWeight.forEach(ae=>{U(ae)?(se.push(ae.key1),se.push(ae.key2)):se.push(ae)}),J.setKeys(se),o.addTargetedAnimation(J,A),et(o,r,()=>{f.weight=A.weight})}}let s=n.sound,u=s?.getAudioBuffer();if(!t?.ignoreSounds&&s&&u&&n.sounds?.length){let f={dummy:0,volume:0},d=new I.Animation(s.name,"dummy",60,I.Animation.ANIMATIONTYPE_FLOAT,I.Animation.ANIMATIONLOOPMODE_CYCLE,!1),y=0;if(n.sounds?.forEach(b=>{let C=b.endFrame-b.startFrame;y=Math.max(y,b.frame+C),d.addEvent(new q.AnimationEvent(b.frame,D=>{let A=(D-b.frame+b.startFrame)/e.framesPerSecond;s.play(0,A)},!1)),d.addEvent(new q.AnimationEvent(b.frame+C,()=>{s.stop()}))}),d.setKeys([{frame:0,value:0},{frame:y,value:y}]),o.addTargetedAnimation(d,f),(n.soundVolume?.length??0)>=2){let b=new I.Animation(s.name,"volume",60,I.Animation.ANIMATIONTYPE_FLOAT,I.Animation.ANIMATIONLOOPMODE_CYCLE,!1),C=[];n.soundVolume.forEach(D=>{U(D)?(C.push(D.key1),C.push(D.key2)):C.push(D)}),b.setKeys(C),o.addTargetedAnimation(b,f),et(o,r,()=>{s.setVolume(f.volume)})}}if(n.keyFrameEvents){let f={dummy:0},d=new I.Animation("events","dummy",60,I.Animation.ANIMATIONTYPE_FLOAT,I.Animation.ANIMATIONLOOPMODE_CYCLE,!1),y=0;n.keyFrameEvents?.forEach(b=>{y=Math.max(y,b.frame),d.addEvent(new q.AnimationEvent(b.frame,()=>{switch(b.data?.type){case"event":Ir(o,b.data);break;case"set-enabled":Cr(b.data);break;case"apply-impulse":vr(r,b.data);break}}))}),d.setKeys([{frame:0,value:0},{frame:y+1,value:y+1}]),o.addTargetedAnimation(d,f)}let l=n.defaultRenderingPipeline?ee():n.node;if(!l||!n.propertyPath||!n.keyFrameAnimations)return;let m=ye(l,n.propertyPath),p=oe(m);if(p===null)return;let g=new I.Animation(n.propertyPath,n.propertyPath,60,p,I.Animation.ANIMATIONLOOPMODE_CYCLE,!1),S=[];n.keyFrameAnimations?.forEach(f=>{if(nt(f))return S.push(f);U(f)&&(S.push(f.key1),S.push(f.key2),ce(l)&&n.propertyPath==="position"&&g.addEvent(new q.AnimationEvent(f.key1.frame,()=>{let d=Fe();if(!d)return;let y=d.motionStrength;d.motionStrength=0,requestAnimationFrame(()=>{d.motionStrength=y})})))}),g.setKeys(S),o.addTargetedAnimation(g,l)}),o.normalize(),o}i(Nn,"generateCinematicAnimationGroup");0&&(module.exports={AdvancedAssetContainer,Cinematic,NodeParticleSystemSet,_applyScriptsForObject,_preloadScriptsAssets,_registerScriptInstance,_removeRegisteredScriptInstance,animationFromSprite,animationGroupFromScene,applyScriptOnObject,configureEngineToUseCompressedTextures,configureShadowMapRefreshRate,configureShadowMapRenderListPredicate,copyAndParseRagdollConfiguration,createDefaultRenderingPipeline,createMotionBlurPostProcess,createSSAO2RenderingPipeline,createSSRRenderingPipeline,createVLSPostProcess,defaultPipelineCameraConfigurations,disposeDefaultRenderingPipeline,disposeMotionBlurPostProcess,disposeSSAO2RenderingPipeline,disposeSSRRenderingPipeline,disposeVLSPostProcess,forceCompileAllSceneMaterials,generateCinematicAnimationGroup,getAllScriptsByClassForObject,getAnimationTypeForObject,getDefaultRenderingPipeline,getMotionBlurPostProcess,getPowerOfTwoUntil,getSSAO2RenderingPipeline,getSSRRenderingPipeline,getScriptByClassForObject,getVLSPostProcess,guiFromAsset,isAbstractMesh,isAnyParticleSystem,isArcRotateCamera,isBone,isCamera,isCinematicGroup,isCinematicKey,isCinematicKeyCut,isCinematicKeyEvent,isCinematicSound,isDirectionalLight,isFreeCamera,isGPUParticleSystem,isGroundMesh,isHemisphericLight,isInstancedMesh,isLight,isMesh,isNode,isParticleSystem,isPointLight,isScene,isSpotLight,isSprite,isTexture,isTransformNode,loadMaterialFromFile,loadScene,motionBlurPostProcessCameraConfigurations,nodeFromDescendants,nodeFromScene,normalizeAtlasJson,onKeyboardEvent,onPointerEvent,parseCinematic,parseCinematicKeyValue,parseDefaultRenderingPipeline,parseKeyFrameAnimations,parseMotionBlurPostProcess,parseRagdollConfiguration,parseSSAO2RenderingPipeline,parseSSRRenderingPipeline,parseVLSPostProcess,particleSystemFromScene,playSpriteAnimationFromName,registerScriptAssetParser,sceneAsset,scriptAssetsCache,scriptAssetsParsers,scriptsDictionary,serializeDefaultRenderingPipeline,serializeMotionBlurPostProcess,serializeSSAO2RenderingPipeline,serializeSSRRenderingPipeline,serializeVLSPostProcess,setDefaultRenderingPipelineRef,setMotionBlurPostProcessRef,setSSAO2RenderingPipelineRef,setSSRRenderingPipelineRef,setVLSPostProcessRef,soundFromScene,spriteFromSpriteManager,ssaoRenderingPipelineCameraConfigurations,ssrRenderingPipelineCameraConfigurations,visibleAsAsset,visibleAsBoolean,visibleAsColor3,visibleAsColor4,visibleAsEntity,visibleAsKeyMap,visibleAsNumber,visibleAsString,visibleAsTexture,visibleAsVector2,visibleAsVector3,vlsPostProcessCameraConfigurations});
|
|
@@ -31,7 +31,7 @@ export function applyDecorators(scene, object, script, instance, rootUrl) {
|
|
|
31
31
|
const sound = scene.getSoundByName?.(params.soundName);
|
|
32
32
|
instance[params.propertyKey.toString()] = sound ?? null;
|
|
33
33
|
});
|
|
34
|
-
// @guiFromAsset
|
|
34
|
+
// @guiFromAsset, deprecated
|
|
35
35
|
(ctor._GuiFromAsset ?? []).map(async (params) => {
|
|
36
36
|
const guiUrl = `${rootUrl}assets/${params.pathInAssets}`;
|
|
37
37
|
try {
|
|
@@ -58,7 +58,7 @@ export function applyDecorators(scene, object, script, instance, rootUrl) {
|
|
|
58
58
|
instance[params.propertyKey.toString()] = particleSystem;
|
|
59
59
|
});
|
|
60
60
|
// @visibleAsNumber, @visibleAsBoolean etc.
|
|
61
|
-
(ctor._VisibleInInspector ?? []).forEach(
|
|
61
|
+
(ctor._VisibleInInspector ?? []).forEach((params) => {
|
|
62
62
|
const propertyKey = params.propertyKey.toString();
|
|
63
63
|
const attachedScripts = script.values;
|
|
64
64
|
if (!attachedScripts) {
|
|
@@ -221,6 +221,10 @@ export function applyDecorators(scene, object, script, instance, rootUrl) {
|
|
|
221
221
|
}
|
|
222
222
|
});
|
|
223
223
|
}
|
|
224
|
+
// @sceneAsset
|
|
225
|
+
ctor._SceneAssets?.forEach((params) => {
|
|
226
|
+
instance[params.propertyKey.toString()] = scriptAssetsCache.get(params.sceneName);
|
|
227
|
+
});
|
|
224
228
|
return {
|
|
225
229
|
observers: {
|
|
226
230
|
pointerObserver,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/decorators/apply.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAIlE,OAAO,EAAE,OAAO,EAAE,MAAM,4CAA4C,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAGrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAE7F,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAIlF,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/decorators/apply.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,4 +41,22 @@ export function animationGroupFromScene(animationGroupName) {
|
|
|
41
41
|
ctor._AnimationGroups.push({ animationGroupName, propertyKey });
|
|
42
42
|
};
|
|
43
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Makes the decorated property linked to a scene that has the given name.
|
|
46
|
+
* Once the script is instantiated, the reference to the scene is retrieved as a
|
|
47
|
+
* `AdvancedAssetContainer` and assigned to the property. Scene link cant' be used in constructor.
|
|
48
|
+
* This can be used only by scripts using Classes.
|
|
49
|
+
* @param sceneName defines the name of the scene to retrieve.
|
|
50
|
+
* @example \@sceneAsset("blaster.babylon") public myBlasterScene: AdvancedAssetContainer;
|
|
51
|
+
*/
|
|
52
|
+
export function sceneAsset(sceneName) {
|
|
53
|
+
return function (target, propertyKey) {
|
|
54
|
+
const ctor = target.constructor;
|
|
55
|
+
ctor._SceneAssets ??= [];
|
|
56
|
+
ctor._SceneAssets.push({
|
|
57
|
+
sceneName,
|
|
58
|
+
propertyKey,
|
|
59
|
+
});
|
|
60
|
+
};
|
|
61
|
+
}
|
|
44
62
|
//# sourceMappingURL=scene.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scene.js","sourceRoot":"","sources":["../../../src/decorators/scene.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC7C,OAAO,UAAU,MAAW,EAAE,WAA4B;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAkC,CAAC;QAEvD,IAAI,CAAC,eAAe,KAAK,EAAE,CAAC;QAC5B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;IACtD,CAAC,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB,EAAE,wBAAiC,KAAK;IAC3F,OAAO,UAAU,MAAW,EAAE,WAA4B;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAkC,CAAC;QAEvD,IAAI,CAAC,qBAAqB,KAAK,EAAE,CAAC;QAClC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,qBAAqB,EAAE,CAAC,CAAC;IACnF,CAAC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,kBAA0B;IACjE,OAAO,UAAU,MAAW,EAAE,WAA4B;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAkC,CAAC;QAEvD,IAAI,CAAC,gBAAgB,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,kBAAkB,EAAE,WAAW,EAAE,CAAC,CAAC;IACjE,CAAC,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"scene.js","sourceRoot":"","sources":["../../../src/decorators/scene.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC7C,OAAO,UAAU,MAAW,EAAE,WAA4B;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAkC,CAAC;QAEvD,IAAI,CAAC,eAAe,KAAK,EAAE,CAAC;QAC5B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;IACtD,CAAC,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB,EAAE,wBAAiC,KAAK;IAC3F,OAAO,UAAU,MAAW,EAAE,WAA4B;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAkC,CAAC;QAEvD,IAAI,CAAC,qBAAqB,KAAK,EAAE,CAAC;QAClC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,qBAAqB,EAAE,CAAC,CAAC;IACnF,CAAC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,kBAA0B;IACjE,OAAO,UAAU,MAAW,EAAE,WAA4B;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAkC,CAAC;QAEvD,IAAI,CAAC,gBAAgB,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,kBAAkB,EAAE,WAAW,EAAE,CAAC,CAAC;IACjE,CAAC,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,SAAiB;IAC3C,OAAO,UAAU,MAAW,EAAE,WAA4B;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAkC,CAAC;QAEvD,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;YACtB,SAAS;YACT,WAAW;SACX,CAAC,CAAC;IACJ,CAAC,CAAC;AACH,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Tools } from "@babylonjs/core/Misc/tools";
|
|
2
2
|
import { cloneJSObject } from "../tools/tools";
|
|
3
|
-
import { _applyScriptsForObject } from "./script/apply";
|
|
4
3
|
import { configureTransformNodes } from "./transform-node";
|
|
4
|
+
import { _applyScriptsForObject, _removeRegisteredScriptInstance, scriptsDictionary } from "./script/apply";
|
|
5
5
|
export class AdvancedAssetContainer {
|
|
6
6
|
/**
|
|
7
7
|
* Defines the reference to the
|
|
@@ -31,6 +31,12 @@ export class AdvancedAssetContainer {
|
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
33
|
removeDefault() {
|
|
34
|
+
this.container.getNodes().forEach((node) => {
|
|
35
|
+
const scripts = scriptsDictionary.get(node);
|
|
36
|
+
scripts?.forEach((script) => {
|
|
37
|
+
_removeRegisteredScriptInstance(node, script);
|
|
38
|
+
});
|
|
39
|
+
});
|
|
34
40
|
this.container.removeAllFromScene();
|
|
35
41
|
}
|
|
36
42
|
instantiate(options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container.js","sourceRoot":"","sources":["../../../src/loading/container.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAInD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG/C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"container.js","sourceRoot":"","sources":["../../../src/loading/container.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,10 +36,13 @@ export async function loadScene(rootUrl, sceneFilename, scene, scriptsMap, optio
|
|
|
36
36
|
},
|
|
37
37
|
});
|
|
38
38
|
if (!options?.skipAssetsPreload) {
|
|
39
|
-
//
|
|
40
|
-
|
|
41
|
-
//
|
|
42
|
-
|
|
39
|
+
// Loop until all assets are loaded.
|
|
40
|
+
// This is required as some assets can be linked to scripts that are themselves linked to .scene files
|
|
41
|
+
// that are not loaded at the time of the first call to _preloadScriptsAssets.
|
|
42
|
+
let loadedAssetsCount = 0;
|
|
43
|
+
do {
|
|
44
|
+
loadedAssetsCount = await _preloadScriptsAssets(rootUrl, scene, scriptsMap);
|
|
45
|
+
} while (loadedAssetsCount !== 0);
|
|
43
46
|
}
|
|
44
47
|
// Ensure all meshes perform their delay state check
|
|
45
48
|
if (SceneLoaderFlags.ForceFullSceneLoadingForIncremental) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/loading/loader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAE5E,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,6BAA6B,EAAE,qCAAqC,EAAE,MAAM,gBAAgB,CAAC;AAItG,OAAO,EAAE,oCAAoC,EAAE,MAAM,oBAAoB,CAAC;AAE1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AAE3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,6BAA6B,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,mCAAmC,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAkE3D,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,OAAY,EAAE,aAAqB,EAAE,KAAY,EAAE,UAAqB,EAAE,OAA4B;IACrI,KAAK,CAAC,cAAc,GAAG,OAAO,EAAE,OAAO,IAAI,MAAM,CAAC;IAElD,KAAK,CAAC,sBAAsB,GAAG,OAAO,EAAE,eAAe,IAAI,KAAK,CAAC,cAAc,CAAC;IAChF,KAAK,CAAC,qBAAqB,GAAG,OAAO,EAAE,cAAc,IAAI,KAAK,CAAC,cAAc,CAAC;IAE9E,mBAAmB,EAAE,CAAC;IACtB,qBAAqB,EAAE,CAAC;IACxB,6BAA6B,EAAE,CAAC;IAEhC,gCAAgC,EAAE,CAAC;IAEnC,uBAAuB,EAAE,CAAC;IAC1B,2BAA2B,EAAE,CAAC;IAE9B,mCAAmC,EAAE,CAAC;IAEtC,MAAM,gBAAgB,CAAC,GAAG,OAAO,GAAG,aAAa,EAAE,EAAE,KAAK,EAAE;QAC3D,eAAe,EAAE,UAAU;QAC3B,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE;YACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;YAC9D,OAAO,EAAE,UAAU,EAAE,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;KACD,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,EAAE,iBAAiB,EAAE,CAAC;QACjC,
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/loading/loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,24 +28,38 @@ export function registerScriptAssetParser(extension, parser) {
|
|
|
28
28
|
*/
|
|
29
29
|
export async function _preloadScriptsAssets(rootUrl, scene, scriptsMap) {
|
|
30
30
|
const nodes = [scene, ...scene.transformNodes, ...scene.meshes, ...scene.lights, ...scene.cameras];
|
|
31
|
-
const
|
|
31
|
+
const scriptNodes = nodes
|
|
32
32
|
.filter((node) => node.metadata?.scripts?.length)
|
|
33
33
|
.map((node) => node.metadata.scripts)
|
|
34
34
|
.flat();
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
if (!script.values.hasOwnProperty(key)) {
|
|
41
|
-
continue;
|
|
35
|
+
scriptNodes.forEach((script) => {
|
|
36
|
+
const ctor = scriptsMap[script.key]?.default;
|
|
37
|
+
ctor?._SceneAssets?.forEach((asset) => {
|
|
38
|
+
if (!scriptAssetsCache.get(asset.sceneName)) {
|
|
39
|
+
scriptAssetsCache.set(asset.sceneName, null);
|
|
42
40
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
41
|
+
});
|
|
42
|
+
if (script.values) {
|
|
43
|
+
for (const key in script.values) {
|
|
44
|
+
if (!script.values.hasOwnProperty(key)) {
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
const obj = script.values[key];
|
|
48
|
+
if (obj.type === "asset" && obj.value && !scriptAssetsCache.get(obj.value)) {
|
|
49
|
+
scriptAssetsCache.set(obj.value, null);
|
|
50
|
+
}
|
|
46
51
|
}
|
|
47
52
|
}
|
|
48
53
|
});
|
|
54
|
+
let loadedAssetsCount = 0;
|
|
55
|
+
for (const value of scriptAssetsCache.values()) {
|
|
56
|
+
if (value === null) {
|
|
57
|
+
++loadedAssetsCount;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
if (loadedAssetsCount === 0) {
|
|
61
|
+
return loadedAssetsCount;
|
|
62
|
+
}
|
|
49
63
|
const promises = [];
|
|
50
64
|
scriptAssetsCache.forEach((_, key) => {
|
|
51
65
|
if (scriptAssetsCache.get(key)) {
|
|
@@ -77,5 +91,6 @@ export async function _preloadScriptsAssets(rootUrl, scene, scriptsMap) {
|
|
|
77
91
|
}));
|
|
78
92
|
});
|
|
79
93
|
await Promise.all(promises);
|
|
94
|
+
return loadedAssetsCount;
|
|
80
95
|
}
|
|
81
96
|
//# sourceMappingURL=preload.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preload.js","sourceRoot":"","sources":["../../../../src/loading/script/preload.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"preload.js","sourceRoot":"","sources":["../../../../src/loading/script/preload.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,6 +38,10 @@ export interface ISceneDecoratorData {
|
|
|
38
38
|
propertyKey: string | Symbol;
|
|
39
39
|
configuration: VisibleInInspectorDecoratorConfiguration;
|
|
40
40
|
}[];
|
|
41
|
+
_SceneAssets?: {
|
|
42
|
+
sceneName: string;
|
|
43
|
+
propertyKey: string | Symbol;
|
|
44
|
+
}[];
|
|
41
45
|
_PointerEvents?: {
|
|
42
46
|
eventTypes: number[];
|
|
43
47
|
options: IPointerEventDecoratorOptions;
|
|
@@ -23,3 +23,12 @@ export declare function nodeFromDescendants(nodeName: string, directDescendantsO
|
|
|
23
23
|
* @param animationGroupName defines the name of the animation group to retrieve in scene.
|
|
24
24
|
*/
|
|
25
25
|
export declare function animationGroupFromScene(animationGroupName: string): (target: any, propertyKey: string | Symbol) => void;
|
|
26
|
+
/**
|
|
27
|
+
* Makes the decorated property linked to a scene that has the given name.
|
|
28
|
+
* Once the script is instantiated, the reference to the scene is retrieved as a
|
|
29
|
+
* `AdvancedAssetContainer` and assigned to the property. Scene link cant' be used in constructor.
|
|
30
|
+
* This can be used only by scripts using Classes.
|
|
31
|
+
* @param sceneName defines the name of the scene to retrieve.
|
|
32
|
+
* @example \@sceneAsset("blaster.babylon") public myBlasterScene: AdvancedAssetContainer;
|
|
33
|
+
*/
|
|
34
|
+
export declare function sceneAsset(sceneName: string): (target: any, propertyKey: string | Symbol) => void;
|
|
@@ -25,4 +25,4 @@ export declare function registerScriptAssetParser(extension: string, parser: (pa
|
|
|
25
25
|
/**
|
|
26
26
|
* @internal
|
|
27
27
|
*/
|
|
28
|
-
export declare function _preloadScriptsAssets(rootUrl: string, scene: Scene, scriptsMap: ScriptMap): Promise<
|
|
28
|
+
export declare function _preloadScriptsAssets(rootUrl: string, scene: Scene, scriptsMap: ScriptMap): Promise<number>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "babylonjs-editor-tools",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.4.0-alpha.1",
|
|
4
4
|
"description": "Babylon.js Editor Tools is a set of tools to help you create, edit and manage your Babylon.js scenes made using the Babylon.js Editor",
|
|
5
5
|
"productName": "Babylon.js Editor Tools",
|
|
6
6
|
"scripts": {
|