python-cad-tools 0.1.3.dev2__py3-none-any.whl → 0.1.4__py3-none-any.whl
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.
- python_cad_tools/_viewer_static/asset-manifest.json +1 -1
- python_cad_tools/_viewer_static/assets/{animationGroup-CjhCwiIi.js → animationGroup-DsIEQ73q.js} +1 -1
- python_cad_tools/_viewer_static/assets/{bakedVertexAnimation-_xBvgBl7.js → bakedVertexAnimation-CZalW6MY.js} +1 -1
- python_cad_tools/_viewer_static/assets/{basisTextureLoader-D5LtrhD-.js → basisTextureLoader-COAjXVqP.js} +1 -1
- python_cad_tools/_viewer_static/assets/{brdfTextureTools-D9U08KSH.js → brdfTextureTools-BHIclPmG.js} +2 -2
- python_cad_tools/_viewer_static/assets/{bumpFragment-BkzgDMwt.js → bumpFragment-VvIKAANw.js} +1 -1
- python_cad_tools/_viewer_static/assets/{bumpVertex-BXtiaDZI.js → bumpVertex-DLicej86.js} +1 -1
- python_cad_tools/_viewer_static/assets/{bumpVertexDeclaration-CchYDl1F.js → bumpVertexDeclaration-DaRKbtcX.js} +1 -1
- python_cad_tools/_viewer_static/assets/{clipPlaneFragment-pIdOfJ_5.js → clipPlaneFragment-Cllz8e_G.js} +1 -1
- python_cad_tools/_viewer_static/assets/{clipPlaneVertex-Kl_G8tpP.js → clipPlaneVertex-ChqMABPH.js} +1 -1
- python_cad_tools/_viewer_static/assets/{cubemapToSphericalPolynomial-CJ4cRmPh.js → cubemapToSphericalPolynomial-Xk086_Qo.js} +1 -1
- python_cad_tools/_viewer_static/assets/dds-C6ZccGbi.js +1 -0
- python_cad_tools/_viewer_static/assets/{dds.pure-BoNGq59u.js → dds.pure-DQ1rbFUk.js} +1 -1
- python_cad_tools/_viewer_static/assets/{ddsTextureLoader-D8JRisWC.js → ddsTextureLoader-CL_A0T2G.js} +1 -1
- python_cad_tools/_viewer_static/assets/{default.fragment-D0gXI89M.js → default.fragment-hdxpe8Dp.js} +1 -1
- python_cad_tools/_viewer_static/assets/{default.vertex-BdO0XLk6.js → default.vertex-BLL2IEXP.js} +1 -1
- python_cad_tools/_viewer_static/assets/{defaultUboDeclaration-BJ4b62qj.js → defaultUboDeclaration-kpQOJEVS.js} +1 -1
- python_cad_tools/_viewer_static/assets/{dumpTools-B7F8Ed3A.js → dumpTools-CUtvg5MO.js} +2 -2
- python_cad_tools/_viewer_static/assets/{envTextureLoader-BnvTfKgF.js → envTextureLoader-Bha4zu64.js} +1 -1
- python_cad_tools/_viewer_static/assets/{exrTextureLoader-C2D3Wx-p.js → exrTextureLoader-DGetsIyD.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphApplyForceBlock-C08kKLog.js → flowGraphApplyForceBlock-D0SE4mA-.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphApplyImpulseBlock-GzK2l9nm.js → flowGraphApplyImpulseBlock-DTkgPEFB.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphArrayIndexBlock-DkRHIuYC.js → flowGraphArrayIndexBlock-Cjyt2bwB.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphBezierCurveEasingBlock-Csol8jUn.js → flowGraphBezierCurveEasingBlock-DWxYlhxj.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphBinaryOperationBlock-C-xEeg-Z.js → flowGraphBinaryOperationBlock-BeXLKyeD.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphBranchBlock-D7bstQqM.js → flowGraphBranchBlock-BqigJ1AN.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphCachedOperationBlock-C0pDPzaF.js → flowGraphCachedOperationBlock-D2544szv.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphCancelDelayBlock-VwnDZhN9.js → flowGraphCancelDelayBlock-DS-QhXgE.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphCodeExecutionBlock-C5aa0K7t.js → flowGraphCodeExecutionBlock-BY0Vhd0M.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphConditionalDataBlock-B4vfaSDi.js → flowGraphConditionalDataBlock-DoNGzuFZ.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphConsoleLogBlock-CuLlYu4c.js → flowGraphConsoleLogBlock-CL1zETuj.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphConstantBlock-DkyD6_YZ.js → flowGraphConstantBlock-b0L3Bfv_.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphContextBlock-IKUbfY32.js → flowGraphContextBlock-CE3gLEM4.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphCounterBlock-tP_5qAQn.js → flowGraphCounterBlock-Z6deq4Xb.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphDataSwitchBlock-DiTgopj3.js → flowGraphDataSwitchBlock-wfFU7ZMz.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphDebounceBlock-FLUJTpdt.js → flowGraphDebounceBlock-B5U221PZ.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphDebugBlock-C0EH9zPP.js → flowGraphDebugBlock-CpuIkgZU.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphDoNBlock-DiAdBjnD.js → flowGraphDoNBlock-ByWmK6vQ.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphEasingBlock-CXlIILZe.js → flowGraphEasingBlock-CRs4rMj_.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphFlipFlopBlock-5XRf4KeD.js → flowGraphFlipFlopBlock-CK5fJiSy.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphForLoopBlock-RitJ6OS_.js → flowGraphForLoopBlock-H1FPxMZo.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphFunctionReferenceBlock-DvVIlipg.js → flowGraphFunctionReferenceBlock-DrieLYOj.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphGLTFDataProvider-BxBUrprf.js → flowGraphGLTFDataProvider-D7vSBwR1.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphGetAngularVelocityBlock-CqBDBjqf.js → flowGraphGetAngularVelocityBlock-CkYrIYRL.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphGetAssetBlock-Dk4qKn1w.js → flowGraphGetAssetBlock-BOr56oxs.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphGetLinearVelocityBlock-DNN6N9mt.js → flowGraphGetLinearVelocityBlock-4Mn8MDsq.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphGetPhysicsMassPropertiesBlock-CTsHqDvM.js → flowGraphGetPhysicsMassPropertiesBlock-DwufqO-4.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphGetPropertyBlock-CjX3cseU.js → flowGraphGetPropertyBlock-CAeZqGoL.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphGetSoundVolumeBlock-DzWJtlM9.js → flowGraphGetSoundVolumeBlock-DfnjXMG_.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphGetVariableBlock-uBq6vXOw.js → flowGraphGetVariableBlock-Bw2aRjaE.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphIndexOfBlock-MpANR6P1.js → flowGraphIndexOfBlock-DuZkczUp.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphInterpolationBlock-BM2_pZfB.js → flowGraphInterpolationBlock-CQUVrJhI.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphIsKeyPressedBlock-X1Q2SR0H.js → flowGraphIsKeyPressedBlock-CKMqA1DR.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphIsSoundPlayingBlock-C_ir8hba.js → flowGraphIsSoundPlayingBlock-CIAX4gsj.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphJsonPointerParserBlock-I5tJhTaw.js → flowGraphJsonPointerParserBlock-Bt9WkFOM.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphKeyDownEventBlock-DSmmDXBR.js → flowGraphKeyDownEventBlock-BwXDwLBi.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphKeyUpEventBlock-BDViriRD.js → flowGraphKeyUpEventBlock-BH_q1Ope.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphKeyboardEventBlock-B7EQjaZe.js → flowGraphKeyboardEventBlock-CU8VJhCC.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphMathBlocks-RIndR7Kr.js → flowGraphMathBlocks-TXHKXyeY.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphMathCombineExtractBlocks-BEMkyBCM.js → flowGraphMathCombineExtractBlocks-DKuB9Mlq.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphMatrixMathBlocks-BAV1wScN.js → flowGraphMatrixMathBlocks-BGDHmBFG.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphMeshPickEventBlock-CcNT5f0d.js → flowGraphMeshPickEventBlock-DdOr-Hvu.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphMultiGateBlock-DSEbX2Mj.js → flowGraphMultiGateBlock-qMXK-ALx.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphPauseAnimationBlock-Dfthx2s-.js → flowGraphPauseAnimationBlock-hPtKOUnY.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphPauseSoundBlock-DSu8v9Kr.js → flowGraphPauseSoundBlock-BGBSlkM3.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphPhysicsCollisionEventBlock-jvE_54c8.js → flowGraphPhysicsCollisionEventBlock-7YfMt_A1.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphPlayAnimationBlock-DK8Z5heh.js → flowGraphPlayAnimationBlock-C9_H0W1H.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphPlaySoundBlock-XiF7wfi1.js → flowGraphPlaySoundBlock-BhG6uJmA.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphPointerDownEventBlock-BOqQHgdZ.js → flowGraphPointerDownEventBlock-GBPgkHfj.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphPointerMoveEventBlock-DggBfxkF.js → flowGraphPointerMoveEventBlock-B9xb5ipq.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphPointerOutEventBlock-DvZyyUF4.js → flowGraphPointerOutEventBlock-DZE1Ulng.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphPointerOverEventBlock-YLki8WEB.js → flowGraphPointerOverEventBlock-Bx_Bbmlm.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphPointerUpEventBlock-D1tqJ9jF.js → flowGraphPointerUpEventBlock-Lfu7DTHO.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphReceiveCustomEventBlock-D3VAKTpt.js → flowGraphReceiveCustomEventBlock-CNMufa4Q.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSceneReadyEventBlock-Dt8AsNSg.js → flowGraphSceneReadyEventBlock-BInxhpxK.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSceneTickEventBlock-BtuZ_Spn.js → flowGraphSceneTickEventBlock-DTDZyoc3.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSendCustomEventBlock-B8Dzycmf.js → flowGraphSendCustomEventBlock-BOGgKOnP.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSequenceBlock-CQsb2okn.js → flowGraphSequenceBlock-D-FGr9Zw.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSetAngularVelocityBlock-C3zOq5X7.js → flowGraphSetAngularVelocityBlock-CH6VePBl.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSetDelayBlock-DxyUb-8k.js → flowGraphSetDelayBlock-n6qAMb7Q.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSetLinearVelocityBlock-DeNTJQ42.js → flowGraphSetLinearVelocityBlock-DcqJhGqB.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSetPhysicsMotionTypeBlock-i233RoWe.js → flowGraphSetPhysicsMotionTypeBlock-DRWqANvn.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSetPropertyBlock-Darrnz2o.js → flowGraphSetPropertyBlock-D_IoFmjW.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSetSoundVolumeBlock-KrTTGHr6.js → flowGraphSetSoundVolumeBlock-Cu0qdSne.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSetVariableBlock-8CdS1h8e.js → flowGraphSetVariableBlock-ob3vWA--.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSoundEndedEventBlock-Cuk8JjDG.js → flowGraphSoundEndedEventBlock-C2d303hL.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphStopAnimationBlock-DOsG4sc5.js → flowGraphStopAnimationBlock-BqCklpFH.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphStopSoundBlock-C5IaCPpa.js → flowGraphStopSoundBlock-bk8E55Bx.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphSwitchBlock-ClqiypjM.js → flowGraphSwitchBlock-DvwhuZhG.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphThrottleBlock-C7hhfNo2.js → flowGraphThrottleBlock-DG8TRsJy.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphTransformCoordinatesSystemBlock-BksU6sPJ.js → flowGraphTransformCoordinatesSystemBlock-CH4muGsP.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphTypeToTypeBlocks-DJi_CBW-.js → flowGraphTypeToTypeBlocks-C7hV0GKG.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphUnaryOperationBlock-U15mYQbJ.js → flowGraphUnaryOperationBlock-DiLGLHtc.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphVectorMathBlocks-D4QAvgsk.js → flowGraphVectorMathBlocks-USb1v61c.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphWaitAllBlock-UV6LDk1r.js → flowGraphWaitAllBlock-D5X16kvu.js} +1 -1
- python_cad_tools/_viewer_static/assets/{flowGraphWhileLoopBlock-DPpNHwZP.js → flowGraphWhileLoopBlock-Be9fTLoy.js} +1 -1
- python_cad_tools/_viewer_static/assets/{fogFragment-pKchdx3M.js → fogFragment-BzLCRCIz.js} +1 -1
- python_cad_tools/_viewer_static/assets/{gaussianSplatting-oRLzV71m.js → gaussianSplatting-CAfPyqPa.js} +1 -1
- python_cad_tools/_viewer_static/assets/{gaussianSplatting-DgjcxjKa.js → gaussianSplatting-DPftVbu_.js} +1 -1
- python_cad_tools/_viewer_static/assets/{gaussianSplatting.fragment-BKYuCXf7.js → gaussianSplatting.fragment--eSkFo4e.js} +1 -1
- python_cad_tools/_viewer_static/assets/{gaussianSplatting.fragment-NCxeyHg7.js → gaussianSplatting.fragment-bBe4NB4J.js} +1 -1
- python_cad_tools/_viewer_static/assets/{gaussianSplatting.vertex-CW0PXB4s.js → gaussianSplatting.vertex-56pdhT0C.js} +1 -1
- python_cad_tools/_viewer_static/assets/{gaussianSplatting.vertex-zmXoP8p9.js → gaussianSplatting.vertex-B1n9hp15.js} +1 -1
- python_cad_tools/_viewer_static/assets/{gaussianSplattingVoxel.fragment-CgX-XH5m.js → gaussianSplattingVoxel.fragment-BZapF5sB.js} +1 -1
- python_cad_tools/_viewer_static/assets/{gaussianSplattingVoxel.fragment--IDQcS1p.js → gaussianSplattingVoxel.fragment-CX6nBRSU.js} +1 -1
- python_cad_tools/_viewer_static/assets/{gaussianSplattingVoxel.vertex-DzuuyEGB.js → gaussianSplattingVoxel.vertex-COp6zd-l.js} +1 -1
- python_cad_tools/_viewer_static/assets/{gaussianSplattingVoxel.vertex-YB1C1Muy.js → gaussianSplattingVoxel.vertex-aXKOzvn3.js} +1 -1
- python_cad_tools/_viewer_static/assets/{geometry.fragment-EEbMy57o.js → geometry.fragment-BEdt-FQu.js} +1 -1
- python_cad_tools/_viewer_static/assets/{geometry.fragment-DuBDWlLB.js → geometry.fragment-Dr1pGbVQ.js} +1 -1
- python_cad_tools/_viewer_static/assets/{geometry.vertex-3cVZEKxJ.js → geometry.vertex--elQa6vQ.js} +1 -1
- python_cad_tools/_viewer_static/assets/{geometry.vertex-B--XA-QK.js → geometry.vertex-C4cLov7Q.js} +1 -1
- python_cad_tools/_viewer_static/assets/{glowBlurPostProcess.fragment-UNz8njEJ.js → glowBlurPostProcess.fragment-C_S_GG9X.js} +1 -1
- python_cad_tools/_viewer_static/assets/{glowMapGeneration.fragment-CsSqgq6c.js → glowMapGeneration.fragment-B9tAmR9r.js} +1 -1
- python_cad_tools/_viewer_static/assets/{glowMapGeneration.vertex-DOMHadFA.js → glowMapGeneration.vertex-CEIj_3tv.js} +1 -1
- python_cad_tools/_viewer_static/assets/{glowMapMerge.fragment-DXi2v5pz.js → glowMapMerge.fragment-C0kWfvu0.js} +1 -1
- python_cad_tools/_viewer_static/assets/{glowMapMerge.vertex-DgBSWFHP.js → glowMapMerge.vertex-DPy1k2mD.js} +1 -1
- python_cad_tools/_viewer_static/assets/{harmonicsFunctions-BkifmnNV.js → harmonicsFunctions-BVmgiiRj.js} +1 -1
- python_cad_tools/_viewer_static/assets/{helperFunctions-Bx8RYYvi.js → helperFunctions-DeCJcXoK.js} +1 -1
- python_cad_tools/_viewer_static/assets/{iesTextureLoader-Dj5K0vc1.js → iesTextureLoader-CLEy0Gjc.js} +1 -1
- python_cad_tools/_viewer_static/assets/{index-JRwY7p9T.js → index-YcXsPtFI.js} +21 -19
- python_cad_tools/_viewer_static/assets/{kernelBlur.fragment-BRdwtDs7.js → kernelBlur.fragment-DhmP78e4.js} +1 -1
- python_cad_tools/_viewer_static/assets/{kernelBlur.fragment-B9YDiI_M.js → kernelBlur.fragment-DzyofO4j.js} +1 -1
- python_cad_tools/_viewer_static/assets/{kernelBlur.vertex-CWlIunB6.js → kernelBlur.vertex-1S6DR99z.js} +1 -1
- python_cad_tools/_viewer_static/assets/{kernelBlur.vertex-A7OpqdrG.js → kernelBlur.vertex-BUw8hyu8.js} +1 -1
- python_cad_tools/_viewer_static/assets/{kernelBlurVaryingDeclaration-PE5ICZNw.js → kernelBlurVaryingDeclaration-DPnSKXPz.js} +1 -1
- python_cad_tools/_viewer_static/assets/{kernelBlurVaryingDeclaration-YMenN7Se.js → kernelBlurVaryingDeclaration-GWJW2YR3.js} +1 -1
- python_cad_tools/_viewer_static/assets/{ktxTextureLoader-uG9TUdGM.js → ktxTextureLoader-Bz9RqBRq.js} +1 -1
- python_cad_tools/_viewer_static/assets/{lightFragment-CDLhoaId.js → lightFragment-BRkIPUO1.js} +1 -1
- python_cad_tools/_viewer_static/assets/{logDepthDeclaration-BOlhc3aa.js → logDepthDeclaration-DHeJwlJR.js} +1 -1
- python_cad_tools/_viewer_static/assets/{logDepthVertex-BIA9Xrid.js → logDepthVertex-Dt5zdVFA.js} +1 -1
- python_cad_tools/_viewer_static/assets/{mainUVVaryingDeclaration-PmIDYGIz.js → mainUVVaryingDeclaration-CoUbOUEQ.js} +1 -1
- python_cad_tools/_viewer_static/assets/{meshUboDeclaration-BfPhZsyr.js → meshUboDeclaration-dDsFbRSv.js} +1 -1
- python_cad_tools/_viewer_static/assets/{oitFragment-DpKfMtsk.js → oitFragment-C1JYx8fS.js} +1 -1
- python_cad_tools/_viewer_static/assets/{openpbr.fragment-BAOdoy3Z.js → openpbr.fragment-BJTs78x9.js} +1 -1
- python_cad_tools/_viewer_static/assets/{openpbr.fragment-BmgNfxS4.js → openpbr.fragment-CnBW8BK7.js} +1 -1
- python_cad_tools/_viewer_static/assets/{openpbr.vertex-BpB-7aXl.js → openpbr.vertex-Cis9aL4z.js} +1 -1
- python_cad_tools/_viewer_static/assets/{openpbr.vertex-D-IjPutK.js → openpbr.vertex-Qr3-JJak.js} +1 -1
- python_cad_tools/_viewer_static/assets/{openpbrMaterial.pure-C6V2SeQx.js → openpbrMaterial.pure-CyogTmBA.js} +3 -3
- python_cad_tools/_viewer_static/assets/{openpbrMaterialLoadingAdapter-CbcwuEwB.js → openpbrMaterialLoadingAdapter-Ia3_0Gp8.js} +2 -2
- python_cad_tools/_viewer_static/assets/{openpbrTransmissionLayerData-BClMu_zp.js → openpbrTransmissionLayerData-D2UaStdu.js} +1 -1
- python_cad_tools/_viewer_static/assets/{openpbrTransmissionLayerData-1U_DHNWK.js → openpbrTransmissionLayerData-Yc4m_LFv.js} +1 -1
- python_cad_tools/_viewer_static/assets/{openpbrUboDeclaration-piwBvKOi.js → openpbrUboDeclaration-DfY3S0VX.js} +1 -1
- python_cad_tools/_viewer_static/assets/{openpbrUboDeclaration-DLujw3YH.js → openpbrUboDeclaration-YAeSpo2n.js} +1 -1
- python_cad_tools/_viewer_static/assets/{packingFunctions-BD5WZtBT.js → packingFunctions-BWIusbYB.js} +1 -1
- python_cad_tools/_viewer_static/assets/{packingFunctions-D3gaUkUa.js → packingFunctions-yE7XM0N6.js} +1 -1
- python_cad_tools/_viewer_static/assets/{pass.fragment-CzZpaqYk.js → pass.fragment-DsLu0lV1.js} +1 -1
- python_cad_tools/_viewer_static/assets/{passCube.fragment-DwRJ1H1s.js → passCube.fragment-CmSU0-bM.js} +1 -1
- python_cad_tools/_viewer_static/assets/{passCube.fragment-Bso78Amo.js → passCube.fragment-CwkS-Cl_.js} +1 -1
- python_cad_tools/_viewer_static/assets/{pbr.fragment-sZ-foSaO.js → pbr.fragment-BUBggeRz.js} +1 -1
- python_cad_tools/_viewer_static/assets/{pbr.vertex-PBjkpyNN.js → pbr.vertex-BXB7uMkC.js} +1 -1
- python_cad_tools/_viewer_static/assets/{pbrBRDFFunctions-Dv8-Akv1.js → pbrBRDFFunctions-C50h7JEU.js} +1 -1
- python_cad_tools/_viewer_static/assets/{pbrDebug-5RaK38tC.js → pbrDebug-RHma8ghT.js} +1 -1
- python_cad_tools/_viewer_static/assets/{pbrIBLFunctions-D_X-tzpO.js → pbrIBLFunctions-D5A_AxnZ.js} +1 -1
- python_cad_tools/_viewer_static/assets/{pbrMaterial.pure-RJ6tVczH.js → pbrMaterial.pure-DN58n3w5.js} +2 -2
- python_cad_tools/_viewer_static/assets/{pbrMaterialLoadingAdapter-BqlfZ1xs.js → pbrMaterialLoadingAdapter-COioUqvP.js} +1 -1
- python_cad_tools/_viewer_static/assets/{pbrUboDeclaration-BqNgF1qB.js → pbrUboDeclaration-CMkwjzTB.js} +1 -1
- python_cad_tools/_viewer_static/assets/{postprocess.vertex-9J4kRI6V.js → postprocess.vertex-DYv0bAut.js} +1 -1
- python_cad_tools/_viewer_static/assets/{procedural.vertex-Bq_A-zE0.js → procedural.vertex-BMAV1XYH.js} +1 -1
- python_cad_tools/_viewer_static/assets/{procedural.vertex-DzkBufoo.js → procedural.vertex-CRCZXfiw.js} +1 -1
- python_cad_tools/_viewer_static/assets/{reflectionFunction-n0dvho3A.js → reflectionFunction-CpMEFzxv.js} +1 -1
- python_cad_tools/_viewer_static/assets/{rgbdDecode.fragment-0BuGamw5.js → rgbdDecode.fragment-BZcVE2Bb.js} +1 -1
- python_cad_tools/_viewer_static/assets/{rgbdEncode.fragment-BBGe9kwu.js → rgbdEncode.fragment-BImEwGmR.js} +1 -1
- python_cad_tools/_viewer_static/assets/{rgbdEncode.fragment-DiiD2NE-.js → rgbdEncode.fragment-DPFzMtDN.js} +1 -1
- python_cad_tools/_viewer_static/assets/{sceneUboDeclaration-BmpwedcW.js → sceneUboDeclaration-1bB3YoON.js} +1 -1
- python_cad_tools/_viewer_static/assets/{textureProcessor.fragment-CyBHPXX2.js → textureProcessor.fragment--dZBsr4X.js} +1 -1
- python_cad_tools/_viewer_static/assets/{textureProcessor.fragment-CwNRejEe.js → textureProcessor.fragment-BlZ9kg3B.js} +1 -1
- python_cad_tools/_viewer_static/assets/{tgaTextureLoader-ClB6SRY9.js → tgaTextureLoader-DeroIE2j.js} +1 -1
- python_cad_tools/_viewer_static/assets/{vertexColorMixing-f4wQRwGI.js → vertexColorMixing-C6OHmVcI.js} +1 -1
- python_cad_tools/_viewer_static/index.html +1 -1
- python_cad_tools/build-info.json +1 -1
- {python_cad_tools-0.1.3.dev2.dist-info → python_cad_tools-0.1.4.dist-info}/METADATA +1 -1
- python_cad_tools-0.1.4.dist-info/RECORD +237 -0
- python_cad_tools/_viewer_static/assets/dds-YsWo1VVF.js +0 -1
- python_cad_tools-0.1.3.dev2.dist-info/RECORD +0 -239
- python_cad_tools-0.1.3.dev2.dist-info/scm_file_list.json +0 -304
- python_cad_tools-0.1.3.dev2.dist-info/scm_version.json +0 -8
- {python_cad_tools-0.1.3.dev2.dist-info → python_cad_tools-0.1.4.dist-info}/WHEEL +0 -0
- {python_cad_tools-0.1.3.dev2.dist-info → python_cad_tools-0.1.4.dist-info}/entry_points.txt +0 -0
- {python_cad_tools-0.1.3.dev2.dist-info → python_cad_tools-0.1.4.dist-info}/licenses/LICENSE +0 -0
- {python_cad_tools-0.1.3.dev2.dist-info → python_cad_tools-0.1.4.dist-info}/top_level.txt +0 -0
python_cad_tools/_viewer_static/assets/{pbrMaterial.pure-RJ6tVczH.js → pbrMaterial.pure-DN58n3w5.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./pbr.vertex-
|
|
2
|
-
import{bz as h,bA as _,aO as s,cf as we,aU as u,cc as Be,aV as m,ce as T,c as se,bq as x,c2 as j,bJ as Q,cg as X,ch as xe,a9 as Na,aR as Ue,ci as va,a0 as Bt,a7 as Da,bB as Pa,cj as ka,bC as Ma,L as Ua,bE as Ba,bP as za,bQ as Ha,bR as Ga,bS as Wa,bT as wa,bU as Va,bV as Ya,bG as Ht,bW as Xa,bX as Ka,bY as Gt,bZ as ja,ay as zt,b_ as Qa,b$ as Za,c0 as Ja,c1 as $a,br as qa,c3 as er,c4 as tr,c5 as sr,bF as ir,bH as ar,bI as rr,bK as lr,ck as Nt,bL as nr,bw as ur,bM as cr,b8 as or,bN as hr,bx as _r,bO as Tr,aT as vt,c6 as fr,c8 as mr,c9 as Er,ca as xr,cb as Rr,cl as Ar,bD as ya,c7 as dr,i as Sr}from"./index-JRwY7p9T.js";import{b as Fa}from"./brdfTextureTools-D9U08KSH.js";class pr extends Be{constructor(){super(...arguments),this.BRDF_V_HEIGHT_CORRELATED=!1,this.MS_BRDF_ENERGY_CONSERVATION=!1,this.SPHERICAL_HARMONICS=!1,this.SPECULAR_GLOSSINESS_ENERGY_CONSERVATION=!1,this.MIX_IBL_RADIANCE_WITH_IRRADIANCE=!0,this.LEGACY_SPECULAR_ENERGY_CONSERVATION=!1,this.BASE_DIFFUSE_MODEL=0,this.DIELECTRIC_SPECULAR_MODEL=0,this.CONDUCTOR_SPECULAR_MODEL=0}}let gr=(()=>{var i,v,k,U,G,W,H,l,d,a;let I=we,g,F=[],M=[],P,B=[],p=[],b,y=[],R=[],N,f=[],L=[],V,q=[],te=[],Y,o=[],D=[],J,ae=[],re=[],le,ne=[],ue=[],ce,K=[],c=[];return i=class extends I{get useEnergyConservation(){return h(this,v,"f")}set useEnergyConservation(E){_(this,v,E,"f")}get useSmithVisibilityHeightCorrelated(){return h(this,k,"f")}set useSmithVisibilityHeightCorrelated(E){_(this,k,E,"f")}get useSphericalHarmonics(){return h(this,U,"f")}set useSphericalHarmonics(E){_(this,U,E,"f")}get useSpecularGlossinessInputEnergyConservation(){return h(this,G,"f")}set useSpecularGlossinessInputEnergyConservation(E){_(this,G,E,"f")}get mixIblRadianceWithIrradiance(){return h(this,W,"f")}set mixIblRadianceWithIrradiance(E){_(this,W,E,"f")}get useLegacySpecularEnergyConservation(){return h(this,H,"f")}set useLegacySpecularEnergyConservation(E){_(this,H,E,"f")}get baseDiffuseModel(){return h(this,l,"f")}set baseDiffuseModel(E){_(this,l,E,"f")}get dielectricSpecularModel(){return h(this,d,"f")}set dielectricSpecularModel(E){_(this,d,E,"f")}get conductorSpecularModel(){return h(this,a,"f")}set conductorSpecularModel(E){_(this,a,E,"f")}_markAllSubMeshesAsMiscDirty(){this._internalMarkAllSubMeshesAsMiscDirty()}isCompatible(){return!0}constructor(E,w=!0){super(E,"PBRBRDF",90,new pr,w),this._useEnergyConservation=i.DEFAULT_USE_ENERGY_CONSERVATION,v.set(this,s(this,F,i.DEFAULT_USE_ENERGY_CONSERVATION)),this._useSmithVisibilityHeightCorrelated=(s(this,M),i.DEFAULT_USE_SMITH_VISIBILITY_HEIGHT_CORRELATED),k.set(this,s(this,B,i.DEFAULT_USE_SMITH_VISIBILITY_HEIGHT_CORRELATED)),this._useSphericalHarmonics=(s(this,p),i.DEFAULT_USE_SPHERICAL_HARMONICS),U.set(this,s(this,y,i.DEFAULT_USE_SPHERICAL_HARMONICS)),this._useSpecularGlossinessInputEnergyConservation=(s(this,R),i.DEFAULT_USE_SPECULAR_GLOSSINESS_INPUT_ENERGY_CONSERVATION),G.set(this,s(this,f,i.DEFAULT_USE_SPECULAR_GLOSSINESS_INPUT_ENERGY_CONSERVATION)),this._mixIblRadianceWithIrradiance=(s(this,L),i.DEFAULT_MIX_IBL_RADIANCE_WITH_IRRADIANCE),W.set(this,s(this,q,i.DEFAULT_MIX_IBL_RADIANCE_WITH_IRRADIANCE)),this._useLegacySpecularEnergyConservation=(s(this,te),i.DEFAULT_USE_LEGACY_SPECULAR_ENERGY_CONSERVATION),H.set(this,s(this,o,i.DEFAULT_USE_LEGACY_SPECULAR_ENERGY_CONSERVATION)),this._baseDiffuseModel=(s(this,D),i.DEFAULT_DIFFUSE_MODEL),l.set(this,s(this,ae,i.DEFAULT_DIFFUSE_MODEL)),this._dielectricSpecularModel=(s(this,re),i.DEFAULT_DIELECTRIC_SPECULAR_MODEL),d.set(this,s(this,ne,i.DEFAULT_DIELECTRIC_SPECULAR_MODEL)),this._conductorSpecularModel=(s(this,ue),i.DEFAULT_CONDUCTOR_SPECULAR_MODEL),a.set(this,s(this,K,i.DEFAULT_CONDUCTOR_SPECULAR_MODEL)),this._internalMarkAllSubMeshesAsMiscDirty=s(this,c),this._internalMarkAllSubMeshesAsMiscDirty=E._dirtyCallbacks[16],this._enable(!0)}prepareDefines(E){E.BRDF_V_HEIGHT_CORRELATED=this._useSmithVisibilityHeightCorrelated,E.MS_BRDF_ENERGY_CONSERVATION=this._useEnergyConservation&&this._useSmithVisibilityHeightCorrelated,E.SPHERICAL_HARMONICS=this._useSphericalHarmonics,E.SPECULAR_GLOSSINESS_ENERGY_CONSERVATION=this._useSpecularGlossinessInputEnergyConservation,E.MIX_IBL_RADIANCE_WITH_IRRADIANCE=this._mixIblRadianceWithIrradiance&&!this._material._disableLighting,E.LEGACY_SPECULAR_ENERGY_CONSERVATION=this._useLegacySpecularEnergyConservation,E.BASE_DIFFUSE_MODEL=this._baseDiffuseModel,E.DIELECTRIC_SPECULAR_MODEL=this._dielectricSpecularModel,E.CONDUCTOR_SPECULAR_MODEL=this._conductorSpecularModel}getClassName(){return"PBRBRDFConfiguration"}},v=new WeakMap,k=new WeakMap,U=new WeakMap,G=new WeakMap,W=new WeakMap,H=new WeakMap,l=new WeakMap,d=new WeakMap,a=new WeakMap,(()=>{const C=typeof Symbol=="function"&&Symbol.metadata?Object.create(I[Symbol.metadata]??null):void 0;g=[m(),T("_markAllSubMeshesAsMiscDirty")],P=[m(),T("_markAllSubMeshesAsMiscDirty")],b=[m(),T("_markAllSubMeshesAsMiscDirty")],N=[m(),T("_markAllSubMeshesAsMiscDirty")],V=[m(),T("_markAllSubMeshesAsMiscDirty")],Y=[m(),T("_markAllSubMeshesAsMiscDirty")],J=[m("baseDiffuseModel"),T("_markAllSubMeshesAsMiscDirty")],le=[m("dielectricSpecularModel"),T("_markAllSubMeshesAsMiscDirty")],ce=[m("conductorSpecularModel"),T("_markAllSubMeshesAsMiscDirty")],u(i,null,g,{kind:"accessor",name:"useEnergyConservation",static:!1,private:!1,access:{has:E=>"useEnergyConservation"in E,get:E=>E.useEnergyConservation,set:(E,w)=>{E.useEnergyConservation=w}},metadata:C},F,M),u(i,null,P,{kind:"accessor",name:"useSmithVisibilityHeightCorrelated",static:!1,private:!1,access:{has:E=>"useSmithVisibilityHeightCorrelated"in E,get:E=>E.useSmithVisibilityHeightCorrelated,set:(E,w)=>{E.useSmithVisibilityHeightCorrelated=w}},metadata:C},B,p),u(i,null,b,{kind:"accessor",name:"useSphericalHarmonics",static:!1,private:!1,access:{has:E=>"useSphericalHarmonics"in E,get:E=>E.useSphericalHarmonics,set:(E,w)=>{E.useSphericalHarmonics=w}},metadata:C},y,R),u(i,null,N,{kind:"accessor",name:"useSpecularGlossinessInputEnergyConservation",static:!1,private:!1,access:{has:E=>"useSpecularGlossinessInputEnergyConservation"in E,get:E=>E.useSpecularGlossinessInputEnergyConservation,set:(E,w)=>{E.useSpecularGlossinessInputEnergyConservation=w}},metadata:C},f,L),u(i,null,V,{kind:"accessor",name:"mixIblRadianceWithIrradiance",static:!1,private:!1,access:{has:E=>"mixIblRadianceWithIrradiance"in E,get:E=>E.mixIblRadianceWithIrradiance,set:(E,w)=>{E.mixIblRadianceWithIrradiance=w}},metadata:C},q,te),u(i,null,Y,{kind:"accessor",name:"useLegacySpecularEnergyConservation",static:!1,private:!1,access:{has:E=>"useLegacySpecularEnergyConservation"in E,get:E=>E.useLegacySpecularEnergyConservation,set:(E,w)=>{E.useLegacySpecularEnergyConservation=w}},metadata:C},o,D),u(i,null,J,{kind:"accessor",name:"baseDiffuseModel",static:!1,private:!1,access:{has:E=>"baseDiffuseModel"in E,get:E=>E.baseDiffuseModel,set:(E,w)=>{E.baseDiffuseModel=w}},metadata:C},ae,re),u(i,null,le,{kind:"accessor",name:"dielectricSpecularModel",static:!1,private:!1,access:{has:E=>"dielectricSpecularModel"in E,get:E=>E.dielectricSpecularModel,set:(E,w)=>{E.dielectricSpecularModel=w}},metadata:C},ne,ue),u(i,null,ce,{kind:"accessor",name:"conductorSpecularModel",static:!1,private:!1,access:{has:E=>"conductorSpecularModel"in E,get:E=>E.conductorSpecularModel,set:(E,w)=>{E.conductorSpecularModel=w}},metadata:C},K,c),C&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:C})})(),i.DEFAULT_USE_ENERGY_CONSERVATION=!0,i.DEFAULT_USE_SMITH_VISIBILITY_HEIGHT_CORRELATED=!0,i.DEFAULT_USE_SPHERICAL_HARMONICS=!0,i.DEFAULT_USE_SPECULAR_GLOSSINESS_INPUT_ENERGY_CONSERVATION=!0,i.DEFAULT_MIX_IBL_RADIANCE_WITH_IRRADIANCE=!0,i.DEFAULT_USE_LEGACY_SPECULAR_ENERGY_CONSERVATION=!0,i.DEFAULT_DIFFUSE_MODEL=0,i.DEFAULT_DIELECTRIC_SPECULAR_MODEL=0,i.DEFAULT_CONDUCTOR_SPECULAR_MODEL=0,i})();class Ir extends Be{constructor(){super(...arguments),this.CLEARCOAT=!1,this.CLEARCOAT_DEFAULTIOR=!1,this.CLEARCOAT_TEXTURE=!1,this.CLEARCOAT_TEXTURE_ROUGHNESS=!1,this.CLEARCOAT_TEXTUREDIRECTUV=0,this.CLEARCOAT_TEXTURE_ROUGHNESSDIRECTUV=0,this.CLEARCOAT_BUMP=!1,this.CLEARCOAT_BUMPDIRECTUV=0,this.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE=!1,this.CLEARCOAT_REMAP_F0=!1,this.CLEARCOAT_TINT=!1,this.CLEARCOAT_TINT_TEXTURE=!1,this.CLEARCOAT_TINT_TEXTUREDIRECTUV=0,this.CLEARCOAT_TINT_GAMMATEXTURE=!1}}let br=(()=>{var i,v,k,U,G,W,H,l,d,a;let I=we,g,F=[],M=[],P,B=[],p=[],b,y=[],R=[],N,f=[],L=[],V,q=[],te=[],Y,o=[],D=[],J,ae=[],re=[],le,ne=[],ue=[],ce,K=[],c=[],C,E=[],w=[],_e,me=[],Re=[],Ae,de=[],Se=[],pe,ge=[],Ie=[],be,Ce=[],Me=[];return i=class extends I{get isEnabled(){return h(this,v,"f")}set isEnabled(r){_(this,v,r,"f")}get indexOfRefraction(){return h(this,k,"f")}set indexOfRefraction(r){_(this,k,r,"f")}get texture(){return h(this,U,"f")}set texture(r){_(this,U,r,"f")}get useRoughnessFromMainTexture(){return h(this,G,"f")}set useRoughnessFromMainTexture(r){_(this,G,r,"f")}get textureRoughness(){return h(this,W,"f")}set textureRoughness(r){_(this,W,r,"f")}get remapF0OnInterfaceChange(){return h(this,H,"f")}set remapF0OnInterfaceChange(r){_(this,H,r,"f")}get bumpTexture(){return h(this,l,"f")}set bumpTexture(r){_(this,l,r,"f")}get isTintEnabled(){return h(this,d,"f")}set isTintEnabled(r){_(this,d,r,"f")}get tintTexture(){return h(this,a,"f")}set tintTexture(r){_(this,a,r,"f")}_markAllSubMeshesAsTexturesDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}isCompatible(){return!0}constructor(r,O=!0){super(r,"PBRClearCoat",100,new Ir,O),this._isEnabled=!1,v.set(this,s(this,F,!1)),this.intensity=(s(this,M),s(this,B,1)),this.roughness=(s(this,p),s(this,y,0)),this._indexOfRefraction=(s(this,R),i._DefaultIndexOfRefraction),k.set(this,s(this,f,i._DefaultIndexOfRefraction)),this._texture=(s(this,L),null),U.set(this,s(this,q,null)),this._useRoughnessFromMainTexture=(s(this,te),!0),G.set(this,s(this,o,!0)),this._textureRoughness=(s(this,D),null),W.set(this,s(this,ae,null)),this._remapF0OnInterfaceChange=(s(this,re),!0),H.set(this,s(this,ne,!0)),this._bumpTexture=(s(this,ue),null),l.set(this,s(this,K,null)),this._isTintEnabled=(s(this,c),!1),d.set(this,s(this,E,!1)),this.tintColor=(s(this,w),s(this,me,se.White())),this.tintColorAtDistance=(s(this,Re),s(this,de,1)),this.tintThickness=(s(this,Se),s(this,ge,1)),this._tintTexture=(s(this,Ie),null),a.set(this,s(this,Ce,null)),this._internalMarkAllSubMeshesAsTexturesDirty=s(this,Me),this._internalMarkAllSubMeshesAsTexturesDirty=r._dirtyCallbacks[1]}isReadyForSubMesh(r,O,ie){if(!this._isEnabled)return!0;const Ee=this._material._disableBumpMap;return!(r._areTexturesDirty&&O.texturesEnabled&&(this._texture&&x.ClearCoatTextureEnabled&&!this._texture.isReadyOrNotBlocking()||this._textureRoughness&&x.ClearCoatTextureEnabled&&!this._textureRoughness.isReadyOrNotBlocking()||ie.getCaps().standardDerivatives&&this._bumpTexture&&x.ClearCoatBumpTextureEnabled&&!Ee&&!this._bumpTexture.isReady()||this._isTintEnabled&&this._tintTexture&&x.ClearCoatTintTextureEnabled&&!this._tintTexture.isReadyOrNotBlocking()))}prepareDefinesBeforeAttributes(r,O){this._isEnabled?(r.CLEARCOAT=!0,r.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE=this._useRoughnessFromMainTexture,r.CLEARCOAT_REMAP_F0=this._remapF0OnInterfaceChange,r._areTexturesDirty&&O.texturesEnabled&&(this._texture&&x.ClearCoatTextureEnabled?j(this._texture,r,"CLEARCOAT_TEXTURE"):r.CLEARCOAT_TEXTURE=!1,this._textureRoughness&&x.ClearCoatTextureEnabled?j(this._textureRoughness,r,"CLEARCOAT_TEXTURE_ROUGHNESS"):r.CLEARCOAT_TEXTURE_ROUGHNESS=!1,this._bumpTexture&&x.ClearCoatBumpTextureEnabled?j(this._bumpTexture,r,"CLEARCOAT_BUMP"):r.CLEARCOAT_BUMP=!1,r.CLEARCOAT_DEFAULTIOR=this._indexOfRefraction===i._DefaultIndexOfRefraction,this._isTintEnabled?(r.CLEARCOAT_TINT=!0,this._tintTexture&&x.ClearCoatTintTextureEnabled?(j(this._tintTexture,r,"CLEARCOAT_TINT_TEXTURE"),r.CLEARCOAT_TINT_GAMMATEXTURE=this._tintTexture.gammaSpace):r.CLEARCOAT_TINT_TEXTURE=!1):(r.CLEARCOAT_TINT=!1,r.CLEARCOAT_TINT_TEXTURE=!1))):(r.CLEARCOAT=!1,r.CLEARCOAT_TEXTURE=!1,r.CLEARCOAT_TEXTURE_ROUGHNESS=!1,r.CLEARCOAT_BUMP=!1,r.CLEARCOAT_TINT=!1,r.CLEARCOAT_TINT_TEXTURE=!1,r.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE=!1,r.CLEARCOAT_DEFAULTIOR=!1,r.CLEARCOAT_TEXTUREDIRECTUV=0,r.CLEARCOAT_TEXTURE_ROUGHNESSDIRECTUV=0,r.CLEARCOAT_BUMPDIRECTUV=0,r.CLEARCOAT_REMAP_F0=!1,r.CLEARCOAT_TINT_TEXTUREDIRECTUV=0,r.CLEARCOAT_TINT_GAMMATEXTURE=!1)}bindForSubMesh(r,O,ie,Ee){if(!this._isEnabled)return;const ye=Ee.materialDefines,De=this._material.isFrozen,Le=this._material._disableBumpMap,Oe=this._material._invertNormalMapX,Fe=this._material._invertNormalMapY;if(!r.useUbo||!De||!r.isSync){(this._texture||this._textureRoughness)&&x.ClearCoatTextureEnabled&&(r.updateFloat4("vClearCoatInfos",this._texture?.coordinatesIndex??0,this._texture?.level??0,this._textureRoughness?.coordinatesIndex??0,this._textureRoughness?.level??0),this._texture&&Q(this._texture,r,"clearCoat"),this._textureRoughness&&!ye.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE&&Q(this._textureRoughness,r,"clearCoatRoughness")),this._bumpTexture&&ie.getCaps().standardDerivatives&&x.ClearCoatTextureEnabled&&!Le&&(r.updateFloat2("vClearCoatBumpInfos",this._bumpTexture.coordinatesIndex,this._bumpTexture.level),Q(this._bumpTexture,r,"clearCoatBump"),O._mirroredCameraPosition?r.updateFloat2("vClearCoatTangentSpaceParams",Oe?1:-1,Fe?1:-1):r.updateFloat2("vClearCoatTangentSpaceParams",Oe?-1:1,Fe?-1:1)),this._tintTexture&&x.ClearCoatTintTextureEnabled&&(r.updateFloat2("vClearCoatTintInfos",this._tintTexture.coordinatesIndex,this._tintTexture.level),Q(this._tintTexture,r,"clearCoatTint")),r.updateFloat2("vClearCoatParams",this.intensity,this.roughness);const Ne=1-this._indexOfRefraction,ve=1+this._indexOfRefraction,Pe=Math.pow(-Ne/ve,2),ke=1/this._indexOfRefraction;r.updateFloat4("vClearCoatRefractionParams",Pe,ke,Ne,ve),this._isTintEnabled&&(r.updateFloat4("vClearCoatTintParams",this.tintColor.r,this.tintColor.g,this.tintColor.b,Math.max(1e-5,this.tintThickness)),r.updateFloat("clearCoatColorAtDistance",Math.max(1e-5,this.tintColorAtDistance)))}O.texturesEnabled&&(this._texture&&x.ClearCoatTextureEnabled&&r.setTexture("clearCoatSampler",this._texture),this._textureRoughness&&!ye.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE&&x.ClearCoatTextureEnabled&&r.setTexture("clearCoatRoughnessSampler",this._textureRoughness),this._bumpTexture&&ie.getCaps().standardDerivatives&&x.ClearCoatBumpTextureEnabled&&!Le&&r.setTexture("clearCoatBumpSampler",this._bumpTexture),this._isTintEnabled&&this._tintTexture&&x.ClearCoatTintTextureEnabled&&r.setTexture("clearCoatTintSampler",this._tintTexture))}hasTexture(r){return this._texture===r||this._textureRoughness===r||this._bumpTexture===r||this._tintTexture===r}getActiveTextures(r){this._texture&&r.push(this._texture),this._textureRoughness&&r.push(this._textureRoughness),this._bumpTexture&&r.push(this._bumpTexture),this._tintTexture&&r.push(this._tintTexture)}getAnimatables(r){this._texture&&this._texture.animations&&this._texture.animations.length>0&&r.push(this._texture),this._textureRoughness&&this._textureRoughness.animations&&this._textureRoughness.animations.length>0&&r.push(this._textureRoughness),this._bumpTexture&&this._bumpTexture.animations&&this._bumpTexture.animations.length>0&&r.push(this._bumpTexture),this._tintTexture&&this._tintTexture.animations&&this._tintTexture.animations.length>0&&r.push(this._tintTexture)}dispose(r){r&&(this._texture?.dispose(),this._textureRoughness?.dispose(),this._bumpTexture?.dispose(),this._tintTexture?.dispose())}getClassName(){return"PBRClearCoatConfiguration"}addFallbacks(r,O,ie){return r.CLEARCOAT_BUMP&&O.addFallback(ie++,"CLEARCOAT_BUMP"),r.CLEARCOAT_TINT&&O.addFallback(ie++,"CLEARCOAT_TINT"),r.CLEARCOAT&&O.addFallback(ie++,"CLEARCOAT"),ie}getSamplers(r){r.push("clearCoatSampler","clearCoatRoughnessSampler","clearCoatBumpSampler","clearCoatTintSampler")}getUniforms(){return{ubo:[{name:"vClearCoatParams",size:2,type:"vec2"},{name:"vClearCoatRefractionParams",size:4,type:"vec4"},{name:"vClearCoatInfos",size:4,type:"vec4"},{name:"clearCoatMatrix",size:16,type:"mat4"},{name:"clearCoatRoughnessMatrix",size:16,type:"mat4"},{name:"vClearCoatBumpInfos",size:2,type:"vec2"},{name:"vClearCoatTangentSpaceParams",size:2,type:"vec2"},{name:"clearCoatBumpMatrix",size:16,type:"mat4"},{name:"vClearCoatTintParams",size:4,type:"vec4"},{name:"clearCoatColorAtDistance",size:1,type:"float"},{name:"vClearCoatTintInfos",size:2,type:"vec2"},{name:"clearCoatTintMatrix",size:16,type:"mat4"}]}}},v=new WeakMap,k=new WeakMap,U=new WeakMap,G=new WeakMap,W=new WeakMap,H=new WeakMap,l=new WeakMap,d=new WeakMap,a=new WeakMap,(()=>{const Z=typeof Symbol=="function"&&Symbol.metadata?Object.create(I[Symbol.metadata]??null):void 0;g=[m(),T("_markAllSubMeshesAsTexturesDirty")],P=[m()],b=[m()],N=[m(),T("_markAllSubMeshesAsTexturesDirty")],V=[X(),T("_markAllSubMeshesAsTexturesDirty")],Y=[m(),T("_markAllSubMeshesAsTexturesDirty")],J=[X(),T("_markAllSubMeshesAsTexturesDirty")],le=[m(),T("_markAllSubMeshesAsTexturesDirty")],ce=[X(),T("_markAllSubMeshesAsTexturesDirty")],C=[m(),T("_markAllSubMeshesAsTexturesDirty")],_e=[xe()],Ae=[m()],pe=[m()],be=[X(),T("_markAllSubMeshesAsTexturesDirty")],u(i,null,g,{kind:"accessor",name:"isEnabled",static:!1,private:!1,access:{has:r=>"isEnabled"in r,get:r=>r.isEnabled,set:(r,O)=>{r.isEnabled=O}},metadata:Z},F,M),u(i,null,N,{kind:"accessor",name:"indexOfRefraction",static:!1,private:!1,access:{has:r=>"indexOfRefraction"in r,get:r=>r.indexOfRefraction,set:(r,O)=>{r.indexOfRefraction=O}},metadata:Z},f,L),u(i,null,V,{kind:"accessor",name:"texture",static:!1,private:!1,access:{has:r=>"texture"in r,get:r=>r.texture,set:(r,O)=>{r.texture=O}},metadata:Z},q,te),u(i,null,Y,{kind:"accessor",name:"useRoughnessFromMainTexture",static:!1,private:!1,access:{has:r=>"useRoughnessFromMainTexture"in r,get:r=>r.useRoughnessFromMainTexture,set:(r,O)=>{r.useRoughnessFromMainTexture=O}},metadata:Z},o,D),u(i,null,J,{kind:"accessor",name:"textureRoughness",static:!1,private:!1,access:{has:r=>"textureRoughness"in r,get:r=>r.textureRoughness,set:(r,O)=>{r.textureRoughness=O}},metadata:Z},ae,re),u(i,null,le,{kind:"accessor",name:"remapF0OnInterfaceChange",static:!1,private:!1,access:{has:r=>"remapF0OnInterfaceChange"in r,get:r=>r.remapF0OnInterfaceChange,set:(r,O)=>{r.remapF0OnInterfaceChange=O}},metadata:Z},ne,ue),u(i,null,ce,{kind:"accessor",name:"bumpTexture",static:!1,private:!1,access:{has:r=>"bumpTexture"in r,get:r=>r.bumpTexture,set:(r,O)=>{r.bumpTexture=O}},metadata:Z},K,c),u(i,null,C,{kind:"accessor",name:"isTintEnabled",static:!1,private:!1,access:{has:r=>"isTintEnabled"in r,get:r=>r.isTintEnabled,set:(r,O)=>{r.isTintEnabled=O}},metadata:Z},E,w),u(i,null,be,{kind:"accessor",name:"tintTexture",static:!1,private:!1,access:{has:r=>"tintTexture"in r,get:r=>r.tintTexture,set:(r,O)=>{r.tintTexture=O}},metadata:Z},Ce,Me),u(null,null,P,{kind:"field",name:"intensity",static:!1,private:!1,access:{has:r=>"intensity"in r,get:r=>r.intensity,set:(r,O)=>{r.intensity=O}},metadata:Z},B,p),u(null,null,b,{kind:"field",name:"roughness",static:!1,private:!1,access:{has:r=>"roughness"in r,get:r=>r.roughness,set:(r,O)=>{r.roughness=O}},metadata:Z},y,R),u(null,null,_e,{kind:"field",name:"tintColor",static:!1,private:!1,access:{has:r=>"tintColor"in r,get:r=>r.tintColor,set:(r,O)=>{r.tintColor=O}},metadata:Z},me,Re),u(null,null,Ae,{kind:"field",name:"tintColorAtDistance",static:!1,private:!1,access:{has:r=>"tintColorAtDistance"in r,get:r=>r.tintColorAtDistance,set:(r,O)=>{r.tintColorAtDistance=O}},metadata:Z},de,Se),u(null,null,pe,{kind:"field",name:"tintThickness",static:!1,private:!1,access:{has:r=>"tintThickness"in r,get:r=>r.tintThickness,set:(r,O)=>{r.tintThickness=O}},metadata:Z},ge,Ie),Z&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:Z})})(),i._DefaultIndexOfRefraction=1.5,i})();class Cr extends Be{constructor(){super(...arguments),this.IRIDESCENCE=!1,this.IRIDESCENCE_TEXTURE=!1,this.IRIDESCENCE_TEXTUREDIRECTUV=0,this.IRIDESCENCE_THICKNESS_TEXTURE=!1,this.IRIDESCENCE_THICKNESS_TEXTUREDIRECTUV=0}}let Mr=(()=>{var i,v,k,U;let G=we,W,H=[],l=[],d,a=[],I=[],g,F=[],M=[],P,B=[],p=[],b,y=[],R=[],N,f=[],L=[],V,q=[],te=[];return i=class extends G{get isEnabled(){return h(this,v,"f")}set isEnabled(o){_(this,v,o,"f")}get texture(){return h(this,k,"f")}set texture(o){_(this,k,o,"f")}get thicknessTexture(){return h(this,U,"f")}set thicknessTexture(o){_(this,U,o,"f")}_markAllSubMeshesAsTexturesDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}isCompatible(){return!0}constructor(o,D=!0){super(o,"PBRIridescence",110,new Cr,D),this._isEnabled=!1,v.set(this,s(this,H,!1)),this.intensity=(s(this,l),s(this,a,1)),this.minimumThickness=(s(this,I),s(this,F,i._DefaultMinimumThickness)),this.maximumThickness=(s(this,M),s(this,B,i._DefaultMaximumThickness)),this.indexOfRefraction=(s(this,p),s(this,y,i._DefaultIndexOfRefraction)),this._texture=(s(this,R),null),k.set(this,s(this,f,null)),this._thicknessTexture=(s(this,L),null),U.set(this,s(this,q,null)),this._internalMarkAllSubMeshesAsTexturesDirty=s(this,te),this._internalMarkAllSubMeshesAsTexturesDirty=o._dirtyCallbacks[1]}isReadyForSubMesh(o,D){return this._isEnabled?!(o._areTexturesDirty&&D.texturesEnabled&&(this._texture&&x.IridescenceTextureEnabled&&!this._texture.isReadyOrNotBlocking()||this._thicknessTexture&&x.IridescenceTextureEnabled&&!this._thicknessTexture.isReadyOrNotBlocking())):!0}prepareDefinesBeforeAttributes(o,D){this._isEnabled?(o.IRIDESCENCE=!0,o._areTexturesDirty&&D.texturesEnabled&&(this._texture&&x.IridescenceTextureEnabled?j(this._texture,o,"IRIDESCENCE_TEXTURE"):o.IRIDESCENCE_TEXTURE=!1,this._thicknessTexture&&x.IridescenceTextureEnabled?j(this._thicknessTexture,o,"IRIDESCENCE_THICKNESS_TEXTURE"):o.IRIDESCENCE_THICKNESS_TEXTURE=!1)):(o.IRIDESCENCE=!1,o.IRIDESCENCE_TEXTURE=!1,o.IRIDESCENCE_THICKNESS_TEXTURE=!1,o.IRIDESCENCE_TEXTUREDIRECTUV=0,o.IRIDESCENCE_THICKNESS_TEXTUREDIRECTUV=0)}bindForSubMesh(o,D){if(!this._isEnabled)return;const J=this._material.isFrozen;(!o.useUbo||!J||!o.isSync)&&((this._texture||this._thicknessTexture)&&x.IridescenceTextureEnabled&&(o.updateFloat4("vIridescenceInfos",this._texture?.coordinatesIndex??0,this._texture?.level??0,this._thicknessTexture?.coordinatesIndex??0,this._thicknessTexture?.level??0),this._texture&&Q(this._texture,o,"iridescence"),this._thicknessTexture&&Q(this._thicknessTexture,o,"iridescenceThickness")),o.updateFloat4("vIridescenceParams",this.intensity,this.indexOfRefraction,this.minimumThickness,this.maximumThickness)),D.texturesEnabled&&(this._texture&&x.IridescenceTextureEnabled&&o.setTexture("iridescenceSampler",this._texture),this._thicknessTexture&&x.IridescenceTextureEnabled&&o.setTexture("iridescenceThicknessSampler",this._thicknessTexture))}hasTexture(o){return this._texture===o||this._thicknessTexture===o}getActiveTextures(o){this._texture&&o.push(this._texture),this._thicknessTexture&&o.push(this._thicknessTexture)}getAnimatables(o){this._texture&&this._texture.animations&&this._texture.animations.length>0&&o.push(this._texture),this._thicknessTexture&&this._thicknessTexture.animations&&this._thicknessTexture.animations.length>0&&o.push(this._thicknessTexture)}dispose(o){o&&(this._texture?.dispose(),this._thicknessTexture?.dispose())}getClassName(){return"PBRIridescenceConfiguration"}addFallbacks(o,D,J){return o.IRIDESCENCE&&D.addFallback(J++,"IRIDESCENCE"),J}getSamplers(o){o.push("iridescenceSampler","iridescenceThicknessSampler")}getUniforms(){return{ubo:[{name:"vIridescenceParams",size:4,type:"vec4"},{name:"vIridescenceInfos",size:4,type:"vec4"},{name:"iridescenceMatrix",size:16,type:"mat4"},{name:"iridescenceThicknessMatrix",size:16,type:"mat4"}]}}},v=new WeakMap,k=new WeakMap,U=new WeakMap,(()=>{const Y=typeof Symbol=="function"&&Symbol.metadata?Object.create(G[Symbol.metadata]??null):void 0;W=[m(),T("_markAllSubMeshesAsTexturesDirty")],d=[m()],g=[m()],P=[m()],b=[m()],N=[X(),T("_markAllSubMeshesAsTexturesDirty")],V=[X(),T("_markAllSubMeshesAsTexturesDirty")],u(i,null,W,{kind:"accessor",name:"isEnabled",static:!1,private:!1,access:{has:o=>"isEnabled"in o,get:o=>o.isEnabled,set:(o,D)=>{o.isEnabled=D}},metadata:Y},H,l),u(i,null,N,{kind:"accessor",name:"texture",static:!1,private:!1,access:{has:o=>"texture"in o,get:o=>o.texture,set:(o,D)=>{o.texture=D}},metadata:Y},f,L),u(i,null,V,{kind:"accessor",name:"thicknessTexture",static:!1,private:!1,access:{has:o=>"thicknessTexture"in o,get:o=>o.thicknessTexture,set:(o,D)=>{o.thicknessTexture=D}},metadata:Y},q,te),u(null,null,d,{kind:"field",name:"intensity",static:!1,private:!1,access:{has:o=>"intensity"in o,get:o=>o.intensity,set:(o,D)=>{o.intensity=D}},metadata:Y},a,I),u(null,null,g,{kind:"field",name:"minimumThickness",static:!1,private:!1,access:{has:o=>"minimumThickness"in o,get:o=>o.minimumThickness,set:(o,D)=>{o.minimumThickness=D}},metadata:Y},F,M),u(null,null,P,{kind:"field",name:"maximumThickness",static:!1,private:!1,access:{has:o=>"maximumThickness"in o,get:o=>o.maximumThickness,set:(o,D)=>{o.maximumThickness=D}},metadata:Y},B,p),u(null,null,b,{kind:"field",name:"indexOfRefraction",static:!1,private:!1,access:{has:o=>"indexOfRefraction"in o,get:o=>o.indexOfRefraction,set:(o,D)=>{o.indexOfRefraction=D}},metadata:Y},y,R),Y&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:Y})})(),i._DefaultMinimumThickness=100,i._DefaultMaximumThickness=400,i._DefaultIndexOfRefraction=1.3,i})();class yr extends Be{constructor(){super(...arguments),this.ANISOTROPIC=!1,this.ANISOTROPIC_TEXTURE=!1,this.ANISOTROPIC_TEXTUREDIRECTUV=0,this.ANISOTROPIC_LEGACY=!1,this.MAINUV1=!1}}let Lr=(()=>{var i,v,k,U;let G=we,W,H=[],l=[],d,a=[],I=[],g,F=[],M=[],P,B=[],p=[],b,y=[],R=[];return i=class extends G{get isEnabled(){return h(this,v,"f")}set isEnabled(f){_(this,v,f,"f")}set angle(f){this.direction.x=Math.cos(f),this.direction.y=Math.sin(f)}get angle(){return Math.atan2(this.direction.y,this.direction.x)}get texture(){return h(this,k,"f")}set texture(f){_(this,k,f,"f")}get legacy(){return h(this,U,"f")}set legacy(f){_(this,U,f,"f")}_markAllSubMeshesAsTexturesDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}_markAllSubMeshesAsMiscDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsMiscDirty()}isCompatible(){return!0}constructor(f,L=!0){super(f,"PBRAnisotropic",110,new yr,L),this._isEnabled=!1,v.set(this,s(this,H,!1)),this.intensity=(s(this,l),s(this,a,1)),this.direction=(s(this,I),s(this,F,new Na(1,0))),this._texture=(s(this,M),null),k.set(this,s(this,B,null)),this._legacy=(s(this,p),!1),U.set(this,s(this,y,!1)),this._internalMarkAllSubMeshesAsTexturesDirty=s(this,R),this._internalMarkAllSubMeshesAsTexturesDirty=f._dirtyCallbacks[1],this._internalMarkAllSubMeshesAsMiscDirty=f._dirtyCallbacks[16]}isReadyForSubMesh(f,L){return this._isEnabled?!(f._areTexturesDirty&&L.texturesEnabled&&this._texture&&x.AnisotropicTextureEnabled&&!this._texture.isReadyOrNotBlocking()):!0}prepareDefinesBeforeAttributes(f,L,V){this._isEnabled?(f.ANISOTROPIC=this._isEnabled,this._isEnabled&&!V.isVerticesDataPresent(Ue.TangentKind)&&(f._needUVs=!0,f.MAINUV1=!0),f._areTexturesDirty&&L.texturesEnabled&&(this._texture&&x.AnisotropicTextureEnabled?j(this._texture,f,"ANISOTROPIC_TEXTURE"):f.ANISOTROPIC_TEXTURE=!1),f._areMiscDirty&&(f.ANISOTROPIC_LEGACY=this._legacy)):(f.ANISOTROPIC=!1,f.ANISOTROPIC_TEXTURE=!1,f.ANISOTROPIC_TEXTUREDIRECTUV=0,f.ANISOTROPIC_LEGACY=!1)}bindForSubMesh(f,L){if(!this._isEnabled)return;const V=this._material.isFrozen;(!f.useUbo||!V||!f.isSync)&&(this._texture&&x.AnisotropicTextureEnabled&&(f.updateFloat2("vAnisotropyInfos",this._texture.coordinatesIndex,this._texture.level),Q(this._texture,f,"anisotropy")),f.updateFloat3("vAnisotropy",this.direction.x,this.direction.y,this.intensity)),L.texturesEnabled&&this._texture&&x.AnisotropicTextureEnabled&&f.setTexture("anisotropySampler",this._texture)}hasTexture(f){return this._texture===f}getActiveTextures(f){this._texture&&f.push(this._texture)}getAnimatables(f){this._texture&&this._texture.animations&&this._texture.animations.length>0&&f.push(this._texture)}dispose(f){f&&this._texture&&this._texture.dispose()}getClassName(){return"PBRAnisotropicConfiguration"}addFallbacks(f,L,V){return f.ANISOTROPIC&&L.addFallback(V++,"ANISOTROPIC"),V}getSamplers(f){f.push("anisotropySampler")}getUniforms(){return{ubo:[{name:"vAnisotropy",size:3,type:"vec3"},{name:"vAnisotropyInfos",size:2,type:"vec2"},{name:"anisotropyMatrix",size:16,type:"mat4"}]}}parse(f,L,V){super.parse(f,L,V),f.legacy===void 0&&(this.legacy=!0)}},v=new WeakMap,k=new WeakMap,U=new WeakMap,(()=>{const N=typeof Symbol=="function"&&Symbol.metadata?Object.create(G[Symbol.metadata]??null):void 0;W=[m(),T("_markAllSubMeshesAsTexturesDirty")],d=[m()],g=[va()],P=[X(),T("_markAllSubMeshesAsTexturesDirty")],b=[m(),T("_markAllSubMeshesAsMiscDirty")],u(i,null,W,{kind:"accessor",name:"isEnabled",static:!1,private:!1,access:{has:f=>"isEnabled"in f,get:f=>f.isEnabled,set:(f,L)=>{f.isEnabled=L}},metadata:N},H,l),u(i,null,P,{kind:"accessor",name:"texture",static:!1,private:!1,access:{has:f=>"texture"in f,get:f=>f.texture,set:(f,L)=>{f.texture=L}},metadata:N},B,p),u(i,null,b,{kind:"accessor",name:"legacy",static:!1,private:!1,access:{has:f=>"legacy"in f,get:f=>f.legacy,set:(f,L)=>{f.legacy=L}},metadata:N},y,R),u(null,null,d,{kind:"field",name:"intensity",static:!1,private:!1,access:{has:f=>"intensity"in f,get:f=>f.intensity,set:(f,L)=>{f.intensity=L}},metadata:N},a,I),u(null,null,g,{kind:"field",name:"direction",static:!1,private:!1,access:{has:f=>"direction"in f,get:f=>f.direction,set:(f,L)=>{f.direction=L}},metadata:N},F,M),N&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:N})})(),i})();class Or extends Be{constructor(){super(...arguments),this.SHEEN=!1,this.SHEEN_TEXTURE=!1,this.SHEEN_GAMMATEXTURE=!1,this.SHEEN_TEXTURE_ROUGHNESS=!1,this.SHEEN_TEXTUREDIRECTUV=0,this.SHEEN_TEXTURE_ROUGHNESSDIRECTUV=0,this.SHEEN_LINKWITHALBEDO=!1,this.SHEEN_ROUGHNESS=!1,this.SHEEN_ALBEDOSCALING=!1,this.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE=!1}}let Fr=(()=>{var i,v,k,U,G,W,H,l;let d=we,a,I=[],g=[],F,M=[],P=[],B,p=[],b=[],y,R=[],N=[],f,L=[],V=[],q,te=[],Y=[],o,D=[],J=[],ae,re=[],le=[],ne,ue=[],ce=[];return i=class extends d{get isEnabled(){return h(this,v,"f")}set isEnabled(c){_(this,v,c,"f")}get linkSheenWithAlbedo(){return h(this,k,"f")}set linkSheenWithAlbedo(c){_(this,k,c,"f")}get texture(){return h(this,U,"f")}set texture(c){_(this,U,c,"f")}get useRoughnessFromMainTexture(){return h(this,G,"f")}set useRoughnessFromMainTexture(c){_(this,G,c,"f")}get roughness(){return h(this,W,"f")}set roughness(c){_(this,W,c,"f")}get textureRoughness(){return h(this,H,"f")}set textureRoughness(c){_(this,H,c,"f")}get albedoScaling(){return h(this,l,"f")}set albedoScaling(c){_(this,l,c,"f")}_markAllSubMeshesAsTexturesDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}isCompatible(){return!0}constructor(c,C=!0){super(c,"Sheen",120,new Or,C),this._isEnabled=!1,v.set(this,s(this,I,!1)),this._linkSheenWithAlbedo=(s(this,g),!1),k.set(this,s(this,M,!1)),this.intensity=(s(this,P),s(this,p,1)),this.color=(s(this,b),s(this,R,se.White())),this._texture=(s(this,N),null),U.set(this,s(this,L,null)),this._useRoughnessFromMainTexture=(s(this,V),!0),G.set(this,s(this,te,!0)),this._roughness=(s(this,Y),null),W.set(this,s(this,D,null)),this._textureRoughness=(s(this,J),null),H.set(this,s(this,re,null)),this._albedoScaling=(s(this,le),!1),l.set(this,s(this,ue,!1)),this._internalMarkAllSubMeshesAsTexturesDirty=s(this,ce),this._internalMarkAllSubMeshesAsTexturesDirty=c._dirtyCallbacks[1]}isReadyForSubMesh(c,C){return this._isEnabled?!(c._areTexturesDirty&&C.texturesEnabled&&(this._texture&&x.SheenTextureEnabled&&!this._texture.isReadyOrNotBlocking()||this._textureRoughness&&x.SheenTextureEnabled&&!this._textureRoughness.isReadyOrNotBlocking())):!0}prepareDefinesBeforeAttributes(c,C){this._isEnabled?(c.SHEEN=!0,c.SHEEN_LINKWITHALBEDO=this._linkSheenWithAlbedo,c.SHEEN_ROUGHNESS=this._roughness!==null,c.SHEEN_ALBEDOSCALING=this._albedoScaling,c.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE=this._useRoughnessFromMainTexture,c._areTexturesDirty&&C.texturesEnabled&&(this._texture&&x.SheenTextureEnabled?(j(this._texture,c,"SHEEN_TEXTURE"),c.SHEEN_GAMMATEXTURE=this._texture.gammaSpace):c.SHEEN_TEXTURE=!1,this._textureRoughness&&x.SheenTextureEnabled?j(this._textureRoughness,c,"SHEEN_TEXTURE_ROUGHNESS"):c.SHEEN_TEXTURE_ROUGHNESS=!1)):(c.SHEEN=!1,c.SHEEN_TEXTURE=!1,c.SHEEN_TEXTURE_ROUGHNESS=!1,c.SHEEN_LINKWITHALBEDO=!1,c.SHEEN_ROUGHNESS=!1,c.SHEEN_ALBEDOSCALING=!1,c.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE=!1,c.SHEEN_GAMMATEXTURE=!1,c.SHEEN_TEXTUREDIRECTUV=0,c.SHEEN_TEXTURE_ROUGHNESSDIRECTUV=0)}bindForSubMesh(c,C,E,w){if(!this._isEnabled)return;const _e=w.materialDefines,me=this._material.isFrozen;(!c.useUbo||!me||!c.isSync)&&((this._texture||this._textureRoughness)&&x.SheenTextureEnabled&&(c.updateFloat4("vSheenInfos",this._texture?.coordinatesIndex??0,this._texture?.level??0,this._textureRoughness?.coordinatesIndex??0,this._textureRoughness?.level??0),this._texture&&Q(this._texture,c,"sheen"),this._textureRoughness&&!_e.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE&&Q(this._textureRoughness,c,"sheenRoughness")),c.updateFloat4("vSheenColor",this.color.r,this.color.g,this.color.b,this.intensity),this._roughness!==null&&c.updateFloat("vSheenRoughness",this._roughness)),C.texturesEnabled&&(this._texture&&x.SheenTextureEnabled&&c.setTexture("sheenSampler",this._texture),this._textureRoughness&&!_e.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE&&x.SheenTextureEnabled&&c.setTexture("sheenRoughnessSampler",this._textureRoughness))}hasTexture(c){return this._texture===c||this._textureRoughness===c}getActiveTextures(c){this._texture&&c.push(this._texture),this._textureRoughness&&c.push(this._textureRoughness)}getAnimatables(c){this._texture&&this._texture.animations&&this._texture.animations.length>0&&c.push(this._texture),this._textureRoughness&&this._textureRoughness.animations&&this._textureRoughness.animations.length>0&&c.push(this._textureRoughness)}dispose(c){c&&(this._texture?.dispose(),this._textureRoughness?.dispose())}getClassName(){return"PBRSheenConfiguration"}addFallbacks(c,C,E){return c.SHEEN&&C.addFallback(E++,"SHEEN"),E}getSamplers(c){c.push("sheenSampler","sheenRoughnessSampler")}getUniforms(){return{ubo:[{name:"vSheenColor",size:4,type:"vec4"},{name:"vSheenRoughness",size:1,type:"float"},{name:"vSheenInfos",size:4,type:"vec4"},{name:"sheenMatrix",size:16,type:"mat4"},{name:"sheenRoughnessMatrix",size:16,type:"mat4"}]}}},v=new WeakMap,k=new WeakMap,U=new WeakMap,G=new WeakMap,W=new WeakMap,H=new WeakMap,l=new WeakMap,(()=>{const K=typeof Symbol=="function"&&Symbol.metadata?Object.create(d[Symbol.metadata]??null):void 0;a=[m(),T("_markAllSubMeshesAsTexturesDirty")],F=[m(),T("_markAllSubMeshesAsTexturesDirty")],B=[m()],y=[xe()],f=[X(),T("_markAllSubMeshesAsTexturesDirty")],q=[m(),T("_markAllSubMeshesAsTexturesDirty")],o=[m(),T("_markAllSubMeshesAsTexturesDirty")],ae=[X(),T("_markAllSubMeshesAsTexturesDirty")],ne=[m(),T("_markAllSubMeshesAsTexturesDirty")],u(i,null,a,{kind:"accessor",name:"isEnabled",static:!1,private:!1,access:{has:c=>"isEnabled"in c,get:c=>c.isEnabled,set:(c,C)=>{c.isEnabled=C}},metadata:K},I,g),u(i,null,F,{kind:"accessor",name:"linkSheenWithAlbedo",static:!1,private:!1,access:{has:c=>"linkSheenWithAlbedo"in c,get:c=>c.linkSheenWithAlbedo,set:(c,C)=>{c.linkSheenWithAlbedo=C}},metadata:K},M,P),u(i,null,f,{kind:"accessor",name:"texture",static:!1,private:!1,access:{has:c=>"texture"in c,get:c=>c.texture,set:(c,C)=>{c.texture=C}},metadata:K},L,V),u(i,null,q,{kind:"accessor",name:"useRoughnessFromMainTexture",static:!1,private:!1,access:{has:c=>"useRoughnessFromMainTexture"in c,get:c=>c.useRoughnessFromMainTexture,set:(c,C)=>{c.useRoughnessFromMainTexture=C}},metadata:K},te,Y),u(i,null,o,{kind:"accessor",name:"roughness",static:!1,private:!1,access:{has:c=>"roughness"in c,get:c=>c.roughness,set:(c,C)=>{c.roughness=C}},metadata:K},D,J),u(i,null,ae,{kind:"accessor",name:"textureRoughness",static:!1,private:!1,access:{has:c=>"textureRoughness"in c,get:c=>c.textureRoughness,set:(c,C)=>{c.textureRoughness=C}},metadata:K},re,le),u(i,null,ne,{kind:"accessor",name:"albedoScaling",static:!1,private:!1,access:{has:c=>"albedoScaling"in c,get:c=>c.albedoScaling,set:(c,C)=>{c.albedoScaling=C}},metadata:K},ue,ce),u(null,null,B,{kind:"field",name:"intensity",static:!1,private:!1,access:{has:c=>"intensity"in c,get:c=>c.intensity,set:(c,C)=>{c.intensity=C}},metadata:K},p,b),u(null,null,y,{kind:"field",name:"color",static:!1,private:!1,access:{has:c=>"color"in c,get:c=>c.color,set:(c,C)=>{c.color=C}},metadata:K},R,N),K&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:K})})(),i})();class Nr extends Be{constructor(){super(...arguments),this.SUBSURFACE=!1,this.SS_REFRACTION=!1,this.SS_REFRACTION_USE_INTENSITY_FROM_THICKNESS=!1,this.SS_TRANSLUCENCY=!1,this.SS_TRANSLUCENCY_USE_INTENSITY_FROM_THICKNESS=!1,this.SS_SCATTERING=!1,this.SS_DISPERSION=!1,this.SS_THICKNESSANDMASK_TEXTURE=!1,this.SS_THICKNESSANDMASK_TEXTUREDIRECTUV=0,this.SS_HAS_THICKNESS=!1,this.SS_REFRACTIONINTENSITY_TEXTURE=!1,this.SS_REFRACTIONINTENSITY_TEXTUREDIRECTUV=0,this.SS_TRANSLUCENCYINTENSITY_TEXTURE=!1,this.SS_TRANSLUCENCYINTENSITY_TEXTUREDIRECTUV=0,this.SS_TRANSLUCENCYCOLOR_TEXTURE=!1,this.SS_TRANSLUCENCYCOLOR_TEXTUREDIRECTUV=0,this.SS_TRANSLUCENCYCOLOR_TEXTURE_GAMMA=!1,this.SS_REFRACTIONMAP_3D=!1,this.SS_REFRACTIONMAP_OPPOSITEZ=!1,this.SS_LODINREFRACTIONALPHA=!1,this.SS_GAMMAREFRACTION=!1,this.SS_RGBDREFRACTION=!1,this.SS_LINEARSPECULARREFRACTION=!1,this.SS_LINKREFRACTIONTOTRANSPARENCY=!1,this.SS_ALBEDOFORREFRACTIONTINT=!1,this.SS_ALBEDOFORTRANSLUCENCYTINT=!1,this.SS_USE_LOCAL_REFRACTIONMAP_CUBIC=!1,this.SS_USE_THICKNESS_AS_DEPTH=!1,this.SS_USE_GLTF_TEXTURES=!1,this.SS_APPLY_ALBEDO_AFTER_SUBSURFACE=!1,this.SS_TRANSLUCENCY_LEGACY=!1}}let vr=(()=>{var i,v,k,U,G,W,H,l,d,a,I,g,F,M,P,B,p;let b=we,y,R=[],N=[],f,L=[],V=[],q,te=[],Y=[],o,D=[],J=[],ae,re=[],le=[],ne,ue=[],ce=[],K,c=[],C=[],E,w=[],_e=[],me,Re=[],Ae=[],de,Se=[],pe=[],ge,Ie=[],be=[],Ce,Me=[],Z=[],r,O=[],ie=[],Ee,ye=[],De=[],Le,Oe=[],Fe=[],Ne,ve=[],Pe=[],ke,Ve=[],ze=[],Ye,Xe=[],Ke=[],je,Qe=[],Ze=[],Je,$e=[],qe=[],et,tt=[],st=[],it,at=[],rt=[],lt,nt=[],ut=[],ct,ot=[],ht=[],_t,Tt=[],ft=[],mt,Et=[],xt=[],Rt,At=[],dt=[],St,pt=[],gt=[],It,bt=[],Ct=[],Mt,yt=[],Lt=[];return i=class extends b{get isRefractionEnabled(){return h(this,v,"f")}set isRefractionEnabled(t){_(this,v,t,"f")}get isTranslucencyEnabled(){return h(this,k,"f")}set isTranslucencyEnabled(t){_(this,k,t,"f")}get isDispersionEnabled(){return h(this,U,"f")}set isDispersionEnabled(t){_(this,U,t,"f")}get isScatteringEnabled(){return h(this,G,"f")}set isScatteringEnabled(t){_(this,G,t,"f")}get scatteringDiffusionProfile(){return this._scene.subSurfaceConfiguration?this._scene.subSurfaceConfiguration.ssDiffusionProfileColors[this._scatteringDiffusionProfileIndex]:null}set scatteringDiffusionProfile(t){this._scene.enableSubSurfaceForPrePass()&&t&&(this._scatteringDiffusionProfileIndex=this._scene.subSurfaceConfiguration.addDiffusionProfile(t))}get useAlbedoToTintRefraction(){return h(this,W,"f")}set useAlbedoToTintRefraction(t){_(this,W,t,"f")}get useAlbedoToTintTranslucency(){return h(this,H,"f")}set useAlbedoToTintTranslucency(t){_(this,H,t,"f")}get thicknessTexture(){return h(this,l,"f")}set thicknessTexture(t){_(this,l,t,"f")}get refractionTexture(){return h(this,d,"f")}set refractionTexture(t){_(this,d,t,"f")}get indexOfRefraction(){return h(this,a,"f")}set indexOfRefraction(t){_(this,a,t,"f")}get volumeIndexOfRefraction(){return this._volumeIndexOfRefraction>=1?this._volumeIndexOfRefraction:this._indexOfRefraction}set volumeIndexOfRefraction(t){const A=t>=1?t:-1;this._volumeIndexOfRefraction!==A&&(this._volumeIndexOfRefraction=A,this._markAllSubMeshesAsTexturesDirty())}get invertRefractionY(){return h(this,I,"f")}set invertRefractionY(t){_(this,I,t,"f")}get linkRefractionWithTransparency(){return h(this,g,"f")}set linkRefractionWithTransparency(t){_(this,g,t,"f")}get useMaskFromThicknessTexture(){return h(this,F,"f")}set useMaskFromThicknessTexture(t){_(this,F,t,"f")}get refractionIntensityTexture(){return h(this,M,"f")}set refractionIntensityTexture(t){_(this,M,t,"f")}get translucencyIntensityTexture(){return h(this,P,"f")}set translucencyIntensityTexture(t){_(this,P,t,"f")}get translucencyColorTexture(){return h(this,B,"f")}set translucencyColorTexture(t){_(this,B,t,"f")}get useGltfStyleTextures(){return h(this,p,"f")}set useGltfStyleTextures(t){_(this,p,t,"f")}get legacyTransluceny(){return this.legacyTranslucency}set legacyTransluceny(t){this.legacyTranslucency=t}_markAllSubMeshesAsTexturesDirty(){this._enable(this._isRefractionEnabled||this._isTranslucencyEnabled||this._isScatteringEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}_markScenePrePassDirty(){this._enable(this._isRefractionEnabled||this._isTranslucencyEnabled||this._isScatteringEnabled),this._internalMarkAllSubMeshesAsTexturesDirty(),this._internalMarkScenePrePassDirty()}isCompatible(){return!0}constructor(t,A=!0){super(t,"PBRSubSurface",130,new Nr,A),this._isRefractionEnabled=!1,v.set(this,s(this,R,!1)),this._isTranslucencyEnabled=(s(this,N),!1),k.set(this,s(this,L,!1)),this._isDispersionEnabled=(s(this,V),!1),U.set(this,s(this,te,!1)),this._isScatteringEnabled=(s(this,Y),!1),G.set(this,s(this,D,!1)),this._scatteringDiffusionProfileIndex=(s(this,J),s(this,re,0)),this.refractionIntensity=(s(this,le),s(this,ue,1)),this.translucencyIntensity=(s(this,ce),s(this,c,1)),this._useAlbedoToTintRefraction=(s(this,C),!1),W.set(this,s(this,w,!1)),this._useAlbedoToTintTranslucency=(s(this,_e),!1),H.set(this,s(this,Re,!1)),this._thicknessTexture=(s(this,Ae),null),l.set(this,s(this,Se,null)),this._refractionTexture=(s(this,pe),null),d.set(this,s(this,Ie,null)),this._indexOfRefraction=(s(this,be),1.5),a.set(this,s(this,Me,1.5)),this._volumeIndexOfRefraction=(s(this,Z),s(this,O,-1)),this._invertRefractionY=(s(this,ie),!1),I.set(this,s(this,ye,!1)),this._linkRefractionWithTransparency=(s(this,De),!1),g.set(this,s(this,Oe,!1)),this.minimumThickness=(s(this,Fe),s(this,ve,0)),this.maximumThickness=(s(this,Pe),s(this,Ve,1)),this.useThicknessAsDepth=(s(this,ze),s(this,Xe,!1)),this.tintColor=(s(this,Ke),s(this,Qe,se.White())),this.tintColorAtDistance=(s(this,Ze),s(this,$e,1)),this.dispersion=(s(this,qe),s(this,tt,0)),this.diffusionDistance=(s(this,st),s(this,at,se.White())),this._useMaskFromThicknessTexture=(s(this,rt),!1),F.set(this,s(this,nt,!1)),this._refractionIntensityTexture=(s(this,ut),null),M.set(this,s(this,ot,null)),this._translucencyIntensityTexture=(s(this,ht),null),P.set(this,s(this,Tt,null)),this.translucencyColor=(s(this,ft),s(this,Et,null)),this._translucencyColorTexture=(s(this,xt),null),B.set(this,s(this,At,null)),this._useGltfStyleTextures=(s(this,dt),!0),p.set(this,s(this,pt,!0)),this.applyAlbedoAfterSubSurface=(s(this,gt),s(this,bt,i.DEFAULT_APPLY_ALBEDO_AFTERSUBSURFACE)),this.legacyTranslucency=(s(this,Ct),s(this,yt,i.DEFAULT_LEGACY_TRANSLUCENCY)),this._scene=s(this,Lt),this._scene=t.getScene(),this.registerForExtraEvents=!0,this._internalMarkAllSubMeshesAsTexturesDirty=t._dirtyCallbacks[1],this._internalMarkScenePrePassDirty=t._dirtyCallbacks[32]}isReadyForSubMesh(t,A){if(!this._isRefractionEnabled&&!this._isTranslucencyEnabled&&!this._isScatteringEnabled)return!0;if(t._areTexturesDirty&&A.texturesEnabled){if(this._thicknessTexture&&x.ThicknessTextureEnabled&&!this._thicknessTexture.isReadyOrNotBlocking()||this._refractionIntensityTexture&&x.RefractionIntensityTextureEnabled&&!this._refractionIntensityTexture.isReadyOrNotBlocking()||this._translucencyColorTexture&&x.TranslucencyColorTextureEnabled&&!this._translucencyColorTexture.isReadyOrNotBlocking()||this._translucencyIntensityTexture&&x.TranslucencyIntensityTextureEnabled&&!this._translucencyIntensityTexture.isReadyOrNotBlocking())return!1;const $=this._getRefractionTexture(A);if($&&x.RefractionTextureEnabled&&!$.isReadyOrNotBlocking())return!1}return!0}prepareDefinesBeforeAttributes(t,A){if(!this._isRefractionEnabled&&!this._isTranslucencyEnabled&&!this._isScatteringEnabled){t.SUBSURFACE=!1,t.SS_DISPERSION=!1,t.SS_TRANSLUCENCY=!1,t.SS_SCATTERING=!1,t.SS_REFRACTION=!1,t.SS_REFRACTION_USE_INTENSITY_FROM_THICKNESS=!1,t.SS_TRANSLUCENCY_USE_INTENSITY_FROM_THICKNESS=!1,t.SS_THICKNESSANDMASK_TEXTURE=!1,t.SS_THICKNESSANDMASK_TEXTUREDIRECTUV=0,t.SS_HAS_THICKNESS=!1,t.SS_REFRACTIONINTENSITY_TEXTURE=!1,t.SS_REFRACTIONINTENSITY_TEXTUREDIRECTUV=0,t.SS_TRANSLUCENCYINTENSITY_TEXTURE=!1,t.SS_TRANSLUCENCYINTENSITY_TEXTUREDIRECTUV=0,t.SS_REFRACTIONMAP_3D=!1,t.SS_REFRACTIONMAP_OPPOSITEZ=!1,t.SS_LODINREFRACTIONALPHA=!1,t.SS_GAMMAREFRACTION=!1,t.SS_RGBDREFRACTION=!1,t.SS_LINEARSPECULARREFRACTION=!1,t.SS_LINKREFRACTIONTOTRANSPARENCY=!1,t.SS_ALBEDOFORREFRACTIONTINT=!1,t.SS_ALBEDOFORTRANSLUCENCYTINT=!1,t.SS_USE_LOCAL_REFRACTIONMAP_CUBIC=!1,t.SS_USE_THICKNESS_AS_DEPTH=!1,t.SS_USE_GLTF_TEXTURES=!1,t.SS_TRANSLUCENCYCOLOR_TEXTURE=!1,t.SS_TRANSLUCENCYCOLOR_TEXTUREDIRECTUV=0,t.SS_TRANSLUCENCYCOLOR_TEXTURE_GAMMA=!1,t.SS_APPLY_ALBEDO_AFTER_SUBSURFACE=!1;return}if(t._areTexturesDirty){if(t.SUBSURFACE=!0,t.SS_DISPERSION=this._isDispersionEnabled,t.SS_TRANSLUCENCY=this._isTranslucencyEnabled,t.SS_TRANSLUCENCY_USE_INTENSITY_FROM_THICKNESS=!1,t.SS_TRANSLUCENCY_LEGACY=this.legacyTranslucency,t.SS_SCATTERING=this._isScatteringEnabled,t.SS_THICKNESSANDMASK_TEXTURE=!1,t.SS_REFRACTIONINTENSITY_TEXTURE=!1,t.SS_TRANSLUCENCYINTENSITY_TEXTURE=!1,t.SS_HAS_THICKNESS=!1,t.SS_USE_GLTF_TEXTURES=!1,t.SS_REFRACTION=!1,t.SS_REFRACTION_USE_INTENSITY_FROM_THICKNESS=!1,t.SS_REFRACTIONMAP_3D=!1,t.SS_GAMMAREFRACTION=!1,t.SS_RGBDREFRACTION=!1,t.SS_LINEARSPECULARREFRACTION=!1,t.SS_REFRACTIONMAP_OPPOSITEZ=!1,t.SS_LODINREFRACTIONALPHA=!1,t.SS_LINKREFRACTIONTOTRANSPARENCY=!1,t.SS_ALBEDOFORREFRACTIONTINT=!1,t.SS_ALBEDOFORTRANSLUCENCYTINT=!1,t.SS_USE_LOCAL_REFRACTIONMAP_CUBIC=!1,t.SS_USE_THICKNESS_AS_DEPTH=!1,t.SS_TRANSLUCENCYCOLOR_TEXTURE=!1,t.SS_APPLY_ALBEDO_AFTER_SUBSURFACE=this.applyAlbedoAfterSubSurface,t._areTexturesDirty&&A.texturesEnabled&&(this._thicknessTexture&&x.ThicknessTextureEnabled&&j(this._thicknessTexture,t,"SS_THICKNESSANDMASK_TEXTURE"),this._refractionIntensityTexture&&x.RefractionIntensityTextureEnabled&&j(this._refractionIntensityTexture,t,"SS_REFRACTIONINTENSITY_TEXTURE"),this._translucencyIntensityTexture&&x.TranslucencyIntensityTextureEnabled&&j(this._translucencyIntensityTexture,t,"SS_TRANSLUCENCYINTENSITY_TEXTURE"),this._translucencyColorTexture&&x.TranslucencyColorTextureEnabled&&(j(this._translucencyColorTexture,t,"SS_TRANSLUCENCYCOLOR_TEXTURE"),t.SS_TRANSLUCENCYCOLOR_TEXTURE_GAMMA=this._translucencyColorTexture.gammaSpace)),t.SS_HAS_THICKNESS=this.maximumThickness-this.minimumThickness!==0,t.SS_USE_GLTF_TEXTURES=this._useGltfStyleTextures,t.SS_REFRACTION_USE_INTENSITY_FROM_THICKNESS=this._useMaskFromThicknessTexture&&!this._refractionIntensityTexture,t.SS_TRANSLUCENCY_USE_INTENSITY_FROM_THICKNESS=this._useMaskFromThicknessTexture&&!this._translucencyIntensityTexture,this._isRefractionEnabled&&A.texturesEnabled){const $=this._getRefractionTexture(A);$&&x.RefractionTextureEnabled&&(t.SS_REFRACTION=!0,t.SS_REFRACTIONMAP_3D=$.isCube,t.SS_GAMMAREFRACTION=$.gammaSpace,t.SS_RGBDREFRACTION=$.isRGBD,t.SS_LINEARSPECULARREFRACTION=$.linearSpecularLOD,t.SS_REFRACTIONMAP_OPPOSITEZ=this._scene.useRightHandedSystem&&$.isCube?!$.invertZ:$.invertZ,t.SS_LODINREFRACTIONALPHA=$.lodLevelInAlpha,t.SS_LINKREFRACTIONTOTRANSPARENCY=this._linkRefractionWithTransparency,t.SS_ALBEDOFORREFRACTIONTINT=this._useAlbedoToTintRefraction,t.SS_USE_LOCAL_REFRACTIONMAP_CUBIC=$.isCube&&$.boundingBoxSize,t.SS_USE_THICKNESS_AS_DEPTH=this.useThicknessAsDepth)}this._isTranslucencyEnabled&&(t.SS_ALBEDOFORTRANSLUCENCYTINT=this._useAlbedoToTintTranslucency)}}hardBindForSubMesh(t,A,$,He){if(!(!this._isRefractionEnabled&&!this._isTranslucencyEnabled&&!this._isScatteringEnabled))if(this.maximumThickness===0&&this.minimumThickness===0)t.updateFloat2("vThicknessParam",0,0);else{He.getRenderingMesh().getWorldMatrix().decompose(Bt.Vector3[0]);const Te=Math.max(Math.abs(Bt.Vector3[0].x),Math.abs(Bt.Vector3[0].y),Math.abs(Bt.Vector3[0].z));t.updateFloat2("vThicknessParam",this.minimumThickness*Te,(this.maximumThickness-this.minimumThickness)*Te)}}bindForSubMesh(t,A,$,He){if(!this._isRefractionEnabled&&!this._isTranslucencyEnabled&&!this._isScatteringEnabled)return;const Te=He.materialDefines,Dt=this._material.isFrozen,Pt=this._material.realTimeFiltering,kt=Te.LODBASEDMICROSFURACE,ee=this._getRefractionTexture(A);if(!t.useUbo||!Dt||!t.isSync){if(this._thicknessTexture&&x.ThicknessTextureEnabled&&(t.updateFloat2("vThicknessInfos",this._thicknessTexture.coordinatesIndex,this._thicknessTexture.level),Q(this._thicknessTexture,t,"thickness")),this._refractionIntensityTexture&&x.RefractionIntensityTextureEnabled&&Te.SS_REFRACTIONINTENSITY_TEXTURE&&(t.updateFloat2("vRefractionIntensityInfos",this._refractionIntensityTexture.coordinatesIndex,this._refractionIntensityTexture.level),Q(this._refractionIntensityTexture,t,"refractionIntensity")),this._translucencyColorTexture&&x.TranslucencyColorTextureEnabled&&Te.SS_TRANSLUCENCYCOLOR_TEXTURE&&(t.updateFloat2("vTranslucencyColorInfos",this._translucencyColorTexture.coordinatesIndex,this._translucencyColorTexture.level),Q(this._translucencyColorTexture,t,"translucencyColor")),this._translucencyIntensityTexture&&x.TranslucencyIntensityTextureEnabled&&Te.SS_TRANSLUCENCYINTENSITY_TEXTURE&&(t.updateFloat2("vTranslucencyIntensityInfos",this._translucencyIntensityTexture.coordinatesIndex,this._translucencyIntensityTexture.level),Q(this._translucencyIntensityTexture,t,"translucencyIntensity")),ee&&x.RefractionTextureEnabled){t.updateMatrix("refractionMatrix",ee.getRefractionTextureMatrix());let Ot=1;ee.isCube||ee.depth&&(Ot=ee.depth);const Ge=ee.getSize().width,Ut=this.volumeIndexOfRefraction;if(t.updateFloat4("vRefractionInfos",ee.level,1/Ut,Ot,this._invertRefractionY?-1:1),t.updateFloat4("vRefractionMicrosurfaceInfos",Ge,ee.lodGenerationScale,ee.lodGenerationOffset,1/this.indexOfRefraction),Pt&&t.updateFloat2("vRefractionFilteringInfo",Ge,Math.log2(Ge)),ee.boundingBoxSize){const Ft=ee;t.updateVector3("vRefractionPosition",Ft.boundingBoxPosition),t.updateVector3("vRefractionSize",Ft.boundingBoxSize)}}this._isScatteringEnabled&&t.updateFloat("scatteringDiffusionProfile",this._scatteringDiffusionProfileIndex),t.updateColor3("vDiffusionDistance",this.diffusionDistance),t.updateFloat4("vTintColor",this.tintColor.r,this.tintColor.g,this.tintColor.b,Math.max(1e-5,this.tintColorAtDistance)),t.updateColor4("vTranslucencyColor",this.translucencyColor??this.tintColor,0),t.updateFloat3("vSubSurfaceIntensity",this.refractionIntensity,this.translucencyIntensity,0),t.updateFloat("dispersion",this.dispersion)}A.texturesEnabled&&(this._thicknessTexture&&x.ThicknessTextureEnabled&&t.setTexture("thicknessSampler",this._thicknessTexture),this._refractionIntensityTexture&&x.RefractionIntensityTextureEnabled&&Te.SS_REFRACTIONINTENSITY_TEXTURE&&t.setTexture("refractionIntensitySampler",this._refractionIntensityTexture),this._translucencyIntensityTexture&&x.TranslucencyIntensityTextureEnabled&&Te.SS_TRANSLUCENCYINTENSITY_TEXTURE&&t.setTexture("translucencyIntensitySampler",this._translucencyIntensityTexture),this._translucencyColorTexture&&x.TranslucencyColorTextureEnabled&&Te.SS_TRANSLUCENCYCOLOR_TEXTURE&&t.setTexture("translucencyColorSampler",this._translucencyColorTexture),ee&&x.RefractionTextureEnabled&&(kt?t.setTexture("refractionSampler",ee):(t.setTexture("refractionSampler",ee._lodTextureMid||ee),t.setTexture("refractionSamplerLow",ee._lodTextureLow||ee),t.setTexture("refractionSamplerHigh",ee._lodTextureHigh||ee))))}_getRefractionTexture(t){return this._refractionTexture?this._refractionTexture:this._isRefractionEnabled?t.environmentTexture:null}get disableAlphaBlending(){return this._isRefractionEnabled&&this._linkRefractionWithTransparency}fillRenderTargetTextures(t){x.RefractionTextureEnabled&&this._refractionTexture&&this._refractionTexture.isRenderTarget&&t.push(this._refractionTexture)}hasTexture(t){return this._thicknessTexture===t||this._refractionTexture===t||this._refractionIntensityTexture===t||this._translucencyIntensityTexture===t||this._translucencyColorTexture===t}hasRenderTargetTextures(){return!!(x.RefractionTextureEnabled&&this._refractionTexture&&this._refractionTexture.isRenderTarget)}getActiveTextures(t){this._thicknessTexture&&t.push(this._thicknessTexture),this._refractionTexture&&t.push(this._refractionTexture),this._refractionIntensityTexture&&t.push(this._refractionIntensityTexture),this._translucencyColorTexture&&t.push(this._translucencyColorTexture),this._translucencyIntensityTexture&&t.push(this._translucencyIntensityTexture)}getAnimatables(t){this._thicknessTexture&&this._thicknessTexture.animations&&this._thicknessTexture.animations.length>0&&t.push(this._thicknessTexture),this._refractionTexture&&this._refractionTexture.animations&&this._refractionTexture.animations.length>0&&t.push(this._refractionTexture),this._refractionIntensityTexture&&this._refractionIntensityTexture.animations&&this._refractionIntensityTexture.animations.length>0&&t.push(this._refractionIntensityTexture),this._translucencyColorTexture&&this._translucencyColorTexture.animations&&this._translucencyColorTexture.animations.length>0&&t.push(this._translucencyColorTexture),this._translucencyIntensityTexture&&this._translucencyIntensityTexture.animations&&this._translucencyIntensityTexture.animations.length>0&&t.push(this._translucencyIntensityTexture)}dispose(t){t&&(this._thicknessTexture&&this._thicknessTexture.dispose(),this._refractionTexture&&this._refractionTexture.dispose(),this._refractionIntensityTexture&&this._refractionIntensityTexture.dispose(),this._translucencyColorTexture&&this._translucencyColorTexture.dispose(),this._translucencyIntensityTexture&&this._translucencyIntensityTexture.dispose())}getClassName(){return"PBRSubSurfaceConfiguration"}addFallbacks(t,A,$){return t.SS_SCATTERING&&A.addFallback($++,"SS_SCATTERING"),t.SS_TRANSLUCENCY&&A.addFallback($++,"SS_TRANSLUCENCY"),$}getSamplers(t){t.push("thicknessSampler","refractionIntensitySampler","translucencyIntensitySampler","refractionSampler","refractionSamplerLow","refractionSamplerHigh","translucencyColorSampler")}getUniforms(){return{ubo:[{name:"vRefractionMicrosurfaceInfos",size:4,type:"vec4"},{name:"vRefractionFilteringInfo",size:2,type:"vec2"},{name:"vTranslucencyIntensityInfos",size:2,type:"vec2"},{name:"vRefractionInfos",size:4,type:"vec4"},{name:"refractionMatrix",size:16,type:"mat4"},{name:"vThicknessInfos",size:2,type:"vec2"},{name:"vRefractionIntensityInfos",size:2,type:"vec2"},{name:"thicknessMatrix",size:16,type:"mat4"},{name:"refractionIntensityMatrix",size:16,type:"mat4"},{name:"translucencyIntensityMatrix",size:16,type:"mat4"},{name:"vThicknessParam",size:2,type:"vec2"},{name:"vDiffusionDistance",size:3,type:"vec3"},{name:"vTintColor",size:4,type:"vec4"},{name:"vSubSurfaceIntensity",size:3,type:"vec3"},{name:"vRefractionPosition",size:3,type:"vec3"},{name:"vRefractionSize",size:3,type:"vec3"},{name:"scatteringDiffusionProfile",size:1,type:"float"},{name:"dispersion",size:1,type:"float"},{name:"vTranslucencyColor",size:4,type:"vec4"},{name:"vTranslucencyColorInfos",size:2,type:"vec2"},{name:"translucencyColorMatrix",size:16,type:"mat4"}]}}},v=new WeakMap,k=new WeakMap,U=new WeakMap,G=new WeakMap,W=new WeakMap,H=new WeakMap,l=new WeakMap,d=new WeakMap,a=new WeakMap,I=new WeakMap,g=new WeakMap,F=new WeakMap,M=new WeakMap,P=new WeakMap,B=new WeakMap,p=new WeakMap,(()=>{const z=typeof Symbol=="function"&&Symbol.metadata?Object.create(b[Symbol.metadata]??null):void 0;y=[m(),T("_markAllSubMeshesAsTexturesDirty")],f=[m(),T("_markAllSubMeshesAsTexturesDirty")],q=[m(),T("_markAllSubMeshesAsTexturesDirty")],o=[m(),T("_markScenePrePassDirty")],ae=[m()],ne=[m()],K=[m()],E=[m(),T("_markAllSubMeshesAsTexturesDirty")],me=[m(),T("_markAllSubMeshesAsTexturesDirty")],de=[X(),T("_markAllSubMeshesAsTexturesDirty")],ge=[X(),T("_markAllSubMeshesAsTexturesDirty")],Ce=[m(),T("_markAllSubMeshesAsTexturesDirty")],r=[m()],Ee=[m(),T("_markAllSubMeshesAsTexturesDirty")],Le=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ne=[m()],ke=[m()],Ye=[m()],je=[xe()],Je=[m()],et=[m()],it=[xe()],lt=[m(),T("_markAllSubMeshesAsTexturesDirty")],ct=[X(),T("_markAllSubMeshesAsTexturesDirty")],_t=[X(),T("_markAllSubMeshesAsTexturesDirty")],mt=[xe()],Rt=[X(),T("_markAllSubMeshesAsTexturesDirty")],St=[m(),T("_markAllSubMeshesAsTexturesDirty")],It=[m()],Mt=[m()],u(i,null,y,{kind:"accessor",name:"isRefractionEnabled",static:!1,private:!1,access:{has:t=>"isRefractionEnabled"in t,get:t=>t.isRefractionEnabled,set:(t,A)=>{t.isRefractionEnabled=A}},metadata:z},R,N),u(i,null,f,{kind:"accessor",name:"isTranslucencyEnabled",static:!1,private:!1,access:{has:t=>"isTranslucencyEnabled"in t,get:t=>t.isTranslucencyEnabled,set:(t,A)=>{t.isTranslucencyEnabled=A}},metadata:z},L,V),u(i,null,q,{kind:"accessor",name:"isDispersionEnabled",static:!1,private:!1,access:{has:t=>"isDispersionEnabled"in t,get:t=>t.isDispersionEnabled,set:(t,A)=>{t.isDispersionEnabled=A}},metadata:z},te,Y),u(i,null,o,{kind:"accessor",name:"isScatteringEnabled",static:!1,private:!1,access:{has:t=>"isScatteringEnabled"in t,get:t=>t.isScatteringEnabled,set:(t,A)=>{t.isScatteringEnabled=A}},metadata:z},D,J),u(i,null,E,{kind:"accessor",name:"useAlbedoToTintRefraction",static:!1,private:!1,access:{has:t=>"useAlbedoToTintRefraction"in t,get:t=>t.useAlbedoToTintRefraction,set:(t,A)=>{t.useAlbedoToTintRefraction=A}},metadata:z},w,_e),u(i,null,me,{kind:"accessor",name:"useAlbedoToTintTranslucency",static:!1,private:!1,access:{has:t=>"useAlbedoToTintTranslucency"in t,get:t=>t.useAlbedoToTintTranslucency,set:(t,A)=>{t.useAlbedoToTintTranslucency=A}},metadata:z},Re,Ae),u(i,null,de,{kind:"accessor",name:"thicknessTexture",static:!1,private:!1,access:{has:t=>"thicknessTexture"in t,get:t=>t.thicknessTexture,set:(t,A)=>{t.thicknessTexture=A}},metadata:z},Se,pe),u(i,null,ge,{kind:"accessor",name:"refractionTexture",static:!1,private:!1,access:{has:t=>"refractionTexture"in t,get:t=>t.refractionTexture,set:(t,A)=>{t.refractionTexture=A}},metadata:z},Ie,be),u(i,null,Ce,{kind:"accessor",name:"indexOfRefraction",static:!1,private:!1,access:{has:t=>"indexOfRefraction"in t,get:t=>t.indexOfRefraction,set:(t,A)=>{t.indexOfRefraction=A}},metadata:z},Me,Z),u(i,null,Ee,{kind:"accessor",name:"invertRefractionY",static:!1,private:!1,access:{has:t=>"invertRefractionY"in t,get:t=>t.invertRefractionY,set:(t,A)=>{t.invertRefractionY=A}},metadata:z},ye,De),u(i,null,Le,{kind:"accessor",name:"linkRefractionWithTransparency",static:!1,private:!1,access:{has:t=>"linkRefractionWithTransparency"in t,get:t=>t.linkRefractionWithTransparency,set:(t,A)=>{t.linkRefractionWithTransparency=A}},metadata:z},Oe,Fe),u(i,null,lt,{kind:"accessor",name:"useMaskFromThicknessTexture",static:!1,private:!1,access:{has:t=>"useMaskFromThicknessTexture"in t,get:t=>t.useMaskFromThicknessTexture,set:(t,A)=>{t.useMaskFromThicknessTexture=A}},metadata:z},nt,ut),u(i,null,ct,{kind:"accessor",name:"refractionIntensityTexture",static:!1,private:!1,access:{has:t=>"refractionIntensityTexture"in t,get:t=>t.refractionIntensityTexture,set:(t,A)=>{t.refractionIntensityTexture=A}},metadata:z},ot,ht),u(i,null,_t,{kind:"accessor",name:"translucencyIntensityTexture",static:!1,private:!1,access:{has:t=>"translucencyIntensityTexture"in t,get:t=>t.translucencyIntensityTexture,set:(t,A)=>{t.translucencyIntensityTexture=A}},metadata:z},Tt,ft),u(i,null,Rt,{kind:"accessor",name:"translucencyColorTexture",static:!1,private:!1,access:{has:t=>"translucencyColorTexture"in t,get:t=>t.translucencyColorTexture,set:(t,A)=>{t.translucencyColorTexture=A}},metadata:z},At,dt),u(i,null,St,{kind:"accessor",name:"useGltfStyleTextures",static:!1,private:!1,access:{has:t=>"useGltfStyleTextures"in t,get:t=>t.useGltfStyleTextures,set:(t,A)=>{t.useGltfStyleTextures=A}},metadata:z},pt,gt),u(null,null,ae,{kind:"field",name:"_scatteringDiffusionProfileIndex",static:!1,private:!1,access:{has:t=>"_scatteringDiffusionProfileIndex"in t,get:t=>t._scatteringDiffusionProfileIndex,set:(t,A)=>{t._scatteringDiffusionProfileIndex=A}},metadata:z},re,le),u(null,null,ne,{kind:"field",name:"refractionIntensity",static:!1,private:!1,access:{has:t=>"refractionIntensity"in t,get:t=>t.refractionIntensity,set:(t,A)=>{t.refractionIntensity=A}},metadata:z},ue,ce),u(null,null,K,{kind:"field",name:"translucencyIntensity",static:!1,private:!1,access:{has:t=>"translucencyIntensity"in t,get:t=>t.translucencyIntensity,set:(t,A)=>{t.translucencyIntensity=A}},metadata:z},c,C),u(null,null,r,{kind:"field",name:"_volumeIndexOfRefraction",static:!1,private:!1,access:{has:t=>"_volumeIndexOfRefraction"in t,get:t=>t._volumeIndexOfRefraction,set:(t,A)=>{t._volumeIndexOfRefraction=A}},metadata:z},O,ie),u(null,null,Ne,{kind:"field",name:"minimumThickness",static:!1,private:!1,access:{has:t=>"minimumThickness"in t,get:t=>t.minimumThickness,set:(t,A)=>{t.minimumThickness=A}},metadata:z},ve,Pe),u(null,null,ke,{kind:"field",name:"maximumThickness",static:!1,private:!1,access:{has:t=>"maximumThickness"in t,get:t=>t.maximumThickness,set:(t,A)=>{t.maximumThickness=A}},metadata:z},Ve,ze),u(null,null,Ye,{kind:"field",name:"useThicknessAsDepth",static:!1,private:!1,access:{has:t=>"useThicknessAsDepth"in t,get:t=>t.useThicknessAsDepth,set:(t,A)=>{t.useThicknessAsDepth=A}},metadata:z},Xe,Ke),u(null,null,je,{kind:"field",name:"tintColor",static:!1,private:!1,access:{has:t=>"tintColor"in t,get:t=>t.tintColor,set:(t,A)=>{t.tintColor=A}},metadata:z},Qe,Ze),u(null,null,Je,{kind:"field",name:"tintColorAtDistance",static:!1,private:!1,access:{has:t=>"tintColorAtDistance"in t,get:t=>t.tintColorAtDistance,set:(t,A)=>{t.tintColorAtDistance=A}},metadata:z},$e,qe),u(null,null,et,{kind:"field",name:"dispersion",static:!1,private:!1,access:{has:t=>"dispersion"in t,get:t=>t.dispersion,set:(t,A)=>{t.dispersion=A}},metadata:z},tt,st),u(null,null,it,{kind:"field",name:"diffusionDistance",static:!1,private:!1,access:{has:t=>"diffusionDistance"in t,get:t=>t.diffusionDistance,set:(t,A)=>{t.diffusionDistance=A}},metadata:z},at,rt),u(null,null,mt,{kind:"field",name:"translucencyColor",static:!1,private:!1,access:{has:t=>"translucencyColor"in t,get:t=>t.translucencyColor,set:(t,A)=>{t.translucencyColor=A}},metadata:z},Et,xt),u(null,null,It,{kind:"field",name:"applyAlbedoAfterSubSurface",static:!1,private:!1,access:{has:t=>"applyAlbedoAfterSubSurface"in t,get:t=>t.applyAlbedoAfterSubSurface,set:(t,A)=>{t.applyAlbedoAfterSubSurface=A}},metadata:z},bt,Ct),u(null,null,Mt,{kind:"field",name:"legacyTranslucency",static:!1,private:!1,access:{has:t=>"legacyTranslucency"in t,get:t=>t.legacyTranslucency,set:(t,A)=>{t.legacyTranslucency=A}},metadata:z},yt,Lt),z&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:z})})(),i.DEFAULT_APPLY_ALBEDO_AFTERSUBSURFACE=!1,i.DEFAULT_LEGACY_TRANSLUCENCY=!1,i})();const We={effect:null,subMesh:null};class Dr extends xr(Rr(Be)){}class La extends fr(Dr){constructor(v){super(v),this.PBR=!0,this.NUM_SAMPLES="0",this.REALTIME_FILTERING=!1,this.IBL_CDF_FILTERING=!1,this.ALBEDO=!1,this.GAMMAALBEDO=!1,this.ALBEDODIRECTUV=0,this.VERTEXCOLOR=!1,this.BASE_WEIGHT=!1,this.BASE_WEIGHTDIRECTUV=0,this.BASE_DIFFUSE_ROUGHNESS=!1,this.BASE_DIFFUSE_ROUGHNESSDIRECTUV=0,this.BAKED_VERTEX_ANIMATION_TEXTURE=!1,this.AMBIENT=!1,this.AMBIENTDIRECTUV=0,this.AMBIENTINGRAYSCALE=!1,this.OPACITY=!1,this.VERTEXALPHA=!1,this.OPACITYDIRECTUV=0,this.OPACITYRGB=!1,this.ALPHATEST=!1,this.DEPTHPREPASS=!1,this.ALPHABLEND=!1,this.ALPHAFROMALBEDO=!1,this.ALPHATESTVALUE="0.5",this.SPECULAROVERALPHA=!1,this.RADIANCEOVERALPHA=!1,this.ALPHAFRESNEL=!1,this.LINEARALPHAFRESNEL=!1,this.PREMULTIPLYALPHA=!1,this.EMISSIVE=!1,this.EMISSIVEDIRECTUV=0,this.GAMMAEMISSIVE=!1,this.REFLECTIVITY=!1,this.REFLECTIVITY_GAMMA=!1,this.REFLECTIVITYDIRECTUV=0,this.SPECULARTERM=!1,this.MICROSURFACEFROMREFLECTIVITYMAP=!1,this.MICROSURFACEAUTOMATIC=!1,this.LODBASEDMICROSFURACE=!1,this.MICROSURFACEMAP=!1,this.MICROSURFACEMAPDIRECTUV=0,this.METALLICWORKFLOW=!1,this.ROUGHNESSSTOREINMETALMAPALPHA=!1,this.ROUGHNESSSTOREINMETALMAPGREEN=!1,this.METALLNESSSTOREINMETALMAPBLUE=!1,this.AOSTOREINMETALMAPRED=!1,this.METALLIC_REFLECTANCE=!1,this.METALLIC_REFLECTANCE_GAMMA=!1,this.METALLIC_REFLECTANCEDIRECTUV=0,this.METALLIC_REFLECTANCE_USE_ALPHA_ONLY=!1,this.REFLECTANCE=!1,this.REFLECTANCE_GAMMA=!1,this.REFLECTANCEDIRECTUV=0,this.ENVIRONMENTBRDF=!1,this.ENVIRONMENTBRDF_RGBD=!1,this.NORMAL=!1,this.TANGENT=!1,this.BUMP=!1,this.BUMPDIRECTUV=0,this.OBJECTSPACE_NORMALMAP=!1,this.PARALLAX=!1,this.PARALLAX_RHS=!1,this.PARALLAXOCCLUSION=!1,this.NORMALXYSCALE=!0,this.LIGHTMAP=!1,this.LIGHTMAPDIRECTUV=0,this.USELIGHTMAPASSHADOWMAP=!1,this.GAMMALIGHTMAP=!1,this.RGBDLIGHTMAP=!1,this.REFLECTION=!1,this.REFLECTIONMAP_3D=!1,this.REFLECTIONMAP_SPHERICAL=!1,this.REFLECTIONMAP_PLANAR=!1,this.REFLECTIONMAP_CUBIC=!1,this.USE_LOCAL_REFLECTIONMAP_CUBIC=!1,this.REFLECTIONMAP_PROJECTION=!1,this.REFLECTIONMAP_SKYBOX=!1,this.REFLECTIONMAP_EXPLICIT=!1,this.REFLECTIONMAP_EQUIRECTANGULAR=!1,this.REFLECTIONMAP_EQUIRECTANGULAR_FIXED=!1,this.REFLECTIONMAP_MIRROREDEQUIRECTANGULAR_FIXED=!1,this.INVERTCUBICMAP=!1,this.USESPHERICALFROMREFLECTIONMAP=!1,this.USEIRRADIANCEMAP=!1,this.USE_IRRADIANCE_DOMINANT_DIRECTION=!1,this.USESPHERICALINVERTEX=!1,this.REFLECTIONMAP_OPPOSITEZ=!1,this.LODINREFLECTIONALPHA=!1,this.GAMMAREFLECTION=!1,this.RGBDREFLECTION=!1,this.LINEARSPECULARREFLECTION=!1,this.RADIANCEOCCLUSION=!1,this.HORIZONOCCLUSION=!1,this.INSTANCES=!1,this.THIN_INSTANCES=!1,this.INSTANCESCOLOR=!1,this.NUM_BONE_INFLUENCERS=0,this.BonesPerMesh=0,this.BONETEXTURE=!1,this.BONES_VELOCITY_ENABLED=!1,this.NONUNIFORMSCALING=!1,this.MORPHTARGETS=!1,this.MORPHTARGETS_POSITION=!1,this.MORPHTARGETS_NORMAL=!1,this.MORPHTARGETS_TANGENT=!1,this.MORPHTARGETS_UV=!1,this.MORPHTARGETS_UV2=!1,this.MORPHTARGETS_COLOR=!1,this.MORPHTARGETTEXTURE_HASPOSITIONS=!1,this.MORPHTARGETTEXTURE_HASNORMALS=!1,this.MORPHTARGETTEXTURE_HASTANGENTS=!1,this.MORPHTARGETTEXTURE_HASUVS=!1,this.MORPHTARGETTEXTURE_HASUV2S=!1,this.MORPHTARGETTEXTURE_HASCOLORS=!1,this.NUM_MORPH_INFLUENCERS=0,this.MORPHTARGETS_TEXTURE=!1,this.MULTIVIEW=!1,this.ORDER_INDEPENDENT_TRANSPARENCY=!1,this.ORDER_INDEPENDENT_TRANSPARENCY_16BITS=!1,this.USEPHYSICALLIGHTFALLOFF=!1,this.USEGLTFLIGHTFALLOFF=!1,this.TWOSIDEDLIGHTING=!1,this.MIRRORED=!1,this.SHADOWFLOAT=!1,this.CLIPPLANE=!1,this.CLIPPLANE2=!1,this.CLIPPLANE3=!1,this.CLIPPLANE4=!1,this.CLIPPLANE5=!1,this.CLIPPLANE6=!1,this.POINTSIZE=!1,this.FOG=!1,this.LOGARITHMICDEPTH=!1,this.CAMERA_ORTHOGRAPHIC=!1,this.CAMERA_PERSPECTIVE=!1,this.AREALIGHTSUPPORTED=!0,this.FORCENORMALFORWARD=!1,this.SPECULARAA=!1,this.UNLIT=!1,this.DECAL_AFTER_DETAIL=!1,this.TEXTURE_REPETITION_MODE=0,this.DEBUGMODE=0,this.USE_VERTEX_PULLING=!1,this.VERTEX_PULLING_USE_INDEX_BUFFER=!1,this.VERTEX_PULLING_INDEX_BUFFER_32BITS=!1,this.RIGHT_HANDED=!1,this.CLUSTLIGHT_SLICES=0,this.CLUSTLIGHT_BATCH=0,this.rebuild()}reset(){super.reset(),this.ALPHATESTVALUE="0.5",this.PBR=!0,this.NORMALXYSCALE=!0}}class Pr extends mr(Er){}let he=(()=>{var i,v;let k=Pr,U,G=[],W=[];return i=class extends k{get realTimeFiltering(){return this._realTimeFiltering}set realTimeFiltering(l){this._realTimeFiltering=l,this.markAsDirty(1)}get realTimeFilteringQuality(){return this._realTimeFilteringQuality}set realTimeFilteringQuality(l){this._realTimeFilteringQuality=l,this.markAsDirty(1)}get canRenderToMRT(){return!0}get debugMode(){return h(this,v,"f")}set debugMode(l){_(this,v,l,"f")}constructor(l,d,a=!1){super(l,d,void 0,a||i.ForceGLSL),this._directIntensity=1,this._emissiveIntensity=1,this._environmentIntensity=1,this._specularIntensity=1,this._lightingInfos=new Da(this._directIntensity,this._emissiveIntensity,this._environmentIntensity,this._specularIntensity),this._disableBumpMap=!1,this._albedoTexture=null,this._baseWeightTexture=null,this._baseDiffuseRoughnessTexture=null,this._ambientTexture=null,this._ambientTextureStrength=1,this._ambientTextureImpactOnAnalyticalLights=i.DEFAULT_AO_ON_ANALYTICAL_LIGHTS,this._opacityTexture=null,this._reflectionTexture=null,this._emissiveTexture=null,this._reflectivityTexture=null,this._metallicTexture=null,this._metallic=null,this._roughness=null,this._metallicF0Factor=1,this._metallicReflectanceColor=se.White(),this._useOnlyMetallicFromMetallicReflectanceTexture=!1,this._metallicReflectanceTexture=null,this._reflectanceTexture=null,this._microSurfaceTexture=null,this._bumpTexture=null,this._lightmapTexture=null,this._ambientColor=new se(0,0,0),this._albedoColor=new se(1,1,1),this._baseWeight=1,this._baseDiffuseRoughness=null,this._reflectivityColor=new se(1,1,1),this._reflectionColor=new se(1,1,1),this._emissiveColor=new se(0,0,0),this._microSurface=.9,this._useLightmapAsShadowmap=!1,this._useHorizonOcclusion=!0,this._useRadianceOcclusion=!0,this._useAlphaFromAlbedoTexture=!1,this._useSpecularOverAlpha=!0,this._useMicroSurfaceFromReflectivityMapAlpha=!1,this._useRoughnessFromMetallicTextureAlpha=!0,this._useRoughnessFromMetallicTextureGreen=!1,this._useMetallnessFromMetallicTextureBlue=!1,this._useAmbientOcclusionFromMetallicTextureRed=!1,this._useAmbientInGrayScale=!1,this._useAutoMicroSurfaceFromReflectivityMap=!1,this._lightFalloff=i.LIGHTFALLOFF_PHYSICAL,this._useRadianceOverAlpha=!0,this._useObjectSpaceNormalMap=!1,this._useParallax=!1,this._useParallaxOcclusion=!1,this._parallaxScaleBias=.05,this._disableLighting=!1,this._maxSimultaneousLights=4,this._invertNormalMapX=!1,this._invertNormalMapY=!1,this._twoSidedLighting=!1,this._alphaCutOff=.4,this._useAlphaFresnel=!1,this._useLinearAlphaFresnel=!1,this._environmentBRDFTexture=null,this._forceIrradianceInFragment=!1,this._realTimeFiltering=!1,this._realTimeFilteringQuality=8,this._forceNormalForward=!1,this._enableSpecularAntiAliasing=!1,this._renderTargets=new Pa(16),this._globalAmbientColor=new se(0,0,0),this._unlit=!1,this._applyDecalMapAfterDetailMap=!1,this._debugMode=0,this._shadersLoaded=!1,this._breakShaderLoadedCheck=!1,this._vertexPullingMetadata=null,v.set(this,s(this,G,0)),this.debugLimit=(s(this,W),-1),this.debugFactor=1,this._cacheHasRenderTargetTextures=!1,this.brdf=new gr(this),this.clearCoat=new br(this),this.iridescence=new Mr(this),this.anisotropy=new Lr(this),this.sheen=new Fr(this),this.subSurface=new vr(this),this.detailMap=new ka(this),this._attachImageProcessingConfiguration(null),this.getRenderTargetTextures=()=>(this._renderTargets.reset(),x.ReflectionTextureEnabled&&this._reflectionTexture&&this._reflectionTexture.isRenderTarget&&this._renderTargets.push(this._reflectionTexture),this._eventInfo.renderTargets=this._renderTargets,this._callbackPluginEventFillRenderTargetTextures(this._eventInfo),this._renderTargets),this._environmentBRDFTexture=Fa(this.getScene()),this.prePassConfiguration=new Ma}get hasRenderTargetTextures(){return x.ReflectionTextureEnabled&&this._reflectionTexture&&this._reflectionTexture.isRenderTarget?!0:this._cacheHasRenderTargetTextures}get isPrePassCapable(){return!this.disableDepthWrite}getClassName(){return"PBRBaseMaterial"}get _disableAlphaBlending(){return this._transparencyMode===i.PBRMATERIAL_OPAQUE||this._transparencyMode===i.PBRMATERIAL_ALPHATEST||this.subSurface?.disableAlphaBlending}needAlphaBlending(){return this._hasTransparencyMode?this._transparencyModeIsBlend:this._disableAlphaBlending?!1:this.alpha<1||this._opacityTexture!=null||this._shouldUseAlphaFromAlbedoTexture()}needAlphaTesting(){return this._hasTransparencyMode?this._transparencyModeIsTest:this.subSurface?.disableAlphaBlending?!1:this._hasAlphaChannel()&&(this._transparencyMode==null||this._transparencyMode===i.PBRMATERIAL_ALPHATEST)}_shouldUseAlphaFromAlbedoTexture(){return this._albedoTexture!=null&&this._albedoTexture.hasAlpha&&this._useAlphaFromAlbedoTexture&&this._transparencyMode!==i.PBRMATERIAL_OPAQUE}_hasAlphaChannel(){return this._albedoTexture!=null&&this._albedoTexture.hasAlpha||this._opacityTexture!=null}getAlphaTestTexture(){return this._albedoTexture}isReadyForSubMesh(l,d,a){this._uniformBufferLayoutBuilt||this.buildUniformLayout();const I=d._drawWrapper;if(I.effect&&this.isFrozen&&I._wasPreviouslyReady&&I._wasPreviouslyUsingInstances===a)return!0;d.materialDefines||(this._callbackPluginEventGeneric(4,this._eventInfo),d.materialDefines=new La(this._eventInfo.defineNames));const g=d.materialDefines;if(this._isReadyForSubMesh(d))return!0;const F=this.getScene(),M=F.getEngine();if(g._areTexturesDirty&&(this._eventInfo.hasRenderTargetTextures=!1,this._callbackPluginEventHasRenderTargetTextures(this._eventInfo),this._cacheHasRenderTargetTextures=this._eventInfo.hasRenderTargetTextures,F.texturesEnabled)){if(this._albedoTexture&&x.DiffuseTextureEnabled&&!this._albedoTexture.isReadyOrNotBlocking()||this._baseWeightTexture&&x.BaseWeightTextureEnabled&&!this._baseWeightTexture.isReadyOrNotBlocking()||this._baseDiffuseRoughnessTexture&&x.BaseDiffuseRoughnessTextureEnabled&&!this._baseDiffuseRoughnessTexture.isReadyOrNotBlocking()||this._ambientTexture&&x.AmbientTextureEnabled&&!this._ambientTexture.isReadyOrNotBlocking()||this._opacityTexture&&x.OpacityTextureEnabled&&!this._opacityTexture.isReadyOrNotBlocking())return!1;const y=this._getReflectionTexture();if(y&&x.ReflectionTextureEnabled){if(!y.isReadyOrNotBlocking())return!1;if(y.irradianceTexture){if(!y.irradianceTexture.isReadyOrNotBlocking())return!1}else if(!y.sphericalPolynomial&&y.getInternalTexture()?._sphericalPolynomialPromise)return!1}if(this._lightmapTexture&&x.LightmapTextureEnabled&&!this._lightmapTexture.isReadyOrNotBlocking()||this._emissiveTexture&&x.EmissiveTextureEnabled&&!this._emissiveTexture.isReadyOrNotBlocking())return!1;if(x.SpecularTextureEnabled){if(this._metallicTexture){if(!this._metallicTexture.isReadyOrNotBlocking())return!1}else if(this._reflectivityTexture&&!this._reflectivityTexture.isReadyOrNotBlocking())return!1;if(this._metallicReflectanceTexture&&!this._metallicReflectanceTexture.isReadyOrNotBlocking()||this._reflectanceTexture&&!this._reflectanceTexture.isReadyOrNotBlocking()||this._microSurfaceTexture&&!this._microSurfaceTexture.isReadyOrNotBlocking())return!1}if(M.getCaps().standardDerivatives&&this._bumpTexture&&x.BumpTextureEnabled&&!this._disableBumpMap&&!this._bumpTexture.isReady()||this._environmentBRDFTexture&&x.ReflectionTextureEnabled&&!this._environmentBRDFTexture.isReady())return!1}if(this._eventInfo.isReadyForSubMesh=!0,this._eventInfo.defines=g,this._eventInfo.subMesh=d,this._callbackPluginEventIsReadyForSubMesh(this._eventInfo),!this._eventInfo.isReadyForSubMesh||g._areImageProcessingDirty&&this._imageProcessingConfiguration&&!this._imageProcessingConfiguration.isReady())return!1;if(g.AREALIGHTUSED||g.CLUSTLIGHT_BATCH){for(let y=0;y<l.lightSources.length;y++)if(!l.lightSources[y]._isReady())return!1}if(!M.getCaps().standardDerivatives&&!l.isVerticesDataPresent(Ue.NormalKind)&&(l.createNormals(!0),Ua.Warn("PBRMaterial: Normals have been created for the mesh: "+l.name)),!Ba(F,l,this._maxSimultaneousLights,this._disableLighting))return!1;const P=d.effect,B=g._areLightsDisposed,p=this._prepareEffect(l,d.getRenderingMesh(),g,this.onCompiled,this.onError,a,null);let b=!1;if(p)if(this._onEffectCreatedObservable&&(We.effect=p,We.subMesh=d,this._onEffectCreatedObservable.notifyObservers(We)),this.allowShaderHotSwapping&&P&&!p.isReady()){if(g.markAsUnprocessed(),b=this.isFrozen,B)return g._areLightsDisposed=!0,!1}else F.resetCachedMaterial(),d.setEffect(p,g,this._materialContext);return!d.effect||!d.effect.isReady()?!1:(g._renderId=F.getRenderId(),I._wasPreviouslyReady=!b,I._wasPreviouslyUsingInstances=!!a,this._checkScenePerformancePriority(),!0)}isMetallicWorkflow(){return!!(this._metallic!=null||this._roughness!=null||this._metallicTexture)}_prepareEffect(l,d,a,I=null,g=null,F=null,M=null){if(this._prepareDefines(l,d,a,F,M),!a.isDirty)return null;a.markAsProcessed();const B=this.getScene().getEngine(),p=new za;let b=0;a.USESPHERICALINVERTEX&&p.addFallback(b++,"USESPHERICALINVERTEX"),a.FOG&&p.addFallback(b,"FOG"),a.SPECULARAA&&p.addFallback(b,"SPECULARAA"),a.POINTSIZE&&p.addFallback(b,"POINTSIZE"),a.LOGARITHMICDEPTH&&p.addFallback(b,"LOGARITHMICDEPTH"),a.PARALLAX&&p.addFallback(b,"PARALLAX"),a.PARALLAX_RHS&&p.addFallback(b,"PARALLAX_RHS"),a.PARALLAXOCCLUSION&&p.addFallback(b++,"PARALLAXOCCLUSION"),a.ENVIRONMENTBRDF&&p.addFallback(b++,"ENVIRONMENTBRDF"),a.TANGENT&&p.addFallback(b++,"TANGENT"),a.BUMP&&p.addFallback(b++,"BUMP"),b=Ha(a,p,this._maxSimultaneousLights,b),a.SPECULARTERM&&p.addFallback(b++,"SPECULARTERM"),a.USESPHERICALFROMREFLECTIONMAP&&p.addFallback(b++,"USESPHERICALFROMREFLECTIONMAP"),a.USEIRRADIANCEMAP&&p.addFallback(b++,"USEIRRADIANCEMAP"),a.LIGHTMAP&&p.addFallback(b++,"LIGHTMAP"),a.NORMAL&&p.addFallback(b++,"NORMAL"),a.AMBIENT&&p.addFallback(b++,"AMBIENT"),a.EMISSIVE&&p.addFallback(b++,"EMISSIVE"),a.VERTEXCOLOR&&p.addFallback(b++,"VERTEXCOLOR"),a.MORPHTARGETS&&p.addFallback(b++,"MORPHTARGETS"),a.MULTIVIEW&&p.addFallback(0,"MULTIVIEW");const y=[Ue.PositionKind];a.NORMAL&&y.push(Ue.NormalKind),a.TANGENT&&y.push(Ue.TangentKind);for(let o=1;o<=6;++o)a["UV"+o]&&y.push(`uv${o===1?"":o}`);a.VERTEXCOLOR&&y.push(Ue.ColorKind),Ga(y,l,a,p),Wa(y,a),wa(y,l,a),Va(y,l,a);let R="pbr";const N=["world","view","viewProjection","vEyePosition","vLightsType","vAmbientColor","vAlbedoColor","baseWeight","baseDiffuseRoughness","vReflectivityColor","vMetallicReflectanceFactors","vEmissiveColor","visibility","vFogInfos","vFogColor","pointSize","vAlbedoInfos","vBaseWeightInfos","vBaseDiffuseRoughnessInfos","vAmbientInfos","vOpacityInfos","vEmissiveInfos","vReflectivityInfos","vMetallicReflectanceInfos","vReflectanceInfos","vMicroSurfaceSamplerInfos","vBumpInfos","vLightmapInfos","mBones","albedoMatrix","baseWeightMatrix","baseDiffuseRoughnessMatrix","ambientMatrix","opacityMatrix","emissiveMatrix","reflectivityMatrix","normalMatrix","microSurfaceSamplerMatrix","bumpMatrix","lightmapMatrix","metallicReflectanceMatrix","reflectanceMatrix","vLightingIntensity","logarithmicDepthConstant","vTangentSpaceParams","boneTextureInfo","vDebugMode","morphTargetTextureInfo","morphTargetTextureIndices","cameraInfo","vTextureRepetitionHexTilingParams"],f=["albedoSampler","baseWeightSampler","baseDiffuseRoughnessSampler","reflectivitySampler","ambientSampler","emissiveSampler","bumpSampler","lightmapSampler","opacitySampler","microSurfaceSampler","environmentBrdfSampler","boneSampler","metallicReflectanceSampler","reflectanceSampler","morphTargets","oitDepthSampler","oitFrontColorSampler","areaLightsLTC1Sampler","areaLightsLTC2Sampler"];Ya(N,f,!0);const L=["Material","Scene","Mesh"],V={maxSimultaneousLights:this._maxSimultaneousLights,maxSimultaneousMorphTargets:a.NUM_MORPH_INFLUENCERS};if(this._eventInfo.fallbacks=p,this._eventInfo.fallbackRank=b,this._eventInfo.defines=a,this._eventInfo.uniforms=N,this._eventInfo.attributes=y,this._eventInfo.samplers=f,this._eventInfo.uniformBuffersNames=L,this._eventInfo.customCode=void 0,this._eventInfo.mesh=l,this._eventInfo.indexParameters=V,this._callbackPluginEventGeneric(128,this._eventInfo),Ht.AddUniformsAndSamplers(N,f),Ma.AddUniforms(N),Xa(N),this._useVertexPulling){const o=d?.geometry;o&&(this._vertexPullingMetadata=Ka(o),this._vertexPullingMetadata&&this._vertexPullingMetadata.forEach((D,J)=>{N.push(`vp_${J}_info`)}))}else this._vertexPullingMetadata=null;Gt&&(Gt.PrepareUniforms(N,a),Gt.PrepareSamplers(f,a)),ja({uniformsNames:N,uniformBuffersNames:L,samplers:f,defines:a,maxSimultaneousLights:this._maxSimultaneousLights,shaderLanguage:this._shaderLanguage});const q={};this.customShaderNameResolve&&(R=this.customShaderNameResolve(R,N,L,f,a,y,q));const te=a.toString(),Y=B.createEffect(R,{attributes:y,uniformsNames:N,uniformBuffersNames:L,samplers:f,defines:te,fallbacks:p,onCompiled:I,onError:g,indexParameters:V,processFinalCode:q.processFinalCode,processCodeAfterIncludes:this._eventInfo.customCode,multiTarget:a.PREPASS,shaderLanguage:this._shaderLanguage,extraInitializationsAsync:this._shadersLoaded?void 0:async()=>{this.shaderLanguage===1?await Promise.all([zt(()=>import("./pbr.vertex-PBjkpyNN.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]),import.meta.url),zt(()=>import("./pbr.fragment-sZ-foSaO.js"),__vite__mapDeps([17,1,2,18,3,4,5,7,19,20,21,22,15,23,8,11,9,24,25]),import.meta.url)]):await Promise.all([zt(()=>import("./index-JRwY7p9T.js").then(o=>o.cQ),__vite__mapDeps([1,2]),import.meta.url),zt(()=>import("./index-JRwY7p9T.js").then(o=>o.cP),__vite__mapDeps([1,2]),import.meta.url)]),this._shadersLoaded=!0}},B);return this._eventInfo.customCode=void 0,Y}_prepareDefines(l,d,a,I=null,g=null){const F=d.hasThinInstances,M=this.getScene(),P=M.getEngine();Qa(M,l,a,!0,this._maxSimultaneousLights,this._disableLighting),a._needNormals=!0,Za(M,a);const B=this.needAlphaBlendingForMesh(l)&&this.getScene().useOrderIndependentTransparency;if(Ja(M,a,this.canRenderToMRT&&!B),$a(M,a,B),Ht.PrepareDefines(P.currentRenderPassId,l,a),a.METALLICWORKFLOW=this.isMetallicWorkflow(),a._areTexturesDirty){a._needUVs=!1;for(let p=1;p<=6;++p)a["MAINUV"+p]=!1;if(M.texturesEnabled){a.ALBEDODIRECTUV=0,a.BASE_WEIGHTDIRECTUV=0,a.BASE_DIFFUSE_ROUGHNESSDIRECTUV=0,a.AMBIENTDIRECTUV=0,a.OPACITYDIRECTUV=0,a.EMISSIVEDIRECTUV=0,a.REFLECTIVITYDIRECTUV=0,a.MICROSURFACEMAPDIRECTUV=0,a.METALLIC_REFLECTANCEDIRECTUV=0,a.REFLECTANCEDIRECTUV=0,a.BUMPDIRECTUV=0,a.LIGHTMAPDIRECTUV=0,P.getCaps().textureLOD&&(a.LODBASEDMICROSFURACE=!0),this._albedoTexture&&x.DiffuseTextureEnabled?(j(this._albedoTexture,a,"ALBEDO"),a.GAMMAALBEDO=this._albedoTexture.gammaSpace):a.ALBEDO=!1,this._baseWeightTexture&&x.BaseWeightTextureEnabled?j(this._baseWeightTexture,a,"BASE_WEIGHT"):a.BASE_WEIGHT=!1,this._baseDiffuseRoughnessTexture&&x.BaseDiffuseRoughnessTextureEnabled?j(this._baseDiffuseRoughnessTexture,a,"BASE_DIFFUSE_ROUGHNESS"):a.BASE_DIFFUSE_ROUGHNESS=!1,this._ambientTexture&&x.AmbientTextureEnabled?(j(this._ambientTexture,a,"AMBIENT"),a.AMBIENTINGRAYSCALE=this._useAmbientInGrayScale):a.AMBIENT=!1,this._opacityTexture&&x.OpacityTextureEnabled?(j(this._opacityTexture,a,"OPACITY"),a.OPACITYRGB=this._opacityTexture.getAlphaFromRGB):a.OPACITY=!1;const p=this._getReflectionTexture(),b=this._forceIrradianceInFragment||this.realTimeFiltering||this._twoSidedLighting||P.getCaps().maxVaryingVectors<=8||this._baseDiffuseRoughnessTexture!=null;qa(M,p,a,this.realTimeFiltering,this.realTimeFilteringQuality,!b),this._lightmapTexture&&x.LightmapTextureEnabled?(j(this._lightmapTexture,a,"LIGHTMAP"),a.USELIGHTMAPASSHADOWMAP=this._useLightmapAsShadowmap,a.GAMMALIGHTMAP=this._lightmapTexture.gammaSpace,a.RGBDLIGHTMAP=this._lightmapTexture.isRGBD):a.LIGHTMAP=!1,this._emissiveTexture&&x.EmissiveTextureEnabled?(j(this._emissiveTexture,a,"EMISSIVE"),a.GAMMAEMISSIVE=this._emissiveTexture.gammaSpace):a.EMISSIVE=!1,x.SpecularTextureEnabled?(this._metallicTexture?(j(this._metallicTexture,a,"REFLECTIVITY"),a.ROUGHNESSSTOREINMETALMAPALPHA=this._useRoughnessFromMetallicTextureAlpha,a.ROUGHNESSSTOREINMETALMAPGREEN=!this._useRoughnessFromMetallicTextureAlpha&&this._useRoughnessFromMetallicTextureGreen,a.METALLNESSSTOREINMETALMAPBLUE=this._useMetallnessFromMetallicTextureBlue,a.AOSTOREINMETALMAPRED=this._useAmbientOcclusionFromMetallicTextureRed,a.REFLECTIVITY_GAMMA=!1):this._reflectivityTexture?(j(this._reflectivityTexture,a,"REFLECTIVITY"),a.MICROSURFACEFROMREFLECTIVITYMAP=this._useMicroSurfaceFromReflectivityMapAlpha,a.MICROSURFACEAUTOMATIC=this._useAutoMicroSurfaceFromReflectivityMap,a.REFLECTIVITY_GAMMA=this._reflectivityTexture.gammaSpace):a.REFLECTIVITY=!1,this._metallicReflectanceTexture||this._reflectanceTexture?(a.METALLIC_REFLECTANCE_USE_ALPHA_ONLY=this._useOnlyMetallicFromMetallicReflectanceTexture,this._metallicReflectanceTexture?(j(this._metallicReflectanceTexture,a,"METALLIC_REFLECTANCE"),a.METALLIC_REFLECTANCE_GAMMA=this._metallicReflectanceTexture.gammaSpace):a.METALLIC_REFLECTANCE=!1,this._reflectanceTexture&&(!this._metallicReflectanceTexture||this._metallicReflectanceTexture&&this._useOnlyMetallicFromMetallicReflectanceTexture)?(j(this._reflectanceTexture,a,"REFLECTANCE"),a.REFLECTANCE_GAMMA=this._reflectanceTexture.gammaSpace):a.REFLECTANCE=!1):(a.METALLIC_REFLECTANCE=!1,a.REFLECTANCE=!1),this._microSurfaceTexture?j(this._microSurfaceTexture,a,"MICROSURFACEMAP"):a.MICROSURFACEMAP=!1):(a.REFLECTIVITY=!1,a.MICROSURFACEMAP=!1),P.getCaps().standardDerivatives&&this._bumpTexture&&x.BumpTextureEnabled&&!this._disableBumpMap?(j(this._bumpTexture,a,"BUMP"),this._useParallax&&this._albedoTexture&&x.DiffuseTextureEnabled?(a.PARALLAX=!0,a.PARALLAX_RHS=M.useRightHandedSystem,a.PARALLAXOCCLUSION=!!this._useParallaxOcclusion):a.PARALLAX=!1,a.OBJECTSPACE_NORMALMAP=this._useObjectSpaceNormalMap):(a.BUMP=!1,a.PARALLAX=!1,a.PARALLAX_RHS=!1,a.PARALLAXOCCLUSION=!1,a.OBJECTSPACE_NORMALMAP=!1),this._environmentBRDFTexture&&x.ReflectionTextureEnabled?(a.ENVIRONMENTBRDF=!0,a.ENVIRONMENTBRDF_RGBD=this._environmentBRDFTexture.isRGBD):(a.ENVIRONMENTBRDF=!1,a.ENVIRONMENTBRDF_RGBD=!1),this._shouldUseAlphaFromAlbedoTexture()?a.ALPHAFROMALBEDO=!0:a.ALPHAFROMALBEDO=!1}a.SPECULAROVERALPHA=this._useSpecularOverAlpha,this._lightFalloff===i.LIGHTFALLOFF_STANDARD?(a.USEPHYSICALLIGHTFALLOFF=!1,a.USEGLTFLIGHTFALLOFF=!1):this._lightFalloff===i.LIGHTFALLOFF_GLTF?(a.USEPHYSICALLIGHTFALLOFF=!1,a.USEGLTFLIGHTFALLOFF=!0):(a.USEPHYSICALLIGHTFALLOFF=!0,a.USEGLTFLIGHTFALLOFF=!1),a.RADIANCEOVERALPHA=this._useRadianceOverAlpha,!this.backFaceCulling&&this._twoSidedLighting?a.TWOSIDEDLIGHTING=!0:a.TWOSIDEDLIGHTING=!1,a.MIRRORED=!!M._mirroredCameraPosition,a.SPECULARAA=P.getCaps().standardDerivatives&&this._enableSpecularAntiAliasing}(a._areTexturesDirty||a._areMiscDirty)&&(a.ALPHATESTVALUE=`${this._alphaCutOff}${this._alphaCutOff%1===0?".":""}`,a.PREMULTIPLYALPHA=this.alphaMode===7||this.alphaMode===8,a.ALPHABLEND=this.needAlphaBlendingForMesh(l),a.ALPHAFRESNEL=this._useAlphaFresnel||this._useLinearAlphaFresnel,a.LINEARALPHAFRESNEL=this._useLinearAlphaFresnel),a._areTexturesDirty&&(a.TEXTURE_REPETITION_MODE=P.version>1||P.isWebGPU?this.textureRepetitionMode:0),a._areImageProcessingDirty&&this._imageProcessingConfiguration&&this._imageProcessingConfiguration.prepareDefines(a),a.FORCENORMALFORWARD=this._forceNormalForward,a.RADIANCEOCCLUSION=this._useRadianceOcclusion,a.HORIZONOCCLUSION=this._useHorizonOcclusion,a._areMiscDirty&&(er(l,M,this._useLogarithmicDepth,this.pointsCloud,this.fogEnabled,this.needAlphaTestingForMesh(l),a,this._applyDecalMapAfterDetailMap,this._useVertexPulling,d,this._isVertexOutputInvariant),a.UNLIT=this._unlit||(this.pointsCloud||this.wireframe)&&!l.isVerticesDataPresent(Ue.NormalKind),a.DEBUGMODE=this._debugMode),tr(M,P,this,a,!!I,g,F),this._eventInfo.defines=a,this._eventInfo.mesh=l,this._callbackPluginEventPrepareDefinesBeforeAttributes(this._eventInfo),sr(l,a,!0,!0,!0,this._transparencyMode!==i.PBRMATERIAL_OPAQUE),this._callbackPluginEventPrepareDefines(this._eventInfo)}forceCompilation(l,d,a){const I={clipPlane:!1,useInstances:!1,...a};this._uniformBufferLayoutBuilt||this.buildUniformLayout(),this._callbackPluginEventGeneric(4,this._eventInfo),(()=>{if(this._breakShaderLoadedCheck)return;const F=new La(this._eventInfo.defineNames),M=this._prepareEffect(l,l,F,void 0,void 0,I.useInstances,I.clipPlane);this._onEffectCreatedObservable&&(We.effect=M,We.subMesh=null,this._onEffectCreatedObservable.notifyObservers(We)),M.isReady()?d&&d(this):M.onCompileObservable.add(()=>{d&&d(this)})})()}buildUniformLayout(){const l=this._uniformBuffer;l.addUniform("vAlbedoInfos",2),l.addUniform("vBaseWeightInfos",2),l.addUniform("vBaseDiffuseRoughnessInfos",2),l.addUniform("vAmbientInfos",4),l.addUniform("vOpacityInfos",2),l.addUniform("vEmissiveInfos",2),l.addUniform("vLightmapInfos",2),l.addUniform("vReflectivityInfos",3),l.addUniform("vMicroSurfaceSamplerInfos",2),l.addUniform("vBumpInfos",3),l.addUniform("albedoMatrix",16),l.addUniform("baseWeightMatrix",16),l.addUniform("baseDiffuseRoughnessMatrix",16),l.addUniform("ambientMatrix",16),l.addUniform("opacityMatrix",16),l.addUniform("emissiveMatrix",16),l.addUniform("lightmapMatrix",16),l.addUniform("reflectivityMatrix",16),l.addUniform("microSurfaceSamplerMatrix",16),l.addUniform("bumpMatrix",16),l.addUniform("vTangentSpaceParams",2),l.addUniform("vAlbedoColor",4),l.addUniform("baseWeight",1),l.addUniform("baseDiffuseRoughness",1),l.addUniform("vLightingIntensity",4),l.addUniform("pointSize",1),l.addUniform("vReflectivityColor",4),l.addUniform("vEmissiveColor",3),l.addUniform("vAmbientColor",3),l.addUniform("vDebugMode",2),l.addUniform("vMetallicReflectanceFactors",4),l.addUniform("vMetallicReflectanceInfos",2),l.addUniform("metallicReflectanceMatrix",16),l.addUniform("vReflectanceInfos",2),l.addUniform("reflectanceMatrix",16),l.addUniform("cameraInfo",4),l.addUniform("vTextureRepetitionHexTilingParams",4),ir(l,!0,!0,!0,!0,!0),super.buildUniformLayout()}bindForSubMesh(l,d,a){const I=this.getScene(),g=a.materialDefines;if(!g)return;const F=a.effect;if(!F)return;this._activeEffect=F,d.getMeshUniformBuffer().bindToEffect(F,"Mesh"),d.transferToEffect(l);const M=I.getEngine();this._uniformBuffer.bindToEffect(F,"Material"),this.prePassConfiguration.bindForSubMesh(this._activeEffect,I,d,l,this.isFrozen),Ht.Bind(M.currentRenderPassId,this._activeEffect,d,l,this);const P=I.activeCamera;P?this._uniformBuffer.updateFloat4("cameraInfo",P.minZ,P.maxZ,0,0):this._uniformBuffer.updateFloat4("cameraInfo",0,0,0,0);const B=this.textureRepetitionHexTilingParams;this._uniformBuffer.updateFloat4("vTextureRepetitionHexTilingParams",B[0],B[1],B[2],B[3]),this._eventInfo.subMesh=a,this._callbackPluginEventHardBindForSubMesh(this._eventInfo),g.OBJECTSPACE_NORMALMAP&&(l.toNormalMatrix(this._normalMatrix),this.bindOnlyNormalMatrix(this._normalMatrix));const p=this._mustRebind(I,F,a,d.visibility),b=M._features.needToAlwaysBindUniformBuffers;ar(d,this._activeEffect,this.prePassConfiguration),this._vertexPullingMetadata&&rr(this._activeEffect,this._vertexPullingMetadata);let y=null;const R=this._uniformBuffer;if(p){if(this.bindViewProjection(F),y=this._getReflectionTexture(),!R.useUbo||!this.isFrozen||!R.isSync||a._drawWrapper._forceRebindOnNextCall){if(I.texturesEnabled&&(this._albedoTexture&&x.DiffuseTextureEnabled&&(R.updateFloat2("vAlbedoInfos",this._albedoTexture.coordinatesIndex,this._albedoTexture.level),Q(this._albedoTexture,R,"albedo")),this._baseWeightTexture&&x.BaseWeightTextureEnabled&&(R.updateFloat2("vBaseWeightInfos",this._baseWeightTexture.coordinatesIndex,this._baseWeightTexture.level),Q(this._baseWeightTexture,R,"baseWeight")),this._baseDiffuseRoughnessTexture&&x.BaseDiffuseRoughnessTextureEnabled&&(R.updateFloat2("vBaseDiffuseRoughnessInfos",this._baseDiffuseRoughnessTexture.coordinatesIndex,this._baseDiffuseRoughnessTexture.level),Q(this._baseDiffuseRoughnessTexture,R,"baseDiffuseRoughness")),this._ambientTexture&&x.AmbientTextureEnabled&&(R.updateFloat4("vAmbientInfos",this._ambientTexture.coordinatesIndex,this._ambientTexture.level,this._ambientTextureStrength,this._ambientTextureImpactOnAnalyticalLights),Q(this._ambientTexture,R,"ambient")),this._opacityTexture&&x.OpacityTextureEnabled&&(R.updateFloat2("vOpacityInfos",this._opacityTexture.coordinatesIndex,this._opacityTexture.level),Q(this._opacityTexture,R,"opacity")),this._emissiveTexture&&x.EmissiveTextureEnabled&&(R.updateFloat2("vEmissiveInfos",this._emissiveTexture.coordinatesIndex,this._emissiveTexture.level),Q(this._emissiveTexture,R,"emissive")),this._lightmapTexture&&x.LightmapTextureEnabled&&(R.updateFloat2("vLightmapInfos",this._lightmapTexture.coordinatesIndex,this._lightmapTexture.level),Q(this._lightmapTexture,R,"lightmap")),x.SpecularTextureEnabled&&(this._metallicTexture?(R.updateFloat3("vReflectivityInfos",this._metallicTexture.coordinatesIndex,this._metallicTexture.level,this._ambientTextureStrength),Q(this._metallicTexture,R,"reflectivity")):this._reflectivityTexture&&(R.updateFloat3("vReflectivityInfos",this._reflectivityTexture.coordinatesIndex,this._reflectivityTexture.level,1),Q(this._reflectivityTexture,R,"reflectivity")),this._metallicReflectanceTexture&&(R.updateFloat2("vMetallicReflectanceInfos",this._metallicReflectanceTexture.coordinatesIndex,this._metallicReflectanceTexture.level),Q(this._metallicReflectanceTexture,R,"metallicReflectance")),this._reflectanceTexture&&g.REFLECTANCE&&(R.updateFloat2("vReflectanceInfos",this._reflectanceTexture.coordinatesIndex,this._reflectanceTexture.level),Q(this._reflectanceTexture,R,"reflectance")),this._microSurfaceTexture&&(R.updateFloat2("vMicroSurfaceSamplerInfos",this._microSurfaceTexture.coordinatesIndex,this._microSurfaceTexture.level),Q(this._microSurfaceTexture,R,"microSurfaceSampler"))),this._bumpTexture&&M.getCaps().standardDerivatives&&x.BumpTextureEnabled&&!this._disableBumpMap&&(R.updateFloat3("vBumpInfos",this._bumpTexture.coordinatesIndex,this._bumpTexture.level,this._parallaxScaleBias),Q(this._bumpTexture,R,"bump"),I._mirroredCameraPosition?R.updateFloat2("vTangentSpaceParams",this._invertNormalMapX?1:-1,this._invertNormalMapY?1:-1):R.updateFloat2("vTangentSpaceParams",this._invertNormalMapX?-1:1,this._invertNormalMapY?-1:1)),lr(I,g,R,this._reflectionColor,y,this.realTimeFiltering,!0,!0,!0,!0,!0)),this.pointsCloud&&R.updateFloat("pointSize",this.pointSize),g.METALLICWORKFLOW){Nt.Color4[0].r=this._metallic===void 0||this._metallic===null?1:this._metallic,Nt.Color4[0].g=this._roughness===void 0||this._roughness===null?1:this._roughness;const N=this.subSurface?._indexOfRefraction??1.5,f=1;Nt.Color4[0].b=N;const L=Math.pow((N-f)/(N+f),2);Nt.Color4[0].a=L,R.updateDirectColor4("vReflectivityColor",Nt.Color4[0]),R.updateColor4("vMetallicReflectanceFactors",this._metallicReflectanceColor,this._metallicF0Factor)}else R.updateColor4("vReflectivityColor",this._reflectivityColor,this._microSurface);R.updateColor3("vEmissiveColor",x.EmissiveTextureEnabled?this._emissiveColor:se.BlackReadOnly),!g.SS_REFRACTION&&this.subSurface?._linkRefractionWithTransparency?R.updateColor4("vAlbedoColor",this._albedoColor,1):R.updateColor4("vAlbedoColor",this._albedoColor,this.alpha),R.updateFloat("baseWeight",this._baseWeight),R.updateFloat("baseDiffuseRoughness",this._baseDiffuseRoughness||0),this._lightingInfos.x=this._directIntensity,this._lightingInfos.y=this._emissiveIntensity,this._lightingInfos.z=this._environmentIntensity*I.environmentIntensity,this._lightingInfos.w=this._specularIntensity,R.updateVector4("vLightingIntensity",this._lightingInfos),I.ambientColor.multiplyToRef(this._ambientColor,this._globalAmbientColor),R.updateColor3("vAmbientColor",this._globalAmbientColor),R.updateFloat2("vDebugMode",this.debugLimit,this.debugFactor)}I.texturesEnabled&&(this._albedoTexture&&x.DiffuseTextureEnabled&&R.setTexture("albedoSampler",this._albedoTexture),this._baseWeightTexture&&x.BaseWeightTextureEnabled&&R.setTexture("baseWeightSampler",this._baseWeightTexture),this._baseDiffuseRoughnessTexture&&x.BaseDiffuseRoughnessTextureEnabled&&R.setTexture("baseDiffuseRoughnessSampler",this._baseDiffuseRoughnessTexture),this._ambientTexture&&x.AmbientTextureEnabled&&R.setTexture("ambientSampler",this._ambientTexture),this._opacityTexture&&x.OpacityTextureEnabled&&R.setTexture("opacitySampler",this._opacityTexture),nr(I,g,R,y,this.realTimeFiltering),g.ENVIRONMENTBRDF&&R.setTexture("environmentBrdfSampler",this._environmentBRDFTexture),this._emissiveTexture&&x.EmissiveTextureEnabled&&R.setTexture("emissiveSampler",this._emissiveTexture),this._lightmapTexture&&x.LightmapTextureEnabled&&R.setTexture("lightmapSampler",this._lightmapTexture),x.SpecularTextureEnabled&&(this._metallicTexture?R.setTexture("reflectivitySampler",this._metallicTexture):this._reflectivityTexture&&R.setTexture("reflectivitySampler",this._reflectivityTexture),this._metallicReflectanceTexture&&R.setTexture("metallicReflectanceSampler",this._metallicReflectanceTexture),this._reflectanceTexture&&g.REFLECTANCE&&R.setTexture("reflectanceSampler",this._reflectanceTexture),this._microSurfaceTexture&&R.setTexture("microSurfaceSampler",this._microSurfaceTexture)),this._bumpTexture&&M.getCaps().standardDerivatives&&x.BumpTextureEnabled&&!this._disableBumpMap&&R.setTexture("bumpSampler",this._bumpTexture)),this.getScene().useOrderIndependentTransparency&&this.needAlphaBlendingForMesh(d)&&this.getScene().depthPeelingRenderer.bind(F),this._eventInfo.subMesh=a,this._callbackPluginEventBindForSubMesh(this._eventInfo),ur(this._activeEffect,this,I),this.bindEyePosition(F)}else b&&(this._needToBindSceneUbo=!0);(p||!this.isFrozen||b)&&I.lightsEnabled&&!this._disableLighting&&cr(I,d,this._activeEffect,g,this._maxSimultaneousLights),(p||!this.isFrozen)&&((I.fogEnabled&&d.applyFog&&I.fogMode!==or.FOGMODE_NONE||y||this.subSurface.refractionTexture||d.receiveShadows||g.PREPASS||g.CLUSTLIGHT_BATCH)&&this.bindView(F),hr(I,d,this._activeEffect,!0),g.NUM_MORPH_INFLUENCERS&&_r(d,this._activeEffect),g.BAKED_VERTEX_ANIMATION_TEXTURE&&d.bakedVertexAnimationManager?.bind(F,g.INSTANCES),this._imageProcessingConfiguration.bind(this._activeEffect),Tr(g,this._activeEffect,I)),this._afterBind(d,this._activeEffect,a),R.update()}getAnimatables(){const l=super.getAnimatables();return this._albedoTexture&&this._albedoTexture.animations&&this._albedoTexture.animations.length>0&&l.push(this._albedoTexture),this._baseWeightTexture&&this._baseWeightTexture.animations&&this._baseWeightTexture.animations.length>0&&l.push(this._baseWeightTexture),this._baseDiffuseRoughnessTexture&&this._baseDiffuseRoughnessTexture.animations&&this._baseDiffuseRoughnessTexture.animations.length>0&&l.push(this._baseDiffuseRoughnessTexture),this._ambientTexture&&this._ambientTexture.animations&&this._ambientTexture.animations.length>0&&l.push(this._ambientTexture),this._opacityTexture&&this._opacityTexture.animations&&this._opacityTexture.animations.length>0&&l.push(this._opacityTexture),this._reflectionTexture&&this._reflectionTexture.animations&&this._reflectionTexture.animations.length>0&&l.push(this._reflectionTexture),this._emissiveTexture&&this._emissiveTexture.animations&&this._emissiveTexture.animations.length>0&&l.push(this._emissiveTexture),this._metallicTexture&&this._metallicTexture.animations&&this._metallicTexture.animations.length>0?l.push(this._metallicTexture):this._reflectivityTexture&&this._reflectivityTexture.animations&&this._reflectivityTexture.animations.length>0&&l.push(this._reflectivityTexture),this._bumpTexture&&this._bumpTexture.animations&&this._bumpTexture.animations.length>0&&l.push(this._bumpTexture),this._lightmapTexture&&this._lightmapTexture.animations&&this._lightmapTexture.animations.length>0&&l.push(this._lightmapTexture),this._metallicReflectanceTexture&&this._metallicReflectanceTexture.animations&&this._metallicReflectanceTexture.animations.length>0&&l.push(this._metallicReflectanceTexture),this._reflectanceTexture&&this._reflectanceTexture.animations&&this._reflectanceTexture.animations.length>0&&l.push(this._reflectanceTexture),this._microSurfaceTexture&&this._microSurfaceTexture.animations&&this._microSurfaceTexture.animations.length>0&&l.push(this._microSurfaceTexture),l}_getReflectionTexture(){return this._reflectionTexture?this._reflectionTexture:this.getScene().environmentTexture}getActiveTextures(){const l=super.getActiveTextures();return this._albedoTexture&&l.push(this._albedoTexture),this._baseWeightTexture&&l.push(this._baseWeightTexture),this._baseDiffuseRoughnessTexture&&l.push(this._baseDiffuseRoughnessTexture),this._ambientTexture&&l.push(this._ambientTexture),this._opacityTexture&&l.push(this._opacityTexture),this._reflectionTexture&&l.push(this._reflectionTexture),this._emissiveTexture&&l.push(this._emissiveTexture),this._reflectivityTexture&&l.push(this._reflectivityTexture),this._metallicTexture&&l.push(this._metallicTexture),this._metallicReflectanceTexture&&l.push(this._metallicReflectanceTexture),this._reflectanceTexture&&l.push(this._reflectanceTexture),this._microSurfaceTexture&&l.push(this._microSurfaceTexture),this._bumpTexture&&l.push(this._bumpTexture),this._lightmapTexture&&l.push(this._lightmapTexture),l}hasTexture(l){return!!(super.hasTexture(l)||this._albedoTexture===l||this._baseWeightTexture===l||this._baseDiffuseRoughnessTexture===l||this._ambientTexture===l||this._opacityTexture===l||this._reflectionTexture===l||this._emissiveTexture===l||this._reflectivityTexture===l||this._metallicTexture===l||this._metallicReflectanceTexture===l||this._reflectanceTexture===l||this._microSurfaceTexture===l||this._bumpTexture===l||this._lightmapTexture===l)}setPrePassRenderer(){if(!this.subSurface?.isScatteringEnabled)return!1;const l=this.getScene().enableSubSurfaceForPrePass();return l&&(l.enabled=!0),!0}dispose(l,d){this._breakShaderLoadedCheck=!0,d&&(this._environmentBRDFTexture&&this.getScene().environmentBRDFTexture!==this._environmentBRDFTexture&&this._environmentBRDFTexture.dispose(),this._albedoTexture?.dispose(),this._baseWeightTexture?.dispose(),this._baseDiffuseRoughnessTexture?.dispose(),this._ambientTexture?.dispose(),this._opacityTexture?.dispose(),this._reflectionTexture?.dispose(),this._emissiveTexture?.dispose(),this._metallicTexture?.dispose(),this._reflectivityTexture?.dispose(),this._bumpTexture?.dispose(),this._lightmapTexture?.dispose(),this._metallicReflectanceTexture?.dispose(),this._reflectanceTexture?.dispose(),this._microSurfaceTexture?.dispose()),this._renderTargets.dispose(),this._imageProcessingConfiguration&&this._imageProcessingObserver&&this._imageProcessingConfiguration.onUpdateParameters.remove(this._imageProcessingObserver),super.dispose(l,d)}},v=new WeakMap,(()=>{const H=typeof Symbol=="function"&&Symbol.metadata?Object.create(k[Symbol.metadata]??null):void 0;U=[T("_markAllSubMeshesAsMiscDirty")],u(i,null,U,{kind:"accessor",name:"debugMode",static:!1,private:!1,access:{has:l=>"debugMode"in l,get:l=>l.debugMode,set:(l,d)=>{l.debugMode=d}},metadata:H},G,W),H&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:H})})(),i.PBRMATERIAL_OPAQUE=vt.MATERIAL_OPAQUE,i.PBRMATERIAL_ALPHATEST=vt.MATERIAL_ALPHATEST,i.PBRMATERIAL_ALPHABLEND=vt.MATERIAL_ALPHABLEND,i.PBRMATERIAL_ALPHATESTANDBLEND=vt.MATERIAL_ALPHATESTANDBLEND,i.DEFAULT_AO_ON_ANALYTICAL_LIGHTS=0,i.LIGHTFALLOFF_PHYSICAL=0,i.LIGHTFALLOFF_GLTF=1,i.LIGHTFALLOFF_STANDARD=2,i.ForceGLSL=!1,i})();Object.getOwnPropertyDescriptor(he.prototype,"decalMap")||Object.defineProperty(he.prototype,"decalMap",Ar("PBRBaseMaterial","decalMap"));let kr=(()=>{var i,v,k,U,G,W,H,l,d,a,I,g,F,M,P,B,p,b,y,R,N,f,L,V,q,te,Y,o,D,J,ae,re,le,ne,ue,ce,K,c,C,E,w,_e,me,Re,Ae,de,Se,pe,ge,Ie,be,Ce,Me,Z,r,O,ie,Ee,ye,De,Le,Oe,Fe,Ne,ve,Pe,ke;let Ve=he,ze=[],Ye,Xe=[],Ke=[],je,Qe=[],Ze=[],Je,$e=[],qe=[],et,tt=[],st=[],it,at=[],rt=[],lt,nt=[],ut=[],ct,ot=[],ht=[],_t,Tt=[],ft=[],mt,Et=[],xt=[],Rt,At=[],dt=[],St,pt=[],gt=[],It,bt=[],Ct=[],Mt,yt=[],Lt=[],z,t=[],A=[],$,He=[],Te=[],Dt,Pt=[],kt=[],ee,Ot=[],Ge=[],Ut,Ft=[],Wt=[],wt,Vt=[],Yt=[],Xt,Kt=[],jt=[],Qt,Zt=[],Jt=[],$t,qt=[],es=[],ts,ss=[],is=[],as,rs=[],ls=[],ns,us=[],cs=[],os,hs=[],_s=[],Ts,fs=[],ms=[],Es,xs=[],Rs=[],As,ds=[],Ss=[],ps,gs=[],Is=[],bs,Cs=[],Ms=[],ys,Ls=[],Os=[],Fs,Ns=[],vs=[],Ds,Ps=[],ks=[],Us,Bs=[],zs=[],Hs,Gs=[],Ws=[],ws,Vs=[],Ys=[],Xs,Ks=[],js=[],Qs,Zs=[],Js=[],$s,qs=[],ei=[],ti,si=[],ii=[],ai,ri=[],li=[],ni,ui=[],ci=[],oi,hi=[],_i=[],Ti,fi=[],mi=[],Ei,xi=[],Ri=[],Ai,di,Si,pi=[],gi=[],Ii,bi=[],Ci=[],Mi,yi=[],Li=[],Oi,Fi=[],Ni=[],vi,Di=[],Pi=[],ki,Ui=[],Bi=[],zi,Hi=[],Gi=[],Wi,wi=[],Vi=[],Yi,Xi=[],Ki=[],ji,Qi=[],Zi=[],Ji,$i=[],qi=[],ea,ta=[],sa=[],ia,aa=[],ra=[],la,na=[],ua=[],ca,oa=[],ha=[],_a,Ta=[],fa=[],ma,Ea=[],xa=[],Ra,Aa=[],da=[],Sa,pa=[],ga=[],Ia,ba=[],Ca=[];return i=class extends Ve{get directIntensity(){return h(this,v,"f")}set directIntensity(e){_(this,v,e,"f")}get emissiveIntensity(){return h(this,k,"f")}set emissiveIntensity(e){_(this,k,e,"f")}get environmentIntensity(){return h(this,U,"f")}set environmentIntensity(e){_(this,U,e,"f")}get specularIntensity(){return h(this,G,"f")}set specularIntensity(e){_(this,G,e,"f")}get disableBumpMap(){return h(this,W,"f")}set disableBumpMap(e){_(this,W,e,"f")}get albedoTexture(){return h(this,H,"f")}set albedoTexture(e){_(this,H,e,"f")}get baseWeightTexture(){return h(this,l,"f")}set baseWeightTexture(e){_(this,l,e,"f")}get baseDiffuseRoughnessTexture(){return h(this,d,"f")}set baseDiffuseRoughnessTexture(e){_(this,d,e,"f")}get ambientTexture(){return h(this,a,"f")}set ambientTexture(e){_(this,a,e,"f")}get ambientTextureStrength(){return h(this,I,"f")}set ambientTextureStrength(e){_(this,I,e,"f")}get ambientTextureImpactOnAnalyticalLights(){return h(this,g,"f")}set ambientTextureImpactOnAnalyticalLights(e){_(this,g,e,"f")}get opacityTexture(){return h(this,F,"f")}set opacityTexture(e){_(this,F,e,"f")}get reflectionTexture(){return h(this,M,"f")}set reflectionTexture(e){_(this,M,e,"f")}get emissiveTexture(){return h(this,P,"f")}set emissiveTexture(e){_(this,P,e,"f")}get reflectivityTexture(){return h(this,B,"f")}set reflectivityTexture(e){_(this,B,e,"f")}get metallicTexture(){return h(this,p,"f")}set metallicTexture(e){_(this,p,e,"f")}get metallic(){return h(this,b,"f")}set metallic(e){_(this,b,e,"f")}get roughness(){return h(this,y,"f")}set roughness(e){_(this,y,e,"f")}get metallicF0Factor(){return h(this,R,"f")}set metallicF0Factor(e){_(this,R,e,"f")}get metallicReflectanceColor(){return h(this,N,"f")}set metallicReflectanceColor(e){_(this,N,e,"f")}get useOnlyMetallicFromMetallicReflectanceTexture(){return h(this,f,"f")}set useOnlyMetallicFromMetallicReflectanceTexture(e){_(this,f,e,"f")}get metallicReflectanceTexture(){return h(this,L,"f")}set metallicReflectanceTexture(e){_(this,L,e,"f")}get reflectanceTexture(){return h(this,V,"f")}set reflectanceTexture(e){_(this,V,e,"f")}get microSurfaceTexture(){return h(this,q,"f")}set microSurfaceTexture(e){_(this,q,e,"f")}get bumpTexture(){return h(this,te,"f")}set bumpTexture(e){_(this,te,e,"f")}get lightmapTexture(){return h(this,Y,"f")}set lightmapTexture(e){_(this,Y,e,"f")}get refractionTexture(){return this.subSurface.refractionTexture}set refractionTexture(e){this.subSurface.refractionTexture=e,e?this.subSurface.isRefractionEnabled=!0:this.subSurface.linkRefractionWithTransparency||(this.subSurface.isRefractionEnabled=!1)}get ambientColor(){return h(this,o,"f")}set ambientColor(e){_(this,o,e,"f")}get albedoColor(){return h(this,D,"f")}set albedoColor(e){_(this,D,e,"f")}get baseWeight(){return h(this,J,"f")}set baseWeight(e){_(this,J,e,"f")}get baseDiffuseRoughness(){return h(this,ae,"f")}set baseDiffuseRoughness(e){_(this,ae,e,"f")}get reflectivityColor(){return h(this,re,"f")}set reflectivityColor(e){_(this,re,e,"f")}get reflectionColor(){return h(this,le,"f")}set reflectionColor(e){_(this,le,e,"f")}get emissiveColor(){return h(this,ne,"f")}set emissiveColor(e){_(this,ne,e,"f")}get microSurface(){return h(this,ue,"f")}set microSurface(e){_(this,ue,e,"f")}get indexOfRefraction(){return this.subSurface.indexOfRefraction}set indexOfRefraction(e){this.subSurface.indexOfRefraction=e}get invertRefractionY(){return this.subSurface.invertRefractionY}set invertRefractionY(e){this.subSurface.invertRefractionY=e}get linkRefractionWithTransparency(){return this.subSurface.linkRefractionWithTransparency}set linkRefractionWithTransparency(e){this.subSurface.linkRefractionWithTransparency=e,e&&(this.subSurface.isRefractionEnabled=!0)}get useLightmapAsShadowmap(){return h(this,ce,"f")}set useLightmapAsShadowmap(e){_(this,ce,e,"f")}get useAlphaFromAlbedoTexture(){return h(this,K,"f")}set useAlphaFromAlbedoTexture(e){_(this,K,e,"f")}get forceAlphaTest(){return h(this,c,"f")}set forceAlphaTest(e){_(this,c,e,"f")}get alphaCutOff(){return h(this,C,"f")}set alphaCutOff(e){_(this,C,e,"f")}get useSpecularOverAlpha(){return h(this,E,"f")}set useSpecularOverAlpha(e){_(this,E,e,"f")}get useMicroSurfaceFromReflectivityMapAlpha(){return h(this,w,"f")}set useMicroSurfaceFromReflectivityMapAlpha(e){_(this,w,e,"f")}get useRoughnessFromMetallicTextureAlpha(){return h(this,_e,"f")}set useRoughnessFromMetallicTextureAlpha(e){_(this,_e,e,"f")}get useRoughnessFromMetallicTextureGreen(){return h(this,me,"f")}set useRoughnessFromMetallicTextureGreen(e){_(this,me,e,"f")}get useMetallnessFromMetallicTextureBlue(){return h(this,Re,"f")}set useMetallnessFromMetallicTextureBlue(e){_(this,Re,e,"f")}get useAmbientOcclusionFromMetallicTextureRed(){return h(this,Ae,"f")}set useAmbientOcclusionFromMetallicTextureRed(e){_(this,Ae,e,"f")}get useAmbientInGrayScale(){return h(this,de,"f")}set useAmbientInGrayScale(e){_(this,de,e,"f")}get useAutoMicroSurfaceFromReflectivityMap(){return h(this,Se,"f")}set useAutoMicroSurfaceFromReflectivityMap(e){_(this,Se,e,"f")}get usePhysicalLightFalloff(){return this._lightFalloff===he.LIGHTFALLOFF_PHYSICAL}set usePhysicalLightFalloff(e){e!==this.usePhysicalLightFalloff&&(this._markAllSubMeshesAsTexturesDirty(),e?this._lightFalloff=he.LIGHTFALLOFF_PHYSICAL:this._lightFalloff=he.LIGHTFALLOFF_STANDARD)}get useGLTFLightFalloff(){return this._lightFalloff===he.LIGHTFALLOFF_GLTF}set useGLTFLightFalloff(e){e!==this.useGLTFLightFalloff&&(this._markAllSubMeshesAsTexturesDirty(),e?this._lightFalloff=he.LIGHTFALLOFF_GLTF:this._lightFalloff=he.LIGHTFALLOFF_STANDARD)}get useRadianceOverAlpha(){return h(this,pe,"f")}set useRadianceOverAlpha(e){_(this,pe,e,"f")}get useObjectSpaceNormalMap(){return h(this,ge,"f")}set useObjectSpaceNormalMap(e){_(this,ge,e,"f")}get useParallax(){return h(this,Ie,"f")}set useParallax(e){_(this,Ie,e,"f")}get useParallaxOcclusion(){return h(this,be,"f")}set useParallaxOcclusion(e){_(this,be,e,"f")}get parallaxScaleBias(){return h(this,Ce,"f")}set parallaxScaleBias(e){_(this,Ce,e,"f")}get disableLighting(){return h(this,Me,"f")}set disableLighting(e){_(this,Me,e,"f")}get forceIrradianceInFragment(){return h(this,Z,"f")}set forceIrradianceInFragment(e){_(this,Z,e,"f")}get maxSimultaneousLights(){return h(this,r,"f")}set maxSimultaneousLights(e){_(this,r,e,"f")}get invertNormalMapX(){return h(this,O,"f")}set invertNormalMapX(e){_(this,O,e,"f")}get invertNormalMapY(){return h(this,ie,"f")}set invertNormalMapY(e){_(this,ie,e,"f")}get twoSidedLighting(){return h(this,Ee,"f")}set twoSidedLighting(e){_(this,Ee,e,"f")}get useAlphaFresnel(){return h(this,ye,"f")}set useAlphaFresnel(e){_(this,ye,e,"f")}get useLinearAlphaFresnel(){return h(this,De,"f")}set useLinearAlphaFresnel(e){_(this,De,e,"f")}get environmentBRDFTexture(){return h(this,Le,"f")}set environmentBRDFTexture(e){_(this,Le,e,"f")}get forceNormalForward(){return h(this,Oe,"f")}set forceNormalForward(e){_(this,Oe,e,"f")}get enableSpecularAntiAliasing(){return h(this,Fe,"f")}set enableSpecularAntiAliasing(e){_(this,Fe,e,"f")}get useHorizonOcclusion(){return h(this,Ne,"f")}set useHorizonOcclusion(e){_(this,Ne,e,"f")}get useRadianceOcclusion(){return h(this,ve,"f")}set useRadianceOcclusion(e){_(this,ve,e,"f")}get unlit(){return h(this,Pe,"f")}set unlit(e){_(this,Pe,e,"f")}get applyDecalMapAfterDetailMap(){return h(this,ke,"f")}set applyDecalMapAfterDetailMap(e){_(this,ke,e,"f")}constructor(e,n,fe=!1){super(e,n,fe),v.set(this,(s(this,ze),s(this,Xe,1))),k.set(this,(s(this,Ke),s(this,Qe,1))),U.set(this,(s(this,Ze),s(this,$e,1))),G.set(this,(s(this,qe),s(this,tt,1))),W.set(this,(s(this,st),s(this,at,!1))),H.set(this,(s(this,rt),s(this,nt,void 0))),l.set(this,(s(this,ut),s(this,ot,void 0))),d.set(this,(s(this,ht),s(this,Tt,void 0))),a.set(this,(s(this,ft),s(this,Et,void 0))),I.set(this,(s(this,xt),s(this,At,1))),g.set(this,(s(this,dt),s(this,pt,i.DEFAULT_AO_ON_ANALYTICAL_LIGHTS))),F.set(this,(s(this,gt),s(this,bt,void 0))),M.set(this,(s(this,Ct),s(this,yt,void 0))),P.set(this,(s(this,Lt),s(this,t,void 0))),B.set(this,(s(this,A),s(this,He,void 0))),p.set(this,(s(this,Te),s(this,Pt,void 0))),b.set(this,(s(this,kt),s(this,Ot,void 0))),y.set(this,(s(this,Ge),s(this,Ft,void 0))),R.set(this,(s(this,Wt),s(this,Vt,1))),N.set(this,(s(this,Yt),s(this,Kt,se.White()))),f.set(this,(s(this,jt),s(this,Zt,!1))),L.set(this,(s(this,Jt),s(this,qt,void 0))),V.set(this,(s(this,es),s(this,ss,void 0))),q.set(this,(s(this,is),s(this,rs,void 0))),te.set(this,(s(this,ls),s(this,us,void 0))),Y.set(this,(s(this,cs),s(this,hs,void 0))),o.set(this,(s(this,_s),s(this,fs,new se(0,0,0)))),D.set(this,(s(this,ms),s(this,xs,new se(1,1,1)))),J.set(this,(s(this,Rs),s(this,ds,1))),ae.set(this,(s(this,Ss),s(this,gs,void 0))),re.set(this,(s(this,Is),s(this,Cs,new se(1,1,1)))),le.set(this,(s(this,Ms),s(this,Ls,new se(1,1,1)))),ne.set(this,(s(this,Os),s(this,Ns,new se(0,0,0)))),ue.set(this,(s(this,vs),s(this,Ps,1))),ce.set(this,(s(this,ks),s(this,Bs,!1))),K.set(this,(s(this,zs),s(this,Gs,!1))),c.set(this,(s(this,Ws),s(this,Vs,!1))),C.set(this,(s(this,Ys),s(this,Ks,.4))),E.set(this,(s(this,js),s(this,Zs,!0))),w.set(this,(s(this,Js),s(this,qs,!1))),_e.set(this,(s(this,ei),s(this,si,!0))),me.set(this,(s(this,ii),s(this,ri,!1))),Re.set(this,(s(this,li),s(this,ui,!1))),Ae.set(this,(s(this,ci),s(this,hi,!1))),de.set(this,(s(this,_i),s(this,fi,!1))),Se.set(this,(s(this,mi),s(this,xi,!1))),pe.set(this,(s(this,Ri),s(this,pi,!0))),ge.set(this,(s(this,gi),s(this,bi,!1))),Ie.set(this,(s(this,Ci),s(this,yi,!1))),be.set(this,(s(this,Li),s(this,Fi,!1))),Ce.set(this,(s(this,Ni),s(this,Di,.05))),Me.set(this,(s(this,Pi),s(this,Ui,!1))),Z.set(this,(s(this,Bi),s(this,Hi,!1))),r.set(this,(s(this,Gi),s(this,wi,4))),O.set(this,(s(this,Vi),s(this,Xi,!1))),ie.set(this,(s(this,Ki),s(this,Qi,!1))),Ee.set(this,(s(this,Zi),s(this,$i,!1))),ye.set(this,(s(this,qi),s(this,ta,!1))),De.set(this,(s(this,sa),s(this,aa,!1))),Le.set(this,(s(this,ra),s(this,na,null))),Oe.set(this,(s(this,ua),s(this,oa,!1))),Fe.set(this,(s(this,ha),s(this,Ta,!1))),Ne.set(this,(s(this,fa),s(this,Ea,!0))),ve.set(this,(s(this,xa),s(this,Aa,!0))),Pe.set(this,(s(this,da),s(this,pa,!1))),ke.set(this,(s(this,ga),s(this,ba,!1))),s(this,Ca),this._environmentBRDFTexture=Fa(this.getScene())}getClassName(){return"PBRMaterial"}clone(e,n=!0,fe=""){const oe=ya.Clone(()=>new i(e,this.getScene()),this,{cloneTexturesOnlyOnce:n});return oe.id=e,oe.name=e,this.stencil.copyTo(oe.stencil),this._clonePlugins(oe,fe),oe}serialize(){const e=super.serialize();return e.customType="BABYLON.PBRMaterial",e}static Parse(e,n,fe){const oe=ya.Parse(()=>new i(e.name,n),e,n,fe);return e.stencil&&oe.stencil.parse(e.stencil,n,fe),vt._ParsePlugins(e,oe,n,fe),e.clearCoat&&oe.clearCoat.parse(e.clearCoat,n,fe),e.anisotropy&&oe.anisotropy.parse(e.anisotropy,n,fe),e.brdf&&oe.brdf.parse(e.brdf,n,fe),e.sheen&&oe.sheen.parse(e.sheen,n,fe),e.subSurface&&oe.subSurface.parse(e.subSurface,n,fe),e.iridescence&&oe.iridescence.parse(e.iridescence,n,fe),oe}},v=new WeakMap,k=new WeakMap,U=new WeakMap,G=new WeakMap,W=new WeakMap,H=new WeakMap,l=new WeakMap,d=new WeakMap,a=new WeakMap,I=new WeakMap,g=new WeakMap,F=new WeakMap,M=new WeakMap,P=new WeakMap,B=new WeakMap,p=new WeakMap,b=new WeakMap,y=new WeakMap,R=new WeakMap,N=new WeakMap,f=new WeakMap,L=new WeakMap,V=new WeakMap,q=new WeakMap,te=new WeakMap,Y=new WeakMap,o=new WeakMap,D=new WeakMap,J=new WeakMap,ae=new WeakMap,re=new WeakMap,le=new WeakMap,ne=new WeakMap,ue=new WeakMap,ce=new WeakMap,K=new WeakMap,c=new WeakMap,C=new WeakMap,E=new WeakMap,w=new WeakMap,_e=new WeakMap,me=new WeakMap,Re=new WeakMap,Ae=new WeakMap,de=new WeakMap,Se=new WeakMap,pe=new WeakMap,ge=new WeakMap,Ie=new WeakMap,be=new WeakMap,Ce=new WeakMap,Me=new WeakMap,Z=new WeakMap,r=new WeakMap,O=new WeakMap,ie=new WeakMap,Ee=new WeakMap,ye=new WeakMap,De=new WeakMap,Le=new WeakMap,Oe=new WeakMap,Fe=new WeakMap,Ne=new WeakMap,ve=new WeakMap,Pe=new WeakMap,ke=new WeakMap,(()=>{const S=typeof Symbol=="function"&&Symbol.metadata?Object.create(Ve[Symbol.metadata]??null):void 0;Ye=[m(),T("_markAllSubMeshesAsTexturesDirty")],je=[m(),T("_markAllSubMeshesAsTexturesDirty")],Je=[m(),T("_markAllSubMeshesAsTexturesDirty")],et=[m(),T("_markAllSubMeshesAsTexturesDirty")],it=[m(),T("_markAllSubMeshesAsTexturesDirty")],lt=[X(),T("_markAllSubMeshesAsTexturesDirty")],ct=[X(),T("_markAllSubMeshesAsTexturesDirty")],_t=[X(),T("_markAllSubMeshesAsTexturesDirty")],mt=[X(),T("_markAllSubMeshesAsTexturesDirty")],Rt=[m(),T("_markAllSubMeshesAsTexturesDirty")],St=[m(),T("_markAllSubMeshesAsTexturesDirty")],It=[X(),T("_markAllSubMeshesAsTexturesAndMiscDirty")],Mt=[X(),T("_markAllSubMeshesAsTexturesDirty")],z=[X(),T("_markAllSubMeshesAsTexturesDirty")],$=[X(),T("_markAllSubMeshesAsTexturesDirty")],Dt=[X(),T("_markAllSubMeshesAsTexturesDirty")],ee=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ut=[m(),T("_markAllSubMeshesAsTexturesDirty")],wt=[m(),T("_markAllSubMeshesAsTexturesDirty")],Xt=[xe(),T("_markAllSubMeshesAsTexturesDirty")],Qt=[m(),T("_markAllSubMeshesAsTexturesDirty")],$t=[X(),T("_markAllSubMeshesAsTexturesDirty")],ts=[X(),T("_markAllSubMeshesAsTexturesDirty")],as=[X(),T("_markAllSubMeshesAsTexturesDirty")],ns=[X(),T("_markAllSubMeshesAsTexturesDirty")],os=[X(),T("_markAllSubMeshesAsTexturesDirty",null)],Ts=[xe("ambient"),T("_markAllSubMeshesAsTexturesDirty")],Es=[xe("albedo"),T("_markAllSubMeshesAsTexturesDirty")],As=[m("baseWeight"),T("_markAllSubMeshesAsTexturesDirty")],ps=[m("baseDiffuseRoughness"),T("_markAllSubMeshesAsTexturesDirty")],bs=[xe("reflectivity"),T("_markAllSubMeshesAsTexturesDirty")],ys=[xe("reflection"),T("_markAllSubMeshesAsTexturesDirty")],Fs=[xe("emissive"),T("_markAllSubMeshesAsTexturesDirty")],Ds=[m(),T("_markAllSubMeshesAsTexturesDirty")],Us=[m(),T("_markAllSubMeshesAsTexturesDirty")],Hs=[m(),T("_markAllSubMeshesAsTexturesAndMiscDirty")],ws=[m(),T("_markAllSubMeshesAsTexturesAndMiscDirty")],Xs=[m(),T("_markAllSubMeshesAsTexturesAndMiscDirty")],Qs=[m(),T("_markAllSubMeshesAsTexturesDirty")],$s=[m(),T("_markAllSubMeshesAsTexturesDirty")],ti=[m(),T("_markAllSubMeshesAsTexturesDirty")],ai=[m(),T("_markAllSubMeshesAsTexturesDirty")],ni=[m(),T("_markAllSubMeshesAsTexturesDirty")],oi=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ti=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ei=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ai=[m()],di=[m()],Si=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ii=[m(),T("_markAllSubMeshesAsTexturesDirty")],Mi=[m(),T("_markAllSubMeshesAsTexturesDirty")],Oi=[m(),T("_markAllSubMeshesAsTexturesDirty")],vi=[m(),T("_markAllSubMeshesAsTexturesDirty")],ki=[m(),T("_markAllSubMeshesAsLightsDirty")],zi=[m(),T("_markAllSubMeshesAsTexturesDirty")],Wi=[m(),T("_markAllSubMeshesAsLightsDirty")],Yi=[m(),T("_markAllSubMeshesAsTexturesDirty")],ji=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ji=[m(),T("_markAllSubMeshesAsTexturesDirty")],ea=[m(),T("_markAllSubMeshesAsTexturesDirty")],ia=[m(),T("_markAllSubMeshesAsTexturesDirty")],la=[T("_markAllSubMeshesAsTexturesDirty")],ca=[m(),T("_markAllSubMeshesAsTexturesDirty")],_a=[m(),T("_markAllSubMeshesAsTexturesDirty")],ma=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ra=[m(),T("_markAllSubMeshesAsTexturesDirty")],Sa=[m(),T("_markAllSubMeshesAsMiscDirty")],Ia=[m(),T("_markAllSubMeshesAsMiscDirty")],u(i,null,Ye,{kind:"accessor",name:"directIntensity",static:!1,private:!1,access:{has:e=>"directIntensity"in e,get:e=>e.directIntensity,set:(e,n)=>{e.directIntensity=n}},metadata:S},Xe,Ke),u(i,null,je,{kind:"accessor",name:"emissiveIntensity",static:!1,private:!1,access:{has:e=>"emissiveIntensity"in e,get:e=>e.emissiveIntensity,set:(e,n)=>{e.emissiveIntensity=n}},metadata:S},Qe,Ze),u(i,null,Je,{kind:"accessor",name:"environmentIntensity",static:!1,private:!1,access:{has:e=>"environmentIntensity"in e,get:e=>e.environmentIntensity,set:(e,n)=>{e.environmentIntensity=n}},metadata:S},$e,qe),u(i,null,et,{kind:"accessor",name:"specularIntensity",static:!1,private:!1,access:{has:e=>"specularIntensity"in e,get:e=>e.specularIntensity,set:(e,n)=>{e.specularIntensity=n}},metadata:S},tt,st),u(i,null,it,{kind:"accessor",name:"disableBumpMap",static:!1,private:!1,access:{has:e=>"disableBumpMap"in e,get:e=>e.disableBumpMap,set:(e,n)=>{e.disableBumpMap=n}},metadata:S},at,rt),u(i,null,lt,{kind:"accessor",name:"albedoTexture",static:!1,private:!1,access:{has:e=>"albedoTexture"in e,get:e=>e.albedoTexture,set:(e,n)=>{e.albedoTexture=n}},metadata:S},nt,ut),u(i,null,ct,{kind:"accessor",name:"baseWeightTexture",static:!1,private:!1,access:{has:e=>"baseWeightTexture"in e,get:e=>e.baseWeightTexture,set:(e,n)=>{e.baseWeightTexture=n}},metadata:S},ot,ht),u(i,null,_t,{kind:"accessor",name:"baseDiffuseRoughnessTexture",static:!1,private:!1,access:{has:e=>"baseDiffuseRoughnessTexture"in e,get:e=>e.baseDiffuseRoughnessTexture,set:(e,n)=>{e.baseDiffuseRoughnessTexture=n}},metadata:S},Tt,ft),u(i,null,mt,{kind:"accessor",name:"ambientTexture",static:!1,private:!1,access:{has:e=>"ambientTexture"in e,get:e=>e.ambientTexture,set:(e,n)=>{e.ambientTexture=n}},metadata:S},Et,xt),u(i,null,Rt,{kind:"accessor",name:"ambientTextureStrength",static:!1,private:!1,access:{has:e=>"ambientTextureStrength"in e,get:e=>e.ambientTextureStrength,set:(e,n)=>{e.ambientTextureStrength=n}},metadata:S},At,dt),u(i,null,St,{kind:"accessor",name:"ambientTextureImpactOnAnalyticalLights",static:!1,private:!1,access:{has:e=>"ambientTextureImpactOnAnalyticalLights"in e,get:e=>e.ambientTextureImpactOnAnalyticalLights,set:(e,n)=>{e.ambientTextureImpactOnAnalyticalLights=n}},metadata:S},pt,gt),u(i,null,It,{kind:"accessor",name:"opacityTexture",static:!1,private:!1,access:{has:e=>"opacityTexture"in e,get:e=>e.opacityTexture,set:(e,n)=>{e.opacityTexture=n}},metadata:S},bt,Ct),u(i,null,Mt,{kind:"accessor",name:"reflectionTexture",static:!1,private:!1,access:{has:e=>"reflectionTexture"in e,get:e=>e.reflectionTexture,set:(e,n)=>{e.reflectionTexture=n}},metadata:S},yt,Lt),u(i,null,z,{kind:"accessor",name:"emissiveTexture",static:!1,private:!1,access:{has:e=>"emissiveTexture"in e,get:e=>e.emissiveTexture,set:(e,n)=>{e.emissiveTexture=n}},metadata:S},t,A),u(i,null,$,{kind:"accessor",name:"reflectivityTexture",static:!1,private:!1,access:{has:e=>"reflectivityTexture"in e,get:e=>e.reflectivityTexture,set:(e,n)=>{e.reflectivityTexture=n}},metadata:S},He,Te),u(i,null,Dt,{kind:"accessor",name:"metallicTexture",static:!1,private:!1,access:{has:e=>"metallicTexture"in e,get:e=>e.metallicTexture,set:(e,n)=>{e.metallicTexture=n}},metadata:S},Pt,kt),u(i,null,ee,{kind:"accessor",name:"metallic",static:!1,private:!1,access:{has:e=>"metallic"in e,get:e=>e.metallic,set:(e,n)=>{e.metallic=n}},metadata:S},Ot,Ge),u(i,null,Ut,{kind:"accessor",name:"roughness",static:!1,private:!1,access:{has:e=>"roughness"in e,get:e=>e.roughness,set:(e,n)=>{e.roughness=n}},metadata:S},Ft,Wt),u(i,null,wt,{kind:"accessor",name:"metallicF0Factor",static:!1,private:!1,access:{has:e=>"metallicF0Factor"in e,get:e=>e.metallicF0Factor,set:(e,n)=>{e.metallicF0Factor=n}},metadata:S},Vt,Yt),u(i,null,Xt,{kind:"accessor",name:"metallicReflectanceColor",static:!1,private:!1,access:{has:e=>"metallicReflectanceColor"in e,get:e=>e.metallicReflectanceColor,set:(e,n)=>{e.metallicReflectanceColor=n}},metadata:S},Kt,jt),u(i,null,Qt,{kind:"accessor",name:"useOnlyMetallicFromMetallicReflectanceTexture",static:!1,private:!1,access:{has:e=>"useOnlyMetallicFromMetallicReflectanceTexture"in e,get:e=>e.useOnlyMetallicFromMetallicReflectanceTexture,set:(e,n)=>{e.useOnlyMetallicFromMetallicReflectanceTexture=n}},metadata:S},Zt,Jt),u(i,null,$t,{kind:"accessor",name:"metallicReflectanceTexture",static:!1,private:!1,access:{has:e=>"metallicReflectanceTexture"in e,get:e=>e.metallicReflectanceTexture,set:(e,n)=>{e.metallicReflectanceTexture=n}},metadata:S},qt,es),u(i,null,ts,{kind:"accessor",name:"reflectanceTexture",static:!1,private:!1,access:{has:e=>"reflectanceTexture"in e,get:e=>e.reflectanceTexture,set:(e,n)=>{e.reflectanceTexture=n}},metadata:S},ss,is),u(i,null,as,{kind:"accessor",name:"microSurfaceTexture",static:!1,private:!1,access:{has:e=>"microSurfaceTexture"in e,get:e=>e.microSurfaceTexture,set:(e,n)=>{e.microSurfaceTexture=n}},metadata:S},rs,ls),u(i,null,ns,{kind:"accessor",name:"bumpTexture",static:!1,private:!1,access:{has:e=>"bumpTexture"in e,get:e=>e.bumpTexture,set:(e,n)=>{e.bumpTexture=n}},metadata:S},us,cs),u(i,null,os,{kind:"accessor",name:"lightmapTexture",static:!1,private:!1,access:{has:e=>"lightmapTexture"in e,get:e=>e.lightmapTexture,set:(e,n)=>{e.lightmapTexture=n}},metadata:S},hs,_s),u(i,null,Ts,{kind:"accessor",name:"ambientColor",static:!1,private:!1,access:{has:e=>"ambientColor"in e,get:e=>e.ambientColor,set:(e,n)=>{e.ambientColor=n}},metadata:S},fs,ms),u(i,null,Es,{kind:"accessor",name:"albedoColor",static:!1,private:!1,access:{has:e=>"albedoColor"in e,get:e=>e.albedoColor,set:(e,n)=>{e.albedoColor=n}},metadata:S},xs,Rs),u(i,null,As,{kind:"accessor",name:"baseWeight",static:!1,private:!1,access:{has:e=>"baseWeight"in e,get:e=>e.baseWeight,set:(e,n)=>{e.baseWeight=n}},metadata:S},ds,Ss),u(i,null,ps,{kind:"accessor",name:"baseDiffuseRoughness",static:!1,private:!1,access:{has:e=>"baseDiffuseRoughness"in e,get:e=>e.baseDiffuseRoughness,set:(e,n)=>{e.baseDiffuseRoughness=n}},metadata:S},gs,Is),u(i,null,bs,{kind:"accessor",name:"reflectivityColor",static:!1,private:!1,access:{has:e=>"reflectivityColor"in e,get:e=>e.reflectivityColor,set:(e,n)=>{e.reflectivityColor=n}},metadata:S},Cs,Ms),u(i,null,ys,{kind:"accessor",name:"reflectionColor",static:!1,private:!1,access:{has:e=>"reflectionColor"in e,get:e=>e.reflectionColor,set:(e,n)=>{e.reflectionColor=n}},metadata:S},Ls,Os),u(i,null,Fs,{kind:"accessor",name:"emissiveColor",static:!1,private:!1,access:{has:e=>"emissiveColor"in e,get:e=>e.emissiveColor,set:(e,n)=>{e.emissiveColor=n}},metadata:S},Ns,vs),u(i,null,Ds,{kind:"accessor",name:"microSurface",static:!1,private:!1,access:{has:e=>"microSurface"in e,get:e=>e.microSurface,set:(e,n)=>{e.microSurface=n}},metadata:S},Ps,ks),u(i,null,Us,{kind:"accessor",name:"useLightmapAsShadowmap",static:!1,private:!1,access:{has:e=>"useLightmapAsShadowmap"in e,get:e=>e.useLightmapAsShadowmap,set:(e,n)=>{e.useLightmapAsShadowmap=n}},metadata:S},Bs,zs),u(i,null,Hs,{kind:"accessor",name:"useAlphaFromAlbedoTexture",static:!1,private:!1,access:{has:e=>"useAlphaFromAlbedoTexture"in e,get:e=>e.useAlphaFromAlbedoTexture,set:(e,n)=>{e.useAlphaFromAlbedoTexture=n}},metadata:S},Gs,Ws),u(i,null,ws,{kind:"accessor",name:"forceAlphaTest",static:!1,private:!1,access:{has:e=>"forceAlphaTest"in e,get:e=>e.forceAlphaTest,set:(e,n)=>{e.forceAlphaTest=n}},metadata:S},Vs,Ys),u(i,null,Xs,{kind:"accessor",name:"alphaCutOff",static:!1,private:!1,access:{has:e=>"alphaCutOff"in e,get:e=>e.alphaCutOff,set:(e,n)=>{e.alphaCutOff=n}},metadata:S},Ks,js),u(i,null,Qs,{kind:"accessor",name:"useSpecularOverAlpha",static:!1,private:!1,access:{has:e=>"useSpecularOverAlpha"in e,get:e=>e.useSpecularOverAlpha,set:(e,n)=>{e.useSpecularOverAlpha=n}},metadata:S},Zs,Js),u(i,null,$s,{kind:"accessor",name:"useMicroSurfaceFromReflectivityMapAlpha",static:!1,private:!1,access:{has:e=>"useMicroSurfaceFromReflectivityMapAlpha"in e,get:e=>e.useMicroSurfaceFromReflectivityMapAlpha,set:(e,n)=>{e.useMicroSurfaceFromReflectivityMapAlpha=n}},metadata:S},qs,ei),u(i,null,ti,{kind:"accessor",name:"useRoughnessFromMetallicTextureAlpha",static:!1,private:!1,access:{has:e=>"useRoughnessFromMetallicTextureAlpha"in e,get:e=>e.useRoughnessFromMetallicTextureAlpha,set:(e,n)=>{e.useRoughnessFromMetallicTextureAlpha=n}},metadata:S},si,ii),u(i,null,ai,{kind:"accessor",name:"useRoughnessFromMetallicTextureGreen",static:!1,private:!1,access:{has:e=>"useRoughnessFromMetallicTextureGreen"in e,get:e=>e.useRoughnessFromMetallicTextureGreen,set:(e,n)=>{e.useRoughnessFromMetallicTextureGreen=n}},metadata:S},ri,li),u(i,null,ni,{kind:"accessor",name:"useMetallnessFromMetallicTextureBlue",static:!1,private:!1,access:{has:e=>"useMetallnessFromMetallicTextureBlue"in e,get:e=>e.useMetallnessFromMetallicTextureBlue,set:(e,n)=>{e.useMetallnessFromMetallicTextureBlue=n}},metadata:S},ui,ci),u(i,null,oi,{kind:"accessor",name:"useAmbientOcclusionFromMetallicTextureRed",static:!1,private:!1,access:{has:e=>"useAmbientOcclusionFromMetallicTextureRed"in e,get:e=>e.useAmbientOcclusionFromMetallicTextureRed,set:(e,n)=>{e.useAmbientOcclusionFromMetallicTextureRed=n}},metadata:S},hi,_i),u(i,null,Ti,{kind:"accessor",name:"useAmbientInGrayScale",static:!1,private:!1,access:{has:e=>"useAmbientInGrayScale"in e,get:e=>e.useAmbientInGrayScale,set:(e,n)=>{e.useAmbientInGrayScale=n}},metadata:S},fi,mi),u(i,null,Ei,{kind:"accessor",name:"useAutoMicroSurfaceFromReflectivityMap",static:!1,private:!1,access:{has:e=>"useAutoMicroSurfaceFromReflectivityMap"in e,get:e=>e.useAutoMicroSurfaceFromReflectivityMap,set:(e,n)=>{e.useAutoMicroSurfaceFromReflectivityMap=n}},metadata:S},xi,Ri),u(i,null,Ai,{kind:"getter",name:"usePhysicalLightFalloff",static:!1,private:!1,access:{has:e=>"usePhysicalLightFalloff"in e,get:e=>e.usePhysicalLightFalloff},metadata:S},null,ze),u(i,null,di,{kind:"getter",name:"useGLTFLightFalloff",static:!1,private:!1,access:{has:e=>"useGLTFLightFalloff"in e,get:e=>e.useGLTFLightFalloff},metadata:S},null,ze),u(i,null,Si,{kind:"accessor",name:"useRadianceOverAlpha",static:!1,private:!1,access:{has:e=>"useRadianceOverAlpha"in e,get:e=>e.useRadianceOverAlpha,set:(e,n)=>{e.useRadianceOverAlpha=n}},metadata:S},pi,gi),u(i,null,Ii,{kind:"accessor",name:"useObjectSpaceNormalMap",static:!1,private:!1,access:{has:e=>"useObjectSpaceNormalMap"in e,get:e=>e.useObjectSpaceNormalMap,set:(e,n)=>{e.useObjectSpaceNormalMap=n}},metadata:S},bi,Ci),u(i,null,Mi,{kind:"accessor",name:"useParallax",static:!1,private:!1,access:{has:e=>"useParallax"in e,get:e=>e.useParallax,set:(e,n)=>{e.useParallax=n}},metadata:S},yi,Li),u(i,null,Oi,{kind:"accessor",name:"useParallaxOcclusion",static:!1,private:!1,access:{has:e=>"useParallaxOcclusion"in e,get:e=>e.useParallaxOcclusion,set:(e,n)=>{e.useParallaxOcclusion=n}},metadata:S},Fi,Ni),u(i,null,vi,{kind:"accessor",name:"parallaxScaleBias",static:!1,private:!1,access:{has:e=>"parallaxScaleBias"in e,get:e=>e.parallaxScaleBias,set:(e,n)=>{e.parallaxScaleBias=n}},metadata:S},Di,Pi),u(i,null,ki,{kind:"accessor",name:"disableLighting",static:!1,private:!1,access:{has:e=>"disableLighting"in e,get:e=>e.disableLighting,set:(e,n)=>{e.disableLighting=n}},metadata:S},Ui,Bi),u(i,null,zi,{kind:"accessor",name:"forceIrradianceInFragment",static:!1,private:!1,access:{has:e=>"forceIrradianceInFragment"in e,get:e=>e.forceIrradianceInFragment,set:(e,n)=>{e.forceIrradianceInFragment=n}},metadata:S},Hi,Gi),u(i,null,Wi,{kind:"accessor",name:"maxSimultaneousLights",static:!1,private:!1,access:{has:e=>"maxSimultaneousLights"in e,get:e=>e.maxSimultaneousLights,set:(e,n)=>{e.maxSimultaneousLights=n}},metadata:S},wi,Vi),u(i,null,Yi,{kind:"accessor",name:"invertNormalMapX",static:!1,private:!1,access:{has:e=>"invertNormalMapX"in e,get:e=>e.invertNormalMapX,set:(e,n)=>{e.invertNormalMapX=n}},metadata:S},Xi,Ki),u(i,null,ji,{kind:"accessor",name:"invertNormalMapY",static:!1,private:!1,access:{has:e=>"invertNormalMapY"in e,get:e=>e.invertNormalMapY,set:(e,n)=>{e.invertNormalMapY=n}},metadata:S},Qi,Zi),u(i,null,Ji,{kind:"accessor",name:"twoSidedLighting",static:!1,private:!1,access:{has:e=>"twoSidedLighting"in e,get:e=>e.twoSidedLighting,set:(e,n)=>{e.twoSidedLighting=n}},metadata:S},$i,qi),u(i,null,ea,{kind:"accessor",name:"useAlphaFresnel",static:!1,private:!1,access:{has:e=>"useAlphaFresnel"in e,get:e=>e.useAlphaFresnel,set:(e,n)=>{e.useAlphaFresnel=n}},metadata:S},ta,sa),u(i,null,ia,{kind:"accessor",name:"useLinearAlphaFresnel",static:!1,private:!1,access:{has:e=>"useLinearAlphaFresnel"in e,get:e=>e.useLinearAlphaFresnel,set:(e,n)=>{e.useLinearAlphaFresnel=n}},metadata:S},aa,ra),u(i,null,la,{kind:"accessor",name:"environmentBRDFTexture",static:!1,private:!1,access:{has:e=>"environmentBRDFTexture"in e,get:e=>e.environmentBRDFTexture,set:(e,n)=>{e.environmentBRDFTexture=n}},metadata:S},na,ua),u(i,null,ca,{kind:"accessor",name:"forceNormalForward",static:!1,private:!1,access:{has:e=>"forceNormalForward"in e,get:e=>e.forceNormalForward,set:(e,n)=>{e.forceNormalForward=n}},metadata:S},oa,ha),u(i,null,_a,{kind:"accessor",name:"enableSpecularAntiAliasing",static:!1,private:!1,access:{has:e=>"enableSpecularAntiAliasing"in e,get:e=>e.enableSpecularAntiAliasing,set:(e,n)=>{e.enableSpecularAntiAliasing=n}},metadata:S},Ta,fa),u(i,null,ma,{kind:"accessor",name:"useHorizonOcclusion",static:!1,private:!1,access:{has:e=>"useHorizonOcclusion"in e,get:e=>e.useHorizonOcclusion,set:(e,n)=>{e.useHorizonOcclusion=n}},metadata:S},Ea,xa),u(i,null,Ra,{kind:"accessor",name:"useRadianceOcclusion",static:!1,private:!1,access:{has:e=>"useRadianceOcclusion"in e,get:e=>e.useRadianceOcclusion,set:(e,n)=>{e.useRadianceOcclusion=n}},metadata:S},Aa,da),u(i,null,Sa,{kind:"accessor",name:"unlit",static:!1,private:!1,access:{has:e=>"unlit"in e,get:e=>e.unlit,set:(e,n)=>{e.unlit=n}},metadata:S},pa,ga),u(i,null,Ia,{kind:"accessor",name:"applyDecalMapAfterDetailMap",static:!1,private:!1,access:{has:e=>"applyDecalMapAfterDetailMap"in e,get:e=>e.applyDecalMapAfterDetailMap,set:(e,n)=>{e.applyDecalMapAfterDetailMap=n}},metadata:S},ba,Ca),S&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:S})})(),i.PBRMATERIAL_OPAQUE=he.PBRMATERIAL_OPAQUE,i.PBRMATERIAL_ALPHATEST=he.PBRMATERIAL_ALPHATEST,i.PBRMATERIAL_ALPHABLEND=he.PBRMATERIAL_ALPHABLEND,i.PBRMATERIAL_ALPHATESTANDBLEND=he.PBRMATERIAL_ALPHATESTANDBLEND,i.DEFAULT_AO_ON_ANALYTICAL_LIGHTS=he.DEFAULT_AO_ON_ANALYTICAL_LIGHTS,i})(),Oa=!1;function Ur(){Oa||(Oa=!0,dr(),Sr("BABYLON.PBRMaterial",kr))}function jr(){Ur()}export{kr as PBRMaterial,jr as RegisterPBRMaterial,Ur as RegisterPbrMaterial};
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./pbr.vertex-BXB7uMkC.js","./index-YcXsPtFI.js","./index-DcTTrc-8.css","./sceneUboDeclaration-1bB3YoON.js","./meshUboDeclaration-dDsFbRSv.js","./pbrUboDeclaration-CMkwjzTB.js","./vertexColorMixing-C6OHmVcI.js","./mainUVVaryingDeclaration-CoUbOUEQ.js","./helperFunctions-DeCJcXoK.js","./pbrBRDFFunctions-C50h7JEU.js","./bakedVertexAnimation-CZalW6MY.js","./harmonicsFunctions-BVmgiiRj.js","./bumpVertexDeclaration-DaRKbtcX.js","./clipPlaneVertex-ChqMABPH.js","./logDepthVertex-Dt5zdVFA.js","./logDepthDeclaration-DHeJwlJR.js","./bumpVertex-DLicej86.js","./pbr.fragment-BUBggeRz.js","./oitFragment-C1JYx8fS.js","./pbrDebug-RHma8ghT.js","./reflectionFunction-CpMEFzxv.js","./pbrIBLFunctions-D5A_AxnZ.js","./clipPlaneFragment-Cllz8e_G.js","./fogFragment-BzLCRCIz.js","./bumpFragment-VvIKAANw.js","./lightFragment-BRkIPUO1.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{bz as h,bA as _,aO as s,cf as we,aU as u,cc as Be,aV as m,ce as T,c as se,bq as x,c2 as j,bJ as Q,cg as X,ch as xe,a9 as Na,aR as Ue,ci as va,a0 as Bt,a7 as Da,bB as Pa,cj as ka,bC as Ma,L as Ua,bE as Ba,bP as za,bQ as Ha,bR as Ga,bS as Wa,bT as wa,bU as Va,bV as Ya,bG as Ht,bW as Xa,bX as Ka,bY as Gt,bZ as ja,ay as zt,b_ as Qa,b$ as Za,c0 as Ja,c1 as $a,br as qa,c3 as er,c4 as tr,c5 as sr,bF as ir,bH as ar,bI as rr,bK as lr,ck as Nt,bL as nr,bw as ur,bM as cr,b8 as or,bN as hr,bx as _r,bO as Tr,aT as vt,c6 as fr,c8 as mr,c9 as Er,ca as xr,cb as Rr,cl as Ar,bD as ya,c7 as dr,i as Sr}from"./index-YcXsPtFI.js";import{b as Fa}from"./brdfTextureTools-BHIclPmG.js";class pr extends Be{constructor(){super(...arguments),this.BRDF_V_HEIGHT_CORRELATED=!1,this.MS_BRDF_ENERGY_CONSERVATION=!1,this.SPHERICAL_HARMONICS=!1,this.SPECULAR_GLOSSINESS_ENERGY_CONSERVATION=!1,this.MIX_IBL_RADIANCE_WITH_IRRADIANCE=!0,this.LEGACY_SPECULAR_ENERGY_CONSERVATION=!1,this.BASE_DIFFUSE_MODEL=0,this.DIELECTRIC_SPECULAR_MODEL=0,this.CONDUCTOR_SPECULAR_MODEL=0}}let gr=(()=>{var i,v,k,U,G,W,H,l,d,a;let I=we,g,F=[],M=[],P,B=[],p=[],b,y=[],R=[],N,f=[],L=[],V,q=[],te=[],Y,o=[],D=[],J,ae=[],re=[],le,ne=[],ue=[],ce,K=[],c=[];return i=class extends I{get useEnergyConservation(){return h(this,v,"f")}set useEnergyConservation(E){_(this,v,E,"f")}get useSmithVisibilityHeightCorrelated(){return h(this,k,"f")}set useSmithVisibilityHeightCorrelated(E){_(this,k,E,"f")}get useSphericalHarmonics(){return h(this,U,"f")}set useSphericalHarmonics(E){_(this,U,E,"f")}get useSpecularGlossinessInputEnergyConservation(){return h(this,G,"f")}set useSpecularGlossinessInputEnergyConservation(E){_(this,G,E,"f")}get mixIblRadianceWithIrradiance(){return h(this,W,"f")}set mixIblRadianceWithIrradiance(E){_(this,W,E,"f")}get useLegacySpecularEnergyConservation(){return h(this,H,"f")}set useLegacySpecularEnergyConservation(E){_(this,H,E,"f")}get baseDiffuseModel(){return h(this,l,"f")}set baseDiffuseModel(E){_(this,l,E,"f")}get dielectricSpecularModel(){return h(this,d,"f")}set dielectricSpecularModel(E){_(this,d,E,"f")}get conductorSpecularModel(){return h(this,a,"f")}set conductorSpecularModel(E){_(this,a,E,"f")}_markAllSubMeshesAsMiscDirty(){this._internalMarkAllSubMeshesAsMiscDirty()}isCompatible(){return!0}constructor(E,w=!0){super(E,"PBRBRDF",90,new pr,w),this._useEnergyConservation=i.DEFAULT_USE_ENERGY_CONSERVATION,v.set(this,s(this,F,i.DEFAULT_USE_ENERGY_CONSERVATION)),this._useSmithVisibilityHeightCorrelated=(s(this,M),i.DEFAULT_USE_SMITH_VISIBILITY_HEIGHT_CORRELATED),k.set(this,s(this,B,i.DEFAULT_USE_SMITH_VISIBILITY_HEIGHT_CORRELATED)),this._useSphericalHarmonics=(s(this,p),i.DEFAULT_USE_SPHERICAL_HARMONICS),U.set(this,s(this,y,i.DEFAULT_USE_SPHERICAL_HARMONICS)),this._useSpecularGlossinessInputEnergyConservation=(s(this,R),i.DEFAULT_USE_SPECULAR_GLOSSINESS_INPUT_ENERGY_CONSERVATION),G.set(this,s(this,f,i.DEFAULT_USE_SPECULAR_GLOSSINESS_INPUT_ENERGY_CONSERVATION)),this._mixIblRadianceWithIrradiance=(s(this,L),i.DEFAULT_MIX_IBL_RADIANCE_WITH_IRRADIANCE),W.set(this,s(this,q,i.DEFAULT_MIX_IBL_RADIANCE_WITH_IRRADIANCE)),this._useLegacySpecularEnergyConservation=(s(this,te),i.DEFAULT_USE_LEGACY_SPECULAR_ENERGY_CONSERVATION),H.set(this,s(this,o,i.DEFAULT_USE_LEGACY_SPECULAR_ENERGY_CONSERVATION)),this._baseDiffuseModel=(s(this,D),i.DEFAULT_DIFFUSE_MODEL),l.set(this,s(this,ae,i.DEFAULT_DIFFUSE_MODEL)),this._dielectricSpecularModel=(s(this,re),i.DEFAULT_DIELECTRIC_SPECULAR_MODEL),d.set(this,s(this,ne,i.DEFAULT_DIELECTRIC_SPECULAR_MODEL)),this._conductorSpecularModel=(s(this,ue),i.DEFAULT_CONDUCTOR_SPECULAR_MODEL),a.set(this,s(this,K,i.DEFAULT_CONDUCTOR_SPECULAR_MODEL)),this._internalMarkAllSubMeshesAsMiscDirty=s(this,c),this._internalMarkAllSubMeshesAsMiscDirty=E._dirtyCallbacks[16],this._enable(!0)}prepareDefines(E){E.BRDF_V_HEIGHT_CORRELATED=this._useSmithVisibilityHeightCorrelated,E.MS_BRDF_ENERGY_CONSERVATION=this._useEnergyConservation&&this._useSmithVisibilityHeightCorrelated,E.SPHERICAL_HARMONICS=this._useSphericalHarmonics,E.SPECULAR_GLOSSINESS_ENERGY_CONSERVATION=this._useSpecularGlossinessInputEnergyConservation,E.MIX_IBL_RADIANCE_WITH_IRRADIANCE=this._mixIblRadianceWithIrradiance&&!this._material._disableLighting,E.LEGACY_SPECULAR_ENERGY_CONSERVATION=this._useLegacySpecularEnergyConservation,E.BASE_DIFFUSE_MODEL=this._baseDiffuseModel,E.DIELECTRIC_SPECULAR_MODEL=this._dielectricSpecularModel,E.CONDUCTOR_SPECULAR_MODEL=this._conductorSpecularModel}getClassName(){return"PBRBRDFConfiguration"}},v=new WeakMap,k=new WeakMap,U=new WeakMap,G=new WeakMap,W=new WeakMap,H=new WeakMap,l=new WeakMap,d=new WeakMap,a=new WeakMap,(()=>{const C=typeof Symbol=="function"&&Symbol.metadata?Object.create(I[Symbol.metadata]??null):void 0;g=[m(),T("_markAllSubMeshesAsMiscDirty")],P=[m(),T("_markAllSubMeshesAsMiscDirty")],b=[m(),T("_markAllSubMeshesAsMiscDirty")],N=[m(),T("_markAllSubMeshesAsMiscDirty")],V=[m(),T("_markAllSubMeshesAsMiscDirty")],Y=[m(),T("_markAllSubMeshesAsMiscDirty")],J=[m("baseDiffuseModel"),T("_markAllSubMeshesAsMiscDirty")],le=[m("dielectricSpecularModel"),T("_markAllSubMeshesAsMiscDirty")],ce=[m("conductorSpecularModel"),T("_markAllSubMeshesAsMiscDirty")],u(i,null,g,{kind:"accessor",name:"useEnergyConservation",static:!1,private:!1,access:{has:E=>"useEnergyConservation"in E,get:E=>E.useEnergyConservation,set:(E,w)=>{E.useEnergyConservation=w}},metadata:C},F,M),u(i,null,P,{kind:"accessor",name:"useSmithVisibilityHeightCorrelated",static:!1,private:!1,access:{has:E=>"useSmithVisibilityHeightCorrelated"in E,get:E=>E.useSmithVisibilityHeightCorrelated,set:(E,w)=>{E.useSmithVisibilityHeightCorrelated=w}},metadata:C},B,p),u(i,null,b,{kind:"accessor",name:"useSphericalHarmonics",static:!1,private:!1,access:{has:E=>"useSphericalHarmonics"in E,get:E=>E.useSphericalHarmonics,set:(E,w)=>{E.useSphericalHarmonics=w}},metadata:C},y,R),u(i,null,N,{kind:"accessor",name:"useSpecularGlossinessInputEnergyConservation",static:!1,private:!1,access:{has:E=>"useSpecularGlossinessInputEnergyConservation"in E,get:E=>E.useSpecularGlossinessInputEnergyConservation,set:(E,w)=>{E.useSpecularGlossinessInputEnergyConservation=w}},metadata:C},f,L),u(i,null,V,{kind:"accessor",name:"mixIblRadianceWithIrradiance",static:!1,private:!1,access:{has:E=>"mixIblRadianceWithIrradiance"in E,get:E=>E.mixIblRadianceWithIrradiance,set:(E,w)=>{E.mixIblRadianceWithIrradiance=w}},metadata:C},q,te),u(i,null,Y,{kind:"accessor",name:"useLegacySpecularEnergyConservation",static:!1,private:!1,access:{has:E=>"useLegacySpecularEnergyConservation"in E,get:E=>E.useLegacySpecularEnergyConservation,set:(E,w)=>{E.useLegacySpecularEnergyConservation=w}},metadata:C},o,D),u(i,null,J,{kind:"accessor",name:"baseDiffuseModel",static:!1,private:!1,access:{has:E=>"baseDiffuseModel"in E,get:E=>E.baseDiffuseModel,set:(E,w)=>{E.baseDiffuseModel=w}},metadata:C},ae,re),u(i,null,le,{kind:"accessor",name:"dielectricSpecularModel",static:!1,private:!1,access:{has:E=>"dielectricSpecularModel"in E,get:E=>E.dielectricSpecularModel,set:(E,w)=>{E.dielectricSpecularModel=w}},metadata:C},ne,ue),u(i,null,ce,{kind:"accessor",name:"conductorSpecularModel",static:!1,private:!1,access:{has:E=>"conductorSpecularModel"in E,get:E=>E.conductorSpecularModel,set:(E,w)=>{E.conductorSpecularModel=w}},metadata:C},K,c),C&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:C})})(),i.DEFAULT_USE_ENERGY_CONSERVATION=!0,i.DEFAULT_USE_SMITH_VISIBILITY_HEIGHT_CORRELATED=!0,i.DEFAULT_USE_SPHERICAL_HARMONICS=!0,i.DEFAULT_USE_SPECULAR_GLOSSINESS_INPUT_ENERGY_CONSERVATION=!0,i.DEFAULT_MIX_IBL_RADIANCE_WITH_IRRADIANCE=!0,i.DEFAULT_USE_LEGACY_SPECULAR_ENERGY_CONSERVATION=!0,i.DEFAULT_DIFFUSE_MODEL=0,i.DEFAULT_DIELECTRIC_SPECULAR_MODEL=0,i.DEFAULT_CONDUCTOR_SPECULAR_MODEL=0,i})();class Ir extends Be{constructor(){super(...arguments),this.CLEARCOAT=!1,this.CLEARCOAT_DEFAULTIOR=!1,this.CLEARCOAT_TEXTURE=!1,this.CLEARCOAT_TEXTURE_ROUGHNESS=!1,this.CLEARCOAT_TEXTUREDIRECTUV=0,this.CLEARCOAT_TEXTURE_ROUGHNESSDIRECTUV=0,this.CLEARCOAT_BUMP=!1,this.CLEARCOAT_BUMPDIRECTUV=0,this.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE=!1,this.CLEARCOAT_REMAP_F0=!1,this.CLEARCOAT_TINT=!1,this.CLEARCOAT_TINT_TEXTURE=!1,this.CLEARCOAT_TINT_TEXTUREDIRECTUV=0,this.CLEARCOAT_TINT_GAMMATEXTURE=!1}}let br=(()=>{var i,v,k,U,G,W,H,l,d,a;let I=we,g,F=[],M=[],P,B=[],p=[],b,y=[],R=[],N,f=[],L=[],V,q=[],te=[],Y,o=[],D=[],J,ae=[],re=[],le,ne=[],ue=[],ce,K=[],c=[],C,E=[],w=[],_e,me=[],Re=[],Ae,de=[],Se=[],pe,ge=[],Ie=[],be,Ce=[],Me=[];return i=class extends I{get isEnabled(){return h(this,v,"f")}set isEnabled(r){_(this,v,r,"f")}get indexOfRefraction(){return h(this,k,"f")}set indexOfRefraction(r){_(this,k,r,"f")}get texture(){return h(this,U,"f")}set texture(r){_(this,U,r,"f")}get useRoughnessFromMainTexture(){return h(this,G,"f")}set useRoughnessFromMainTexture(r){_(this,G,r,"f")}get textureRoughness(){return h(this,W,"f")}set textureRoughness(r){_(this,W,r,"f")}get remapF0OnInterfaceChange(){return h(this,H,"f")}set remapF0OnInterfaceChange(r){_(this,H,r,"f")}get bumpTexture(){return h(this,l,"f")}set bumpTexture(r){_(this,l,r,"f")}get isTintEnabled(){return h(this,d,"f")}set isTintEnabled(r){_(this,d,r,"f")}get tintTexture(){return h(this,a,"f")}set tintTexture(r){_(this,a,r,"f")}_markAllSubMeshesAsTexturesDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}isCompatible(){return!0}constructor(r,O=!0){super(r,"PBRClearCoat",100,new Ir,O),this._isEnabled=!1,v.set(this,s(this,F,!1)),this.intensity=(s(this,M),s(this,B,1)),this.roughness=(s(this,p),s(this,y,0)),this._indexOfRefraction=(s(this,R),i._DefaultIndexOfRefraction),k.set(this,s(this,f,i._DefaultIndexOfRefraction)),this._texture=(s(this,L),null),U.set(this,s(this,q,null)),this._useRoughnessFromMainTexture=(s(this,te),!0),G.set(this,s(this,o,!0)),this._textureRoughness=(s(this,D),null),W.set(this,s(this,ae,null)),this._remapF0OnInterfaceChange=(s(this,re),!0),H.set(this,s(this,ne,!0)),this._bumpTexture=(s(this,ue),null),l.set(this,s(this,K,null)),this._isTintEnabled=(s(this,c),!1),d.set(this,s(this,E,!1)),this.tintColor=(s(this,w),s(this,me,se.White())),this.tintColorAtDistance=(s(this,Re),s(this,de,1)),this.tintThickness=(s(this,Se),s(this,ge,1)),this._tintTexture=(s(this,Ie),null),a.set(this,s(this,Ce,null)),this._internalMarkAllSubMeshesAsTexturesDirty=s(this,Me),this._internalMarkAllSubMeshesAsTexturesDirty=r._dirtyCallbacks[1]}isReadyForSubMesh(r,O,ie){if(!this._isEnabled)return!0;const Ee=this._material._disableBumpMap;return!(r._areTexturesDirty&&O.texturesEnabled&&(this._texture&&x.ClearCoatTextureEnabled&&!this._texture.isReadyOrNotBlocking()||this._textureRoughness&&x.ClearCoatTextureEnabled&&!this._textureRoughness.isReadyOrNotBlocking()||ie.getCaps().standardDerivatives&&this._bumpTexture&&x.ClearCoatBumpTextureEnabled&&!Ee&&!this._bumpTexture.isReady()||this._isTintEnabled&&this._tintTexture&&x.ClearCoatTintTextureEnabled&&!this._tintTexture.isReadyOrNotBlocking()))}prepareDefinesBeforeAttributes(r,O){this._isEnabled?(r.CLEARCOAT=!0,r.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE=this._useRoughnessFromMainTexture,r.CLEARCOAT_REMAP_F0=this._remapF0OnInterfaceChange,r._areTexturesDirty&&O.texturesEnabled&&(this._texture&&x.ClearCoatTextureEnabled?j(this._texture,r,"CLEARCOAT_TEXTURE"):r.CLEARCOAT_TEXTURE=!1,this._textureRoughness&&x.ClearCoatTextureEnabled?j(this._textureRoughness,r,"CLEARCOAT_TEXTURE_ROUGHNESS"):r.CLEARCOAT_TEXTURE_ROUGHNESS=!1,this._bumpTexture&&x.ClearCoatBumpTextureEnabled?j(this._bumpTexture,r,"CLEARCOAT_BUMP"):r.CLEARCOAT_BUMP=!1,r.CLEARCOAT_DEFAULTIOR=this._indexOfRefraction===i._DefaultIndexOfRefraction,this._isTintEnabled?(r.CLEARCOAT_TINT=!0,this._tintTexture&&x.ClearCoatTintTextureEnabled?(j(this._tintTexture,r,"CLEARCOAT_TINT_TEXTURE"),r.CLEARCOAT_TINT_GAMMATEXTURE=this._tintTexture.gammaSpace):r.CLEARCOAT_TINT_TEXTURE=!1):(r.CLEARCOAT_TINT=!1,r.CLEARCOAT_TINT_TEXTURE=!1))):(r.CLEARCOAT=!1,r.CLEARCOAT_TEXTURE=!1,r.CLEARCOAT_TEXTURE_ROUGHNESS=!1,r.CLEARCOAT_BUMP=!1,r.CLEARCOAT_TINT=!1,r.CLEARCOAT_TINT_TEXTURE=!1,r.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE=!1,r.CLEARCOAT_DEFAULTIOR=!1,r.CLEARCOAT_TEXTUREDIRECTUV=0,r.CLEARCOAT_TEXTURE_ROUGHNESSDIRECTUV=0,r.CLEARCOAT_BUMPDIRECTUV=0,r.CLEARCOAT_REMAP_F0=!1,r.CLEARCOAT_TINT_TEXTUREDIRECTUV=0,r.CLEARCOAT_TINT_GAMMATEXTURE=!1)}bindForSubMesh(r,O,ie,Ee){if(!this._isEnabled)return;const ye=Ee.materialDefines,De=this._material.isFrozen,Le=this._material._disableBumpMap,Oe=this._material._invertNormalMapX,Fe=this._material._invertNormalMapY;if(!r.useUbo||!De||!r.isSync){(this._texture||this._textureRoughness)&&x.ClearCoatTextureEnabled&&(r.updateFloat4("vClearCoatInfos",this._texture?.coordinatesIndex??0,this._texture?.level??0,this._textureRoughness?.coordinatesIndex??0,this._textureRoughness?.level??0),this._texture&&Q(this._texture,r,"clearCoat"),this._textureRoughness&&!ye.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE&&Q(this._textureRoughness,r,"clearCoatRoughness")),this._bumpTexture&&ie.getCaps().standardDerivatives&&x.ClearCoatTextureEnabled&&!Le&&(r.updateFloat2("vClearCoatBumpInfos",this._bumpTexture.coordinatesIndex,this._bumpTexture.level),Q(this._bumpTexture,r,"clearCoatBump"),O._mirroredCameraPosition?r.updateFloat2("vClearCoatTangentSpaceParams",Oe?1:-1,Fe?1:-1):r.updateFloat2("vClearCoatTangentSpaceParams",Oe?-1:1,Fe?-1:1)),this._tintTexture&&x.ClearCoatTintTextureEnabled&&(r.updateFloat2("vClearCoatTintInfos",this._tintTexture.coordinatesIndex,this._tintTexture.level),Q(this._tintTexture,r,"clearCoatTint")),r.updateFloat2("vClearCoatParams",this.intensity,this.roughness);const Ne=1-this._indexOfRefraction,ve=1+this._indexOfRefraction,Pe=Math.pow(-Ne/ve,2),ke=1/this._indexOfRefraction;r.updateFloat4("vClearCoatRefractionParams",Pe,ke,Ne,ve),this._isTintEnabled&&(r.updateFloat4("vClearCoatTintParams",this.tintColor.r,this.tintColor.g,this.tintColor.b,Math.max(1e-5,this.tintThickness)),r.updateFloat("clearCoatColorAtDistance",Math.max(1e-5,this.tintColorAtDistance)))}O.texturesEnabled&&(this._texture&&x.ClearCoatTextureEnabled&&r.setTexture("clearCoatSampler",this._texture),this._textureRoughness&&!ye.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE&&x.ClearCoatTextureEnabled&&r.setTexture("clearCoatRoughnessSampler",this._textureRoughness),this._bumpTexture&&ie.getCaps().standardDerivatives&&x.ClearCoatBumpTextureEnabled&&!Le&&r.setTexture("clearCoatBumpSampler",this._bumpTexture),this._isTintEnabled&&this._tintTexture&&x.ClearCoatTintTextureEnabled&&r.setTexture("clearCoatTintSampler",this._tintTexture))}hasTexture(r){return this._texture===r||this._textureRoughness===r||this._bumpTexture===r||this._tintTexture===r}getActiveTextures(r){this._texture&&r.push(this._texture),this._textureRoughness&&r.push(this._textureRoughness),this._bumpTexture&&r.push(this._bumpTexture),this._tintTexture&&r.push(this._tintTexture)}getAnimatables(r){this._texture&&this._texture.animations&&this._texture.animations.length>0&&r.push(this._texture),this._textureRoughness&&this._textureRoughness.animations&&this._textureRoughness.animations.length>0&&r.push(this._textureRoughness),this._bumpTexture&&this._bumpTexture.animations&&this._bumpTexture.animations.length>0&&r.push(this._bumpTexture),this._tintTexture&&this._tintTexture.animations&&this._tintTexture.animations.length>0&&r.push(this._tintTexture)}dispose(r){r&&(this._texture?.dispose(),this._textureRoughness?.dispose(),this._bumpTexture?.dispose(),this._tintTexture?.dispose())}getClassName(){return"PBRClearCoatConfiguration"}addFallbacks(r,O,ie){return r.CLEARCOAT_BUMP&&O.addFallback(ie++,"CLEARCOAT_BUMP"),r.CLEARCOAT_TINT&&O.addFallback(ie++,"CLEARCOAT_TINT"),r.CLEARCOAT&&O.addFallback(ie++,"CLEARCOAT"),ie}getSamplers(r){r.push("clearCoatSampler","clearCoatRoughnessSampler","clearCoatBumpSampler","clearCoatTintSampler")}getUniforms(){return{ubo:[{name:"vClearCoatParams",size:2,type:"vec2"},{name:"vClearCoatRefractionParams",size:4,type:"vec4"},{name:"vClearCoatInfos",size:4,type:"vec4"},{name:"clearCoatMatrix",size:16,type:"mat4"},{name:"clearCoatRoughnessMatrix",size:16,type:"mat4"},{name:"vClearCoatBumpInfos",size:2,type:"vec2"},{name:"vClearCoatTangentSpaceParams",size:2,type:"vec2"},{name:"clearCoatBumpMatrix",size:16,type:"mat4"},{name:"vClearCoatTintParams",size:4,type:"vec4"},{name:"clearCoatColorAtDistance",size:1,type:"float"},{name:"vClearCoatTintInfos",size:2,type:"vec2"},{name:"clearCoatTintMatrix",size:16,type:"mat4"}]}}},v=new WeakMap,k=new WeakMap,U=new WeakMap,G=new WeakMap,W=new WeakMap,H=new WeakMap,l=new WeakMap,d=new WeakMap,a=new WeakMap,(()=>{const Z=typeof Symbol=="function"&&Symbol.metadata?Object.create(I[Symbol.metadata]??null):void 0;g=[m(),T("_markAllSubMeshesAsTexturesDirty")],P=[m()],b=[m()],N=[m(),T("_markAllSubMeshesAsTexturesDirty")],V=[X(),T("_markAllSubMeshesAsTexturesDirty")],Y=[m(),T("_markAllSubMeshesAsTexturesDirty")],J=[X(),T("_markAllSubMeshesAsTexturesDirty")],le=[m(),T("_markAllSubMeshesAsTexturesDirty")],ce=[X(),T("_markAllSubMeshesAsTexturesDirty")],C=[m(),T("_markAllSubMeshesAsTexturesDirty")],_e=[xe()],Ae=[m()],pe=[m()],be=[X(),T("_markAllSubMeshesAsTexturesDirty")],u(i,null,g,{kind:"accessor",name:"isEnabled",static:!1,private:!1,access:{has:r=>"isEnabled"in r,get:r=>r.isEnabled,set:(r,O)=>{r.isEnabled=O}},metadata:Z},F,M),u(i,null,N,{kind:"accessor",name:"indexOfRefraction",static:!1,private:!1,access:{has:r=>"indexOfRefraction"in r,get:r=>r.indexOfRefraction,set:(r,O)=>{r.indexOfRefraction=O}},metadata:Z},f,L),u(i,null,V,{kind:"accessor",name:"texture",static:!1,private:!1,access:{has:r=>"texture"in r,get:r=>r.texture,set:(r,O)=>{r.texture=O}},metadata:Z},q,te),u(i,null,Y,{kind:"accessor",name:"useRoughnessFromMainTexture",static:!1,private:!1,access:{has:r=>"useRoughnessFromMainTexture"in r,get:r=>r.useRoughnessFromMainTexture,set:(r,O)=>{r.useRoughnessFromMainTexture=O}},metadata:Z},o,D),u(i,null,J,{kind:"accessor",name:"textureRoughness",static:!1,private:!1,access:{has:r=>"textureRoughness"in r,get:r=>r.textureRoughness,set:(r,O)=>{r.textureRoughness=O}},metadata:Z},ae,re),u(i,null,le,{kind:"accessor",name:"remapF0OnInterfaceChange",static:!1,private:!1,access:{has:r=>"remapF0OnInterfaceChange"in r,get:r=>r.remapF0OnInterfaceChange,set:(r,O)=>{r.remapF0OnInterfaceChange=O}},metadata:Z},ne,ue),u(i,null,ce,{kind:"accessor",name:"bumpTexture",static:!1,private:!1,access:{has:r=>"bumpTexture"in r,get:r=>r.bumpTexture,set:(r,O)=>{r.bumpTexture=O}},metadata:Z},K,c),u(i,null,C,{kind:"accessor",name:"isTintEnabled",static:!1,private:!1,access:{has:r=>"isTintEnabled"in r,get:r=>r.isTintEnabled,set:(r,O)=>{r.isTintEnabled=O}},metadata:Z},E,w),u(i,null,be,{kind:"accessor",name:"tintTexture",static:!1,private:!1,access:{has:r=>"tintTexture"in r,get:r=>r.tintTexture,set:(r,O)=>{r.tintTexture=O}},metadata:Z},Ce,Me),u(null,null,P,{kind:"field",name:"intensity",static:!1,private:!1,access:{has:r=>"intensity"in r,get:r=>r.intensity,set:(r,O)=>{r.intensity=O}},metadata:Z},B,p),u(null,null,b,{kind:"field",name:"roughness",static:!1,private:!1,access:{has:r=>"roughness"in r,get:r=>r.roughness,set:(r,O)=>{r.roughness=O}},metadata:Z},y,R),u(null,null,_e,{kind:"field",name:"tintColor",static:!1,private:!1,access:{has:r=>"tintColor"in r,get:r=>r.tintColor,set:(r,O)=>{r.tintColor=O}},metadata:Z},me,Re),u(null,null,Ae,{kind:"field",name:"tintColorAtDistance",static:!1,private:!1,access:{has:r=>"tintColorAtDistance"in r,get:r=>r.tintColorAtDistance,set:(r,O)=>{r.tintColorAtDistance=O}},metadata:Z},de,Se),u(null,null,pe,{kind:"field",name:"tintThickness",static:!1,private:!1,access:{has:r=>"tintThickness"in r,get:r=>r.tintThickness,set:(r,O)=>{r.tintThickness=O}},metadata:Z},ge,Ie),Z&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:Z})})(),i._DefaultIndexOfRefraction=1.5,i})();class Cr extends Be{constructor(){super(...arguments),this.IRIDESCENCE=!1,this.IRIDESCENCE_TEXTURE=!1,this.IRIDESCENCE_TEXTUREDIRECTUV=0,this.IRIDESCENCE_THICKNESS_TEXTURE=!1,this.IRIDESCENCE_THICKNESS_TEXTUREDIRECTUV=0}}let Mr=(()=>{var i,v,k,U;let G=we,W,H=[],l=[],d,a=[],I=[],g,F=[],M=[],P,B=[],p=[],b,y=[],R=[],N,f=[],L=[],V,q=[],te=[];return i=class extends G{get isEnabled(){return h(this,v,"f")}set isEnabled(o){_(this,v,o,"f")}get texture(){return h(this,k,"f")}set texture(o){_(this,k,o,"f")}get thicknessTexture(){return h(this,U,"f")}set thicknessTexture(o){_(this,U,o,"f")}_markAllSubMeshesAsTexturesDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}isCompatible(){return!0}constructor(o,D=!0){super(o,"PBRIridescence",110,new Cr,D),this._isEnabled=!1,v.set(this,s(this,H,!1)),this.intensity=(s(this,l),s(this,a,1)),this.minimumThickness=(s(this,I),s(this,F,i._DefaultMinimumThickness)),this.maximumThickness=(s(this,M),s(this,B,i._DefaultMaximumThickness)),this.indexOfRefraction=(s(this,p),s(this,y,i._DefaultIndexOfRefraction)),this._texture=(s(this,R),null),k.set(this,s(this,f,null)),this._thicknessTexture=(s(this,L),null),U.set(this,s(this,q,null)),this._internalMarkAllSubMeshesAsTexturesDirty=s(this,te),this._internalMarkAllSubMeshesAsTexturesDirty=o._dirtyCallbacks[1]}isReadyForSubMesh(o,D){return this._isEnabled?!(o._areTexturesDirty&&D.texturesEnabled&&(this._texture&&x.IridescenceTextureEnabled&&!this._texture.isReadyOrNotBlocking()||this._thicknessTexture&&x.IridescenceTextureEnabled&&!this._thicknessTexture.isReadyOrNotBlocking())):!0}prepareDefinesBeforeAttributes(o,D){this._isEnabled?(o.IRIDESCENCE=!0,o._areTexturesDirty&&D.texturesEnabled&&(this._texture&&x.IridescenceTextureEnabled?j(this._texture,o,"IRIDESCENCE_TEXTURE"):o.IRIDESCENCE_TEXTURE=!1,this._thicknessTexture&&x.IridescenceTextureEnabled?j(this._thicknessTexture,o,"IRIDESCENCE_THICKNESS_TEXTURE"):o.IRIDESCENCE_THICKNESS_TEXTURE=!1)):(o.IRIDESCENCE=!1,o.IRIDESCENCE_TEXTURE=!1,o.IRIDESCENCE_THICKNESS_TEXTURE=!1,o.IRIDESCENCE_TEXTUREDIRECTUV=0,o.IRIDESCENCE_THICKNESS_TEXTUREDIRECTUV=0)}bindForSubMesh(o,D){if(!this._isEnabled)return;const J=this._material.isFrozen;(!o.useUbo||!J||!o.isSync)&&((this._texture||this._thicknessTexture)&&x.IridescenceTextureEnabled&&(o.updateFloat4("vIridescenceInfos",this._texture?.coordinatesIndex??0,this._texture?.level??0,this._thicknessTexture?.coordinatesIndex??0,this._thicknessTexture?.level??0),this._texture&&Q(this._texture,o,"iridescence"),this._thicknessTexture&&Q(this._thicknessTexture,o,"iridescenceThickness")),o.updateFloat4("vIridescenceParams",this.intensity,this.indexOfRefraction,this.minimumThickness,this.maximumThickness)),D.texturesEnabled&&(this._texture&&x.IridescenceTextureEnabled&&o.setTexture("iridescenceSampler",this._texture),this._thicknessTexture&&x.IridescenceTextureEnabled&&o.setTexture("iridescenceThicknessSampler",this._thicknessTexture))}hasTexture(o){return this._texture===o||this._thicknessTexture===o}getActiveTextures(o){this._texture&&o.push(this._texture),this._thicknessTexture&&o.push(this._thicknessTexture)}getAnimatables(o){this._texture&&this._texture.animations&&this._texture.animations.length>0&&o.push(this._texture),this._thicknessTexture&&this._thicknessTexture.animations&&this._thicknessTexture.animations.length>0&&o.push(this._thicknessTexture)}dispose(o){o&&(this._texture?.dispose(),this._thicknessTexture?.dispose())}getClassName(){return"PBRIridescenceConfiguration"}addFallbacks(o,D,J){return o.IRIDESCENCE&&D.addFallback(J++,"IRIDESCENCE"),J}getSamplers(o){o.push("iridescenceSampler","iridescenceThicknessSampler")}getUniforms(){return{ubo:[{name:"vIridescenceParams",size:4,type:"vec4"},{name:"vIridescenceInfos",size:4,type:"vec4"},{name:"iridescenceMatrix",size:16,type:"mat4"},{name:"iridescenceThicknessMatrix",size:16,type:"mat4"}]}}},v=new WeakMap,k=new WeakMap,U=new WeakMap,(()=>{const Y=typeof Symbol=="function"&&Symbol.metadata?Object.create(G[Symbol.metadata]??null):void 0;W=[m(),T("_markAllSubMeshesAsTexturesDirty")],d=[m()],g=[m()],P=[m()],b=[m()],N=[X(),T("_markAllSubMeshesAsTexturesDirty")],V=[X(),T("_markAllSubMeshesAsTexturesDirty")],u(i,null,W,{kind:"accessor",name:"isEnabled",static:!1,private:!1,access:{has:o=>"isEnabled"in o,get:o=>o.isEnabled,set:(o,D)=>{o.isEnabled=D}},metadata:Y},H,l),u(i,null,N,{kind:"accessor",name:"texture",static:!1,private:!1,access:{has:o=>"texture"in o,get:o=>o.texture,set:(o,D)=>{o.texture=D}},metadata:Y},f,L),u(i,null,V,{kind:"accessor",name:"thicknessTexture",static:!1,private:!1,access:{has:o=>"thicknessTexture"in o,get:o=>o.thicknessTexture,set:(o,D)=>{o.thicknessTexture=D}},metadata:Y},q,te),u(null,null,d,{kind:"field",name:"intensity",static:!1,private:!1,access:{has:o=>"intensity"in o,get:o=>o.intensity,set:(o,D)=>{o.intensity=D}},metadata:Y},a,I),u(null,null,g,{kind:"field",name:"minimumThickness",static:!1,private:!1,access:{has:o=>"minimumThickness"in o,get:o=>o.minimumThickness,set:(o,D)=>{o.minimumThickness=D}},metadata:Y},F,M),u(null,null,P,{kind:"field",name:"maximumThickness",static:!1,private:!1,access:{has:o=>"maximumThickness"in o,get:o=>o.maximumThickness,set:(o,D)=>{o.maximumThickness=D}},metadata:Y},B,p),u(null,null,b,{kind:"field",name:"indexOfRefraction",static:!1,private:!1,access:{has:o=>"indexOfRefraction"in o,get:o=>o.indexOfRefraction,set:(o,D)=>{o.indexOfRefraction=D}},metadata:Y},y,R),Y&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:Y})})(),i._DefaultMinimumThickness=100,i._DefaultMaximumThickness=400,i._DefaultIndexOfRefraction=1.3,i})();class yr extends Be{constructor(){super(...arguments),this.ANISOTROPIC=!1,this.ANISOTROPIC_TEXTURE=!1,this.ANISOTROPIC_TEXTUREDIRECTUV=0,this.ANISOTROPIC_LEGACY=!1,this.MAINUV1=!1}}let Lr=(()=>{var i,v,k,U;let G=we,W,H=[],l=[],d,a=[],I=[],g,F=[],M=[],P,B=[],p=[],b,y=[],R=[];return i=class extends G{get isEnabled(){return h(this,v,"f")}set isEnabled(f){_(this,v,f,"f")}set angle(f){this.direction.x=Math.cos(f),this.direction.y=Math.sin(f)}get angle(){return Math.atan2(this.direction.y,this.direction.x)}get texture(){return h(this,k,"f")}set texture(f){_(this,k,f,"f")}get legacy(){return h(this,U,"f")}set legacy(f){_(this,U,f,"f")}_markAllSubMeshesAsTexturesDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}_markAllSubMeshesAsMiscDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsMiscDirty()}isCompatible(){return!0}constructor(f,L=!0){super(f,"PBRAnisotropic",110,new yr,L),this._isEnabled=!1,v.set(this,s(this,H,!1)),this.intensity=(s(this,l),s(this,a,1)),this.direction=(s(this,I),s(this,F,new Na(1,0))),this._texture=(s(this,M),null),k.set(this,s(this,B,null)),this._legacy=(s(this,p),!1),U.set(this,s(this,y,!1)),this._internalMarkAllSubMeshesAsTexturesDirty=s(this,R),this._internalMarkAllSubMeshesAsTexturesDirty=f._dirtyCallbacks[1],this._internalMarkAllSubMeshesAsMiscDirty=f._dirtyCallbacks[16]}isReadyForSubMesh(f,L){return this._isEnabled?!(f._areTexturesDirty&&L.texturesEnabled&&this._texture&&x.AnisotropicTextureEnabled&&!this._texture.isReadyOrNotBlocking()):!0}prepareDefinesBeforeAttributes(f,L,V){this._isEnabled?(f.ANISOTROPIC=this._isEnabled,this._isEnabled&&!V.isVerticesDataPresent(Ue.TangentKind)&&(f._needUVs=!0,f.MAINUV1=!0),f._areTexturesDirty&&L.texturesEnabled&&(this._texture&&x.AnisotropicTextureEnabled?j(this._texture,f,"ANISOTROPIC_TEXTURE"):f.ANISOTROPIC_TEXTURE=!1),f._areMiscDirty&&(f.ANISOTROPIC_LEGACY=this._legacy)):(f.ANISOTROPIC=!1,f.ANISOTROPIC_TEXTURE=!1,f.ANISOTROPIC_TEXTUREDIRECTUV=0,f.ANISOTROPIC_LEGACY=!1)}bindForSubMesh(f,L){if(!this._isEnabled)return;const V=this._material.isFrozen;(!f.useUbo||!V||!f.isSync)&&(this._texture&&x.AnisotropicTextureEnabled&&(f.updateFloat2("vAnisotropyInfos",this._texture.coordinatesIndex,this._texture.level),Q(this._texture,f,"anisotropy")),f.updateFloat3("vAnisotropy",this.direction.x,this.direction.y,this.intensity)),L.texturesEnabled&&this._texture&&x.AnisotropicTextureEnabled&&f.setTexture("anisotropySampler",this._texture)}hasTexture(f){return this._texture===f}getActiveTextures(f){this._texture&&f.push(this._texture)}getAnimatables(f){this._texture&&this._texture.animations&&this._texture.animations.length>0&&f.push(this._texture)}dispose(f){f&&this._texture&&this._texture.dispose()}getClassName(){return"PBRAnisotropicConfiguration"}addFallbacks(f,L,V){return f.ANISOTROPIC&&L.addFallback(V++,"ANISOTROPIC"),V}getSamplers(f){f.push("anisotropySampler")}getUniforms(){return{ubo:[{name:"vAnisotropy",size:3,type:"vec3"},{name:"vAnisotropyInfos",size:2,type:"vec2"},{name:"anisotropyMatrix",size:16,type:"mat4"}]}}parse(f,L,V){super.parse(f,L,V),f.legacy===void 0&&(this.legacy=!0)}},v=new WeakMap,k=new WeakMap,U=new WeakMap,(()=>{const N=typeof Symbol=="function"&&Symbol.metadata?Object.create(G[Symbol.metadata]??null):void 0;W=[m(),T("_markAllSubMeshesAsTexturesDirty")],d=[m()],g=[va()],P=[X(),T("_markAllSubMeshesAsTexturesDirty")],b=[m(),T("_markAllSubMeshesAsMiscDirty")],u(i,null,W,{kind:"accessor",name:"isEnabled",static:!1,private:!1,access:{has:f=>"isEnabled"in f,get:f=>f.isEnabled,set:(f,L)=>{f.isEnabled=L}},metadata:N},H,l),u(i,null,P,{kind:"accessor",name:"texture",static:!1,private:!1,access:{has:f=>"texture"in f,get:f=>f.texture,set:(f,L)=>{f.texture=L}},metadata:N},B,p),u(i,null,b,{kind:"accessor",name:"legacy",static:!1,private:!1,access:{has:f=>"legacy"in f,get:f=>f.legacy,set:(f,L)=>{f.legacy=L}},metadata:N},y,R),u(null,null,d,{kind:"field",name:"intensity",static:!1,private:!1,access:{has:f=>"intensity"in f,get:f=>f.intensity,set:(f,L)=>{f.intensity=L}},metadata:N},a,I),u(null,null,g,{kind:"field",name:"direction",static:!1,private:!1,access:{has:f=>"direction"in f,get:f=>f.direction,set:(f,L)=>{f.direction=L}},metadata:N},F,M),N&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:N})})(),i})();class Or extends Be{constructor(){super(...arguments),this.SHEEN=!1,this.SHEEN_TEXTURE=!1,this.SHEEN_GAMMATEXTURE=!1,this.SHEEN_TEXTURE_ROUGHNESS=!1,this.SHEEN_TEXTUREDIRECTUV=0,this.SHEEN_TEXTURE_ROUGHNESSDIRECTUV=0,this.SHEEN_LINKWITHALBEDO=!1,this.SHEEN_ROUGHNESS=!1,this.SHEEN_ALBEDOSCALING=!1,this.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE=!1}}let Fr=(()=>{var i,v,k,U,G,W,H,l;let d=we,a,I=[],g=[],F,M=[],P=[],B,p=[],b=[],y,R=[],N=[],f,L=[],V=[],q,te=[],Y=[],o,D=[],J=[],ae,re=[],le=[],ne,ue=[],ce=[];return i=class extends d{get isEnabled(){return h(this,v,"f")}set isEnabled(c){_(this,v,c,"f")}get linkSheenWithAlbedo(){return h(this,k,"f")}set linkSheenWithAlbedo(c){_(this,k,c,"f")}get texture(){return h(this,U,"f")}set texture(c){_(this,U,c,"f")}get useRoughnessFromMainTexture(){return h(this,G,"f")}set useRoughnessFromMainTexture(c){_(this,G,c,"f")}get roughness(){return h(this,W,"f")}set roughness(c){_(this,W,c,"f")}get textureRoughness(){return h(this,H,"f")}set textureRoughness(c){_(this,H,c,"f")}get albedoScaling(){return h(this,l,"f")}set albedoScaling(c){_(this,l,c,"f")}_markAllSubMeshesAsTexturesDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}isCompatible(){return!0}constructor(c,C=!0){super(c,"Sheen",120,new Or,C),this._isEnabled=!1,v.set(this,s(this,I,!1)),this._linkSheenWithAlbedo=(s(this,g),!1),k.set(this,s(this,M,!1)),this.intensity=(s(this,P),s(this,p,1)),this.color=(s(this,b),s(this,R,se.White())),this._texture=(s(this,N),null),U.set(this,s(this,L,null)),this._useRoughnessFromMainTexture=(s(this,V),!0),G.set(this,s(this,te,!0)),this._roughness=(s(this,Y),null),W.set(this,s(this,D,null)),this._textureRoughness=(s(this,J),null),H.set(this,s(this,re,null)),this._albedoScaling=(s(this,le),!1),l.set(this,s(this,ue,!1)),this._internalMarkAllSubMeshesAsTexturesDirty=s(this,ce),this._internalMarkAllSubMeshesAsTexturesDirty=c._dirtyCallbacks[1]}isReadyForSubMesh(c,C){return this._isEnabled?!(c._areTexturesDirty&&C.texturesEnabled&&(this._texture&&x.SheenTextureEnabled&&!this._texture.isReadyOrNotBlocking()||this._textureRoughness&&x.SheenTextureEnabled&&!this._textureRoughness.isReadyOrNotBlocking())):!0}prepareDefinesBeforeAttributes(c,C){this._isEnabled?(c.SHEEN=!0,c.SHEEN_LINKWITHALBEDO=this._linkSheenWithAlbedo,c.SHEEN_ROUGHNESS=this._roughness!==null,c.SHEEN_ALBEDOSCALING=this._albedoScaling,c.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE=this._useRoughnessFromMainTexture,c._areTexturesDirty&&C.texturesEnabled&&(this._texture&&x.SheenTextureEnabled?(j(this._texture,c,"SHEEN_TEXTURE"),c.SHEEN_GAMMATEXTURE=this._texture.gammaSpace):c.SHEEN_TEXTURE=!1,this._textureRoughness&&x.SheenTextureEnabled?j(this._textureRoughness,c,"SHEEN_TEXTURE_ROUGHNESS"):c.SHEEN_TEXTURE_ROUGHNESS=!1)):(c.SHEEN=!1,c.SHEEN_TEXTURE=!1,c.SHEEN_TEXTURE_ROUGHNESS=!1,c.SHEEN_LINKWITHALBEDO=!1,c.SHEEN_ROUGHNESS=!1,c.SHEEN_ALBEDOSCALING=!1,c.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE=!1,c.SHEEN_GAMMATEXTURE=!1,c.SHEEN_TEXTUREDIRECTUV=0,c.SHEEN_TEXTURE_ROUGHNESSDIRECTUV=0)}bindForSubMesh(c,C,E,w){if(!this._isEnabled)return;const _e=w.materialDefines,me=this._material.isFrozen;(!c.useUbo||!me||!c.isSync)&&((this._texture||this._textureRoughness)&&x.SheenTextureEnabled&&(c.updateFloat4("vSheenInfos",this._texture?.coordinatesIndex??0,this._texture?.level??0,this._textureRoughness?.coordinatesIndex??0,this._textureRoughness?.level??0),this._texture&&Q(this._texture,c,"sheen"),this._textureRoughness&&!_e.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE&&Q(this._textureRoughness,c,"sheenRoughness")),c.updateFloat4("vSheenColor",this.color.r,this.color.g,this.color.b,this.intensity),this._roughness!==null&&c.updateFloat("vSheenRoughness",this._roughness)),C.texturesEnabled&&(this._texture&&x.SheenTextureEnabled&&c.setTexture("sheenSampler",this._texture),this._textureRoughness&&!_e.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE&&x.SheenTextureEnabled&&c.setTexture("sheenRoughnessSampler",this._textureRoughness))}hasTexture(c){return this._texture===c||this._textureRoughness===c}getActiveTextures(c){this._texture&&c.push(this._texture),this._textureRoughness&&c.push(this._textureRoughness)}getAnimatables(c){this._texture&&this._texture.animations&&this._texture.animations.length>0&&c.push(this._texture),this._textureRoughness&&this._textureRoughness.animations&&this._textureRoughness.animations.length>0&&c.push(this._textureRoughness)}dispose(c){c&&(this._texture?.dispose(),this._textureRoughness?.dispose())}getClassName(){return"PBRSheenConfiguration"}addFallbacks(c,C,E){return c.SHEEN&&C.addFallback(E++,"SHEEN"),E}getSamplers(c){c.push("sheenSampler","sheenRoughnessSampler")}getUniforms(){return{ubo:[{name:"vSheenColor",size:4,type:"vec4"},{name:"vSheenRoughness",size:1,type:"float"},{name:"vSheenInfos",size:4,type:"vec4"},{name:"sheenMatrix",size:16,type:"mat4"},{name:"sheenRoughnessMatrix",size:16,type:"mat4"}]}}},v=new WeakMap,k=new WeakMap,U=new WeakMap,G=new WeakMap,W=new WeakMap,H=new WeakMap,l=new WeakMap,(()=>{const K=typeof Symbol=="function"&&Symbol.metadata?Object.create(d[Symbol.metadata]??null):void 0;a=[m(),T("_markAllSubMeshesAsTexturesDirty")],F=[m(),T("_markAllSubMeshesAsTexturesDirty")],B=[m()],y=[xe()],f=[X(),T("_markAllSubMeshesAsTexturesDirty")],q=[m(),T("_markAllSubMeshesAsTexturesDirty")],o=[m(),T("_markAllSubMeshesAsTexturesDirty")],ae=[X(),T("_markAllSubMeshesAsTexturesDirty")],ne=[m(),T("_markAllSubMeshesAsTexturesDirty")],u(i,null,a,{kind:"accessor",name:"isEnabled",static:!1,private:!1,access:{has:c=>"isEnabled"in c,get:c=>c.isEnabled,set:(c,C)=>{c.isEnabled=C}},metadata:K},I,g),u(i,null,F,{kind:"accessor",name:"linkSheenWithAlbedo",static:!1,private:!1,access:{has:c=>"linkSheenWithAlbedo"in c,get:c=>c.linkSheenWithAlbedo,set:(c,C)=>{c.linkSheenWithAlbedo=C}},metadata:K},M,P),u(i,null,f,{kind:"accessor",name:"texture",static:!1,private:!1,access:{has:c=>"texture"in c,get:c=>c.texture,set:(c,C)=>{c.texture=C}},metadata:K},L,V),u(i,null,q,{kind:"accessor",name:"useRoughnessFromMainTexture",static:!1,private:!1,access:{has:c=>"useRoughnessFromMainTexture"in c,get:c=>c.useRoughnessFromMainTexture,set:(c,C)=>{c.useRoughnessFromMainTexture=C}},metadata:K},te,Y),u(i,null,o,{kind:"accessor",name:"roughness",static:!1,private:!1,access:{has:c=>"roughness"in c,get:c=>c.roughness,set:(c,C)=>{c.roughness=C}},metadata:K},D,J),u(i,null,ae,{kind:"accessor",name:"textureRoughness",static:!1,private:!1,access:{has:c=>"textureRoughness"in c,get:c=>c.textureRoughness,set:(c,C)=>{c.textureRoughness=C}},metadata:K},re,le),u(i,null,ne,{kind:"accessor",name:"albedoScaling",static:!1,private:!1,access:{has:c=>"albedoScaling"in c,get:c=>c.albedoScaling,set:(c,C)=>{c.albedoScaling=C}},metadata:K},ue,ce),u(null,null,B,{kind:"field",name:"intensity",static:!1,private:!1,access:{has:c=>"intensity"in c,get:c=>c.intensity,set:(c,C)=>{c.intensity=C}},metadata:K},p,b),u(null,null,y,{kind:"field",name:"color",static:!1,private:!1,access:{has:c=>"color"in c,get:c=>c.color,set:(c,C)=>{c.color=C}},metadata:K},R,N),K&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:K})})(),i})();class Nr extends Be{constructor(){super(...arguments),this.SUBSURFACE=!1,this.SS_REFRACTION=!1,this.SS_REFRACTION_USE_INTENSITY_FROM_THICKNESS=!1,this.SS_TRANSLUCENCY=!1,this.SS_TRANSLUCENCY_USE_INTENSITY_FROM_THICKNESS=!1,this.SS_SCATTERING=!1,this.SS_DISPERSION=!1,this.SS_THICKNESSANDMASK_TEXTURE=!1,this.SS_THICKNESSANDMASK_TEXTUREDIRECTUV=0,this.SS_HAS_THICKNESS=!1,this.SS_REFRACTIONINTENSITY_TEXTURE=!1,this.SS_REFRACTIONINTENSITY_TEXTUREDIRECTUV=0,this.SS_TRANSLUCENCYINTENSITY_TEXTURE=!1,this.SS_TRANSLUCENCYINTENSITY_TEXTUREDIRECTUV=0,this.SS_TRANSLUCENCYCOLOR_TEXTURE=!1,this.SS_TRANSLUCENCYCOLOR_TEXTUREDIRECTUV=0,this.SS_TRANSLUCENCYCOLOR_TEXTURE_GAMMA=!1,this.SS_REFRACTIONMAP_3D=!1,this.SS_REFRACTIONMAP_OPPOSITEZ=!1,this.SS_LODINREFRACTIONALPHA=!1,this.SS_GAMMAREFRACTION=!1,this.SS_RGBDREFRACTION=!1,this.SS_LINEARSPECULARREFRACTION=!1,this.SS_LINKREFRACTIONTOTRANSPARENCY=!1,this.SS_ALBEDOFORREFRACTIONTINT=!1,this.SS_ALBEDOFORTRANSLUCENCYTINT=!1,this.SS_USE_LOCAL_REFRACTIONMAP_CUBIC=!1,this.SS_USE_THICKNESS_AS_DEPTH=!1,this.SS_USE_GLTF_TEXTURES=!1,this.SS_APPLY_ALBEDO_AFTER_SUBSURFACE=!1,this.SS_TRANSLUCENCY_LEGACY=!1}}let vr=(()=>{var i,v,k,U,G,W,H,l,d,a,I,g,F,M,P,B,p;let b=we,y,R=[],N=[],f,L=[],V=[],q,te=[],Y=[],o,D=[],J=[],ae,re=[],le=[],ne,ue=[],ce=[],K,c=[],C=[],E,w=[],_e=[],me,Re=[],Ae=[],de,Se=[],pe=[],ge,Ie=[],be=[],Ce,Me=[],Z=[],r,O=[],ie=[],Ee,ye=[],De=[],Le,Oe=[],Fe=[],Ne,ve=[],Pe=[],ke,Ve=[],ze=[],Ye,Xe=[],Ke=[],je,Qe=[],Ze=[],Je,$e=[],qe=[],et,tt=[],st=[],it,at=[],rt=[],lt,nt=[],ut=[],ct,ot=[],ht=[],_t,Tt=[],ft=[],mt,Et=[],xt=[],Rt,At=[],dt=[],St,pt=[],gt=[],It,bt=[],Ct=[],Mt,yt=[],Lt=[];return i=class extends b{get isRefractionEnabled(){return h(this,v,"f")}set isRefractionEnabled(t){_(this,v,t,"f")}get isTranslucencyEnabled(){return h(this,k,"f")}set isTranslucencyEnabled(t){_(this,k,t,"f")}get isDispersionEnabled(){return h(this,U,"f")}set isDispersionEnabled(t){_(this,U,t,"f")}get isScatteringEnabled(){return h(this,G,"f")}set isScatteringEnabled(t){_(this,G,t,"f")}get scatteringDiffusionProfile(){return this._scene.subSurfaceConfiguration?this._scene.subSurfaceConfiguration.ssDiffusionProfileColors[this._scatteringDiffusionProfileIndex]:null}set scatteringDiffusionProfile(t){this._scene.enableSubSurfaceForPrePass()&&t&&(this._scatteringDiffusionProfileIndex=this._scene.subSurfaceConfiguration.addDiffusionProfile(t))}get useAlbedoToTintRefraction(){return h(this,W,"f")}set useAlbedoToTintRefraction(t){_(this,W,t,"f")}get useAlbedoToTintTranslucency(){return h(this,H,"f")}set useAlbedoToTintTranslucency(t){_(this,H,t,"f")}get thicknessTexture(){return h(this,l,"f")}set thicknessTexture(t){_(this,l,t,"f")}get refractionTexture(){return h(this,d,"f")}set refractionTexture(t){_(this,d,t,"f")}get indexOfRefraction(){return h(this,a,"f")}set indexOfRefraction(t){_(this,a,t,"f")}get volumeIndexOfRefraction(){return this._volumeIndexOfRefraction>=1?this._volumeIndexOfRefraction:this._indexOfRefraction}set volumeIndexOfRefraction(t){const A=t>=1?t:-1;this._volumeIndexOfRefraction!==A&&(this._volumeIndexOfRefraction=A,this._markAllSubMeshesAsTexturesDirty())}get invertRefractionY(){return h(this,I,"f")}set invertRefractionY(t){_(this,I,t,"f")}get linkRefractionWithTransparency(){return h(this,g,"f")}set linkRefractionWithTransparency(t){_(this,g,t,"f")}get useMaskFromThicknessTexture(){return h(this,F,"f")}set useMaskFromThicknessTexture(t){_(this,F,t,"f")}get refractionIntensityTexture(){return h(this,M,"f")}set refractionIntensityTexture(t){_(this,M,t,"f")}get translucencyIntensityTexture(){return h(this,P,"f")}set translucencyIntensityTexture(t){_(this,P,t,"f")}get translucencyColorTexture(){return h(this,B,"f")}set translucencyColorTexture(t){_(this,B,t,"f")}get useGltfStyleTextures(){return h(this,p,"f")}set useGltfStyleTextures(t){_(this,p,t,"f")}get legacyTransluceny(){return this.legacyTranslucency}set legacyTransluceny(t){this.legacyTranslucency=t}_markAllSubMeshesAsTexturesDirty(){this._enable(this._isRefractionEnabled||this._isTranslucencyEnabled||this._isScatteringEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}_markScenePrePassDirty(){this._enable(this._isRefractionEnabled||this._isTranslucencyEnabled||this._isScatteringEnabled),this._internalMarkAllSubMeshesAsTexturesDirty(),this._internalMarkScenePrePassDirty()}isCompatible(){return!0}constructor(t,A=!0){super(t,"PBRSubSurface",130,new Nr,A),this._isRefractionEnabled=!1,v.set(this,s(this,R,!1)),this._isTranslucencyEnabled=(s(this,N),!1),k.set(this,s(this,L,!1)),this._isDispersionEnabled=(s(this,V),!1),U.set(this,s(this,te,!1)),this._isScatteringEnabled=(s(this,Y),!1),G.set(this,s(this,D,!1)),this._scatteringDiffusionProfileIndex=(s(this,J),s(this,re,0)),this.refractionIntensity=(s(this,le),s(this,ue,1)),this.translucencyIntensity=(s(this,ce),s(this,c,1)),this._useAlbedoToTintRefraction=(s(this,C),!1),W.set(this,s(this,w,!1)),this._useAlbedoToTintTranslucency=(s(this,_e),!1),H.set(this,s(this,Re,!1)),this._thicknessTexture=(s(this,Ae),null),l.set(this,s(this,Se,null)),this._refractionTexture=(s(this,pe),null),d.set(this,s(this,Ie,null)),this._indexOfRefraction=(s(this,be),1.5),a.set(this,s(this,Me,1.5)),this._volumeIndexOfRefraction=(s(this,Z),s(this,O,-1)),this._invertRefractionY=(s(this,ie),!1),I.set(this,s(this,ye,!1)),this._linkRefractionWithTransparency=(s(this,De),!1),g.set(this,s(this,Oe,!1)),this.minimumThickness=(s(this,Fe),s(this,ve,0)),this.maximumThickness=(s(this,Pe),s(this,Ve,1)),this.useThicknessAsDepth=(s(this,ze),s(this,Xe,!1)),this.tintColor=(s(this,Ke),s(this,Qe,se.White())),this.tintColorAtDistance=(s(this,Ze),s(this,$e,1)),this.dispersion=(s(this,qe),s(this,tt,0)),this.diffusionDistance=(s(this,st),s(this,at,se.White())),this._useMaskFromThicknessTexture=(s(this,rt),!1),F.set(this,s(this,nt,!1)),this._refractionIntensityTexture=(s(this,ut),null),M.set(this,s(this,ot,null)),this._translucencyIntensityTexture=(s(this,ht),null),P.set(this,s(this,Tt,null)),this.translucencyColor=(s(this,ft),s(this,Et,null)),this._translucencyColorTexture=(s(this,xt),null),B.set(this,s(this,At,null)),this._useGltfStyleTextures=(s(this,dt),!0),p.set(this,s(this,pt,!0)),this.applyAlbedoAfterSubSurface=(s(this,gt),s(this,bt,i.DEFAULT_APPLY_ALBEDO_AFTERSUBSURFACE)),this.legacyTranslucency=(s(this,Ct),s(this,yt,i.DEFAULT_LEGACY_TRANSLUCENCY)),this._scene=s(this,Lt),this._scene=t.getScene(),this.registerForExtraEvents=!0,this._internalMarkAllSubMeshesAsTexturesDirty=t._dirtyCallbacks[1],this._internalMarkScenePrePassDirty=t._dirtyCallbacks[32]}isReadyForSubMesh(t,A){if(!this._isRefractionEnabled&&!this._isTranslucencyEnabled&&!this._isScatteringEnabled)return!0;if(t._areTexturesDirty&&A.texturesEnabled){if(this._thicknessTexture&&x.ThicknessTextureEnabled&&!this._thicknessTexture.isReadyOrNotBlocking()||this._refractionIntensityTexture&&x.RefractionIntensityTextureEnabled&&!this._refractionIntensityTexture.isReadyOrNotBlocking()||this._translucencyColorTexture&&x.TranslucencyColorTextureEnabled&&!this._translucencyColorTexture.isReadyOrNotBlocking()||this._translucencyIntensityTexture&&x.TranslucencyIntensityTextureEnabled&&!this._translucencyIntensityTexture.isReadyOrNotBlocking())return!1;const $=this._getRefractionTexture(A);if($&&x.RefractionTextureEnabled&&!$.isReadyOrNotBlocking())return!1}return!0}prepareDefinesBeforeAttributes(t,A){if(!this._isRefractionEnabled&&!this._isTranslucencyEnabled&&!this._isScatteringEnabled){t.SUBSURFACE=!1,t.SS_DISPERSION=!1,t.SS_TRANSLUCENCY=!1,t.SS_SCATTERING=!1,t.SS_REFRACTION=!1,t.SS_REFRACTION_USE_INTENSITY_FROM_THICKNESS=!1,t.SS_TRANSLUCENCY_USE_INTENSITY_FROM_THICKNESS=!1,t.SS_THICKNESSANDMASK_TEXTURE=!1,t.SS_THICKNESSANDMASK_TEXTUREDIRECTUV=0,t.SS_HAS_THICKNESS=!1,t.SS_REFRACTIONINTENSITY_TEXTURE=!1,t.SS_REFRACTIONINTENSITY_TEXTUREDIRECTUV=0,t.SS_TRANSLUCENCYINTENSITY_TEXTURE=!1,t.SS_TRANSLUCENCYINTENSITY_TEXTUREDIRECTUV=0,t.SS_REFRACTIONMAP_3D=!1,t.SS_REFRACTIONMAP_OPPOSITEZ=!1,t.SS_LODINREFRACTIONALPHA=!1,t.SS_GAMMAREFRACTION=!1,t.SS_RGBDREFRACTION=!1,t.SS_LINEARSPECULARREFRACTION=!1,t.SS_LINKREFRACTIONTOTRANSPARENCY=!1,t.SS_ALBEDOFORREFRACTIONTINT=!1,t.SS_ALBEDOFORTRANSLUCENCYTINT=!1,t.SS_USE_LOCAL_REFRACTIONMAP_CUBIC=!1,t.SS_USE_THICKNESS_AS_DEPTH=!1,t.SS_USE_GLTF_TEXTURES=!1,t.SS_TRANSLUCENCYCOLOR_TEXTURE=!1,t.SS_TRANSLUCENCYCOLOR_TEXTUREDIRECTUV=0,t.SS_TRANSLUCENCYCOLOR_TEXTURE_GAMMA=!1,t.SS_APPLY_ALBEDO_AFTER_SUBSURFACE=!1;return}if(t._areTexturesDirty){if(t.SUBSURFACE=!0,t.SS_DISPERSION=this._isDispersionEnabled,t.SS_TRANSLUCENCY=this._isTranslucencyEnabled,t.SS_TRANSLUCENCY_USE_INTENSITY_FROM_THICKNESS=!1,t.SS_TRANSLUCENCY_LEGACY=this.legacyTranslucency,t.SS_SCATTERING=this._isScatteringEnabled,t.SS_THICKNESSANDMASK_TEXTURE=!1,t.SS_REFRACTIONINTENSITY_TEXTURE=!1,t.SS_TRANSLUCENCYINTENSITY_TEXTURE=!1,t.SS_HAS_THICKNESS=!1,t.SS_USE_GLTF_TEXTURES=!1,t.SS_REFRACTION=!1,t.SS_REFRACTION_USE_INTENSITY_FROM_THICKNESS=!1,t.SS_REFRACTIONMAP_3D=!1,t.SS_GAMMAREFRACTION=!1,t.SS_RGBDREFRACTION=!1,t.SS_LINEARSPECULARREFRACTION=!1,t.SS_REFRACTIONMAP_OPPOSITEZ=!1,t.SS_LODINREFRACTIONALPHA=!1,t.SS_LINKREFRACTIONTOTRANSPARENCY=!1,t.SS_ALBEDOFORREFRACTIONTINT=!1,t.SS_ALBEDOFORTRANSLUCENCYTINT=!1,t.SS_USE_LOCAL_REFRACTIONMAP_CUBIC=!1,t.SS_USE_THICKNESS_AS_DEPTH=!1,t.SS_TRANSLUCENCYCOLOR_TEXTURE=!1,t.SS_APPLY_ALBEDO_AFTER_SUBSURFACE=this.applyAlbedoAfterSubSurface,t._areTexturesDirty&&A.texturesEnabled&&(this._thicknessTexture&&x.ThicknessTextureEnabled&&j(this._thicknessTexture,t,"SS_THICKNESSANDMASK_TEXTURE"),this._refractionIntensityTexture&&x.RefractionIntensityTextureEnabled&&j(this._refractionIntensityTexture,t,"SS_REFRACTIONINTENSITY_TEXTURE"),this._translucencyIntensityTexture&&x.TranslucencyIntensityTextureEnabled&&j(this._translucencyIntensityTexture,t,"SS_TRANSLUCENCYINTENSITY_TEXTURE"),this._translucencyColorTexture&&x.TranslucencyColorTextureEnabled&&(j(this._translucencyColorTexture,t,"SS_TRANSLUCENCYCOLOR_TEXTURE"),t.SS_TRANSLUCENCYCOLOR_TEXTURE_GAMMA=this._translucencyColorTexture.gammaSpace)),t.SS_HAS_THICKNESS=this.maximumThickness-this.minimumThickness!==0,t.SS_USE_GLTF_TEXTURES=this._useGltfStyleTextures,t.SS_REFRACTION_USE_INTENSITY_FROM_THICKNESS=this._useMaskFromThicknessTexture&&!this._refractionIntensityTexture,t.SS_TRANSLUCENCY_USE_INTENSITY_FROM_THICKNESS=this._useMaskFromThicknessTexture&&!this._translucencyIntensityTexture,this._isRefractionEnabled&&A.texturesEnabled){const $=this._getRefractionTexture(A);$&&x.RefractionTextureEnabled&&(t.SS_REFRACTION=!0,t.SS_REFRACTIONMAP_3D=$.isCube,t.SS_GAMMAREFRACTION=$.gammaSpace,t.SS_RGBDREFRACTION=$.isRGBD,t.SS_LINEARSPECULARREFRACTION=$.linearSpecularLOD,t.SS_REFRACTIONMAP_OPPOSITEZ=this._scene.useRightHandedSystem&&$.isCube?!$.invertZ:$.invertZ,t.SS_LODINREFRACTIONALPHA=$.lodLevelInAlpha,t.SS_LINKREFRACTIONTOTRANSPARENCY=this._linkRefractionWithTransparency,t.SS_ALBEDOFORREFRACTIONTINT=this._useAlbedoToTintRefraction,t.SS_USE_LOCAL_REFRACTIONMAP_CUBIC=$.isCube&&$.boundingBoxSize,t.SS_USE_THICKNESS_AS_DEPTH=this.useThicknessAsDepth)}this._isTranslucencyEnabled&&(t.SS_ALBEDOFORTRANSLUCENCYTINT=this._useAlbedoToTintTranslucency)}}hardBindForSubMesh(t,A,$,He){if(!(!this._isRefractionEnabled&&!this._isTranslucencyEnabled&&!this._isScatteringEnabled))if(this.maximumThickness===0&&this.minimumThickness===0)t.updateFloat2("vThicknessParam",0,0);else{He.getRenderingMesh().getWorldMatrix().decompose(Bt.Vector3[0]);const Te=Math.max(Math.abs(Bt.Vector3[0].x),Math.abs(Bt.Vector3[0].y),Math.abs(Bt.Vector3[0].z));t.updateFloat2("vThicknessParam",this.minimumThickness*Te,(this.maximumThickness-this.minimumThickness)*Te)}}bindForSubMesh(t,A,$,He){if(!this._isRefractionEnabled&&!this._isTranslucencyEnabled&&!this._isScatteringEnabled)return;const Te=He.materialDefines,Dt=this._material.isFrozen,Pt=this._material.realTimeFiltering,kt=Te.LODBASEDMICROSFURACE,ee=this._getRefractionTexture(A);if(!t.useUbo||!Dt||!t.isSync){if(this._thicknessTexture&&x.ThicknessTextureEnabled&&(t.updateFloat2("vThicknessInfos",this._thicknessTexture.coordinatesIndex,this._thicknessTexture.level),Q(this._thicknessTexture,t,"thickness")),this._refractionIntensityTexture&&x.RefractionIntensityTextureEnabled&&Te.SS_REFRACTIONINTENSITY_TEXTURE&&(t.updateFloat2("vRefractionIntensityInfos",this._refractionIntensityTexture.coordinatesIndex,this._refractionIntensityTexture.level),Q(this._refractionIntensityTexture,t,"refractionIntensity")),this._translucencyColorTexture&&x.TranslucencyColorTextureEnabled&&Te.SS_TRANSLUCENCYCOLOR_TEXTURE&&(t.updateFloat2("vTranslucencyColorInfos",this._translucencyColorTexture.coordinatesIndex,this._translucencyColorTexture.level),Q(this._translucencyColorTexture,t,"translucencyColor")),this._translucencyIntensityTexture&&x.TranslucencyIntensityTextureEnabled&&Te.SS_TRANSLUCENCYINTENSITY_TEXTURE&&(t.updateFloat2("vTranslucencyIntensityInfos",this._translucencyIntensityTexture.coordinatesIndex,this._translucencyIntensityTexture.level),Q(this._translucencyIntensityTexture,t,"translucencyIntensity")),ee&&x.RefractionTextureEnabled){t.updateMatrix("refractionMatrix",ee.getRefractionTextureMatrix());let Ot=1;ee.isCube||ee.depth&&(Ot=ee.depth);const Ge=ee.getSize().width,Ut=this.volumeIndexOfRefraction;if(t.updateFloat4("vRefractionInfos",ee.level,1/Ut,Ot,this._invertRefractionY?-1:1),t.updateFloat4("vRefractionMicrosurfaceInfos",Ge,ee.lodGenerationScale,ee.lodGenerationOffset,1/this.indexOfRefraction),Pt&&t.updateFloat2("vRefractionFilteringInfo",Ge,Math.log2(Ge)),ee.boundingBoxSize){const Ft=ee;t.updateVector3("vRefractionPosition",Ft.boundingBoxPosition),t.updateVector3("vRefractionSize",Ft.boundingBoxSize)}}this._isScatteringEnabled&&t.updateFloat("scatteringDiffusionProfile",this._scatteringDiffusionProfileIndex),t.updateColor3("vDiffusionDistance",this.diffusionDistance),t.updateFloat4("vTintColor",this.tintColor.r,this.tintColor.g,this.tintColor.b,Math.max(1e-5,this.tintColorAtDistance)),t.updateColor4("vTranslucencyColor",this.translucencyColor??this.tintColor,0),t.updateFloat3("vSubSurfaceIntensity",this.refractionIntensity,this.translucencyIntensity,0),t.updateFloat("dispersion",this.dispersion)}A.texturesEnabled&&(this._thicknessTexture&&x.ThicknessTextureEnabled&&t.setTexture("thicknessSampler",this._thicknessTexture),this._refractionIntensityTexture&&x.RefractionIntensityTextureEnabled&&Te.SS_REFRACTIONINTENSITY_TEXTURE&&t.setTexture("refractionIntensitySampler",this._refractionIntensityTexture),this._translucencyIntensityTexture&&x.TranslucencyIntensityTextureEnabled&&Te.SS_TRANSLUCENCYINTENSITY_TEXTURE&&t.setTexture("translucencyIntensitySampler",this._translucencyIntensityTexture),this._translucencyColorTexture&&x.TranslucencyColorTextureEnabled&&Te.SS_TRANSLUCENCYCOLOR_TEXTURE&&t.setTexture("translucencyColorSampler",this._translucencyColorTexture),ee&&x.RefractionTextureEnabled&&(kt?t.setTexture("refractionSampler",ee):(t.setTexture("refractionSampler",ee._lodTextureMid||ee),t.setTexture("refractionSamplerLow",ee._lodTextureLow||ee),t.setTexture("refractionSamplerHigh",ee._lodTextureHigh||ee))))}_getRefractionTexture(t){return this._refractionTexture?this._refractionTexture:this._isRefractionEnabled?t.environmentTexture:null}get disableAlphaBlending(){return this._isRefractionEnabled&&this._linkRefractionWithTransparency}fillRenderTargetTextures(t){x.RefractionTextureEnabled&&this._refractionTexture&&this._refractionTexture.isRenderTarget&&t.push(this._refractionTexture)}hasTexture(t){return this._thicknessTexture===t||this._refractionTexture===t||this._refractionIntensityTexture===t||this._translucencyIntensityTexture===t||this._translucencyColorTexture===t}hasRenderTargetTextures(){return!!(x.RefractionTextureEnabled&&this._refractionTexture&&this._refractionTexture.isRenderTarget)}getActiveTextures(t){this._thicknessTexture&&t.push(this._thicknessTexture),this._refractionTexture&&t.push(this._refractionTexture),this._refractionIntensityTexture&&t.push(this._refractionIntensityTexture),this._translucencyColorTexture&&t.push(this._translucencyColorTexture),this._translucencyIntensityTexture&&t.push(this._translucencyIntensityTexture)}getAnimatables(t){this._thicknessTexture&&this._thicknessTexture.animations&&this._thicknessTexture.animations.length>0&&t.push(this._thicknessTexture),this._refractionTexture&&this._refractionTexture.animations&&this._refractionTexture.animations.length>0&&t.push(this._refractionTexture),this._refractionIntensityTexture&&this._refractionIntensityTexture.animations&&this._refractionIntensityTexture.animations.length>0&&t.push(this._refractionIntensityTexture),this._translucencyColorTexture&&this._translucencyColorTexture.animations&&this._translucencyColorTexture.animations.length>0&&t.push(this._translucencyColorTexture),this._translucencyIntensityTexture&&this._translucencyIntensityTexture.animations&&this._translucencyIntensityTexture.animations.length>0&&t.push(this._translucencyIntensityTexture)}dispose(t){t&&(this._thicknessTexture&&this._thicknessTexture.dispose(),this._refractionTexture&&this._refractionTexture.dispose(),this._refractionIntensityTexture&&this._refractionIntensityTexture.dispose(),this._translucencyColorTexture&&this._translucencyColorTexture.dispose(),this._translucencyIntensityTexture&&this._translucencyIntensityTexture.dispose())}getClassName(){return"PBRSubSurfaceConfiguration"}addFallbacks(t,A,$){return t.SS_SCATTERING&&A.addFallback($++,"SS_SCATTERING"),t.SS_TRANSLUCENCY&&A.addFallback($++,"SS_TRANSLUCENCY"),$}getSamplers(t){t.push("thicknessSampler","refractionIntensitySampler","translucencyIntensitySampler","refractionSampler","refractionSamplerLow","refractionSamplerHigh","translucencyColorSampler")}getUniforms(){return{ubo:[{name:"vRefractionMicrosurfaceInfos",size:4,type:"vec4"},{name:"vRefractionFilteringInfo",size:2,type:"vec2"},{name:"vTranslucencyIntensityInfos",size:2,type:"vec2"},{name:"vRefractionInfos",size:4,type:"vec4"},{name:"refractionMatrix",size:16,type:"mat4"},{name:"vThicknessInfos",size:2,type:"vec2"},{name:"vRefractionIntensityInfos",size:2,type:"vec2"},{name:"thicknessMatrix",size:16,type:"mat4"},{name:"refractionIntensityMatrix",size:16,type:"mat4"},{name:"translucencyIntensityMatrix",size:16,type:"mat4"},{name:"vThicknessParam",size:2,type:"vec2"},{name:"vDiffusionDistance",size:3,type:"vec3"},{name:"vTintColor",size:4,type:"vec4"},{name:"vSubSurfaceIntensity",size:3,type:"vec3"},{name:"vRefractionPosition",size:3,type:"vec3"},{name:"vRefractionSize",size:3,type:"vec3"},{name:"scatteringDiffusionProfile",size:1,type:"float"},{name:"dispersion",size:1,type:"float"},{name:"vTranslucencyColor",size:4,type:"vec4"},{name:"vTranslucencyColorInfos",size:2,type:"vec2"},{name:"translucencyColorMatrix",size:16,type:"mat4"}]}}},v=new WeakMap,k=new WeakMap,U=new WeakMap,G=new WeakMap,W=new WeakMap,H=new WeakMap,l=new WeakMap,d=new WeakMap,a=new WeakMap,I=new WeakMap,g=new WeakMap,F=new WeakMap,M=new WeakMap,P=new WeakMap,B=new WeakMap,p=new WeakMap,(()=>{const z=typeof Symbol=="function"&&Symbol.metadata?Object.create(b[Symbol.metadata]??null):void 0;y=[m(),T("_markAllSubMeshesAsTexturesDirty")],f=[m(),T("_markAllSubMeshesAsTexturesDirty")],q=[m(),T("_markAllSubMeshesAsTexturesDirty")],o=[m(),T("_markScenePrePassDirty")],ae=[m()],ne=[m()],K=[m()],E=[m(),T("_markAllSubMeshesAsTexturesDirty")],me=[m(),T("_markAllSubMeshesAsTexturesDirty")],de=[X(),T("_markAllSubMeshesAsTexturesDirty")],ge=[X(),T("_markAllSubMeshesAsTexturesDirty")],Ce=[m(),T("_markAllSubMeshesAsTexturesDirty")],r=[m()],Ee=[m(),T("_markAllSubMeshesAsTexturesDirty")],Le=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ne=[m()],ke=[m()],Ye=[m()],je=[xe()],Je=[m()],et=[m()],it=[xe()],lt=[m(),T("_markAllSubMeshesAsTexturesDirty")],ct=[X(),T("_markAllSubMeshesAsTexturesDirty")],_t=[X(),T("_markAllSubMeshesAsTexturesDirty")],mt=[xe()],Rt=[X(),T("_markAllSubMeshesAsTexturesDirty")],St=[m(),T("_markAllSubMeshesAsTexturesDirty")],It=[m()],Mt=[m()],u(i,null,y,{kind:"accessor",name:"isRefractionEnabled",static:!1,private:!1,access:{has:t=>"isRefractionEnabled"in t,get:t=>t.isRefractionEnabled,set:(t,A)=>{t.isRefractionEnabled=A}},metadata:z},R,N),u(i,null,f,{kind:"accessor",name:"isTranslucencyEnabled",static:!1,private:!1,access:{has:t=>"isTranslucencyEnabled"in t,get:t=>t.isTranslucencyEnabled,set:(t,A)=>{t.isTranslucencyEnabled=A}},metadata:z},L,V),u(i,null,q,{kind:"accessor",name:"isDispersionEnabled",static:!1,private:!1,access:{has:t=>"isDispersionEnabled"in t,get:t=>t.isDispersionEnabled,set:(t,A)=>{t.isDispersionEnabled=A}},metadata:z},te,Y),u(i,null,o,{kind:"accessor",name:"isScatteringEnabled",static:!1,private:!1,access:{has:t=>"isScatteringEnabled"in t,get:t=>t.isScatteringEnabled,set:(t,A)=>{t.isScatteringEnabled=A}},metadata:z},D,J),u(i,null,E,{kind:"accessor",name:"useAlbedoToTintRefraction",static:!1,private:!1,access:{has:t=>"useAlbedoToTintRefraction"in t,get:t=>t.useAlbedoToTintRefraction,set:(t,A)=>{t.useAlbedoToTintRefraction=A}},metadata:z},w,_e),u(i,null,me,{kind:"accessor",name:"useAlbedoToTintTranslucency",static:!1,private:!1,access:{has:t=>"useAlbedoToTintTranslucency"in t,get:t=>t.useAlbedoToTintTranslucency,set:(t,A)=>{t.useAlbedoToTintTranslucency=A}},metadata:z},Re,Ae),u(i,null,de,{kind:"accessor",name:"thicknessTexture",static:!1,private:!1,access:{has:t=>"thicknessTexture"in t,get:t=>t.thicknessTexture,set:(t,A)=>{t.thicknessTexture=A}},metadata:z},Se,pe),u(i,null,ge,{kind:"accessor",name:"refractionTexture",static:!1,private:!1,access:{has:t=>"refractionTexture"in t,get:t=>t.refractionTexture,set:(t,A)=>{t.refractionTexture=A}},metadata:z},Ie,be),u(i,null,Ce,{kind:"accessor",name:"indexOfRefraction",static:!1,private:!1,access:{has:t=>"indexOfRefraction"in t,get:t=>t.indexOfRefraction,set:(t,A)=>{t.indexOfRefraction=A}},metadata:z},Me,Z),u(i,null,Ee,{kind:"accessor",name:"invertRefractionY",static:!1,private:!1,access:{has:t=>"invertRefractionY"in t,get:t=>t.invertRefractionY,set:(t,A)=>{t.invertRefractionY=A}},metadata:z},ye,De),u(i,null,Le,{kind:"accessor",name:"linkRefractionWithTransparency",static:!1,private:!1,access:{has:t=>"linkRefractionWithTransparency"in t,get:t=>t.linkRefractionWithTransparency,set:(t,A)=>{t.linkRefractionWithTransparency=A}},metadata:z},Oe,Fe),u(i,null,lt,{kind:"accessor",name:"useMaskFromThicknessTexture",static:!1,private:!1,access:{has:t=>"useMaskFromThicknessTexture"in t,get:t=>t.useMaskFromThicknessTexture,set:(t,A)=>{t.useMaskFromThicknessTexture=A}},metadata:z},nt,ut),u(i,null,ct,{kind:"accessor",name:"refractionIntensityTexture",static:!1,private:!1,access:{has:t=>"refractionIntensityTexture"in t,get:t=>t.refractionIntensityTexture,set:(t,A)=>{t.refractionIntensityTexture=A}},metadata:z},ot,ht),u(i,null,_t,{kind:"accessor",name:"translucencyIntensityTexture",static:!1,private:!1,access:{has:t=>"translucencyIntensityTexture"in t,get:t=>t.translucencyIntensityTexture,set:(t,A)=>{t.translucencyIntensityTexture=A}},metadata:z},Tt,ft),u(i,null,Rt,{kind:"accessor",name:"translucencyColorTexture",static:!1,private:!1,access:{has:t=>"translucencyColorTexture"in t,get:t=>t.translucencyColorTexture,set:(t,A)=>{t.translucencyColorTexture=A}},metadata:z},At,dt),u(i,null,St,{kind:"accessor",name:"useGltfStyleTextures",static:!1,private:!1,access:{has:t=>"useGltfStyleTextures"in t,get:t=>t.useGltfStyleTextures,set:(t,A)=>{t.useGltfStyleTextures=A}},metadata:z},pt,gt),u(null,null,ae,{kind:"field",name:"_scatteringDiffusionProfileIndex",static:!1,private:!1,access:{has:t=>"_scatteringDiffusionProfileIndex"in t,get:t=>t._scatteringDiffusionProfileIndex,set:(t,A)=>{t._scatteringDiffusionProfileIndex=A}},metadata:z},re,le),u(null,null,ne,{kind:"field",name:"refractionIntensity",static:!1,private:!1,access:{has:t=>"refractionIntensity"in t,get:t=>t.refractionIntensity,set:(t,A)=>{t.refractionIntensity=A}},metadata:z},ue,ce),u(null,null,K,{kind:"field",name:"translucencyIntensity",static:!1,private:!1,access:{has:t=>"translucencyIntensity"in t,get:t=>t.translucencyIntensity,set:(t,A)=>{t.translucencyIntensity=A}},metadata:z},c,C),u(null,null,r,{kind:"field",name:"_volumeIndexOfRefraction",static:!1,private:!1,access:{has:t=>"_volumeIndexOfRefraction"in t,get:t=>t._volumeIndexOfRefraction,set:(t,A)=>{t._volumeIndexOfRefraction=A}},metadata:z},O,ie),u(null,null,Ne,{kind:"field",name:"minimumThickness",static:!1,private:!1,access:{has:t=>"minimumThickness"in t,get:t=>t.minimumThickness,set:(t,A)=>{t.minimumThickness=A}},metadata:z},ve,Pe),u(null,null,ke,{kind:"field",name:"maximumThickness",static:!1,private:!1,access:{has:t=>"maximumThickness"in t,get:t=>t.maximumThickness,set:(t,A)=>{t.maximumThickness=A}},metadata:z},Ve,ze),u(null,null,Ye,{kind:"field",name:"useThicknessAsDepth",static:!1,private:!1,access:{has:t=>"useThicknessAsDepth"in t,get:t=>t.useThicknessAsDepth,set:(t,A)=>{t.useThicknessAsDepth=A}},metadata:z},Xe,Ke),u(null,null,je,{kind:"field",name:"tintColor",static:!1,private:!1,access:{has:t=>"tintColor"in t,get:t=>t.tintColor,set:(t,A)=>{t.tintColor=A}},metadata:z},Qe,Ze),u(null,null,Je,{kind:"field",name:"tintColorAtDistance",static:!1,private:!1,access:{has:t=>"tintColorAtDistance"in t,get:t=>t.tintColorAtDistance,set:(t,A)=>{t.tintColorAtDistance=A}},metadata:z},$e,qe),u(null,null,et,{kind:"field",name:"dispersion",static:!1,private:!1,access:{has:t=>"dispersion"in t,get:t=>t.dispersion,set:(t,A)=>{t.dispersion=A}},metadata:z},tt,st),u(null,null,it,{kind:"field",name:"diffusionDistance",static:!1,private:!1,access:{has:t=>"diffusionDistance"in t,get:t=>t.diffusionDistance,set:(t,A)=>{t.diffusionDistance=A}},metadata:z},at,rt),u(null,null,mt,{kind:"field",name:"translucencyColor",static:!1,private:!1,access:{has:t=>"translucencyColor"in t,get:t=>t.translucencyColor,set:(t,A)=>{t.translucencyColor=A}},metadata:z},Et,xt),u(null,null,It,{kind:"field",name:"applyAlbedoAfterSubSurface",static:!1,private:!1,access:{has:t=>"applyAlbedoAfterSubSurface"in t,get:t=>t.applyAlbedoAfterSubSurface,set:(t,A)=>{t.applyAlbedoAfterSubSurface=A}},metadata:z},bt,Ct),u(null,null,Mt,{kind:"field",name:"legacyTranslucency",static:!1,private:!1,access:{has:t=>"legacyTranslucency"in t,get:t=>t.legacyTranslucency,set:(t,A)=>{t.legacyTranslucency=A}},metadata:z},yt,Lt),z&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:z})})(),i.DEFAULT_APPLY_ALBEDO_AFTERSUBSURFACE=!1,i.DEFAULT_LEGACY_TRANSLUCENCY=!1,i})();const We={effect:null,subMesh:null};class Dr extends xr(Rr(Be)){}class La extends fr(Dr){constructor(v){super(v),this.PBR=!0,this.NUM_SAMPLES="0",this.REALTIME_FILTERING=!1,this.IBL_CDF_FILTERING=!1,this.ALBEDO=!1,this.GAMMAALBEDO=!1,this.ALBEDODIRECTUV=0,this.VERTEXCOLOR=!1,this.BASE_WEIGHT=!1,this.BASE_WEIGHTDIRECTUV=0,this.BASE_DIFFUSE_ROUGHNESS=!1,this.BASE_DIFFUSE_ROUGHNESSDIRECTUV=0,this.BAKED_VERTEX_ANIMATION_TEXTURE=!1,this.AMBIENT=!1,this.AMBIENTDIRECTUV=0,this.AMBIENTINGRAYSCALE=!1,this.OPACITY=!1,this.VERTEXALPHA=!1,this.OPACITYDIRECTUV=0,this.OPACITYRGB=!1,this.ALPHATEST=!1,this.DEPTHPREPASS=!1,this.ALPHABLEND=!1,this.ALPHAFROMALBEDO=!1,this.ALPHATESTVALUE="0.5",this.SPECULAROVERALPHA=!1,this.RADIANCEOVERALPHA=!1,this.ALPHAFRESNEL=!1,this.LINEARALPHAFRESNEL=!1,this.PREMULTIPLYALPHA=!1,this.EMISSIVE=!1,this.EMISSIVEDIRECTUV=0,this.GAMMAEMISSIVE=!1,this.REFLECTIVITY=!1,this.REFLECTIVITY_GAMMA=!1,this.REFLECTIVITYDIRECTUV=0,this.SPECULARTERM=!1,this.MICROSURFACEFROMREFLECTIVITYMAP=!1,this.MICROSURFACEAUTOMATIC=!1,this.LODBASEDMICROSFURACE=!1,this.MICROSURFACEMAP=!1,this.MICROSURFACEMAPDIRECTUV=0,this.METALLICWORKFLOW=!1,this.ROUGHNESSSTOREINMETALMAPALPHA=!1,this.ROUGHNESSSTOREINMETALMAPGREEN=!1,this.METALLNESSSTOREINMETALMAPBLUE=!1,this.AOSTOREINMETALMAPRED=!1,this.METALLIC_REFLECTANCE=!1,this.METALLIC_REFLECTANCE_GAMMA=!1,this.METALLIC_REFLECTANCEDIRECTUV=0,this.METALLIC_REFLECTANCE_USE_ALPHA_ONLY=!1,this.REFLECTANCE=!1,this.REFLECTANCE_GAMMA=!1,this.REFLECTANCEDIRECTUV=0,this.ENVIRONMENTBRDF=!1,this.ENVIRONMENTBRDF_RGBD=!1,this.NORMAL=!1,this.TANGENT=!1,this.BUMP=!1,this.BUMPDIRECTUV=0,this.OBJECTSPACE_NORMALMAP=!1,this.PARALLAX=!1,this.PARALLAX_RHS=!1,this.PARALLAXOCCLUSION=!1,this.NORMALXYSCALE=!0,this.LIGHTMAP=!1,this.LIGHTMAPDIRECTUV=0,this.USELIGHTMAPASSHADOWMAP=!1,this.GAMMALIGHTMAP=!1,this.RGBDLIGHTMAP=!1,this.REFLECTION=!1,this.REFLECTIONMAP_3D=!1,this.REFLECTIONMAP_SPHERICAL=!1,this.REFLECTIONMAP_PLANAR=!1,this.REFLECTIONMAP_CUBIC=!1,this.USE_LOCAL_REFLECTIONMAP_CUBIC=!1,this.REFLECTIONMAP_PROJECTION=!1,this.REFLECTIONMAP_SKYBOX=!1,this.REFLECTIONMAP_EXPLICIT=!1,this.REFLECTIONMAP_EQUIRECTANGULAR=!1,this.REFLECTIONMAP_EQUIRECTANGULAR_FIXED=!1,this.REFLECTIONMAP_MIRROREDEQUIRECTANGULAR_FIXED=!1,this.INVERTCUBICMAP=!1,this.USESPHERICALFROMREFLECTIONMAP=!1,this.USEIRRADIANCEMAP=!1,this.USE_IRRADIANCE_DOMINANT_DIRECTION=!1,this.USESPHERICALINVERTEX=!1,this.REFLECTIONMAP_OPPOSITEZ=!1,this.LODINREFLECTIONALPHA=!1,this.GAMMAREFLECTION=!1,this.RGBDREFLECTION=!1,this.LINEARSPECULARREFLECTION=!1,this.RADIANCEOCCLUSION=!1,this.HORIZONOCCLUSION=!1,this.INSTANCES=!1,this.THIN_INSTANCES=!1,this.INSTANCESCOLOR=!1,this.NUM_BONE_INFLUENCERS=0,this.BonesPerMesh=0,this.BONETEXTURE=!1,this.BONES_VELOCITY_ENABLED=!1,this.NONUNIFORMSCALING=!1,this.MORPHTARGETS=!1,this.MORPHTARGETS_POSITION=!1,this.MORPHTARGETS_NORMAL=!1,this.MORPHTARGETS_TANGENT=!1,this.MORPHTARGETS_UV=!1,this.MORPHTARGETS_UV2=!1,this.MORPHTARGETS_COLOR=!1,this.MORPHTARGETTEXTURE_HASPOSITIONS=!1,this.MORPHTARGETTEXTURE_HASNORMALS=!1,this.MORPHTARGETTEXTURE_HASTANGENTS=!1,this.MORPHTARGETTEXTURE_HASUVS=!1,this.MORPHTARGETTEXTURE_HASUV2S=!1,this.MORPHTARGETTEXTURE_HASCOLORS=!1,this.NUM_MORPH_INFLUENCERS=0,this.MORPHTARGETS_TEXTURE=!1,this.MULTIVIEW=!1,this.ORDER_INDEPENDENT_TRANSPARENCY=!1,this.ORDER_INDEPENDENT_TRANSPARENCY_16BITS=!1,this.USEPHYSICALLIGHTFALLOFF=!1,this.USEGLTFLIGHTFALLOFF=!1,this.TWOSIDEDLIGHTING=!1,this.MIRRORED=!1,this.SHADOWFLOAT=!1,this.CLIPPLANE=!1,this.CLIPPLANE2=!1,this.CLIPPLANE3=!1,this.CLIPPLANE4=!1,this.CLIPPLANE5=!1,this.CLIPPLANE6=!1,this.POINTSIZE=!1,this.FOG=!1,this.LOGARITHMICDEPTH=!1,this.CAMERA_ORTHOGRAPHIC=!1,this.CAMERA_PERSPECTIVE=!1,this.AREALIGHTSUPPORTED=!0,this.FORCENORMALFORWARD=!1,this.SPECULARAA=!1,this.UNLIT=!1,this.DECAL_AFTER_DETAIL=!1,this.TEXTURE_REPETITION_MODE=0,this.DEBUGMODE=0,this.USE_VERTEX_PULLING=!1,this.VERTEX_PULLING_USE_INDEX_BUFFER=!1,this.VERTEX_PULLING_INDEX_BUFFER_32BITS=!1,this.RIGHT_HANDED=!1,this.CLUSTLIGHT_SLICES=0,this.CLUSTLIGHT_BATCH=0,this.rebuild()}reset(){super.reset(),this.ALPHATESTVALUE="0.5",this.PBR=!0,this.NORMALXYSCALE=!0}}class Pr extends mr(Er){}let he=(()=>{var i,v;let k=Pr,U,G=[],W=[];return i=class extends k{get realTimeFiltering(){return this._realTimeFiltering}set realTimeFiltering(l){this._realTimeFiltering=l,this.markAsDirty(1)}get realTimeFilteringQuality(){return this._realTimeFilteringQuality}set realTimeFilteringQuality(l){this._realTimeFilteringQuality=l,this.markAsDirty(1)}get canRenderToMRT(){return!0}get debugMode(){return h(this,v,"f")}set debugMode(l){_(this,v,l,"f")}constructor(l,d,a=!1){super(l,d,void 0,a||i.ForceGLSL),this._directIntensity=1,this._emissiveIntensity=1,this._environmentIntensity=1,this._specularIntensity=1,this._lightingInfos=new Da(this._directIntensity,this._emissiveIntensity,this._environmentIntensity,this._specularIntensity),this._disableBumpMap=!1,this._albedoTexture=null,this._baseWeightTexture=null,this._baseDiffuseRoughnessTexture=null,this._ambientTexture=null,this._ambientTextureStrength=1,this._ambientTextureImpactOnAnalyticalLights=i.DEFAULT_AO_ON_ANALYTICAL_LIGHTS,this._opacityTexture=null,this._reflectionTexture=null,this._emissiveTexture=null,this._reflectivityTexture=null,this._metallicTexture=null,this._metallic=null,this._roughness=null,this._metallicF0Factor=1,this._metallicReflectanceColor=se.White(),this._useOnlyMetallicFromMetallicReflectanceTexture=!1,this._metallicReflectanceTexture=null,this._reflectanceTexture=null,this._microSurfaceTexture=null,this._bumpTexture=null,this._lightmapTexture=null,this._ambientColor=new se(0,0,0),this._albedoColor=new se(1,1,1),this._baseWeight=1,this._baseDiffuseRoughness=null,this._reflectivityColor=new se(1,1,1),this._reflectionColor=new se(1,1,1),this._emissiveColor=new se(0,0,0),this._microSurface=.9,this._useLightmapAsShadowmap=!1,this._useHorizonOcclusion=!0,this._useRadianceOcclusion=!0,this._useAlphaFromAlbedoTexture=!1,this._useSpecularOverAlpha=!0,this._useMicroSurfaceFromReflectivityMapAlpha=!1,this._useRoughnessFromMetallicTextureAlpha=!0,this._useRoughnessFromMetallicTextureGreen=!1,this._useMetallnessFromMetallicTextureBlue=!1,this._useAmbientOcclusionFromMetallicTextureRed=!1,this._useAmbientInGrayScale=!1,this._useAutoMicroSurfaceFromReflectivityMap=!1,this._lightFalloff=i.LIGHTFALLOFF_PHYSICAL,this._useRadianceOverAlpha=!0,this._useObjectSpaceNormalMap=!1,this._useParallax=!1,this._useParallaxOcclusion=!1,this._parallaxScaleBias=.05,this._disableLighting=!1,this._maxSimultaneousLights=4,this._invertNormalMapX=!1,this._invertNormalMapY=!1,this._twoSidedLighting=!1,this._alphaCutOff=.4,this._useAlphaFresnel=!1,this._useLinearAlphaFresnel=!1,this._environmentBRDFTexture=null,this._forceIrradianceInFragment=!1,this._realTimeFiltering=!1,this._realTimeFilteringQuality=8,this._forceNormalForward=!1,this._enableSpecularAntiAliasing=!1,this._renderTargets=new Pa(16),this._globalAmbientColor=new se(0,0,0),this._unlit=!1,this._applyDecalMapAfterDetailMap=!1,this._debugMode=0,this._shadersLoaded=!1,this._breakShaderLoadedCheck=!1,this._vertexPullingMetadata=null,v.set(this,s(this,G,0)),this.debugLimit=(s(this,W),-1),this.debugFactor=1,this._cacheHasRenderTargetTextures=!1,this.brdf=new gr(this),this.clearCoat=new br(this),this.iridescence=new Mr(this),this.anisotropy=new Lr(this),this.sheen=new Fr(this),this.subSurface=new vr(this),this.detailMap=new ka(this),this._attachImageProcessingConfiguration(null),this.getRenderTargetTextures=()=>(this._renderTargets.reset(),x.ReflectionTextureEnabled&&this._reflectionTexture&&this._reflectionTexture.isRenderTarget&&this._renderTargets.push(this._reflectionTexture),this._eventInfo.renderTargets=this._renderTargets,this._callbackPluginEventFillRenderTargetTextures(this._eventInfo),this._renderTargets),this._environmentBRDFTexture=Fa(this.getScene()),this.prePassConfiguration=new Ma}get hasRenderTargetTextures(){return x.ReflectionTextureEnabled&&this._reflectionTexture&&this._reflectionTexture.isRenderTarget?!0:this._cacheHasRenderTargetTextures}get isPrePassCapable(){return!this.disableDepthWrite}getClassName(){return"PBRBaseMaterial"}get _disableAlphaBlending(){return this._transparencyMode===i.PBRMATERIAL_OPAQUE||this._transparencyMode===i.PBRMATERIAL_ALPHATEST||this.subSurface?.disableAlphaBlending}needAlphaBlending(){return this._hasTransparencyMode?this._transparencyModeIsBlend:this._disableAlphaBlending?!1:this.alpha<1||this._opacityTexture!=null||this._shouldUseAlphaFromAlbedoTexture()}needAlphaTesting(){return this._hasTransparencyMode?this._transparencyModeIsTest:this.subSurface?.disableAlphaBlending?!1:this._hasAlphaChannel()&&(this._transparencyMode==null||this._transparencyMode===i.PBRMATERIAL_ALPHATEST)}_shouldUseAlphaFromAlbedoTexture(){return this._albedoTexture!=null&&this._albedoTexture.hasAlpha&&this._useAlphaFromAlbedoTexture&&this._transparencyMode!==i.PBRMATERIAL_OPAQUE}_hasAlphaChannel(){return this._albedoTexture!=null&&this._albedoTexture.hasAlpha||this._opacityTexture!=null}getAlphaTestTexture(){return this._albedoTexture}isReadyForSubMesh(l,d,a){this._uniformBufferLayoutBuilt||this.buildUniformLayout();const I=d._drawWrapper;if(I.effect&&this.isFrozen&&I._wasPreviouslyReady&&I._wasPreviouslyUsingInstances===a)return!0;d.materialDefines||(this._callbackPluginEventGeneric(4,this._eventInfo),d.materialDefines=new La(this._eventInfo.defineNames));const g=d.materialDefines;if(this._isReadyForSubMesh(d))return!0;const F=this.getScene(),M=F.getEngine();if(g._areTexturesDirty&&(this._eventInfo.hasRenderTargetTextures=!1,this._callbackPluginEventHasRenderTargetTextures(this._eventInfo),this._cacheHasRenderTargetTextures=this._eventInfo.hasRenderTargetTextures,F.texturesEnabled)){if(this._albedoTexture&&x.DiffuseTextureEnabled&&!this._albedoTexture.isReadyOrNotBlocking()||this._baseWeightTexture&&x.BaseWeightTextureEnabled&&!this._baseWeightTexture.isReadyOrNotBlocking()||this._baseDiffuseRoughnessTexture&&x.BaseDiffuseRoughnessTextureEnabled&&!this._baseDiffuseRoughnessTexture.isReadyOrNotBlocking()||this._ambientTexture&&x.AmbientTextureEnabled&&!this._ambientTexture.isReadyOrNotBlocking()||this._opacityTexture&&x.OpacityTextureEnabled&&!this._opacityTexture.isReadyOrNotBlocking())return!1;const y=this._getReflectionTexture();if(y&&x.ReflectionTextureEnabled){if(!y.isReadyOrNotBlocking())return!1;if(y.irradianceTexture){if(!y.irradianceTexture.isReadyOrNotBlocking())return!1}else if(!y.sphericalPolynomial&&y.getInternalTexture()?._sphericalPolynomialPromise)return!1}if(this._lightmapTexture&&x.LightmapTextureEnabled&&!this._lightmapTexture.isReadyOrNotBlocking()||this._emissiveTexture&&x.EmissiveTextureEnabled&&!this._emissiveTexture.isReadyOrNotBlocking())return!1;if(x.SpecularTextureEnabled){if(this._metallicTexture){if(!this._metallicTexture.isReadyOrNotBlocking())return!1}else if(this._reflectivityTexture&&!this._reflectivityTexture.isReadyOrNotBlocking())return!1;if(this._metallicReflectanceTexture&&!this._metallicReflectanceTexture.isReadyOrNotBlocking()||this._reflectanceTexture&&!this._reflectanceTexture.isReadyOrNotBlocking()||this._microSurfaceTexture&&!this._microSurfaceTexture.isReadyOrNotBlocking())return!1}if(M.getCaps().standardDerivatives&&this._bumpTexture&&x.BumpTextureEnabled&&!this._disableBumpMap&&!this._bumpTexture.isReady()||this._environmentBRDFTexture&&x.ReflectionTextureEnabled&&!this._environmentBRDFTexture.isReady())return!1}if(this._eventInfo.isReadyForSubMesh=!0,this._eventInfo.defines=g,this._eventInfo.subMesh=d,this._callbackPluginEventIsReadyForSubMesh(this._eventInfo),!this._eventInfo.isReadyForSubMesh||g._areImageProcessingDirty&&this._imageProcessingConfiguration&&!this._imageProcessingConfiguration.isReady())return!1;if(g.AREALIGHTUSED||g.CLUSTLIGHT_BATCH){for(let y=0;y<l.lightSources.length;y++)if(!l.lightSources[y]._isReady())return!1}if(!M.getCaps().standardDerivatives&&!l.isVerticesDataPresent(Ue.NormalKind)&&(l.createNormals(!0),Ua.Warn("PBRMaterial: Normals have been created for the mesh: "+l.name)),!Ba(F,l,this._maxSimultaneousLights,this._disableLighting))return!1;const P=d.effect,B=g._areLightsDisposed,p=this._prepareEffect(l,d.getRenderingMesh(),g,this.onCompiled,this.onError,a,null);let b=!1;if(p)if(this._onEffectCreatedObservable&&(We.effect=p,We.subMesh=d,this._onEffectCreatedObservable.notifyObservers(We)),this.allowShaderHotSwapping&&P&&!p.isReady()){if(g.markAsUnprocessed(),b=this.isFrozen,B)return g._areLightsDisposed=!0,!1}else F.resetCachedMaterial(),d.setEffect(p,g,this._materialContext);return!d.effect||!d.effect.isReady()?!1:(g._renderId=F.getRenderId(),I._wasPreviouslyReady=!b,I._wasPreviouslyUsingInstances=!!a,this._checkScenePerformancePriority(),!0)}isMetallicWorkflow(){return!!(this._metallic!=null||this._roughness!=null||this._metallicTexture)}_prepareEffect(l,d,a,I=null,g=null,F=null,M=null){if(this._prepareDefines(l,d,a,F,M),!a.isDirty)return null;a.markAsProcessed();const B=this.getScene().getEngine(),p=new za;let b=0;a.USESPHERICALINVERTEX&&p.addFallback(b++,"USESPHERICALINVERTEX"),a.FOG&&p.addFallback(b,"FOG"),a.SPECULARAA&&p.addFallback(b,"SPECULARAA"),a.POINTSIZE&&p.addFallback(b,"POINTSIZE"),a.LOGARITHMICDEPTH&&p.addFallback(b,"LOGARITHMICDEPTH"),a.PARALLAX&&p.addFallback(b,"PARALLAX"),a.PARALLAX_RHS&&p.addFallback(b,"PARALLAX_RHS"),a.PARALLAXOCCLUSION&&p.addFallback(b++,"PARALLAXOCCLUSION"),a.ENVIRONMENTBRDF&&p.addFallback(b++,"ENVIRONMENTBRDF"),a.TANGENT&&p.addFallback(b++,"TANGENT"),a.BUMP&&p.addFallback(b++,"BUMP"),b=Ha(a,p,this._maxSimultaneousLights,b),a.SPECULARTERM&&p.addFallback(b++,"SPECULARTERM"),a.USESPHERICALFROMREFLECTIONMAP&&p.addFallback(b++,"USESPHERICALFROMREFLECTIONMAP"),a.USEIRRADIANCEMAP&&p.addFallback(b++,"USEIRRADIANCEMAP"),a.LIGHTMAP&&p.addFallback(b++,"LIGHTMAP"),a.NORMAL&&p.addFallback(b++,"NORMAL"),a.AMBIENT&&p.addFallback(b++,"AMBIENT"),a.EMISSIVE&&p.addFallback(b++,"EMISSIVE"),a.VERTEXCOLOR&&p.addFallback(b++,"VERTEXCOLOR"),a.MORPHTARGETS&&p.addFallback(b++,"MORPHTARGETS"),a.MULTIVIEW&&p.addFallback(0,"MULTIVIEW");const y=[Ue.PositionKind];a.NORMAL&&y.push(Ue.NormalKind),a.TANGENT&&y.push(Ue.TangentKind);for(let o=1;o<=6;++o)a["UV"+o]&&y.push(`uv${o===1?"":o}`);a.VERTEXCOLOR&&y.push(Ue.ColorKind),Ga(y,l,a,p),Wa(y,a),wa(y,l,a),Va(y,l,a);let R="pbr";const N=["world","view","viewProjection","vEyePosition","vLightsType","vAmbientColor","vAlbedoColor","baseWeight","baseDiffuseRoughness","vReflectivityColor","vMetallicReflectanceFactors","vEmissiveColor","visibility","vFogInfos","vFogColor","pointSize","vAlbedoInfos","vBaseWeightInfos","vBaseDiffuseRoughnessInfos","vAmbientInfos","vOpacityInfos","vEmissiveInfos","vReflectivityInfos","vMetallicReflectanceInfos","vReflectanceInfos","vMicroSurfaceSamplerInfos","vBumpInfos","vLightmapInfos","mBones","albedoMatrix","baseWeightMatrix","baseDiffuseRoughnessMatrix","ambientMatrix","opacityMatrix","emissiveMatrix","reflectivityMatrix","normalMatrix","microSurfaceSamplerMatrix","bumpMatrix","lightmapMatrix","metallicReflectanceMatrix","reflectanceMatrix","vLightingIntensity","logarithmicDepthConstant","vTangentSpaceParams","boneTextureInfo","vDebugMode","morphTargetTextureInfo","morphTargetTextureIndices","cameraInfo","vTextureRepetitionHexTilingParams"],f=["albedoSampler","baseWeightSampler","baseDiffuseRoughnessSampler","reflectivitySampler","ambientSampler","emissiveSampler","bumpSampler","lightmapSampler","opacitySampler","microSurfaceSampler","environmentBrdfSampler","boneSampler","metallicReflectanceSampler","reflectanceSampler","morphTargets","oitDepthSampler","oitFrontColorSampler","areaLightsLTC1Sampler","areaLightsLTC2Sampler"];Ya(N,f,!0);const L=["Material","Scene","Mesh"],V={maxSimultaneousLights:this._maxSimultaneousLights,maxSimultaneousMorphTargets:a.NUM_MORPH_INFLUENCERS};if(this._eventInfo.fallbacks=p,this._eventInfo.fallbackRank=b,this._eventInfo.defines=a,this._eventInfo.uniforms=N,this._eventInfo.attributes=y,this._eventInfo.samplers=f,this._eventInfo.uniformBuffersNames=L,this._eventInfo.customCode=void 0,this._eventInfo.mesh=l,this._eventInfo.indexParameters=V,this._callbackPluginEventGeneric(128,this._eventInfo),Ht.AddUniformsAndSamplers(N,f),Ma.AddUniforms(N),Xa(N),this._useVertexPulling){const o=d?.geometry;o&&(this._vertexPullingMetadata=Ka(o),this._vertexPullingMetadata&&this._vertexPullingMetadata.forEach((D,J)=>{N.push(`vp_${J}_info`)}))}else this._vertexPullingMetadata=null;Gt&&(Gt.PrepareUniforms(N,a),Gt.PrepareSamplers(f,a)),ja({uniformsNames:N,uniformBuffersNames:L,samplers:f,defines:a,maxSimultaneousLights:this._maxSimultaneousLights,shaderLanguage:this._shaderLanguage});const q={};this.customShaderNameResolve&&(R=this.customShaderNameResolve(R,N,L,f,a,y,q));const te=a.toString(),Y=B.createEffect(R,{attributes:y,uniformsNames:N,uniformBuffersNames:L,samplers:f,defines:te,fallbacks:p,onCompiled:I,onError:g,indexParameters:V,processFinalCode:q.processFinalCode,processCodeAfterIncludes:this._eventInfo.customCode,multiTarget:a.PREPASS,shaderLanguage:this._shaderLanguage,extraInitializationsAsync:this._shadersLoaded?void 0:async()=>{this.shaderLanguage===1?await Promise.all([zt(()=>import("./pbr.vertex-BXB7uMkC.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]),import.meta.url),zt(()=>import("./pbr.fragment-BUBggeRz.js"),__vite__mapDeps([17,1,2,18,3,4,5,7,19,20,21,22,15,23,8,11,9,24,25]),import.meta.url)]):await Promise.all([zt(()=>import("./index-YcXsPtFI.js").then(o=>o.cQ),__vite__mapDeps([1,2]),import.meta.url),zt(()=>import("./index-YcXsPtFI.js").then(o=>o.cP),__vite__mapDeps([1,2]),import.meta.url)]),this._shadersLoaded=!0}},B);return this._eventInfo.customCode=void 0,Y}_prepareDefines(l,d,a,I=null,g=null){const F=d.hasThinInstances,M=this.getScene(),P=M.getEngine();Qa(M,l,a,!0,this._maxSimultaneousLights,this._disableLighting),a._needNormals=!0,Za(M,a);const B=this.needAlphaBlendingForMesh(l)&&this.getScene().useOrderIndependentTransparency;if(Ja(M,a,this.canRenderToMRT&&!B),$a(M,a,B),Ht.PrepareDefines(P.currentRenderPassId,l,a),a.METALLICWORKFLOW=this.isMetallicWorkflow(),a._areTexturesDirty){a._needUVs=!1;for(let p=1;p<=6;++p)a["MAINUV"+p]=!1;if(M.texturesEnabled){a.ALBEDODIRECTUV=0,a.BASE_WEIGHTDIRECTUV=0,a.BASE_DIFFUSE_ROUGHNESSDIRECTUV=0,a.AMBIENTDIRECTUV=0,a.OPACITYDIRECTUV=0,a.EMISSIVEDIRECTUV=0,a.REFLECTIVITYDIRECTUV=0,a.MICROSURFACEMAPDIRECTUV=0,a.METALLIC_REFLECTANCEDIRECTUV=0,a.REFLECTANCEDIRECTUV=0,a.BUMPDIRECTUV=0,a.LIGHTMAPDIRECTUV=0,P.getCaps().textureLOD&&(a.LODBASEDMICROSFURACE=!0),this._albedoTexture&&x.DiffuseTextureEnabled?(j(this._albedoTexture,a,"ALBEDO"),a.GAMMAALBEDO=this._albedoTexture.gammaSpace):a.ALBEDO=!1,this._baseWeightTexture&&x.BaseWeightTextureEnabled?j(this._baseWeightTexture,a,"BASE_WEIGHT"):a.BASE_WEIGHT=!1,this._baseDiffuseRoughnessTexture&&x.BaseDiffuseRoughnessTextureEnabled?j(this._baseDiffuseRoughnessTexture,a,"BASE_DIFFUSE_ROUGHNESS"):a.BASE_DIFFUSE_ROUGHNESS=!1,this._ambientTexture&&x.AmbientTextureEnabled?(j(this._ambientTexture,a,"AMBIENT"),a.AMBIENTINGRAYSCALE=this._useAmbientInGrayScale):a.AMBIENT=!1,this._opacityTexture&&x.OpacityTextureEnabled?(j(this._opacityTexture,a,"OPACITY"),a.OPACITYRGB=this._opacityTexture.getAlphaFromRGB):a.OPACITY=!1;const p=this._getReflectionTexture(),b=this._forceIrradianceInFragment||this.realTimeFiltering||this._twoSidedLighting||P.getCaps().maxVaryingVectors<=8||this._baseDiffuseRoughnessTexture!=null;qa(M,p,a,this.realTimeFiltering,this.realTimeFilteringQuality,!b),this._lightmapTexture&&x.LightmapTextureEnabled?(j(this._lightmapTexture,a,"LIGHTMAP"),a.USELIGHTMAPASSHADOWMAP=this._useLightmapAsShadowmap,a.GAMMALIGHTMAP=this._lightmapTexture.gammaSpace,a.RGBDLIGHTMAP=this._lightmapTexture.isRGBD):a.LIGHTMAP=!1,this._emissiveTexture&&x.EmissiveTextureEnabled?(j(this._emissiveTexture,a,"EMISSIVE"),a.GAMMAEMISSIVE=this._emissiveTexture.gammaSpace):a.EMISSIVE=!1,x.SpecularTextureEnabled?(this._metallicTexture?(j(this._metallicTexture,a,"REFLECTIVITY"),a.ROUGHNESSSTOREINMETALMAPALPHA=this._useRoughnessFromMetallicTextureAlpha,a.ROUGHNESSSTOREINMETALMAPGREEN=!this._useRoughnessFromMetallicTextureAlpha&&this._useRoughnessFromMetallicTextureGreen,a.METALLNESSSTOREINMETALMAPBLUE=this._useMetallnessFromMetallicTextureBlue,a.AOSTOREINMETALMAPRED=this._useAmbientOcclusionFromMetallicTextureRed,a.REFLECTIVITY_GAMMA=!1):this._reflectivityTexture?(j(this._reflectivityTexture,a,"REFLECTIVITY"),a.MICROSURFACEFROMREFLECTIVITYMAP=this._useMicroSurfaceFromReflectivityMapAlpha,a.MICROSURFACEAUTOMATIC=this._useAutoMicroSurfaceFromReflectivityMap,a.REFLECTIVITY_GAMMA=this._reflectivityTexture.gammaSpace):a.REFLECTIVITY=!1,this._metallicReflectanceTexture||this._reflectanceTexture?(a.METALLIC_REFLECTANCE_USE_ALPHA_ONLY=this._useOnlyMetallicFromMetallicReflectanceTexture,this._metallicReflectanceTexture?(j(this._metallicReflectanceTexture,a,"METALLIC_REFLECTANCE"),a.METALLIC_REFLECTANCE_GAMMA=this._metallicReflectanceTexture.gammaSpace):a.METALLIC_REFLECTANCE=!1,this._reflectanceTexture&&(!this._metallicReflectanceTexture||this._metallicReflectanceTexture&&this._useOnlyMetallicFromMetallicReflectanceTexture)?(j(this._reflectanceTexture,a,"REFLECTANCE"),a.REFLECTANCE_GAMMA=this._reflectanceTexture.gammaSpace):a.REFLECTANCE=!1):(a.METALLIC_REFLECTANCE=!1,a.REFLECTANCE=!1),this._microSurfaceTexture?j(this._microSurfaceTexture,a,"MICROSURFACEMAP"):a.MICROSURFACEMAP=!1):(a.REFLECTIVITY=!1,a.MICROSURFACEMAP=!1),P.getCaps().standardDerivatives&&this._bumpTexture&&x.BumpTextureEnabled&&!this._disableBumpMap?(j(this._bumpTexture,a,"BUMP"),this._useParallax&&this._albedoTexture&&x.DiffuseTextureEnabled?(a.PARALLAX=!0,a.PARALLAX_RHS=M.useRightHandedSystem,a.PARALLAXOCCLUSION=!!this._useParallaxOcclusion):a.PARALLAX=!1,a.OBJECTSPACE_NORMALMAP=this._useObjectSpaceNormalMap):(a.BUMP=!1,a.PARALLAX=!1,a.PARALLAX_RHS=!1,a.PARALLAXOCCLUSION=!1,a.OBJECTSPACE_NORMALMAP=!1),this._environmentBRDFTexture&&x.ReflectionTextureEnabled?(a.ENVIRONMENTBRDF=!0,a.ENVIRONMENTBRDF_RGBD=this._environmentBRDFTexture.isRGBD):(a.ENVIRONMENTBRDF=!1,a.ENVIRONMENTBRDF_RGBD=!1),this._shouldUseAlphaFromAlbedoTexture()?a.ALPHAFROMALBEDO=!0:a.ALPHAFROMALBEDO=!1}a.SPECULAROVERALPHA=this._useSpecularOverAlpha,this._lightFalloff===i.LIGHTFALLOFF_STANDARD?(a.USEPHYSICALLIGHTFALLOFF=!1,a.USEGLTFLIGHTFALLOFF=!1):this._lightFalloff===i.LIGHTFALLOFF_GLTF?(a.USEPHYSICALLIGHTFALLOFF=!1,a.USEGLTFLIGHTFALLOFF=!0):(a.USEPHYSICALLIGHTFALLOFF=!0,a.USEGLTFLIGHTFALLOFF=!1),a.RADIANCEOVERALPHA=this._useRadianceOverAlpha,!this.backFaceCulling&&this._twoSidedLighting?a.TWOSIDEDLIGHTING=!0:a.TWOSIDEDLIGHTING=!1,a.MIRRORED=!!M._mirroredCameraPosition,a.SPECULARAA=P.getCaps().standardDerivatives&&this._enableSpecularAntiAliasing}(a._areTexturesDirty||a._areMiscDirty)&&(a.ALPHATESTVALUE=`${this._alphaCutOff}${this._alphaCutOff%1===0?".":""}`,a.PREMULTIPLYALPHA=this.alphaMode===7||this.alphaMode===8,a.ALPHABLEND=this.needAlphaBlendingForMesh(l),a.ALPHAFRESNEL=this._useAlphaFresnel||this._useLinearAlphaFresnel,a.LINEARALPHAFRESNEL=this._useLinearAlphaFresnel),a._areTexturesDirty&&(a.TEXTURE_REPETITION_MODE=P.version>1||P.isWebGPU?this.textureRepetitionMode:0),a._areImageProcessingDirty&&this._imageProcessingConfiguration&&this._imageProcessingConfiguration.prepareDefines(a),a.FORCENORMALFORWARD=this._forceNormalForward,a.RADIANCEOCCLUSION=this._useRadianceOcclusion,a.HORIZONOCCLUSION=this._useHorizonOcclusion,a._areMiscDirty&&(er(l,M,this._useLogarithmicDepth,this.pointsCloud,this.fogEnabled,this.needAlphaTestingForMesh(l),a,this._applyDecalMapAfterDetailMap,this._useVertexPulling,d,this._isVertexOutputInvariant),a.UNLIT=this._unlit||(this.pointsCloud||this.wireframe)&&!l.isVerticesDataPresent(Ue.NormalKind),a.DEBUGMODE=this._debugMode),tr(M,P,this,a,!!I,g,F),this._eventInfo.defines=a,this._eventInfo.mesh=l,this._callbackPluginEventPrepareDefinesBeforeAttributes(this._eventInfo),sr(l,a,!0,!0,!0,this._transparencyMode!==i.PBRMATERIAL_OPAQUE),this._callbackPluginEventPrepareDefines(this._eventInfo)}forceCompilation(l,d,a){const I={clipPlane:!1,useInstances:!1,...a};this._uniformBufferLayoutBuilt||this.buildUniformLayout(),this._callbackPluginEventGeneric(4,this._eventInfo),(()=>{if(this._breakShaderLoadedCheck)return;const F=new La(this._eventInfo.defineNames),M=this._prepareEffect(l,l,F,void 0,void 0,I.useInstances,I.clipPlane);this._onEffectCreatedObservable&&(We.effect=M,We.subMesh=null,this._onEffectCreatedObservable.notifyObservers(We)),M.isReady()?d&&d(this):M.onCompileObservable.add(()=>{d&&d(this)})})()}buildUniformLayout(){const l=this._uniformBuffer;l.addUniform("vAlbedoInfos",2),l.addUniform("vBaseWeightInfos",2),l.addUniform("vBaseDiffuseRoughnessInfos",2),l.addUniform("vAmbientInfos",4),l.addUniform("vOpacityInfos",2),l.addUniform("vEmissiveInfos",2),l.addUniform("vLightmapInfos",2),l.addUniform("vReflectivityInfos",3),l.addUniform("vMicroSurfaceSamplerInfos",2),l.addUniform("vBumpInfos",3),l.addUniform("albedoMatrix",16),l.addUniform("baseWeightMatrix",16),l.addUniform("baseDiffuseRoughnessMatrix",16),l.addUniform("ambientMatrix",16),l.addUniform("opacityMatrix",16),l.addUniform("emissiveMatrix",16),l.addUniform("lightmapMatrix",16),l.addUniform("reflectivityMatrix",16),l.addUniform("microSurfaceSamplerMatrix",16),l.addUniform("bumpMatrix",16),l.addUniform("vTangentSpaceParams",2),l.addUniform("vAlbedoColor",4),l.addUniform("baseWeight",1),l.addUniform("baseDiffuseRoughness",1),l.addUniform("vLightingIntensity",4),l.addUniform("pointSize",1),l.addUniform("vReflectivityColor",4),l.addUniform("vEmissiveColor",3),l.addUniform("vAmbientColor",3),l.addUniform("vDebugMode",2),l.addUniform("vMetallicReflectanceFactors",4),l.addUniform("vMetallicReflectanceInfos",2),l.addUniform("metallicReflectanceMatrix",16),l.addUniform("vReflectanceInfos",2),l.addUniform("reflectanceMatrix",16),l.addUniform("cameraInfo",4),l.addUniform("vTextureRepetitionHexTilingParams",4),ir(l,!0,!0,!0,!0,!0),super.buildUniformLayout()}bindForSubMesh(l,d,a){const I=this.getScene(),g=a.materialDefines;if(!g)return;const F=a.effect;if(!F)return;this._activeEffect=F,d.getMeshUniformBuffer().bindToEffect(F,"Mesh"),d.transferToEffect(l);const M=I.getEngine();this._uniformBuffer.bindToEffect(F,"Material"),this.prePassConfiguration.bindForSubMesh(this._activeEffect,I,d,l,this.isFrozen),Ht.Bind(M.currentRenderPassId,this._activeEffect,d,l,this);const P=I.activeCamera;P?this._uniformBuffer.updateFloat4("cameraInfo",P.minZ,P.maxZ,0,0):this._uniformBuffer.updateFloat4("cameraInfo",0,0,0,0);const B=this.textureRepetitionHexTilingParams;this._uniformBuffer.updateFloat4("vTextureRepetitionHexTilingParams",B[0],B[1],B[2],B[3]),this._eventInfo.subMesh=a,this._callbackPluginEventHardBindForSubMesh(this._eventInfo),g.OBJECTSPACE_NORMALMAP&&(l.toNormalMatrix(this._normalMatrix),this.bindOnlyNormalMatrix(this._normalMatrix));const p=this._mustRebind(I,F,a,d.visibility),b=M._features.needToAlwaysBindUniformBuffers;ar(d,this._activeEffect,this.prePassConfiguration),this._vertexPullingMetadata&&rr(this._activeEffect,this._vertexPullingMetadata);let y=null;const R=this._uniformBuffer;if(p){if(this.bindViewProjection(F),y=this._getReflectionTexture(),!R.useUbo||!this.isFrozen||!R.isSync||a._drawWrapper._forceRebindOnNextCall){if(I.texturesEnabled&&(this._albedoTexture&&x.DiffuseTextureEnabled&&(R.updateFloat2("vAlbedoInfos",this._albedoTexture.coordinatesIndex,this._albedoTexture.level),Q(this._albedoTexture,R,"albedo")),this._baseWeightTexture&&x.BaseWeightTextureEnabled&&(R.updateFloat2("vBaseWeightInfos",this._baseWeightTexture.coordinatesIndex,this._baseWeightTexture.level),Q(this._baseWeightTexture,R,"baseWeight")),this._baseDiffuseRoughnessTexture&&x.BaseDiffuseRoughnessTextureEnabled&&(R.updateFloat2("vBaseDiffuseRoughnessInfos",this._baseDiffuseRoughnessTexture.coordinatesIndex,this._baseDiffuseRoughnessTexture.level),Q(this._baseDiffuseRoughnessTexture,R,"baseDiffuseRoughness")),this._ambientTexture&&x.AmbientTextureEnabled&&(R.updateFloat4("vAmbientInfos",this._ambientTexture.coordinatesIndex,this._ambientTexture.level,this._ambientTextureStrength,this._ambientTextureImpactOnAnalyticalLights),Q(this._ambientTexture,R,"ambient")),this._opacityTexture&&x.OpacityTextureEnabled&&(R.updateFloat2("vOpacityInfos",this._opacityTexture.coordinatesIndex,this._opacityTexture.level),Q(this._opacityTexture,R,"opacity")),this._emissiveTexture&&x.EmissiveTextureEnabled&&(R.updateFloat2("vEmissiveInfos",this._emissiveTexture.coordinatesIndex,this._emissiveTexture.level),Q(this._emissiveTexture,R,"emissive")),this._lightmapTexture&&x.LightmapTextureEnabled&&(R.updateFloat2("vLightmapInfos",this._lightmapTexture.coordinatesIndex,this._lightmapTexture.level),Q(this._lightmapTexture,R,"lightmap")),x.SpecularTextureEnabled&&(this._metallicTexture?(R.updateFloat3("vReflectivityInfos",this._metallicTexture.coordinatesIndex,this._metallicTexture.level,this._ambientTextureStrength),Q(this._metallicTexture,R,"reflectivity")):this._reflectivityTexture&&(R.updateFloat3("vReflectivityInfos",this._reflectivityTexture.coordinatesIndex,this._reflectivityTexture.level,1),Q(this._reflectivityTexture,R,"reflectivity")),this._metallicReflectanceTexture&&(R.updateFloat2("vMetallicReflectanceInfos",this._metallicReflectanceTexture.coordinatesIndex,this._metallicReflectanceTexture.level),Q(this._metallicReflectanceTexture,R,"metallicReflectance")),this._reflectanceTexture&&g.REFLECTANCE&&(R.updateFloat2("vReflectanceInfos",this._reflectanceTexture.coordinatesIndex,this._reflectanceTexture.level),Q(this._reflectanceTexture,R,"reflectance")),this._microSurfaceTexture&&(R.updateFloat2("vMicroSurfaceSamplerInfos",this._microSurfaceTexture.coordinatesIndex,this._microSurfaceTexture.level),Q(this._microSurfaceTexture,R,"microSurfaceSampler"))),this._bumpTexture&&M.getCaps().standardDerivatives&&x.BumpTextureEnabled&&!this._disableBumpMap&&(R.updateFloat3("vBumpInfos",this._bumpTexture.coordinatesIndex,this._bumpTexture.level,this._parallaxScaleBias),Q(this._bumpTexture,R,"bump"),I._mirroredCameraPosition?R.updateFloat2("vTangentSpaceParams",this._invertNormalMapX?1:-1,this._invertNormalMapY?1:-1):R.updateFloat2("vTangentSpaceParams",this._invertNormalMapX?-1:1,this._invertNormalMapY?-1:1)),lr(I,g,R,this._reflectionColor,y,this.realTimeFiltering,!0,!0,!0,!0,!0)),this.pointsCloud&&R.updateFloat("pointSize",this.pointSize),g.METALLICWORKFLOW){Nt.Color4[0].r=this._metallic===void 0||this._metallic===null?1:this._metallic,Nt.Color4[0].g=this._roughness===void 0||this._roughness===null?1:this._roughness;const N=this.subSurface?._indexOfRefraction??1.5,f=1;Nt.Color4[0].b=N;const L=Math.pow((N-f)/(N+f),2);Nt.Color4[0].a=L,R.updateDirectColor4("vReflectivityColor",Nt.Color4[0]),R.updateColor4("vMetallicReflectanceFactors",this._metallicReflectanceColor,this._metallicF0Factor)}else R.updateColor4("vReflectivityColor",this._reflectivityColor,this._microSurface);R.updateColor3("vEmissiveColor",x.EmissiveTextureEnabled?this._emissiveColor:se.BlackReadOnly),!g.SS_REFRACTION&&this.subSurface?._linkRefractionWithTransparency?R.updateColor4("vAlbedoColor",this._albedoColor,1):R.updateColor4("vAlbedoColor",this._albedoColor,this.alpha),R.updateFloat("baseWeight",this._baseWeight),R.updateFloat("baseDiffuseRoughness",this._baseDiffuseRoughness||0),this._lightingInfos.x=this._directIntensity,this._lightingInfos.y=this._emissiveIntensity,this._lightingInfos.z=this._environmentIntensity*I.environmentIntensity,this._lightingInfos.w=this._specularIntensity,R.updateVector4("vLightingIntensity",this._lightingInfos),I.ambientColor.multiplyToRef(this._ambientColor,this._globalAmbientColor),R.updateColor3("vAmbientColor",this._globalAmbientColor),R.updateFloat2("vDebugMode",this.debugLimit,this.debugFactor)}I.texturesEnabled&&(this._albedoTexture&&x.DiffuseTextureEnabled&&R.setTexture("albedoSampler",this._albedoTexture),this._baseWeightTexture&&x.BaseWeightTextureEnabled&&R.setTexture("baseWeightSampler",this._baseWeightTexture),this._baseDiffuseRoughnessTexture&&x.BaseDiffuseRoughnessTextureEnabled&&R.setTexture("baseDiffuseRoughnessSampler",this._baseDiffuseRoughnessTexture),this._ambientTexture&&x.AmbientTextureEnabled&&R.setTexture("ambientSampler",this._ambientTexture),this._opacityTexture&&x.OpacityTextureEnabled&&R.setTexture("opacitySampler",this._opacityTexture),nr(I,g,R,y,this.realTimeFiltering),g.ENVIRONMENTBRDF&&R.setTexture("environmentBrdfSampler",this._environmentBRDFTexture),this._emissiveTexture&&x.EmissiveTextureEnabled&&R.setTexture("emissiveSampler",this._emissiveTexture),this._lightmapTexture&&x.LightmapTextureEnabled&&R.setTexture("lightmapSampler",this._lightmapTexture),x.SpecularTextureEnabled&&(this._metallicTexture?R.setTexture("reflectivitySampler",this._metallicTexture):this._reflectivityTexture&&R.setTexture("reflectivitySampler",this._reflectivityTexture),this._metallicReflectanceTexture&&R.setTexture("metallicReflectanceSampler",this._metallicReflectanceTexture),this._reflectanceTexture&&g.REFLECTANCE&&R.setTexture("reflectanceSampler",this._reflectanceTexture),this._microSurfaceTexture&&R.setTexture("microSurfaceSampler",this._microSurfaceTexture)),this._bumpTexture&&M.getCaps().standardDerivatives&&x.BumpTextureEnabled&&!this._disableBumpMap&&R.setTexture("bumpSampler",this._bumpTexture)),this.getScene().useOrderIndependentTransparency&&this.needAlphaBlendingForMesh(d)&&this.getScene().depthPeelingRenderer.bind(F),this._eventInfo.subMesh=a,this._callbackPluginEventBindForSubMesh(this._eventInfo),ur(this._activeEffect,this,I),this.bindEyePosition(F)}else b&&(this._needToBindSceneUbo=!0);(p||!this.isFrozen||b)&&I.lightsEnabled&&!this._disableLighting&&cr(I,d,this._activeEffect,g,this._maxSimultaneousLights),(p||!this.isFrozen)&&((I.fogEnabled&&d.applyFog&&I.fogMode!==or.FOGMODE_NONE||y||this.subSurface.refractionTexture||d.receiveShadows||g.PREPASS||g.CLUSTLIGHT_BATCH)&&this.bindView(F),hr(I,d,this._activeEffect,!0),g.NUM_MORPH_INFLUENCERS&&_r(d,this._activeEffect),g.BAKED_VERTEX_ANIMATION_TEXTURE&&d.bakedVertexAnimationManager?.bind(F,g.INSTANCES),this._imageProcessingConfiguration.bind(this._activeEffect),Tr(g,this._activeEffect,I)),this._afterBind(d,this._activeEffect,a),R.update()}getAnimatables(){const l=super.getAnimatables();return this._albedoTexture&&this._albedoTexture.animations&&this._albedoTexture.animations.length>0&&l.push(this._albedoTexture),this._baseWeightTexture&&this._baseWeightTexture.animations&&this._baseWeightTexture.animations.length>0&&l.push(this._baseWeightTexture),this._baseDiffuseRoughnessTexture&&this._baseDiffuseRoughnessTexture.animations&&this._baseDiffuseRoughnessTexture.animations.length>0&&l.push(this._baseDiffuseRoughnessTexture),this._ambientTexture&&this._ambientTexture.animations&&this._ambientTexture.animations.length>0&&l.push(this._ambientTexture),this._opacityTexture&&this._opacityTexture.animations&&this._opacityTexture.animations.length>0&&l.push(this._opacityTexture),this._reflectionTexture&&this._reflectionTexture.animations&&this._reflectionTexture.animations.length>0&&l.push(this._reflectionTexture),this._emissiveTexture&&this._emissiveTexture.animations&&this._emissiveTexture.animations.length>0&&l.push(this._emissiveTexture),this._metallicTexture&&this._metallicTexture.animations&&this._metallicTexture.animations.length>0?l.push(this._metallicTexture):this._reflectivityTexture&&this._reflectivityTexture.animations&&this._reflectivityTexture.animations.length>0&&l.push(this._reflectivityTexture),this._bumpTexture&&this._bumpTexture.animations&&this._bumpTexture.animations.length>0&&l.push(this._bumpTexture),this._lightmapTexture&&this._lightmapTexture.animations&&this._lightmapTexture.animations.length>0&&l.push(this._lightmapTexture),this._metallicReflectanceTexture&&this._metallicReflectanceTexture.animations&&this._metallicReflectanceTexture.animations.length>0&&l.push(this._metallicReflectanceTexture),this._reflectanceTexture&&this._reflectanceTexture.animations&&this._reflectanceTexture.animations.length>0&&l.push(this._reflectanceTexture),this._microSurfaceTexture&&this._microSurfaceTexture.animations&&this._microSurfaceTexture.animations.length>0&&l.push(this._microSurfaceTexture),l}_getReflectionTexture(){return this._reflectionTexture?this._reflectionTexture:this.getScene().environmentTexture}getActiveTextures(){const l=super.getActiveTextures();return this._albedoTexture&&l.push(this._albedoTexture),this._baseWeightTexture&&l.push(this._baseWeightTexture),this._baseDiffuseRoughnessTexture&&l.push(this._baseDiffuseRoughnessTexture),this._ambientTexture&&l.push(this._ambientTexture),this._opacityTexture&&l.push(this._opacityTexture),this._reflectionTexture&&l.push(this._reflectionTexture),this._emissiveTexture&&l.push(this._emissiveTexture),this._reflectivityTexture&&l.push(this._reflectivityTexture),this._metallicTexture&&l.push(this._metallicTexture),this._metallicReflectanceTexture&&l.push(this._metallicReflectanceTexture),this._reflectanceTexture&&l.push(this._reflectanceTexture),this._microSurfaceTexture&&l.push(this._microSurfaceTexture),this._bumpTexture&&l.push(this._bumpTexture),this._lightmapTexture&&l.push(this._lightmapTexture),l}hasTexture(l){return!!(super.hasTexture(l)||this._albedoTexture===l||this._baseWeightTexture===l||this._baseDiffuseRoughnessTexture===l||this._ambientTexture===l||this._opacityTexture===l||this._reflectionTexture===l||this._emissiveTexture===l||this._reflectivityTexture===l||this._metallicTexture===l||this._metallicReflectanceTexture===l||this._reflectanceTexture===l||this._microSurfaceTexture===l||this._bumpTexture===l||this._lightmapTexture===l)}setPrePassRenderer(){if(!this.subSurface?.isScatteringEnabled)return!1;const l=this.getScene().enableSubSurfaceForPrePass();return l&&(l.enabled=!0),!0}dispose(l,d){this._breakShaderLoadedCheck=!0,d&&(this._environmentBRDFTexture&&this.getScene().environmentBRDFTexture!==this._environmentBRDFTexture&&this._environmentBRDFTexture.dispose(),this._albedoTexture?.dispose(),this._baseWeightTexture?.dispose(),this._baseDiffuseRoughnessTexture?.dispose(),this._ambientTexture?.dispose(),this._opacityTexture?.dispose(),this._reflectionTexture?.dispose(),this._emissiveTexture?.dispose(),this._metallicTexture?.dispose(),this._reflectivityTexture?.dispose(),this._bumpTexture?.dispose(),this._lightmapTexture?.dispose(),this._metallicReflectanceTexture?.dispose(),this._reflectanceTexture?.dispose(),this._microSurfaceTexture?.dispose()),this._renderTargets.dispose(),this._imageProcessingConfiguration&&this._imageProcessingObserver&&this._imageProcessingConfiguration.onUpdateParameters.remove(this._imageProcessingObserver),super.dispose(l,d)}},v=new WeakMap,(()=>{const H=typeof Symbol=="function"&&Symbol.metadata?Object.create(k[Symbol.metadata]??null):void 0;U=[T("_markAllSubMeshesAsMiscDirty")],u(i,null,U,{kind:"accessor",name:"debugMode",static:!1,private:!1,access:{has:l=>"debugMode"in l,get:l=>l.debugMode,set:(l,d)=>{l.debugMode=d}},metadata:H},G,W),H&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:H})})(),i.PBRMATERIAL_OPAQUE=vt.MATERIAL_OPAQUE,i.PBRMATERIAL_ALPHATEST=vt.MATERIAL_ALPHATEST,i.PBRMATERIAL_ALPHABLEND=vt.MATERIAL_ALPHABLEND,i.PBRMATERIAL_ALPHATESTANDBLEND=vt.MATERIAL_ALPHATESTANDBLEND,i.DEFAULT_AO_ON_ANALYTICAL_LIGHTS=0,i.LIGHTFALLOFF_PHYSICAL=0,i.LIGHTFALLOFF_GLTF=1,i.LIGHTFALLOFF_STANDARD=2,i.ForceGLSL=!1,i})();Object.getOwnPropertyDescriptor(he.prototype,"decalMap")||Object.defineProperty(he.prototype,"decalMap",Ar("PBRBaseMaterial","decalMap"));let kr=(()=>{var i,v,k,U,G,W,H,l,d,a,I,g,F,M,P,B,p,b,y,R,N,f,L,V,q,te,Y,o,D,J,ae,re,le,ne,ue,ce,K,c,C,E,w,_e,me,Re,Ae,de,Se,pe,ge,Ie,be,Ce,Me,Z,r,O,ie,Ee,ye,De,Le,Oe,Fe,Ne,ve,Pe,ke;let Ve=he,ze=[],Ye,Xe=[],Ke=[],je,Qe=[],Ze=[],Je,$e=[],qe=[],et,tt=[],st=[],it,at=[],rt=[],lt,nt=[],ut=[],ct,ot=[],ht=[],_t,Tt=[],ft=[],mt,Et=[],xt=[],Rt,At=[],dt=[],St,pt=[],gt=[],It,bt=[],Ct=[],Mt,yt=[],Lt=[],z,t=[],A=[],$,He=[],Te=[],Dt,Pt=[],kt=[],ee,Ot=[],Ge=[],Ut,Ft=[],Wt=[],wt,Vt=[],Yt=[],Xt,Kt=[],jt=[],Qt,Zt=[],Jt=[],$t,qt=[],es=[],ts,ss=[],is=[],as,rs=[],ls=[],ns,us=[],cs=[],os,hs=[],_s=[],Ts,fs=[],ms=[],Es,xs=[],Rs=[],As,ds=[],Ss=[],ps,gs=[],Is=[],bs,Cs=[],Ms=[],ys,Ls=[],Os=[],Fs,Ns=[],vs=[],Ds,Ps=[],ks=[],Us,Bs=[],zs=[],Hs,Gs=[],Ws=[],ws,Vs=[],Ys=[],Xs,Ks=[],js=[],Qs,Zs=[],Js=[],$s,qs=[],ei=[],ti,si=[],ii=[],ai,ri=[],li=[],ni,ui=[],ci=[],oi,hi=[],_i=[],Ti,fi=[],mi=[],Ei,xi=[],Ri=[],Ai,di,Si,pi=[],gi=[],Ii,bi=[],Ci=[],Mi,yi=[],Li=[],Oi,Fi=[],Ni=[],vi,Di=[],Pi=[],ki,Ui=[],Bi=[],zi,Hi=[],Gi=[],Wi,wi=[],Vi=[],Yi,Xi=[],Ki=[],ji,Qi=[],Zi=[],Ji,$i=[],qi=[],ea,ta=[],sa=[],ia,aa=[],ra=[],la,na=[],ua=[],ca,oa=[],ha=[],_a,Ta=[],fa=[],ma,Ea=[],xa=[],Ra,Aa=[],da=[],Sa,pa=[],ga=[],Ia,ba=[],Ca=[];return i=class extends Ve{get directIntensity(){return h(this,v,"f")}set directIntensity(e){_(this,v,e,"f")}get emissiveIntensity(){return h(this,k,"f")}set emissiveIntensity(e){_(this,k,e,"f")}get environmentIntensity(){return h(this,U,"f")}set environmentIntensity(e){_(this,U,e,"f")}get specularIntensity(){return h(this,G,"f")}set specularIntensity(e){_(this,G,e,"f")}get disableBumpMap(){return h(this,W,"f")}set disableBumpMap(e){_(this,W,e,"f")}get albedoTexture(){return h(this,H,"f")}set albedoTexture(e){_(this,H,e,"f")}get baseWeightTexture(){return h(this,l,"f")}set baseWeightTexture(e){_(this,l,e,"f")}get baseDiffuseRoughnessTexture(){return h(this,d,"f")}set baseDiffuseRoughnessTexture(e){_(this,d,e,"f")}get ambientTexture(){return h(this,a,"f")}set ambientTexture(e){_(this,a,e,"f")}get ambientTextureStrength(){return h(this,I,"f")}set ambientTextureStrength(e){_(this,I,e,"f")}get ambientTextureImpactOnAnalyticalLights(){return h(this,g,"f")}set ambientTextureImpactOnAnalyticalLights(e){_(this,g,e,"f")}get opacityTexture(){return h(this,F,"f")}set opacityTexture(e){_(this,F,e,"f")}get reflectionTexture(){return h(this,M,"f")}set reflectionTexture(e){_(this,M,e,"f")}get emissiveTexture(){return h(this,P,"f")}set emissiveTexture(e){_(this,P,e,"f")}get reflectivityTexture(){return h(this,B,"f")}set reflectivityTexture(e){_(this,B,e,"f")}get metallicTexture(){return h(this,p,"f")}set metallicTexture(e){_(this,p,e,"f")}get metallic(){return h(this,b,"f")}set metallic(e){_(this,b,e,"f")}get roughness(){return h(this,y,"f")}set roughness(e){_(this,y,e,"f")}get metallicF0Factor(){return h(this,R,"f")}set metallicF0Factor(e){_(this,R,e,"f")}get metallicReflectanceColor(){return h(this,N,"f")}set metallicReflectanceColor(e){_(this,N,e,"f")}get useOnlyMetallicFromMetallicReflectanceTexture(){return h(this,f,"f")}set useOnlyMetallicFromMetallicReflectanceTexture(e){_(this,f,e,"f")}get metallicReflectanceTexture(){return h(this,L,"f")}set metallicReflectanceTexture(e){_(this,L,e,"f")}get reflectanceTexture(){return h(this,V,"f")}set reflectanceTexture(e){_(this,V,e,"f")}get microSurfaceTexture(){return h(this,q,"f")}set microSurfaceTexture(e){_(this,q,e,"f")}get bumpTexture(){return h(this,te,"f")}set bumpTexture(e){_(this,te,e,"f")}get lightmapTexture(){return h(this,Y,"f")}set lightmapTexture(e){_(this,Y,e,"f")}get refractionTexture(){return this.subSurface.refractionTexture}set refractionTexture(e){this.subSurface.refractionTexture=e,e?this.subSurface.isRefractionEnabled=!0:this.subSurface.linkRefractionWithTransparency||(this.subSurface.isRefractionEnabled=!1)}get ambientColor(){return h(this,o,"f")}set ambientColor(e){_(this,o,e,"f")}get albedoColor(){return h(this,D,"f")}set albedoColor(e){_(this,D,e,"f")}get baseWeight(){return h(this,J,"f")}set baseWeight(e){_(this,J,e,"f")}get baseDiffuseRoughness(){return h(this,ae,"f")}set baseDiffuseRoughness(e){_(this,ae,e,"f")}get reflectivityColor(){return h(this,re,"f")}set reflectivityColor(e){_(this,re,e,"f")}get reflectionColor(){return h(this,le,"f")}set reflectionColor(e){_(this,le,e,"f")}get emissiveColor(){return h(this,ne,"f")}set emissiveColor(e){_(this,ne,e,"f")}get microSurface(){return h(this,ue,"f")}set microSurface(e){_(this,ue,e,"f")}get indexOfRefraction(){return this.subSurface.indexOfRefraction}set indexOfRefraction(e){this.subSurface.indexOfRefraction=e}get invertRefractionY(){return this.subSurface.invertRefractionY}set invertRefractionY(e){this.subSurface.invertRefractionY=e}get linkRefractionWithTransparency(){return this.subSurface.linkRefractionWithTransparency}set linkRefractionWithTransparency(e){this.subSurface.linkRefractionWithTransparency=e,e&&(this.subSurface.isRefractionEnabled=!0)}get useLightmapAsShadowmap(){return h(this,ce,"f")}set useLightmapAsShadowmap(e){_(this,ce,e,"f")}get useAlphaFromAlbedoTexture(){return h(this,K,"f")}set useAlphaFromAlbedoTexture(e){_(this,K,e,"f")}get forceAlphaTest(){return h(this,c,"f")}set forceAlphaTest(e){_(this,c,e,"f")}get alphaCutOff(){return h(this,C,"f")}set alphaCutOff(e){_(this,C,e,"f")}get useSpecularOverAlpha(){return h(this,E,"f")}set useSpecularOverAlpha(e){_(this,E,e,"f")}get useMicroSurfaceFromReflectivityMapAlpha(){return h(this,w,"f")}set useMicroSurfaceFromReflectivityMapAlpha(e){_(this,w,e,"f")}get useRoughnessFromMetallicTextureAlpha(){return h(this,_e,"f")}set useRoughnessFromMetallicTextureAlpha(e){_(this,_e,e,"f")}get useRoughnessFromMetallicTextureGreen(){return h(this,me,"f")}set useRoughnessFromMetallicTextureGreen(e){_(this,me,e,"f")}get useMetallnessFromMetallicTextureBlue(){return h(this,Re,"f")}set useMetallnessFromMetallicTextureBlue(e){_(this,Re,e,"f")}get useAmbientOcclusionFromMetallicTextureRed(){return h(this,Ae,"f")}set useAmbientOcclusionFromMetallicTextureRed(e){_(this,Ae,e,"f")}get useAmbientInGrayScale(){return h(this,de,"f")}set useAmbientInGrayScale(e){_(this,de,e,"f")}get useAutoMicroSurfaceFromReflectivityMap(){return h(this,Se,"f")}set useAutoMicroSurfaceFromReflectivityMap(e){_(this,Se,e,"f")}get usePhysicalLightFalloff(){return this._lightFalloff===he.LIGHTFALLOFF_PHYSICAL}set usePhysicalLightFalloff(e){e!==this.usePhysicalLightFalloff&&(this._markAllSubMeshesAsTexturesDirty(),e?this._lightFalloff=he.LIGHTFALLOFF_PHYSICAL:this._lightFalloff=he.LIGHTFALLOFF_STANDARD)}get useGLTFLightFalloff(){return this._lightFalloff===he.LIGHTFALLOFF_GLTF}set useGLTFLightFalloff(e){e!==this.useGLTFLightFalloff&&(this._markAllSubMeshesAsTexturesDirty(),e?this._lightFalloff=he.LIGHTFALLOFF_GLTF:this._lightFalloff=he.LIGHTFALLOFF_STANDARD)}get useRadianceOverAlpha(){return h(this,pe,"f")}set useRadianceOverAlpha(e){_(this,pe,e,"f")}get useObjectSpaceNormalMap(){return h(this,ge,"f")}set useObjectSpaceNormalMap(e){_(this,ge,e,"f")}get useParallax(){return h(this,Ie,"f")}set useParallax(e){_(this,Ie,e,"f")}get useParallaxOcclusion(){return h(this,be,"f")}set useParallaxOcclusion(e){_(this,be,e,"f")}get parallaxScaleBias(){return h(this,Ce,"f")}set parallaxScaleBias(e){_(this,Ce,e,"f")}get disableLighting(){return h(this,Me,"f")}set disableLighting(e){_(this,Me,e,"f")}get forceIrradianceInFragment(){return h(this,Z,"f")}set forceIrradianceInFragment(e){_(this,Z,e,"f")}get maxSimultaneousLights(){return h(this,r,"f")}set maxSimultaneousLights(e){_(this,r,e,"f")}get invertNormalMapX(){return h(this,O,"f")}set invertNormalMapX(e){_(this,O,e,"f")}get invertNormalMapY(){return h(this,ie,"f")}set invertNormalMapY(e){_(this,ie,e,"f")}get twoSidedLighting(){return h(this,Ee,"f")}set twoSidedLighting(e){_(this,Ee,e,"f")}get useAlphaFresnel(){return h(this,ye,"f")}set useAlphaFresnel(e){_(this,ye,e,"f")}get useLinearAlphaFresnel(){return h(this,De,"f")}set useLinearAlphaFresnel(e){_(this,De,e,"f")}get environmentBRDFTexture(){return h(this,Le,"f")}set environmentBRDFTexture(e){_(this,Le,e,"f")}get forceNormalForward(){return h(this,Oe,"f")}set forceNormalForward(e){_(this,Oe,e,"f")}get enableSpecularAntiAliasing(){return h(this,Fe,"f")}set enableSpecularAntiAliasing(e){_(this,Fe,e,"f")}get useHorizonOcclusion(){return h(this,Ne,"f")}set useHorizonOcclusion(e){_(this,Ne,e,"f")}get useRadianceOcclusion(){return h(this,ve,"f")}set useRadianceOcclusion(e){_(this,ve,e,"f")}get unlit(){return h(this,Pe,"f")}set unlit(e){_(this,Pe,e,"f")}get applyDecalMapAfterDetailMap(){return h(this,ke,"f")}set applyDecalMapAfterDetailMap(e){_(this,ke,e,"f")}constructor(e,n,fe=!1){super(e,n,fe),v.set(this,(s(this,ze),s(this,Xe,1))),k.set(this,(s(this,Ke),s(this,Qe,1))),U.set(this,(s(this,Ze),s(this,$e,1))),G.set(this,(s(this,qe),s(this,tt,1))),W.set(this,(s(this,st),s(this,at,!1))),H.set(this,(s(this,rt),s(this,nt,void 0))),l.set(this,(s(this,ut),s(this,ot,void 0))),d.set(this,(s(this,ht),s(this,Tt,void 0))),a.set(this,(s(this,ft),s(this,Et,void 0))),I.set(this,(s(this,xt),s(this,At,1))),g.set(this,(s(this,dt),s(this,pt,i.DEFAULT_AO_ON_ANALYTICAL_LIGHTS))),F.set(this,(s(this,gt),s(this,bt,void 0))),M.set(this,(s(this,Ct),s(this,yt,void 0))),P.set(this,(s(this,Lt),s(this,t,void 0))),B.set(this,(s(this,A),s(this,He,void 0))),p.set(this,(s(this,Te),s(this,Pt,void 0))),b.set(this,(s(this,kt),s(this,Ot,void 0))),y.set(this,(s(this,Ge),s(this,Ft,void 0))),R.set(this,(s(this,Wt),s(this,Vt,1))),N.set(this,(s(this,Yt),s(this,Kt,se.White()))),f.set(this,(s(this,jt),s(this,Zt,!1))),L.set(this,(s(this,Jt),s(this,qt,void 0))),V.set(this,(s(this,es),s(this,ss,void 0))),q.set(this,(s(this,is),s(this,rs,void 0))),te.set(this,(s(this,ls),s(this,us,void 0))),Y.set(this,(s(this,cs),s(this,hs,void 0))),o.set(this,(s(this,_s),s(this,fs,new se(0,0,0)))),D.set(this,(s(this,ms),s(this,xs,new se(1,1,1)))),J.set(this,(s(this,Rs),s(this,ds,1))),ae.set(this,(s(this,Ss),s(this,gs,void 0))),re.set(this,(s(this,Is),s(this,Cs,new se(1,1,1)))),le.set(this,(s(this,Ms),s(this,Ls,new se(1,1,1)))),ne.set(this,(s(this,Os),s(this,Ns,new se(0,0,0)))),ue.set(this,(s(this,vs),s(this,Ps,1))),ce.set(this,(s(this,ks),s(this,Bs,!1))),K.set(this,(s(this,zs),s(this,Gs,!1))),c.set(this,(s(this,Ws),s(this,Vs,!1))),C.set(this,(s(this,Ys),s(this,Ks,.4))),E.set(this,(s(this,js),s(this,Zs,!0))),w.set(this,(s(this,Js),s(this,qs,!1))),_e.set(this,(s(this,ei),s(this,si,!0))),me.set(this,(s(this,ii),s(this,ri,!1))),Re.set(this,(s(this,li),s(this,ui,!1))),Ae.set(this,(s(this,ci),s(this,hi,!1))),de.set(this,(s(this,_i),s(this,fi,!1))),Se.set(this,(s(this,mi),s(this,xi,!1))),pe.set(this,(s(this,Ri),s(this,pi,!0))),ge.set(this,(s(this,gi),s(this,bi,!1))),Ie.set(this,(s(this,Ci),s(this,yi,!1))),be.set(this,(s(this,Li),s(this,Fi,!1))),Ce.set(this,(s(this,Ni),s(this,Di,.05))),Me.set(this,(s(this,Pi),s(this,Ui,!1))),Z.set(this,(s(this,Bi),s(this,Hi,!1))),r.set(this,(s(this,Gi),s(this,wi,4))),O.set(this,(s(this,Vi),s(this,Xi,!1))),ie.set(this,(s(this,Ki),s(this,Qi,!1))),Ee.set(this,(s(this,Zi),s(this,$i,!1))),ye.set(this,(s(this,qi),s(this,ta,!1))),De.set(this,(s(this,sa),s(this,aa,!1))),Le.set(this,(s(this,ra),s(this,na,null))),Oe.set(this,(s(this,ua),s(this,oa,!1))),Fe.set(this,(s(this,ha),s(this,Ta,!1))),Ne.set(this,(s(this,fa),s(this,Ea,!0))),ve.set(this,(s(this,xa),s(this,Aa,!0))),Pe.set(this,(s(this,da),s(this,pa,!1))),ke.set(this,(s(this,ga),s(this,ba,!1))),s(this,Ca),this._environmentBRDFTexture=Fa(this.getScene())}getClassName(){return"PBRMaterial"}clone(e,n=!0,fe=""){const oe=ya.Clone(()=>new i(e,this.getScene()),this,{cloneTexturesOnlyOnce:n});return oe.id=e,oe.name=e,this.stencil.copyTo(oe.stencil),this._clonePlugins(oe,fe),oe}serialize(){const e=super.serialize();return e.customType="BABYLON.PBRMaterial",e}static Parse(e,n,fe){const oe=ya.Parse(()=>new i(e.name,n),e,n,fe);return e.stencil&&oe.stencil.parse(e.stencil,n,fe),vt._ParsePlugins(e,oe,n,fe),e.clearCoat&&oe.clearCoat.parse(e.clearCoat,n,fe),e.anisotropy&&oe.anisotropy.parse(e.anisotropy,n,fe),e.brdf&&oe.brdf.parse(e.brdf,n,fe),e.sheen&&oe.sheen.parse(e.sheen,n,fe),e.subSurface&&oe.subSurface.parse(e.subSurface,n,fe),e.iridescence&&oe.iridescence.parse(e.iridescence,n,fe),oe}},v=new WeakMap,k=new WeakMap,U=new WeakMap,G=new WeakMap,W=new WeakMap,H=new WeakMap,l=new WeakMap,d=new WeakMap,a=new WeakMap,I=new WeakMap,g=new WeakMap,F=new WeakMap,M=new WeakMap,P=new WeakMap,B=new WeakMap,p=new WeakMap,b=new WeakMap,y=new WeakMap,R=new WeakMap,N=new WeakMap,f=new WeakMap,L=new WeakMap,V=new WeakMap,q=new WeakMap,te=new WeakMap,Y=new WeakMap,o=new WeakMap,D=new WeakMap,J=new WeakMap,ae=new WeakMap,re=new WeakMap,le=new WeakMap,ne=new WeakMap,ue=new WeakMap,ce=new WeakMap,K=new WeakMap,c=new WeakMap,C=new WeakMap,E=new WeakMap,w=new WeakMap,_e=new WeakMap,me=new WeakMap,Re=new WeakMap,Ae=new WeakMap,de=new WeakMap,Se=new WeakMap,pe=new WeakMap,ge=new WeakMap,Ie=new WeakMap,be=new WeakMap,Ce=new WeakMap,Me=new WeakMap,Z=new WeakMap,r=new WeakMap,O=new WeakMap,ie=new WeakMap,Ee=new WeakMap,ye=new WeakMap,De=new WeakMap,Le=new WeakMap,Oe=new WeakMap,Fe=new WeakMap,Ne=new WeakMap,ve=new WeakMap,Pe=new WeakMap,ke=new WeakMap,(()=>{const S=typeof Symbol=="function"&&Symbol.metadata?Object.create(Ve[Symbol.metadata]??null):void 0;Ye=[m(),T("_markAllSubMeshesAsTexturesDirty")],je=[m(),T("_markAllSubMeshesAsTexturesDirty")],Je=[m(),T("_markAllSubMeshesAsTexturesDirty")],et=[m(),T("_markAllSubMeshesAsTexturesDirty")],it=[m(),T("_markAllSubMeshesAsTexturesDirty")],lt=[X(),T("_markAllSubMeshesAsTexturesDirty")],ct=[X(),T("_markAllSubMeshesAsTexturesDirty")],_t=[X(),T("_markAllSubMeshesAsTexturesDirty")],mt=[X(),T("_markAllSubMeshesAsTexturesDirty")],Rt=[m(),T("_markAllSubMeshesAsTexturesDirty")],St=[m(),T("_markAllSubMeshesAsTexturesDirty")],It=[X(),T("_markAllSubMeshesAsTexturesAndMiscDirty")],Mt=[X(),T("_markAllSubMeshesAsTexturesDirty")],z=[X(),T("_markAllSubMeshesAsTexturesDirty")],$=[X(),T("_markAllSubMeshesAsTexturesDirty")],Dt=[X(),T("_markAllSubMeshesAsTexturesDirty")],ee=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ut=[m(),T("_markAllSubMeshesAsTexturesDirty")],wt=[m(),T("_markAllSubMeshesAsTexturesDirty")],Xt=[xe(),T("_markAllSubMeshesAsTexturesDirty")],Qt=[m(),T("_markAllSubMeshesAsTexturesDirty")],$t=[X(),T("_markAllSubMeshesAsTexturesDirty")],ts=[X(),T("_markAllSubMeshesAsTexturesDirty")],as=[X(),T("_markAllSubMeshesAsTexturesDirty")],ns=[X(),T("_markAllSubMeshesAsTexturesDirty")],os=[X(),T("_markAllSubMeshesAsTexturesDirty",null)],Ts=[xe("ambient"),T("_markAllSubMeshesAsTexturesDirty")],Es=[xe("albedo"),T("_markAllSubMeshesAsTexturesDirty")],As=[m("baseWeight"),T("_markAllSubMeshesAsTexturesDirty")],ps=[m("baseDiffuseRoughness"),T("_markAllSubMeshesAsTexturesDirty")],bs=[xe("reflectivity"),T("_markAllSubMeshesAsTexturesDirty")],ys=[xe("reflection"),T("_markAllSubMeshesAsTexturesDirty")],Fs=[xe("emissive"),T("_markAllSubMeshesAsTexturesDirty")],Ds=[m(),T("_markAllSubMeshesAsTexturesDirty")],Us=[m(),T("_markAllSubMeshesAsTexturesDirty")],Hs=[m(),T("_markAllSubMeshesAsTexturesAndMiscDirty")],ws=[m(),T("_markAllSubMeshesAsTexturesAndMiscDirty")],Xs=[m(),T("_markAllSubMeshesAsTexturesAndMiscDirty")],Qs=[m(),T("_markAllSubMeshesAsTexturesDirty")],$s=[m(),T("_markAllSubMeshesAsTexturesDirty")],ti=[m(),T("_markAllSubMeshesAsTexturesDirty")],ai=[m(),T("_markAllSubMeshesAsTexturesDirty")],ni=[m(),T("_markAllSubMeshesAsTexturesDirty")],oi=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ti=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ei=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ai=[m()],di=[m()],Si=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ii=[m(),T("_markAllSubMeshesAsTexturesDirty")],Mi=[m(),T("_markAllSubMeshesAsTexturesDirty")],Oi=[m(),T("_markAllSubMeshesAsTexturesDirty")],vi=[m(),T("_markAllSubMeshesAsTexturesDirty")],ki=[m(),T("_markAllSubMeshesAsLightsDirty")],zi=[m(),T("_markAllSubMeshesAsTexturesDirty")],Wi=[m(),T("_markAllSubMeshesAsLightsDirty")],Yi=[m(),T("_markAllSubMeshesAsTexturesDirty")],ji=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ji=[m(),T("_markAllSubMeshesAsTexturesDirty")],ea=[m(),T("_markAllSubMeshesAsTexturesDirty")],ia=[m(),T("_markAllSubMeshesAsTexturesDirty")],la=[T("_markAllSubMeshesAsTexturesDirty")],ca=[m(),T("_markAllSubMeshesAsTexturesDirty")],_a=[m(),T("_markAllSubMeshesAsTexturesDirty")],ma=[m(),T("_markAllSubMeshesAsTexturesDirty")],Ra=[m(),T("_markAllSubMeshesAsTexturesDirty")],Sa=[m(),T("_markAllSubMeshesAsMiscDirty")],Ia=[m(),T("_markAllSubMeshesAsMiscDirty")],u(i,null,Ye,{kind:"accessor",name:"directIntensity",static:!1,private:!1,access:{has:e=>"directIntensity"in e,get:e=>e.directIntensity,set:(e,n)=>{e.directIntensity=n}},metadata:S},Xe,Ke),u(i,null,je,{kind:"accessor",name:"emissiveIntensity",static:!1,private:!1,access:{has:e=>"emissiveIntensity"in e,get:e=>e.emissiveIntensity,set:(e,n)=>{e.emissiveIntensity=n}},metadata:S},Qe,Ze),u(i,null,Je,{kind:"accessor",name:"environmentIntensity",static:!1,private:!1,access:{has:e=>"environmentIntensity"in e,get:e=>e.environmentIntensity,set:(e,n)=>{e.environmentIntensity=n}},metadata:S},$e,qe),u(i,null,et,{kind:"accessor",name:"specularIntensity",static:!1,private:!1,access:{has:e=>"specularIntensity"in e,get:e=>e.specularIntensity,set:(e,n)=>{e.specularIntensity=n}},metadata:S},tt,st),u(i,null,it,{kind:"accessor",name:"disableBumpMap",static:!1,private:!1,access:{has:e=>"disableBumpMap"in e,get:e=>e.disableBumpMap,set:(e,n)=>{e.disableBumpMap=n}},metadata:S},at,rt),u(i,null,lt,{kind:"accessor",name:"albedoTexture",static:!1,private:!1,access:{has:e=>"albedoTexture"in e,get:e=>e.albedoTexture,set:(e,n)=>{e.albedoTexture=n}},metadata:S},nt,ut),u(i,null,ct,{kind:"accessor",name:"baseWeightTexture",static:!1,private:!1,access:{has:e=>"baseWeightTexture"in e,get:e=>e.baseWeightTexture,set:(e,n)=>{e.baseWeightTexture=n}},metadata:S},ot,ht),u(i,null,_t,{kind:"accessor",name:"baseDiffuseRoughnessTexture",static:!1,private:!1,access:{has:e=>"baseDiffuseRoughnessTexture"in e,get:e=>e.baseDiffuseRoughnessTexture,set:(e,n)=>{e.baseDiffuseRoughnessTexture=n}},metadata:S},Tt,ft),u(i,null,mt,{kind:"accessor",name:"ambientTexture",static:!1,private:!1,access:{has:e=>"ambientTexture"in e,get:e=>e.ambientTexture,set:(e,n)=>{e.ambientTexture=n}},metadata:S},Et,xt),u(i,null,Rt,{kind:"accessor",name:"ambientTextureStrength",static:!1,private:!1,access:{has:e=>"ambientTextureStrength"in e,get:e=>e.ambientTextureStrength,set:(e,n)=>{e.ambientTextureStrength=n}},metadata:S},At,dt),u(i,null,St,{kind:"accessor",name:"ambientTextureImpactOnAnalyticalLights",static:!1,private:!1,access:{has:e=>"ambientTextureImpactOnAnalyticalLights"in e,get:e=>e.ambientTextureImpactOnAnalyticalLights,set:(e,n)=>{e.ambientTextureImpactOnAnalyticalLights=n}},metadata:S},pt,gt),u(i,null,It,{kind:"accessor",name:"opacityTexture",static:!1,private:!1,access:{has:e=>"opacityTexture"in e,get:e=>e.opacityTexture,set:(e,n)=>{e.opacityTexture=n}},metadata:S},bt,Ct),u(i,null,Mt,{kind:"accessor",name:"reflectionTexture",static:!1,private:!1,access:{has:e=>"reflectionTexture"in e,get:e=>e.reflectionTexture,set:(e,n)=>{e.reflectionTexture=n}},metadata:S},yt,Lt),u(i,null,z,{kind:"accessor",name:"emissiveTexture",static:!1,private:!1,access:{has:e=>"emissiveTexture"in e,get:e=>e.emissiveTexture,set:(e,n)=>{e.emissiveTexture=n}},metadata:S},t,A),u(i,null,$,{kind:"accessor",name:"reflectivityTexture",static:!1,private:!1,access:{has:e=>"reflectivityTexture"in e,get:e=>e.reflectivityTexture,set:(e,n)=>{e.reflectivityTexture=n}},metadata:S},He,Te),u(i,null,Dt,{kind:"accessor",name:"metallicTexture",static:!1,private:!1,access:{has:e=>"metallicTexture"in e,get:e=>e.metallicTexture,set:(e,n)=>{e.metallicTexture=n}},metadata:S},Pt,kt),u(i,null,ee,{kind:"accessor",name:"metallic",static:!1,private:!1,access:{has:e=>"metallic"in e,get:e=>e.metallic,set:(e,n)=>{e.metallic=n}},metadata:S},Ot,Ge),u(i,null,Ut,{kind:"accessor",name:"roughness",static:!1,private:!1,access:{has:e=>"roughness"in e,get:e=>e.roughness,set:(e,n)=>{e.roughness=n}},metadata:S},Ft,Wt),u(i,null,wt,{kind:"accessor",name:"metallicF0Factor",static:!1,private:!1,access:{has:e=>"metallicF0Factor"in e,get:e=>e.metallicF0Factor,set:(e,n)=>{e.metallicF0Factor=n}},metadata:S},Vt,Yt),u(i,null,Xt,{kind:"accessor",name:"metallicReflectanceColor",static:!1,private:!1,access:{has:e=>"metallicReflectanceColor"in e,get:e=>e.metallicReflectanceColor,set:(e,n)=>{e.metallicReflectanceColor=n}},metadata:S},Kt,jt),u(i,null,Qt,{kind:"accessor",name:"useOnlyMetallicFromMetallicReflectanceTexture",static:!1,private:!1,access:{has:e=>"useOnlyMetallicFromMetallicReflectanceTexture"in e,get:e=>e.useOnlyMetallicFromMetallicReflectanceTexture,set:(e,n)=>{e.useOnlyMetallicFromMetallicReflectanceTexture=n}},metadata:S},Zt,Jt),u(i,null,$t,{kind:"accessor",name:"metallicReflectanceTexture",static:!1,private:!1,access:{has:e=>"metallicReflectanceTexture"in e,get:e=>e.metallicReflectanceTexture,set:(e,n)=>{e.metallicReflectanceTexture=n}},metadata:S},qt,es),u(i,null,ts,{kind:"accessor",name:"reflectanceTexture",static:!1,private:!1,access:{has:e=>"reflectanceTexture"in e,get:e=>e.reflectanceTexture,set:(e,n)=>{e.reflectanceTexture=n}},metadata:S},ss,is),u(i,null,as,{kind:"accessor",name:"microSurfaceTexture",static:!1,private:!1,access:{has:e=>"microSurfaceTexture"in e,get:e=>e.microSurfaceTexture,set:(e,n)=>{e.microSurfaceTexture=n}},metadata:S},rs,ls),u(i,null,ns,{kind:"accessor",name:"bumpTexture",static:!1,private:!1,access:{has:e=>"bumpTexture"in e,get:e=>e.bumpTexture,set:(e,n)=>{e.bumpTexture=n}},metadata:S},us,cs),u(i,null,os,{kind:"accessor",name:"lightmapTexture",static:!1,private:!1,access:{has:e=>"lightmapTexture"in e,get:e=>e.lightmapTexture,set:(e,n)=>{e.lightmapTexture=n}},metadata:S},hs,_s),u(i,null,Ts,{kind:"accessor",name:"ambientColor",static:!1,private:!1,access:{has:e=>"ambientColor"in e,get:e=>e.ambientColor,set:(e,n)=>{e.ambientColor=n}},metadata:S},fs,ms),u(i,null,Es,{kind:"accessor",name:"albedoColor",static:!1,private:!1,access:{has:e=>"albedoColor"in e,get:e=>e.albedoColor,set:(e,n)=>{e.albedoColor=n}},metadata:S},xs,Rs),u(i,null,As,{kind:"accessor",name:"baseWeight",static:!1,private:!1,access:{has:e=>"baseWeight"in e,get:e=>e.baseWeight,set:(e,n)=>{e.baseWeight=n}},metadata:S},ds,Ss),u(i,null,ps,{kind:"accessor",name:"baseDiffuseRoughness",static:!1,private:!1,access:{has:e=>"baseDiffuseRoughness"in e,get:e=>e.baseDiffuseRoughness,set:(e,n)=>{e.baseDiffuseRoughness=n}},metadata:S},gs,Is),u(i,null,bs,{kind:"accessor",name:"reflectivityColor",static:!1,private:!1,access:{has:e=>"reflectivityColor"in e,get:e=>e.reflectivityColor,set:(e,n)=>{e.reflectivityColor=n}},metadata:S},Cs,Ms),u(i,null,ys,{kind:"accessor",name:"reflectionColor",static:!1,private:!1,access:{has:e=>"reflectionColor"in e,get:e=>e.reflectionColor,set:(e,n)=>{e.reflectionColor=n}},metadata:S},Ls,Os),u(i,null,Fs,{kind:"accessor",name:"emissiveColor",static:!1,private:!1,access:{has:e=>"emissiveColor"in e,get:e=>e.emissiveColor,set:(e,n)=>{e.emissiveColor=n}},metadata:S},Ns,vs),u(i,null,Ds,{kind:"accessor",name:"microSurface",static:!1,private:!1,access:{has:e=>"microSurface"in e,get:e=>e.microSurface,set:(e,n)=>{e.microSurface=n}},metadata:S},Ps,ks),u(i,null,Us,{kind:"accessor",name:"useLightmapAsShadowmap",static:!1,private:!1,access:{has:e=>"useLightmapAsShadowmap"in e,get:e=>e.useLightmapAsShadowmap,set:(e,n)=>{e.useLightmapAsShadowmap=n}},metadata:S},Bs,zs),u(i,null,Hs,{kind:"accessor",name:"useAlphaFromAlbedoTexture",static:!1,private:!1,access:{has:e=>"useAlphaFromAlbedoTexture"in e,get:e=>e.useAlphaFromAlbedoTexture,set:(e,n)=>{e.useAlphaFromAlbedoTexture=n}},metadata:S},Gs,Ws),u(i,null,ws,{kind:"accessor",name:"forceAlphaTest",static:!1,private:!1,access:{has:e=>"forceAlphaTest"in e,get:e=>e.forceAlphaTest,set:(e,n)=>{e.forceAlphaTest=n}},metadata:S},Vs,Ys),u(i,null,Xs,{kind:"accessor",name:"alphaCutOff",static:!1,private:!1,access:{has:e=>"alphaCutOff"in e,get:e=>e.alphaCutOff,set:(e,n)=>{e.alphaCutOff=n}},metadata:S},Ks,js),u(i,null,Qs,{kind:"accessor",name:"useSpecularOverAlpha",static:!1,private:!1,access:{has:e=>"useSpecularOverAlpha"in e,get:e=>e.useSpecularOverAlpha,set:(e,n)=>{e.useSpecularOverAlpha=n}},metadata:S},Zs,Js),u(i,null,$s,{kind:"accessor",name:"useMicroSurfaceFromReflectivityMapAlpha",static:!1,private:!1,access:{has:e=>"useMicroSurfaceFromReflectivityMapAlpha"in e,get:e=>e.useMicroSurfaceFromReflectivityMapAlpha,set:(e,n)=>{e.useMicroSurfaceFromReflectivityMapAlpha=n}},metadata:S},qs,ei),u(i,null,ti,{kind:"accessor",name:"useRoughnessFromMetallicTextureAlpha",static:!1,private:!1,access:{has:e=>"useRoughnessFromMetallicTextureAlpha"in e,get:e=>e.useRoughnessFromMetallicTextureAlpha,set:(e,n)=>{e.useRoughnessFromMetallicTextureAlpha=n}},metadata:S},si,ii),u(i,null,ai,{kind:"accessor",name:"useRoughnessFromMetallicTextureGreen",static:!1,private:!1,access:{has:e=>"useRoughnessFromMetallicTextureGreen"in e,get:e=>e.useRoughnessFromMetallicTextureGreen,set:(e,n)=>{e.useRoughnessFromMetallicTextureGreen=n}},metadata:S},ri,li),u(i,null,ni,{kind:"accessor",name:"useMetallnessFromMetallicTextureBlue",static:!1,private:!1,access:{has:e=>"useMetallnessFromMetallicTextureBlue"in e,get:e=>e.useMetallnessFromMetallicTextureBlue,set:(e,n)=>{e.useMetallnessFromMetallicTextureBlue=n}},metadata:S},ui,ci),u(i,null,oi,{kind:"accessor",name:"useAmbientOcclusionFromMetallicTextureRed",static:!1,private:!1,access:{has:e=>"useAmbientOcclusionFromMetallicTextureRed"in e,get:e=>e.useAmbientOcclusionFromMetallicTextureRed,set:(e,n)=>{e.useAmbientOcclusionFromMetallicTextureRed=n}},metadata:S},hi,_i),u(i,null,Ti,{kind:"accessor",name:"useAmbientInGrayScale",static:!1,private:!1,access:{has:e=>"useAmbientInGrayScale"in e,get:e=>e.useAmbientInGrayScale,set:(e,n)=>{e.useAmbientInGrayScale=n}},metadata:S},fi,mi),u(i,null,Ei,{kind:"accessor",name:"useAutoMicroSurfaceFromReflectivityMap",static:!1,private:!1,access:{has:e=>"useAutoMicroSurfaceFromReflectivityMap"in e,get:e=>e.useAutoMicroSurfaceFromReflectivityMap,set:(e,n)=>{e.useAutoMicroSurfaceFromReflectivityMap=n}},metadata:S},xi,Ri),u(i,null,Ai,{kind:"getter",name:"usePhysicalLightFalloff",static:!1,private:!1,access:{has:e=>"usePhysicalLightFalloff"in e,get:e=>e.usePhysicalLightFalloff},metadata:S},null,ze),u(i,null,di,{kind:"getter",name:"useGLTFLightFalloff",static:!1,private:!1,access:{has:e=>"useGLTFLightFalloff"in e,get:e=>e.useGLTFLightFalloff},metadata:S},null,ze),u(i,null,Si,{kind:"accessor",name:"useRadianceOverAlpha",static:!1,private:!1,access:{has:e=>"useRadianceOverAlpha"in e,get:e=>e.useRadianceOverAlpha,set:(e,n)=>{e.useRadianceOverAlpha=n}},metadata:S},pi,gi),u(i,null,Ii,{kind:"accessor",name:"useObjectSpaceNormalMap",static:!1,private:!1,access:{has:e=>"useObjectSpaceNormalMap"in e,get:e=>e.useObjectSpaceNormalMap,set:(e,n)=>{e.useObjectSpaceNormalMap=n}},metadata:S},bi,Ci),u(i,null,Mi,{kind:"accessor",name:"useParallax",static:!1,private:!1,access:{has:e=>"useParallax"in e,get:e=>e.useParallax,set:(e,n)=>{e.useParallax=n}},metadata:S},yi,Li),u(i,null,Oi,{kind:"accessor",name:"useParallaxOcclusion",static:!1,private:!1,access:{has:e=>"useParallaxOcclusion"in e,get:e=>e.useParallaxOcclusion,set:(e,n)=>{e.useParallaxOcclusion=n}},metadata:S},Fi,Ni),u(i,null,vi,{kind:"accessor",name:"parallaxScaleBias",static:!1,private:!1,access:{has:e=>"parallaxScaleBias"in e,get:e=>e.parallaxScaleBias,set:(e,n)=>{e.parallaxScaleBias=n}},metadata:S},Di,Pi),u(i,null,ki,{kind:"accessor",name:"disableLighting",static:!1,private:!1,access:{has:e=>"disableLighting"in e,get:e=>e.disableLighting,set:(e,n)=>{e.disableLighting=n}},metadata:S},Ui,Bi),u(i,null,zi,{kind:"accessor",name:"forceIrradianceInFragment",static:!1,private:!1,access:{has:e=>"forceIrradianceInFragment"in e,get:e=>e.forceIrradianceInFragment,set:(e,n)=>{e.forceIrradianceInFragment=n}},metadata:S},Hi,Gi),u(i,null,Wi,{kind:"accessor",name:"maxSimultaneousLights",static:!1,private:!1,access:{has:e=>"maxSimultaneousLights"in e,get:e=>e.maxSimultaneousLights,set:(e,n)=>{e.maxSimultaneousLights=n}},metadata:S},wi,Vi),u(i,null,Yi,{kind:"accessor",name:"invertNormalMapX",static:!1,private:!1,access:{has:e=>"invertNormalMapX"in e,get:e=>e.invertNormalMapX,set:(e,n)=>{e.invertNormalMapX=n}},metadata:S},Xi,Ki),u(i,null,ji,{kind:"accessor",name:"invertNormalMapY",static:!1,private:!1,access:{has:e=>"invertNormalMapY"in e,get:e=>e.invertNormalMapY,set:(e,n)=>{e.invertNormalMapY=n}},metadata:S},Qi,Zi),u(i,null,Ji,{kind:"accessor",name:"twoSidedLighting",static:!1,private:!1,access:{has:e=>"twoSidedLighting"in e,get:e=>e.twoSidedLighting,set:(e,n)=>{e.twoSidedLighting=n}},metadata:S},$i,qi),u(i,null,ea,{kind:"accessor",name:"useAlphaFresnel",static:!1,private:!1,access:{has:e=>"useAlphaFresnel"in e,get:e=>e.useAlphaFresnel,set:(e,n)=>{e.useAlphaFresnel=n}},metadata:S},ta,sa),u(i,null,ia,{kind:"accessor",name:"useLinearAlphaFresnel",static:!1,private:!1,access:{has:e=>"useLinearAlphaFresnel"in e,get:e=>e.useLinearAlphaFresnel,set:(e,n)=>{e.useLinearAlphaFresnel=n}},metadata:S},aa,ra),u(i,null,la,{kind:"accessor",name:"environmentBRDFTexture",static:!1,private:!1,access:{has:e=>"environmentBRDFTexture"in e,get:e=>e.environmentBRDFTexture,set:(e,n)=>{e.environmentBRDFTexture=n}},metadata:S},na,ua),u(i,null,ca,{kind:"accessor",name:"forceNormalForward",static:!1,private:!1,access:{has:e=>"forceNormalForward"in e,get:e=>e.forceNormalForward,set:(e,n)=>{e.forceNormalForward=n}},metadata:S},oa,ha),u(i,null,_a,{kind:"accessor",name:"enableSpecularAntiAliasing",static:!1,private:!1,access:{has:e=>"enableSpecularAntiAliasing"in e,get:e=>e.enableSpecularAntiAliasing,set:(e,n)=>{e.enableSpecularAntiAliasing=n}},metadata:S},Ta,fa),u(i,null,ma,{kind:"accessor",name:"useHorizonOcclusion",static:!1,private:!1,access:{has:e=>"useHorizonOcclusion"in e,get:e=>e.useHorizonOcclusion,set:(e,n)=>{e.useHorizonOcclusion=n}},metadata:S},Ea,xa),u(i,null,Ra,{kind:"accessor",name:"useRadianceOcclusion",static:!1,private:!1,access:{has:e=>"useRadianceOcclusion"in e,get:e=>e.useRadianceOcclusion,set:(e,n)=>{e.useRadianceOcclusion=n}},metadata:S},Aa,da),u(i,null,Sa,{kind:"accessor",name:"unlit",static:!1,private:!1,access:{has:e=>"unlit"in e,get:e=>e.unlit,set:(e,n)=>{e.unlit=n}},metadata:S},pa,ga),u(i,null,Ia,{kind:"accessor",name:"applyDecalMapAfterDetailMap",static:!1,private:!1,access:{has:e=>"applyDecalMapAfterDetailMap"in e,get:e=>e.applyDecalMapAfterDetailMap,set:(e,n)=>{e.applyDecalMapAfterDetailMap=n}},metadata:S},ba,Ca),S&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:S})})(),i.PBRMATERIAL_OPAQUE=he.PBRMATERIAL_OPAQUE,i.PBRMATERIAL_ALPHATEST=he.PBRMATERIAL_ALPHATEST,i.PBRMATERIAL_ALPHABLEND=he.PBRMATERIAL_ALPHABLEND,i.PBRMATERIAL_ALPHATESTANDBLEND=he.PBRMATERIAL_ALPHATESTANDBLEND,i.DEFAULT_AO_ON_ANALYTICAL_LIGHTS=he.DEFAULT_AO_ON_ANALYTICAL_LIGHTS,i})(),Oa=!1;function Ur(){Oa||(Oa=!0,dr(),Sr("BABYLON.PBRMaterial",kr))}function jr(){Ur()}export{kr as PBRMaterial,jr as RegisterPBRMaterial,Ur as RegisterPbrMaterial};
|