@fps-games/editor-deployment 0.2.3-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (533) hide show
  1. package/bin/fps-editor-agent.mjs +5 -0
  2. package/bin/fps-editor-prepare.mjs +5 -0
  3. package/bin/fps-editor-project.mjs +18 -0
  4. package/bin/fps-editor-server.mjs +2 -0
  5. package/licenses/THIRD_PARTY_NOTICES.txt +7 -0
  6. package/manifest.json +2688 -0
  7. package/npm-shrinkwrap.json +21 -0
  8. package/package.json +44 -0
  9. package/public/assets/abstractAudioBus-BRAC2GY2.js +1 -0
  10. package/public/assets/animation-C6iNAO1g.js +1 -0
  11. package/public/assets/animation-C6iNAO1g.js.br +0 -0
  12. package/public/assets/animation-C6iNAO1g.js.gz +0 -0
  13. package/public/assets/animationGroup-C74XVFRE.js +1 -0
  14. package/public/assets/animationGroup-C74XVFRE.js.br +0 -0
  15. package/public/assets/animationGroup-C74XVFRE.js.gz +0 -0
  16. package/public/assets/arcRotateCamera-CIQYNBBJ.js +1 -0
  17. package/public/assets/arcRotateCamera-CIQYNBBJ.js.br +0 -0
  18. package/public/assets/arcRotateCamera-CIQYNBBJ.js.gz +0 -0
  19. package/public/assets/babylon-core-PuGyjHMj.js +13882 -0
  20. package/public/assets/babylon-core-PuGyjHMj.js.br +0 -0
  21. package/public/assets/babylon-core-PuGyjHMj.js.gz +0 -0
  22. package/public/assets/babylon-core-S0gBQJVe.js +1 -0
  23. package/public/assets/babylon-core-S0gBQJVe.js.br +0 -0
  24. package/public/assets/babylon-core-S0gBQJVe.js.gz +0 -0
  25. package/public/assets/basisTextureLoader-BdapVvhf.js +1 -0
  26. package/public/assets/basisTextureLoader-BdapVvhf.js.br +0 -0
  27. package/public/assets/basisTextureLoader-BdapVvhf.js.gz +0 -0
  28. package/public/assets/bumpVertex-DMhnr4dz.js +173 -0
  29. package/public/assets/bumpVertex-DMhnr4dz.js.br +0 -0
  30. package/public/assets/bumpVertex-DMhnr4dz.js.gz +0 -0
  31. package/public/assets/bumpVertex-DpGOKCkn.js +177 -0
  32. package/public/assets/bumpVertex-DpGOKCkn.js.br +0 -0
  33. package/public/assets/bumpVertex-DpGOKCkn.js.gz +0 -0
  34. package/public/assets/chromaticAberration.fragment-BgX-2zxS.js +7 -0
  35. package/public/assets/chromaticAberration.fragment-BgX-2zxS.js.br +0 -0
  36. package/public/assets/chromaticAberration.fragment-BgX-2zxS.js.gz +0 -0
  37. package/public/assets/chromaticAberration.fragment-D7t6Txg4.js +6 -0
  38. package/public/assets/chromaticAberration.fragment-D7t6Txg4.js.br +0 -0
  39. package/public/assets/chromaticAberration.fragment-D7t6Txg4.js.gz +0 -0
  40. package/public/assets/circleOfConfusion.fragment-D1RtHaPm.js +17 -0
  41. package/public/assets/circleOfConfusion.fragment-D1RtHaPm.js.br +0 -0
  42. package/public/assets/circleOfConfusion.fragment-D1RtHaPm.js.gz +0 -0
  43. package/public/assets/circleOfConfusion.fragment-D8geMRma.js +17 -0
  44. package/public/assets/circleOfConfusion.fragment-D8geMRma.js.br +0 -0
  45. package/public/assets/circleOfConfusion.fragment-D8geMRma.js.gz +0 -0
  46. package/public/assets/clipPlaneFragment-Bgl3Usc4.js +46 -0
  47. package/public/assets/clipPlaneFragment-Bgl3Usc4.js.br +0 -0
  48. package/public/assets/clipPlaneFragment-Bgl3Usc4.js.gz +0 -0
  49. package/public/assets/clipPlaneVertex-BxK9aoI2.js +177 -0
  50. package/public/assets/clipPlaneVertex-BxK9aoI2.js.br +0 -0
  51. package/public/assets/clipPlaneVertex-BxK9aoI2.js.gz +0 -0
  52. package/public/assets/color.fragment-BUdIBar6.js +20 -0
  53. package/public/assets/color.fragment-BUdIBar6.js.br +0 -0
  54. package/public/assets/color.fragment-BUdIBar6.js.gz +0 -0
  55. package/public/assets/color.fragment-CDn4ZgkT.js +21 -0
  56. package/public/assets/color.fragment-CDn4ZgkT.js.br +0 -0
  57. package/public/assets/color.fragment-CDn4ZgkT.js.gz +0 -0
  58. package/public/assets/color.vertex-CaMOSKlC.js +39 -0
  59. package/public/assets/color.vertex-CaMOSKlC.js.br +5 -0
  60. package/public/assets/color.vertex-CaMOSKlC.js.gz +0 -0
  61. package/public/assets/color.vertex-dgbB6mhK.js +32 -0
  62. package/public/assets/color.vertex-dgbB6mhK.js.br +0 -0
  63. package/public/assets/color.vertex-dgbB6mhK.js.gz +0 -0
  64. package/public/assets/dds-3J0FZYX1.js +1 -0
  65. package/public/assets/dds-3J0FZYX1.js.br +0 -0
  66. package/public/assets/dds-3J0FZYX1.js.gz +0 -0
  67. package/public/assets/ddsTextureLoader-s5HptTVZ.js +1 -0
  68. package/public/assets/ddsTextureLoader-s5HptTVZ.js.br +0 -0
  69. package/public/assets/ddsTextureLoader-s5HptTVZ.js.gz +0 -0
  70. package/public/assets/default.fragment-C4xg7O-P.js +526 -0
  71. package/public/assets/default.fragment-C4xg7O-P.js.br +0 -0
  72. package/public/assets/default.fragment-C4xg7O-P.js.gz +0 -0
  73. package/public/assets/default.fragment-C4zjkcFb.js +468 -0
  74. package/public/assets/default.fragment-C4zjkcFb.js.br +0 -0
  75. package/public/assets/default.fragment-C4zjkcFb.js.gz +0 -0
  76. package/public/assets/default.vertex-A8wQopNr.js +193 -0
  77. package/public/assets/default.vertex-A8wQopNr.js.br +0 -0
  78. package/public/assets/default.vertex-A8wQopNr.js.gz +0 -0
  79. package/public/assets/default.vertex-YrvIUn4x.js +181 -0
  80. package/public/assets/default.vertex-YrvIUn4x.js.br +0 -0
  81. package/public/assets/default.vertex-YrvIUn4x.js.gz +0 -0
  82. package/public/assets/defaultUboDeclaration-C8GCosBM.js +5 -0
  83. package/public/assets/defaultUboDeclaration-C8GCosBM.js.br +0 -0
  84. package/public/assets/defaultUboDeclaration-C8GCosBM.js.gz +0 -0
  85. package/public/assets/defaultUboDeclaration-D26o_DDO.js +7 -0
  86. package/public/assets/defaultUboDeclaration-D26o_DDO.js.br +0 -0
  87. package/public/assets/defaultUboDeclaration-D26o_DDO.js.gz +0 -0
  88. package/public/assets/depth.fragment-Bn8G24s-.js +40 -0
  89. package/public/assets/depth.fragment-Bn8G24s-.js.br +4 -0
  90. package/public/assets/depth.fragment-Bn8G24s-.js.gz +0 -0
  91. package/public/assets/depth.vertex-B2lrdlJh.js +57 -0
  92. package/public/assets/depth.vertex-B2lrdlJh.js.br +0 -0
  93. package/public/assets/depth.vertex-B2lrdlJh.js.gz +0 -0
  94. package/public/assets/depthBoxBlur.fragment-BtTv8wid.js +5 -0
  95. package/public/assets/depthBoxBlur.fragment-BtTv8wid.js.br +0 -0
  96. package/public/assets/depthBoxBlur.fragment-BtTv8wid.js.gz +0 -0
  97. package/public/assets/depthBoxBlur.fragment-DViDG6Vb.js +6 -0
  98. package/public/assets/depthBoxBlur.fragment-DViDG6Vb.js.br +0 -0
  99. package/public/assets/depthBoxBlur.fragment-DViDG6Vb.js.gz +0 -0
  100. package/public/assets/depthOfFieldMerge.fragment-DCspcdWZ.js +26 -0
  101. package/public/assets/depthOfFieldMerge.fragment-DCspcdWZ.js.br +0 -0
  102. package/public/assets/depthOfFieldMerge.fragment-DCspcdWZ.js.gz +0 -0
  103. package/public/assets/depthOfFieldMerge.fragment-Ds-g4Ln8.js +21 -0
  104. package/public/assets/depthOfFieldMerge.fragment-Ds-g4Ln8.js.br +0 -0
  105. package/public/assets/depthOfFieldMerge.fragment-Ds-g4Ln8.js.gz +0 -0
  106. package/public/assets/dynamicTexture-Cuby-VOT.js +1329 -0
  107. package/public/assets/dynamicTexture-Cuby-VOT.js.br +0 -0
  108. package/public/assets/dynamicTexture-Cuby-VOT.js.gz +0 -0
  109. package/public/assets/easing-DbzzrXOl.js +1 -0
  110. package/public/assets/easing-DbzzrXOl.js.br +0 -0
  111. package/public/assets/easing-DbzzrXOl.js.gz +0 -0
  112. package/public/assets/editor-core-plugin-host-c2002442.js +1 -0
  113. package/public/assets/editor-core-plugin-host-c2002442.js.br +0 -0
  114. package/public/assets/editor-core-plugin-host-c2002442.js.gz +0 -0
  115. package/public/assets/exrTextureLoader-D39k4eK_.js +1 -0
  116. package/public/assets/exrTextureLoader-D39k4eK_.js.br +0 -0
  117. package/public/assets/exrTextureLoader-D39k4eK_.js.gz +0 -0
  118. package/public/assets/flowGraphArrayIndexBlock-C8nTWR8h.js +1 -0
  119. package/public/assets/flowGraphArrayIndexBlock-C8nTWR8h.js.br +0 -0
  120. package/public/assets/flowGraphArrayIndexBlock-C8nTWR8h.js.gz +0 -0
  121. package/public/assets/flowGraphBezierCurveEasingBlock-Izh7s0Zh.js +1 -0
  122. package/public/assets/flowGraphBezierCurveEasingBlock-Izh7s0Zh.js.br +0 -0
  123. package/public/assets/flowGraphBezierCurveEasingBlock-Izh7s0Zh.js.gz +0 -0
  124. package/public/assets/flowGraphBinaryOperationBlock-BRfalQP5.js +1 -0
  125. package/public/assets/flowGraphBinaryOperationBlock-BRfalQP5.js.br +0 -0
  126. package/public/assets/flowGraphBinaryOperationBlock-BRfalQP5.js.gz +0 -0
  127. package/public/assets/flowGraphBranchBlock-CV_leJX3.js +1 -0
  128. package/public/assets/flowGraphBranchBlock-CV_leJX3.js.br +0 -0
  129. package/public/assets/flowGraphBranchBlock-CV_leJX3.js.gz +0 -0
  130. package/public/assets/flowGraphCachedOperationBlock-BysRM-Ha.js +1 -0
  131. package/public/assets/flowGraphCachedOperationBlock-BysRM-Ha.js.br +2 -0
  132. package/public/assets/flowGraphCachedOperationBlock-BysRM-Ha.js.gz +0 -0
  133. package/public/assets/flowGraphCancelDelayBlock-BK6tDTGy.js +1 -0
  134. package/public/assets/flowGraphCancelDelayBlock-BK6tDTGy.js.br +0 -0
  135. package/public/assets/flowGraphCancelDelayBlock-BK6tDTGy.js.gz +0 -0
  136. package/public/assets/flowGraphCodeExecutionBlock-CQABvaP8.js +1 -0
  137. package/public/assets/flowGraphCodeExecutionBlock-CQABvaP8.js.br +0 -0
  138. package/public/assets/flowGraphCodeExecutionBlock-CQABvaP8.js.gz +0 -0
  139. package/public/assets/flowGraphConditionalDataBlock-D7OU_UOM.js +1 -0
  140. package/public/assets/flowGraphConditionalDataBlock-D7OU_UOM.js.br +0 -0
  141. package/public/assets/flowGraphConditionalDataBlock-D7OU_UOM.js.gz +0 -0
  142. package/public/assets/flowGraphConsoleLogBlock-BBxVDGOV.js +1 -0
  143. package/public/assets/flowGraphConsoleLogBlock-BBxVDGOV.js.br +0 -0
  144. package/public/assets/flowGraphConsoleLogBlock-BBxVDGOV.js.gz +0 -0
  145. package/public/assets/flowGraphConstantBlock-Cn3ZMGR0.js +1 -0
  146. package/public/assets/flowGraphConstantBlock-Cn3ZMGR0.js.br +0 -0
  147. package/public/assets/flowGraphConstantBlock-Cn3ZMGR0.js.gz +0 -0
  148. package/public/assets/flowGraphContextBlock-BS3b2XbE.js +1 -0
  149. package/public/assets/flowGraphContextBlock-BS3b2XbE.js.br +0 -0
  150. package/public/assets/flowGraphContextBlock-BS3b2XbE.js.gz +0 -0
  151. package/public/assets/flowGraphCounterBlock-xdcRCw4l.js +1 -0
  152. package/public/assets/flowGraphCounterBlock-xdcRCw4l.js.br +0 -0
  153. package/public/assets/flowGraphCounterBlock-xdcRCw4l.js.gz +0 -0
  154. package/public/assets/flowGraphDataSwitchBlock-dY8TSZtd.js +1 -0
  155. package/public/assets/flowGraphDataSwitchBlock-dY8TSZtd.js.br +0 -0
  156. package/public/assets/flowGraphDataSwitchBlock-dY8TSZtd.js.gz +0 -0
  157. package/public/assets/flowGraphDebounceBlock-Q_f2x-ID.js +1 -0
  158. package/public/assets/flowGraphDebounceBlock-Q_f2x-ID.js.br +0 -0
  159. package/public/assets/flowGraphDebounceBlock-Q_f2x-ID.js.gz +0 -0
  160. package/public/assets/flowGraphDoNBlock-COo31G00.js +1 -0
  161. package/public/assets/flowGraphDoNBlock-COo31G00.js.br +0 -0
  162. package/public/assets/flowGraphDoNBlock-COo31G00.js.gz +0 -0
  163. package/public/assets/flowGraphEasingBlock-jGW-fKIB.js +1 -0
  164. package/public/assets/flowGraphEasingBlock-jGW-fKIB.js.br +0 -0
  165. package/public/assets/flowGraphEasingBlock-jGW-fKIB.js.gz +0 -0
  166. package/public/assets/flowGraphFlipFlopBlock-B8znf-3o.js +1 -0
  167. package/public/assets/flowGraphFlipFlopBlock-B8znf-3o.js.br +0 -0
  168. package/public/assets/flowGraphFlipFlopBlock-B8znf-3o.js.gz +0 -0
  169. package/public/assets/flowGraphForLoopBlock-UxZSh8US.js +1 -0
  170. package/public/assets/flowGraphForLoopBlock-UxZSh8US.js.br +0 -0
  171. package/public/assets/flowGraphForLoopBlock-UxZSh8US.js.gz +0 -0
  172. package/public/assets/flowGraphFunctionReferenceBlock-c3ZQWBhk.js +1 -0
  173. package/public/assets/flowGraphFunctionReferenceBlock-c3ZQWBhk.js.br +0 -0
  174. package/public/assets/flowGraphFunctionReferenceBlock-c3ZQWBhk.js.gz +0 -0
  175. package/public/assets/flowGraphGetAssetBlock-B3zYUZmJ.js +1 -0
  176. package/public/assets/flowGraphGetAssetBlock-B3zYUZmJ.js.br +0 -0
  177. package/public/assets/flowGraphGetAssetBlock-B3zYUZmJ.js.gz +0 -0
  178. package/public/assets/flowGraphGetPropertyBlock-D--vcmMS.js +1 -0
  179. package/public/assets/flowGraphGetPropertyBlock-D--vcmMS.js.br +0 -0
  180. package/public/assets/flowGraphGetPropertyBlock-D--vcmMS.js.gz +0 -0
  181. package/public/assets/flowGraphGetVariableBlock-BkCEyiL6.js +1 -0
  182. package/public/assets/flowGraphGetVariableBlock-BkCEyiL6.js.br +0 -0
  183. package/public/assets/flowGraphGetVariableBlock-BkCEyiL6.js.gz +0 -0
  184. package/public/assets/flowGraphIndexOfBlock-C4ipR7YB.js +1 -0
  185. package/public/assets/flowGraphIndexOfBlock-C4ipR7YB.js.br +0 -0
  186. package/public/assets/flowGraphIndexOfBlock-C4ipR7YB.js.gz +0 -0
  187. package/public/assets/flowGraphInterpolationBlock-DuRc3LX7.js +1 -0
  188. package/public/assets/flowGraphInterpolationBlock-DuRc3LX7.js.br +0 -0
  189. package/public/assets/flowGraphInterpolationBlock-DuRc3LX7.js.gz +0 -0
  190. package/public/assets/flowGraphJsonPointerParserBlock-urEWktqi.js +1 -0
  191. package/public/assets/flowGraphJsonPointerParserBlock-urEWktqi.js.br +0 -0
  192. package/public/assets/flowGraphJsonPointerParserBlock-urEWktqi.js.gz +0 -0
  193. package/public/assets/flowGraphMathBlocks-CGTCQVqz.js +1 -0
  194. package/public/assets/flowGraphMathBlocks-CGTCQVqz.js.br +0 -0
  195. package/public/assets/flowGraphMathBlocks-CGTCQVqz.js.gz +0 -0
  196. package/public/assets/flowGraphMathCombineExtractBlocks-DDHGbRPt.js +1 -0
  197. package/public/assets/flowGraphMathCombineExtractBlocks-DDHGbRPt.js.br +0 -0
  198. package/public/assets/flowGraphMathCombineExtractBlocks-DDHGbRPt.js.gz +0 -0
  199. package/public/assets/flowGraphMatrixMathBlocks-Bwp1BysB.js +1 -0
  200. package/public/assets/flowGraphMatrixMathBlocks-Bwp1BysB.js.br +0 -0
  201. package/public/assets/flowGraphMatrixMathBlocks-Bwp1BysB.js.gz +0 -0
  202. package/public/assets/flowGraphMeshPickEventBlock-2wkqhQCG.js +1 -0
  203. package/public/assets/flowGraphMeshPickEventBlock-2wkqhQCG.js.br +0 -0
  204. package/public/assets/flowGraphMeshPickEventBlock-2wkqhQCG.js.gz +0 -0
  205. package/public/assets/flowGraphMultiGateBlock-BuKmvqC8.js +1 -0
  206. package/public/assets/flowGraphMultiGateBlock-BuKmvqC8.js.br +0 -0
  207. package/public/assets/flowGraphMultiGateBlock-BuKmvqC8.js.gz +0 -0
  208. package/public/assets/flowGraphPauseAnimationBlock-T_-VP-t5.js +1 -0
  209. package/public/assets/flowGraphPauseAnimationBlock-T_-VP-t5.js.br +0 -0
  210. package/public/assets/flowGraphPauseAnimationBlock-T_-VP-t5.js.gz +0 -0
  211. package/public/assets/flowGraphPlayAnimationBlock-DDVrE__n.js +1 -0
  212. package/public/assets/flowGraphPlayAnimationBlock-DDVrE__n.js.br +0 -0
  213. package/public/assets/flowGraphPlayAnimationBlock-DDVrE__n.js.gz +0 -0
  214. package/public/assets/flowGraphPointerOutEventBlock-Cx15Sf5R.js +1 -0
  215. package/public/assets/flowGraphPointerOutEventBlock-Cx15Sf5R.js.br +0 -0
  216. package/public/assets/flowGraphPointerOutEventBlock-Cx15Sf5R.js.gz +0 -0
  217. package/public/assets/flowGraphPointerOverEventBlock-DzzHa-dN.js +1 -0
  218. package/public/assets/flowGraphPointerOverEventBlock-DzzHa-dN.js.br +0 -0
  219. package/public/assets/flowGraphPointerOverEventBlock-DzzHa-dN.js.gz +0 -0
  220. package/public/assets/flowGraphReceiveCustomEventBlock-DKfLODu3.js +1 -0
  221. package/public/assets/flowGraphReceiveCustomEventBlock-DKfLODu3.js.br +0 -0
  222. package/public/assets/flowGraphReceiveCustomEventBlock-DKfLODu3.js.gz +0 -0
  223. package/public/assets/flowGraphSceneReadyEventBlock-ClJu3s64.js +1 -0
  224. package/public/assets/flowGraphSceneReadyEventBlock-ClJu3s64.js.br +0 -0
  225. package/public/assets/flowGraphSceneReadyEventBlock-ClJu3s64.js.gz +0 -0
  226. package/public/assets/flowGraphSceneTickEventBlock-3ZNr4eqw.js +1 -0
  227. package/public/assets/flowGraphSceneTickEventBlock-3ZNr4eqw.js.br +0 -0
  228. package/public/assets/flowGraphSceneTickEventBlock-3ZNr4eqw.js.gz +0 -0
  229. package/public/assets/flowGraphSendCustomEventBlock-CdKQeuma.js +1 -0
  230. package/public/assets/flowGraphSendCustomEventBlock-CdKQeuma.js.br +0 -0
  231. package/public/assets/flowGraphSendCustomEventBlock-CdKQeuma.js.gz +0 -0
  232. package/public/assets/flowGraphSequenceBlock-D0-_bFV3.js +1 -0
  233. package/public/assets/flowGraphSequenceBlock-D0-_bFV3.js.br +0 -0
  234. package/public/assets/flowGraphSequenceBlock-D0-_bFV3.js.gz +0 -0
  235. package/public/assets/flowGraphSetDelayBlock-B8946WOc.js +1 -0
  236. package/public/assets/flowGraphSetDelayBlock-B8946WOc.js.br +0 -0
  237. package/public/assets/flowGraphSetDelayBlock-B8946WOc.js.gz +0 -0
  238. package/public/assets/flowGraphSetPropertyBlock-Cx0IyW-a.js +1 -0
  239. package/public/assets/flowGraphSetPropertyBlock-Cx0IyW-a.js.br +0 -0
  240. package/public/assets/flowGraphSetPropertyBlock-Cx0IyW-a.js.gz +0 -0
  241. package/public/assets/flowGraphSetVariableBlock-0dns_CH6.js +1 -0
  242. package/public/assets/flowGraphSetVariableBlock-0dns_CH6.js.br +0 -0
  243. package/public/assets/flowGraphSetVariableBlock-0dns_CH6.js.gz +0 -0
  244. package/public/assets/flowGraphStopAnimationBlock-z4ou311H.js +1 -0
  245. package/public/assets/flowGraphStopAnimationBlock-z4ou311H.js.br +0 -0
  246. package/public/assets/flowGraphStopAnimationBlock-z4ou311H.js.gz +0 -0
  247. package/public/assets/flowGraphSwitchBlock-E7meS39u.js +1 -0
  248. package/public/assets/flowGraphSwitchBlock-E7meS39u.js.br +0 -0
  249. package/public/assets/flowGraphSwitchBlock-E7meS39u.js.gz +0 -0
  250. package/public/assets/flowGraphThrottleBlock-CldHJDs6.js +1 -0
  251. package/public/assets/flowGraphThrottleBlock-CldHJDs6.js.br +0 -0
  252. package/public/assets/flowGraphThrottleBlock-CldHJDs6.js.gz +0 -0
  253. package/public/assets/flowGraphTransformCoordinatesSystemBlock-pYdpcwK7.js +1 -0
  254. package/public/assets/flowGraphTransformCoordinatesSystemBlock-pYdpcwK7.js.br +0 -0
  255. package/public/assets/flowGraphTransformCoordinatesSystemBlock-pYdpcwK7.js.gz +0 -0
  256. package/public/assets/flowGraphTypeToTypeBlocks-CYfvLPJ-.js +1 -0
  257. package/public/assets/flowGraphTypeToTypeBlocks-CYfvLPJ-.js.br +0 -0
  258. package/public/assets/flowGraphTypeToTypeBlocks-CYfvLPJ-.js.gz +0 -0
  259. package/public/assets/flowGraphUnaryOperationBlock-s-kJ99D8.js +1 -0
  260. package/public/assets/flowGraphUnaryOperationBlock-s-kJ99D8.js.br +0 -0
  261. package/public/assets/flowGraphUnaryOperationBlock-s-kJ99D8.js.gz +0 -0
  262. package/public/assets/flowGraphVectorMathBlocks-D7iofIoY.js +1 -0
  263. package/public/assets/flowGraphVectorMathBlocks-D7iofIoY.js.br +0 -0
  264. package/public/assets/flowGraphVectorMathBlocks-D7iofIoY.js.gz +0 -0
  265. package/public/assets/flowGraphWaitAllBlock-CAW7HgUP.js +1 -0
  266. package/public/assets/flowGraphWaitAllBlock-CAW7HgUP.js.br +0 -0
  267. package/public/assets/flowGraphWaitAllBlock-CAW7HgUP.js.gz +0 -0
  268. package/public/assets/flowGraphWhileLoopBlock-DRP9_Zd1.js +1 -0
  269. package/public/assets/flowGraphWhileLoopBlock-DRP9_Zd1.js.br +0 -0
  270. package/public/assets/flowGraphWhileLoopBlock-DRP9_Zd1.js.gz +0 -0
  271. package/public/assets/fogFragmentDeclaration-CzUy86ul.js +22 -0
  272. package/public/assets/fogFragmentDeclaration-CzUy86ul.js.br +0 -0
  273. package/public/assets/fogFragmentDeclaration-CzUy86ul.js.gz +0 -0
  274. package/public/assets/fogFragmentDeclaration-kfcrkpgB.js +23 -0
  275. package/public/assets/fogFragmentDeclaration-kfcrkpgB.js.br +0 -0
  276. package/public/assets/fogFragmentDeclaration-kfcrkpgB.js.gz +0 -0
  277. package/public/assets/glowBlurPostProcess.fragment-CS_rTtUL.js +7 -0
  278. package/public/assets/glowBlurPostProcess.fragment-CS_rTtUL.js.br +0 -0
  279. package/public/assets/glowBlurPostProcess.fragment-CS_rTtUL.js.gz +0 -0
  280. package/public/assets/glowBlurPostProcess.fragment-G_xfSiIr.js +7 -0
  281. package/public/assets/glowBlurPostProcess.fragment-G_xfSiIr.js.br +0 -0
  282. package/public/assets/glowBlurPostProcess.fragment-G_xfSiIr.js.gz +0 -0
  283. package/public/assets/glowMapGeneration.fragment-DwJ3bpr6.js +63 -0
  284. package/public/assets/glowMapGeneration.fragment-DwJ3bpr6.js.br +0 -0
  285. package/public/assets/glowMapGeneration.fragment-DwJ3bpr6.js.gz +0 -0
  286. package/public/assets/glowMapGeneration.fragment-mDEHNZRi.js +63 -0
  287. package/public/assets/glowMapGeneration.fragment-mDEHNZRi.js.br +0 -0
  288. package/public/assets/glowMapGeneration.fragment-mDEHNZRi.js.gz +0 -0
  289. package/public/assets/glowMapGeneration.vertex-BACa9-r4.js +75 -0
  290. package/public/assets/glowMapGeneration.vertex-BACa9-r4.js.br +0 -0
  291. package/public/assets/glowMapGeneration.vertex-BACa9-r4.js.gz +0 -0
  292. package/public/assets/glowMapGeneration.vertex-mAWUJxSB.js +75 -0
  293. package/public/assets/glowMapGeneration.vertex-mAWUJxSB.js.br +3 -0
  294. package/public/assets/glowMapGeneration.vertex-mAWUJxSB.js.gz +0 -0
  295. package/public/assets/glowMapMerge.fragment-0Im35OVD.js +23 -0
  296. package/public/assets/glowMapMerge.fragment-0Im35OVD.js.br +0 -0
  297. package/public/assets/glowMapMerge.fragment-0Im35OVD.js.gz +0 -0
  298. package/public/assets/glowMapMerge.fragment-BXHfrWgL.js +25 -0
  299. package/public/assets/glowMapMerge.fragment-BXHfrWgL.js.br +0 -0
  300. package/public/assets/glowMapMerge.fragment-BXHfrWgL.js.gz +0 -0
  301. package/public/assets/glowMapMerge.vertex-8A2ntYoS.js +7 -0
  302. package/public/assets/glowMapMerge.vertex-8A2ntYoS.js.br +0 -0
  303. package/public/assets/glowMapMerge.vertex-8A2ntYoS.js.gz +0 -0
  304. package/public/assets/glowMapMerge.vertex-Cnm-5WLT.js +8 -0
  305. package/public/assets/glowMapMerge.vertex-Cnm-5WLT.js.br +0 -0
  306. package/public/assets/glowMapMerge.vertex-Cnm-5WLT.js.gz +0 -0
  307. package/public/assets/grain.fragment-BMGi-Hgp.js +6 -0
  308. package/public/assets/grain.fragment-BMGi-Hgp.js.br +0 -0
  309. package/public/assets/grain.fragment-BMGi-Hgp.js.gz +0 -0
  310. package/public/assets/grain.fragment-CH9zg05c.js +5 -0
  311. package/public/assets/grain.fragment-CH9zg05c.js.br +0 -0
  312. package/public/assets/grain.fragment-CH9zg05c.js.gz +0 -0
  313. package/public/assets/harmonicsFunctions-BQTTvws3.js +192 -0
  314. package/public/assets/harmonicsFunctions-BQTTvws3.js.br +0 -0
  315. package/public/assets/harmonicsFunctions-BQTTvws3.js.gz +0 -0
  316. package/public/assets/harmonicsFunctions-DtIiYWL1.js +189 -0
  317. package/public/assets/harmonicsFunctions-DtIiYWL1.js.br +0 -0
  318. package/public/assets/harmonicsFunctions-DtIiYWL1.js.gz +0 -0
  319. package/public/assets/hdrTextureLoader-Dqvpv0kr.js +2 -0
  320. package/public/assets/hdrTextureLoader-Dqvpv0kr.js.br +0 -0
  321. package/public/assets/hdrTextureLoader-Dqvpv0kr.js.gz +0 -0
  322. package/public/assets/iesTextureLoader-B8AoKSG2.js +2 -0
  323. package/public/assets/iesTextureLoader-B8AoKSG2.js.br +0 -0
  324. package/public/assets/iesTextureLoader-B8AoKSG2.js.gz +0 -0
  325. package/public/assets/index-CiIoJ8v1.js +4 -0
  326. package/public/assets/index-CiIoJ8v1.js.br +0 -0
  327. package/public/assets/index-CiIoJ8v1.js.gz +0 -0
  328. package/public/assets/index-Dhf9rSmv.js +1 -0
  329. package/public/assets/index-Dhf9rSmv.js.br +0 -0
  330. package/public/assets/index-Dhf9rSmv.js.gz +0 -0
  331. package/public/assets/instancesDeclaration-B2a0VuuR.js +23 -0
  332. package/public/assets/instancesDeclaration-B2a0VuuR.js.br +0 -0
  333. package/public/assets/instancesDeclaration-B2a0VuuR.js.gz +0 -0
  334. package/public/assets/ktxTextureLoader-DTr7AKqG.js +1 -0
  335. package/public/assets/ktxTextureLoader-DTr7AKqG.js.br +0 -0
  336. package/public/assets/ktxTextureLoader-DTr7AKqG.js.gz +0 -0
  337. package/public/assets/lazy-Cj-01uhW.js +2 -0
  338. package/public/assets/lazy-Cj-01uhW.js.br +0 -0
  339. package/public/assets/lazy-Cj-01uhW.js.gz +0 -0
  340. package/public/assets/lod.fragment-BuvQbBhE.js +3 -0
  341. package/public/assets/lod.fragment-BuvQbBhE.js.br +0 -0
  342. package/public/assets/lod.fragment-BuvQbBhE.js.gz +0 -0
  343. package/public/assets/lod.fragment-Cp0eqGjl.js +3 -0
  344. package/public/assets/lod.fragment-Cp0eqGjl.js.br +3 -0
  345. package/public/assets/lod.fragment-Cp0eqGjl.js.gz +0 -0
  346. package/public/assets/lodCube.fragment-CI1eTppS.js +22 -0
  347. package/public/assets/lodCube.fragment-CI1eTppS.js.br +2 -0
  348. package/public/assets/lodCube.fragment-CI1eTppS.js.gz +0 -0
  349. package/public/assets/lodCube.fragment-yDzV1teg.js +22 -0
  350. package/public/assets/lodCube.fragment-yDzV1teg.js.br +0 -0
  351. package/public/assets/lodCube.fragment-yDzV1teg.js.gz +0 -0
  352. package/public/assets/logDepthDeclaration-CeLLOhuK.js +4 -0
  353. package/public/assets/logDepthDeclaration-XDsVKoT0.js +4 -0
  354. package/public/assets/logDepthFragment-BPP-rBiT.js +4 -0
  355. package/public/assets/logDepthFragment-BPP-rBiT.js.br +0 -0
  356. package/public/assets/logDepthFragment-BPP-rBiT.js.gz +0 -0
  357. package/public/assets/logDepthFragment-CDaMyvfH.js +4 -0
  358. package/public/assets/logDepthVertex-CkFa6uAf.js +4 -0
  359. package/public/assets/logDepthVertex-CkFa6uAf.js.br +0 -0
  360. package/public/assets/logDepthVertex-CkFa6uAf.js.gz +0 -0
  361. package/public/assets/logDepthVertex-H6E8NLz1.js +4 -0
  362. package/public/assets/logDepthVertex-H6E8NLz1.js.br +1 -0
  363. package/public/assets/logDepthVertex-H6E8NLz1.js.gz +0 -0
  364. package/public/assets/mainUVVaryingDeclaration-DdwP8xi_.js +4 -0
  365. package/public/assets/mainUVVaryingDeclaration-OBB3LR8s.js +4 -0
  366. package/public/assets/mesh.vertexData.functions-BXkNVxNr.js +1 -0
  367. package/public/assets/mesh.vertexData.functions-BXkNVxNr.js.br +0 -0
  368. package/public/assets/mesh.vertexData.functions-BXkNVxNr.js.gz +0 -0
  369. package/public/assets/meshUboDeclaration-Cr5YhBB1.js +13 -0
  370. package/public/assets/meshUboDeclaration-Cr5YhBB1.js.br +0 -0
  371. package/public/assets/meshUboDeclaration-Cr5YhBB1.js.gz +0 -0
  372. package/public/assets/meshUboDeclaration-Uj1CsoJP.js +13 -0
  373. package/public/assets/meshUboDeclaration-Uj1CsoJP.js.br +0 -0
  374. package/public/assets/meshUboDeclaration-Uj1CsoJP.js.gz +0 -0
  375. package/public/assets/morphTargetsVertex-B9xWvV_u.js +100 -0
  376. package/public/assets/morphTargetsVertex-B9xWvV_u.js.br +0 -0
  377. package/public/assets/morphTargetsVertex-B9xWvV_u.js.gz +0 -0
  378. package/public/assets/oitFinalSimpleBlend.fragment-4NtZHGOG.js +3 -0
  379. package/public/assets/oitFinalSimpleBlend.fragment-4NtZHGOG.js.br +0 -0
  380. package/public/assets/oitFinalSimpleBlend.fragment-4NtZHGOG.js.gz +0 -0
  381. package/public/assets/oitFinalSimpleBlend.fragment-D8T6jyS0.js +2 -0
  382. package/public/assets/oitFinalSimpleBlend.fragment-D8T6jyS0.js.br +3 -0
  383. package/public/assets/oitFinalSimpleBlend.fragment-D8T6jyS0.js.gz +0 -0
  384. package/public/assets/oitFragment-CK8Y-Z-q.js +1202 -0
  385. package/public/assets/oitFragment-CK8Y-Z-q.js.br +0 -0
  386. package/public/assets/oitFragment-CK8Y-Z-q.js.gz +0 -0
  387. package/public/assets/oitFragment-ZUHesxAg.js +1077 -0
  388. package/public/assets/oitFragment-ZUHesxAg.js.br +0 -0
  389. package/public/assets/oitFragment-ZUHesxAg.js.gz +0 -0
  390. package/public/assets/openpbrMaterial-Dc7VVRl6.js +2 -0
  391. package/public/assets/openpbrMaterial-Dc7VVRl6.js.br +0 -0
  392. package/public/assets/openpbrMaterial-Dc7VVRl6.js.gz +0 -0
  393. package/public/assets/outline.fragment-BK0vgcx7.js +21 -0
  394. package/public/assets/outline.fragment-BK0vgcx7.js.br +0 -0
  395. package/public/assets/outline.fragment-BK0vgcx7.js.gz +0 -0
  396. package/public/assets/outline.fragment-DQK2JikO.js +18 -0
  397. package/public/assets/outline.fragment-DQK2JikO.js.br +0 -0
  398. package/public/assets/outline.fragment-DQK2JikO.js.gz +0 -0
  399. package/public/assets/outline.vertex-CHR7GZYH.js +47 -0
  400. package/public/assets/outline.vertex-CHR7GZYH.js.br +0 -0
  401. package/public/assets/outline.vertex-CHR7GZYH.js.gz +0 -0
  402. package/public/assets/outline.vertex-CKcILDiL.js +47 -0
  403. package/public/assets/outline.vertex-CKcILDiL.js.br +0 -0
  404. package/public/assets/outline.vertex-CKcILDiL.js.gz +0 -0
  405. package/public/assets/passCube.fragment-Ch6aeybh.js +23 -0
  406. package/public/assets/passCube.fragment-Ch6aeybh.js.br +0 -0
  407. package/public/assets/passCube.fragment-Ch6aeybh.js.gz +0 -0
  408. package/public/assets/passCube.fragment-wvJ8mb6_.js +23 -0
  409. package/public/assets/passCube.fragment-wvJ8mb6_.js.br +0 -0
  410. package/public/assets/passCube.fragment-wvJ8mb6_.js.gz +0 -0
  411. package/public/assets/pbr.fragment-Bo4XM7Ct.js +3277 -0
  412. package/public/assets/pbr.fragment-Bo4XM7Ct.js.br +0 -0
  413. package/public/assets/pbr.fragment-Bo4XM7Ct.js.gz +0 -0
  414. package/public/assets/pbr.fragment-T2xKI2J0.js +3327 -0
  415. package/public/assets/pbr.fragment-T2xKI2J0.js.br +0 -0
  416. package/public/assets/pbr.fragment-T2xKI2J0.js.gz +0 -0
  417. package/public/assets/pbr.vertex-BezAbBHx.js +357 -0
  418. package/public/assets/pbr.vertex-BezAbBHx.js.br +0 -0
  419. package/public/assets/pbr.vertex-BezAbBHx.js.gz +0 -0
  420. package/public/assets/pbr.vertex-w2ZWBdHy.js +227 -0
  421. package/public/assets/pbr.vertex-w2ZWBdHy.js.br +0 -0
  422. package/public/assets/pbr.vertex-w2ZWBdHy.js.gz +0 -0
  423. package/public/assets/playable-sdk-zAYuBOLj.js +8 -0
  424. package/public/assets/playable-sdk-zAYuBOLj.js.br +0 -0
  425. package/public/assets/playable-sdk-zAYuBOLj.js.gz +0 -0
  426. package/public/assets/playable-standard-project-Brbyn9c4.js +5140 -0
  427. package/public/assets/playable-standard-project-Brbyn9c4.js.br +0 -0
  428. package/public/assets/playable-standard-project-Brbyn9c4.js.gz +0 -0
  429. package/public/assets/rgbdDecode.fragment-BQ16CsAv.js +5 -0
  430. package/public/assets/rgbdDecode.fragment-BQ16CsAv.js.br +4 -0
  431. package/public/assets/rgbdDecode.fragment-BQ16CsAv.js.gz +0 -0
  432. package/public/assets/rgbdDecode.fragment-D_2CJy2O.js +5 -0
  433. package/public/assets/rgbdDecode.fragment-D_2CJy2O.js.br +0 -0
  434. package/public/assets/rgbdDecode.fragment-D_2CJy2O.js.gz +0 -0
  435. package/public/assets/rgbdEncode.fragment-CmDv6yEZ.js +5 -0
  436. package/public/assets/rgbdEncode.fragment-CmDv6yEZ.js.br +3 -0
  437. package/public/assets/rgbdEncode.fragment-CmDv6yEZ.js.gz +0 -0
  438. package/public/assets/rgbdEncode.fragment-QRg2h8KC.js +5 -0
  439. package/public/assets/rgbdEncode.fragment-QRg2h8KC.js.br +1 -0
  440. package/public/assets/rgbdEncode.fragment-QRg2h8KC.js.gz +0 -0
  441. package/public/assets/sceneLoader-CDreObGG.js +1 -0
  442. package/public/assets/sceneLoader-CDreObGG.js.br +0 -0
  443. package/public/assets/sceneLoader-CDreObGG.js.gz +0 -0
  444. package/public/assets/screenSpaceCurvature.fragment-BWdr_4iW.js +15 -0
  445. package/public/assets/screenSpaceCurvature.fragment-BWdr_4iW.js.br +0 -0
  446. package/public/assets/screenSpaceCurvature.fragment-BWdr_4iW.js.gz +0 -0
  447. package/public/assets/selection.fragment-CVXAuXcC.js +35 -0
  448. package/public/assets/selection.fragment-CVXAuXcC.js.br +0 -0
  449. package/public/assets/selection.fragment-CVXAuXcC.js.gz +0 -0
  450. package/public/assets/selection.fragment-DobH4NRw.js +35 -0
  451. package/public/assets/selection.fragment-DobH4NRw.js.br +0 -0
  452. package/public/assets/selection.fragment-DobH4NRw.js.gz +0 -0
  453. package/public/assets/selection.vertex-BUBv8X1j.js +74 -0
  454. package/public/assets/selection.vertex-BUBv8X1j.js.br +0 -0
  455. package/public/assets/selection.vertex-BUBv8X1j.js.gz +0 -0
  456. package/public/assets/selection.vertex-DlADXBtf.js +73 -0
  457. package/public/assets/selection.vertex-DlADXBtf.js.br +0 -0
  458. package/public/assets/selection.vertex-DlADXBtf.js.gz +0 -0
  459. package/public/assets/selectionOutline.fragment-CWpNrg8m.js +47 -0
  460. package/public/assets/selectionOutline.fragment-CWpNrg8m.js.br +0 -0
  461. package/public/assets/selectionOutline.fragment-CWpNrg8m.js.gz +0 -0
  462. package/public/assets/selectionOutline.fragment-DoKuUf2L.js +48 -0
  463. package/public/assets/selectionOutline.fragment-DoKuUf2L.js.br +0 -0
  464. package/public/assets/selectionOutline.fragment-DoKuUf2L.js.gz +0 -0
  465. package/public/assets/shadowMap.fragment-BEwhnKOg.js +78 -0
  466. package/public/assets/shadowMap.fragment-BEwhnKOg.js.br +0 -0
  467. package/public/assets/shadowMap.fragment-BEwhnKOg.js.gz +0 -0
  468. package/public/assets/shadowMap.fragment-CVar4C4N.js +79 -0
  469. package/public/assets/shadowMap.fragment-CVar4C4N.js.br +0 -0
  470. package/public/assets/shadowMap.fragment-CVar4C4N.js.gz +0 -0
  471. package/public/assets/shadowMap.vertex-ImOoSjTb.js +109 -0
  472. package/public/assets/shadowMap.vertex-ImOoSjTb.js.br +0 -0
  473. package/public/assets/shadowMap.vertex-ImOoSjTb.js.gz +0 -0
  474. package/public/assets/shadowMap.vertex-Q2d15P5z.js +119 -0
  475. package/public/assets/shadowMap.vertex-Q2d15P5z.js.br +0 -0
  476. package/public/assets/shadowMap.vertex-Q2d15P5z.js.gz +0 -0
  477. package/public/assets/shadowMapFragmentSoftTransparentShadow-BmxybqRD.js +4 -0
  478. package/public/assets/shadowMapFragmentSoftTransparentShadow-BmxybqRD.js.br +0 -0
  479. package/public/assets/shadowMapFragmentSoftTransparentShadow-BmxybqRD.js.gz +0 -0
  480. package/public/assets/shadowMapFragmentSoftTransparentShadow-D6ZvWsNy.js +4 -0
  481. package/public/assets/shadowMapFragmentSoftTransparentShadow-D6ZvWsNy.js.br +0 -0
  482. package/public/assets/shadowMapFragmentSoftTransparentShadow-D6ZvWsNy.js.gz +0 -0
  483. package/public/assets/sharpen.fragment-CI40r28S.js +8 -0
  484. package/public/assets/sharpen.fragment-CI40r28S.js.br +0 -0
  485. package/public/assets/sharpen.fragment-CI40r28S.js.gz +0 -0
  486. package/public/assets/textureMerger.fragment-BGsvQGn5.js +84 -0
  487. package/public/assets/textureMerger.fragment-BGsvQGn5.js.br +0 -0
  488. package/public/assets/textureMerger.fragment-BGsvQGn5.js.gz +0 -0
  489. package/public/assets/textureMerger.fragment-Q7yPwkGt.js +76 -0
  490. package/public/assets/textureMerger.fragment-Q7yPwkGt.js.br +0 -0
  491. package/public/assets/textureMerger.fragment-Q7yPwkGt.js.gz +0 -0
  492. package/public/assets/tgaTextureLoader-D7Pjisvo.js +1 -0
  493. package/public/assets/tgaTextureLoader-D7Pjisvo.js.br +0 -0
  494. package/public/assets/tgaTextureLoader-D7Pjisvo.js.gz +0 -0
  495. package/public/assets/vertexColorMixing-CwuEx4gP.js +20 -0
  496. package/public/assets/vertexColorMixing-CwuEx4gP.js.br +0 -0
  497. package/public/assets/vertexColorMixing-CwuEx4gP.js.gz +0 -0
  498. package/public/assets/vertexColorMixing-DRlcGbEu.js +24 -0
  499. package/public/assets/vertexColorMixing-DRlcGbEu.js.br +2 -0
  500. package/public/assets/vertexColorMixing-DRlcGbEu.js.gz +0 -0
  501. package/public/assets/volumetricLightingBlendVolume.fragment-0VKaEyya.js +12 -0
  502. package/public/assets/volumetricLightingBlendVolume.fragment-0VKaEyya.js.br +0 -0
  503. package/public/assets/volumetricLightingBlendVolume.fragment-0VKaEyya.js.gz +0 -0
  504. package/public/assets/volumetricLightingBlendVolume.fragment-BZLjMggm.js +11 -0
  505. package/public/assets/volumetricLightingBlendVolume.fragment-BZLjMggm.js.br +0 -0
  506. package/public/assets/volumetricLightingBlendVolume.fragment-BZLjMggm.js.gz +0 -0
  507. package/public/assets/volumetricLightingRenderVolume.fragment-6GAsdyvE.js +15 -0
  508. package/public/assets/volumetricLightingRenderVolume.fragment-6GAsdyvE.js.br +0 -0
  509. package/public/assets/volumetricLightingRenderVolume.fragment-6GAsdyvE.js.gz +0 -0
  510. package/public/assets/volumetricLightingRenderVolume.fragment-Da_DpfG1.js +13 -0
  511. package/public/assets/volumetricLightingRenderVolume.fragment-Da_DpfG1.js.br +0 -0
  512. package/public/assets/volumetricLightingRenderVolume.fragment-Da_DpfG1.js.gz +0 -0
  513. package/public/assets/volumetricLightingRenderVolume.vertex-BdVFX-tC.js +4 -0
  514. package/public/assets/volumetricLightingRenderVolume.vertex-BdVFX-tC.js.br +0 -0
  515. package/public/assets/volumetricLightingRenderVolume.vertex-BdVFX-tC.js.gz +0 -0
  516. package/public/assets/volumetricLightingRenderVolume.vertex-DO-VIhJn.js +5 -0
  517. package/public/assets/volumetricLightingRenderVolume.vertex-DO-VIhJn.js.br +0 -0
  518. package/public/assets/volumetricLightingRenderVolume.vertex-DO-VIhJn.js.gz +0 -0
  519. package/public/assets/webAudioBus-BkMWEG1L.js +1 -0
  520. package/public/assets/webAudioBus-BkMWEG1L.js.br +0 -0
  521. package/public/assets/webAudioBus-BkMWEG1L.js.gz +0 -0
  522. package/public/assets/webAudioMainBus-DYcQXAkm.js +1 -0
  523. package/public/assets/webAudioMainBus-DYcQXAkm.js.br +0 -0
  524. package/public/assets/webAudioMainBus-DYcQXAkm.js.gz +0 -0
  525. package/public/assets/workerPool-H9Ji3mCo.js +1 -0
  526. package/public/assets/workerPool-H9Ji3mCo.js.br +2 -0
  527. package/public/assets/workerPool-H9Ji3mCo.js.gz +0 -0
  528. package/public/index.html +21 -0
  529. package/public/index.html.br +0 -0
  530. package/public/index.html.gz +0 -0
  531. package/runtime/editor-control-plane.mjs +5 -0
  532. package/runtime/runtime-debug-authoring-bridge.mjs +1 -0
  533. package/worker/editor-service-worker.mjs +27 -0
@@ -0,0 +1,21 @@
1
+ {
2
+ "name": "@fps-games/editor-deployment",
3
+ "version": "0.2.3-beta.10",
4
+ "lockfileVersion": 3,
5
+ "requires": true,
6
+ "packages": {
7
+ "": {
8
+ "name": "@fps-games/editor-deployment",
9
+ "version": "0.2.3-beta.10",
10
+ "bin": {
11
+ "fps-editor-prepare": "bin/fps-editor-prepare.mjs",
12
+ "fps-editor-server": "bin/fps-editor-server.mjs",
13
+ "fps-editor-project": "bin/fps-editor-project.mjs",
14
+ "fps-editor-agent": "bin/fps-editor-agent.mjs"
15
+ },
16
+ "engines": {
17
+ "node": ">=24 <27"
18
+ }
19
+ }
20
+ }
21
+ }
package/package.json ADDED
@@ -0,0 +1,44 @@
1
+ {
2
+ "name": "@fps-games/editor-deployment",
3
+ "version": "0.2.3-beta.10",
4
+ "type": "module",
5
+ "description": "Prebuilt FPS Game Editor control plane, browser client, and project preparation tools.",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git+https://github.com/forge-play-studio/fps-game-editor.git",
9
+ "directory": "packages/editor-deployment"
10
+ },
11
+ "bin": {
12
+ "fps-editor-prepare": "bin/fps-editor-prepare.mjs",
13
+ "fps-editor-server": "bin/fps-editor-server.mjs",
14
+ "fps-editor-project": "bin/fps-editor-project.mjs",
15
+ "fps-editor-agent": "bin/fps-editor-agent.mjs"
16
+ },
17
+ "files": [
18
+ "bin",
19
+ "licenses",
20
+ "manifest.json",
21
+ "npm-shrinkwrap.json",
22
+ "public",
23
+ "runtime",
24
+ "worker"
25
+ ],
26
+ "scripts": {
27
+ "build": "node ../../scripts/build-editor-deployment-package.mjs",
28
+ "prepack": "node ../../scripts/build-editor-deployment-package.mjs && node ../../scripts/prepare-deployment-package.mjs"
29
+ },
30
+ "engines": {
31
+ "node": ">=24 <27"
32
+ },
33
+ "devDependencies": {
34
+ "@fps-games/editor": "0.2.3-beta.10",
35
+ "@fps-games/editor-core": "0.2.3-beta.10",
36
+ "@fps-games/editor-protocol": "0.2.3-beta.10",
37
+ "@fps-games/engine": "0.0.1-beta.19",
38
+ "@fps-games/plugin-hierarchy": "0.2.3-beta.10",
39
+ "@fps-games/plugin-sdk": "0.1.0-beta.2"
40
+ },
41
+ "publishConfig": {
42
+ "access": "public"
43
+ }
44
+ }
@@ -0,0 +1 @@
1
+ import{c as o}from"./lazy-Cj-01uhW.js";class u extends o{constructor(s,t){super(s,t,3)}}export{u as A};
@@ -0,0 +1 @@
1
+ import{eV as h,gE as E,gD as L,Y as M,Z as p,fx as k,gj as d,dv as y,da as V,cH as Y,fo as S,gP as F,f1 as m,dH as b}from"./dynamicTexture-Cuby-VOT.js";class _{constructor(n,e,r){this.name=n,this.from=e,this.to=r}clone(){return new _(this.name,this.from,this.to)}}const D=Object.freeze(new h(0,0,0,0)),w=Object.freeze(E.Zero()),K=Object.freeze(L.Zero()),U=Object.freeze(k.Zero()),z=Object.freeze(M.Black()),Q=Object.freeze(new p(0,0,0,0)),g={key:0,repeatCount:0,loopMode:2};class a{static _PrepareAnimation(n,e,r,o,t,i,s,c){let l;if(!isNaN(parseFloat(t))&&isFinite(t)?l=a.ANIMATIONTYPE_FLOAT:t instanceof h?l=a.ANIMATIONTYPE_QUATERNION:t instanceof E?l=a.ANIMATIONTYPE_VECTOR3:t instanceof L?l=a.ANIMATIONTYPE_VECTOR2:t instanceof M?l=a.ANIMATIONTYPE_COLOR3:t instanceof p?l=a.ANIMATIONTYPE_COLOR4:t instanceof k&&(l=a.ANIMATIONTYPE_SIZE),l==null)return null;const T=new a(n,e,r,l,s),u=[{frame:0,value:t},{frame:o,value:i}];return T.setKeys(u),c!==void 0&&T.setEasingFunction(c),T}static CreateAnimation(n,e,r,o){const t=new a(n+"Animation",n,r,e,a.ANIMATIONLOOPMODE_CONSTANT);return t.setEasingFunction(o),t}static CreateAndStartAnimation(n,e,r,o,t,i,s,c,l,T,u){const O=a._PrepareAnimation(n,r,o,t,i,s,c,l);return!O||(e.getScene&&(u=e.getScene()),!u)?null:u.beginDirectAnimation(e,[O],0,t,O.loopMode!==a.ANIMATIONLOOPMODE_CONSTANT,1,T)}static CreateAndStartHierarchyAnimation(n,e,r,o,t,i,s,c,l,T,u){const O=a._PrepareAnimation(n,o,t,i,s,c,l,T);return O?e.getScene().beginDirectHierarchyAnimation(e,r,[O],0,i,O.loopMode===1,1,u):null}static CreateMergeAndStartAnimation(n,e,r,o,t,i,s,c,l,T){const u=a._PrepareAnimation(n,r,o,t,i,s,c,l);return u?(e.animations.push(u),e.getScene().beginAnimation(e,0,t,u.loopMode===1,1,T)):null}static MakeAnimationAdditive(n,e,r,o=!1,t){let i;typeof e=="object"?i=e:i={referenceFrame:e??0,range:r,cloneOriginalAnimation:o,clonedAnimationName:t};let s=n;if(i.cloneOriginalAnimation&&(s=n.clone(),s.name=i.clonedAnimationName||s.name),!s._keys.length)return s;const c=i.referenceFrame&&i.referenceFrame>=0?i.referenceFrame:0;let l=0;const T=s._keys[0];let u=s._keys.length-1;const O=s._keys[u],f={referenceValue:T.value,referencePosition:d.Vector3[0],referenceQuaternion:d.Quaternion[0],referenceScaling:d.Vector3[1],keyPosition:d.Vector3[2],keyQuaternion:d.Quaternion[1],keyScaling:d.Vector3[3]};let I=T.frame,P=O.frame;if(i.range){const N=s.getRange(i.range);N&&(I=N.from,P=N.to)}else I=i.fromFrame??I,P=i.toFrame??P;if(I!==T.frame&&(l=s.createKeyForFrame(I)),P!==O.frame&&(u=s.createKeyForFrame(P)),s._keys.length===1){const N=s._getKeyValue(s._keys[0]);f.referenceValue=N.clone?N.clone():N}else if(c<=T.frame){const N=s._getKeyValue(T.value);f.referenceValue=N.clone?N.clone():N}else if(c>=O.frame){const N=s._getKeyValue(O.value);f.referenceValue=N.clone?N.clone():N}else{g.key=0;const N=s._interpolate(c,g);f.referenceValue=N.clone?N.clone():N}s.dataType===a.ANIMATIONTYPE_QUATERNION?f.referenceValue.normalize().conjugateInPlace():s.dataType===a.ANIMATIONTYPE_MATRIX&&(f.referenceValue.decompose(f.referenceScaling,f.referenceQuaternion,f.referencePosition),f.referenceQuaternion.normalize().conjugateInPlace());let R=Number.MAX_VALUE;const v=i.clipKeys?[]:null;for(let N=l;N<=u;N++){let A=s._keys[N];if((v||i.cloneOriginalAnimation)&&(A={frame:A.frame,value:A.value.clone?A.value.clone():A.value,inTangent:A.inTangent,outTangent:A.outTangent,interpolation:A.interpolation,lockedTangent:A.lockedTangent,easingFunction:A.easingFunction},v&&(R===Number.MAX_VALUE&&(R=A.frame),A.frame-=R,v.push(A))),!(N&&s.dataType!==a.ANIMATIONTYPE_FLOAT&&A.value===T.value))switch(s.dataType){case a.ANIMATIONTYPE_MATRIX:A.value.decompose(f.keyScaling,f.keyQuaternion,f.keyPosition),f.keyPosition.subtractInPlace(f.referencePosition),f.keyScaling.divideInPlace(f.referenceScaling),f.referenceQuaternion.multiplyToRef(f.keyQuaternion,f.keyQuaternion),y.ComposeToRef(f.keyScaling,f.keyQuaternion,f.keyPosition,A.value);break;case a.ANIMATIONTYPE_QUATERNION:f.referenceValue.multiplyToRef(A.value,A.value);break;case a.ANIMATIONTYPE_VECTOR2:case a.ANIMATIONTYPE_VECTOR3:case a.ANIMATIONTYPE_COLOR3:case a.ANIMATIONTYPE_COLOR4:A.value.subtractToRef(f.referenceValue,A.value);break;case a.ANIMATIONTYPE_SIZE:A.value.width-=f.referenceValue.width,A.value.height-=f.referenceValue.height;break;default:A.value-=f.referenceValue}}return v&&s.setKeys(v,!0),s}static TransitionTo(n,e,r,o,t,i,s,c=null,l=!0,T){if(s<=0)return r[n]=e,c&&c(),null;const u=t*(s/1e3);return i.setKeys(T??[{frame:0,value:r[n].clone?r[n].clone():r[n]},{frame:u,value:e}]),r.animations||(r.animations=[]),r.animations.push(i),o.beginAnimation(r,0,u,!1,1,c??void 0,void 0,l)}get runtimeAnimations(){return this._runtimeAnimations}get hasRunningRuntimeAnimations(){for(const n of this._runtimeAnimations)if(!n.isStopped())return!0;return!1}constructor(n,e,r,o,t,i){this.name=n,this.targetProperty=e,this.framePerSecond=r,this.dataType=o,this.loopMode=t,this.enableBlending=i,this._easingFunction=null,this._runtimeAnimations=new Array,this._events=new Array,this.blendingSpeed=.01,this._ranges={},this._coreAnimation=null,this.targetPropertyPath=e.split("."),this.dataType=o,this.loopMode=t===void 0?a.ANIMATIONLOOPMODE_CYCLE:t,this.uniqueId=a._UniqueIdGenerator++}toString(n){let e="Name: "+this.name+", property: "+this.targetProperty;if(e+=", datatype: "+["Float","Vector3","Quaternion","Matrix","Color3","Vector2"][this.dataType],e+=", nKeys: "+(this._keys?this._keys.length:"none"),e+=", nRanges: "+(this._ranges?Object.keys(this._ranges).length:"none"),n){e+=", Ranges: {";let r=!0;for(const o in this._ranges)r&&(e+=", ",r=!1),e+=o;e+="}"}return e}addEvent(n){this._events.push(n),this._events.sort((e,r)=>e.frame-r.frame)}removeEvents(n){for(let e=0;e<this._events.length;e++)this._events[e].frame===n&&(this._events.splice(e,1),e--)}getEvents(){return this._events}createRange(n,e,r){this._ranges[n]||(this._ranges[n]=new _(n,e,r))}deleteRange(n,e=!0){const r=this._ranges[n];if(r){if(e){const o=r.from,t=r.to;for(let i=this._keys.length-1;i>=0;i--)this._keys[i].frame>=o&&this._keys[i].frame<=t&&this._keys.splice(i,1)}this._ranges[n]=null}}getRange(n){return this._ranges[n]}getKeys(){return this._keys}getHighestFrame(){let n=0;for(let e=0,r=this._keys.length;e<r;e++)n<this._keys[e].frame&&(n=this._keys[e].frame);return n}getEasingFunction(){return this._easingFunction}setEasingFunction(n){this._easingFunction=n}floatInterpolateFunction(n,e,r){return V(n,e,r)}floatInterpolateFunctionWithTangents(n,e,r,o,t){return Y(n,e,r,o,t)}quaternionInterpolateFunction(n,e,r){return h.Slerp(n,e,r)}quaternionInterpolateFunctionWithTangents(n,e,r,o,t){return h.Hermite(n,e,r,o,t).normalize()}vector3InterpolateFunction(n,e,r){return E.Lerp(n,e,r)}vector3InterpolateFunctionWithTangents(n,e,r,o,t){return E.Hermite(n,e,r,o,t)}vector2InterpolateFunction(n,e,r){return L.Lerp(n,e,r)}vector2InterpolateFunctionWithTangents(n,e,r,o,t){return L.Hermite(n,e,r,o,t)}sizeInterpolateFunction(n,e,r){return k.Lerp(n,e,r)}color3InterpolateFunction(n,e,r){return M.Lerp(n,e,r)}color3InterpolateFunctionWithTangents(n,e,r,o,t){return M.Hermite(n,e,r,o,t)}color4InterpolateFunction(n,e,r){return p.Lerp(n,e,r)}color4InterpolateFunctionWithTangents(n,e,r,o,t){return p.Hermite(n,e,r,o,t)}_getKeyValue(n){return typeof n=="function"?n():n}evaluate(n){return g.key=0,this._interpolate(n,g)}_interpolate(n,e,r=!1){if(e.loopMode===a.ANIMATIONLOOPMODE_CONSTANT&&e.repeatCount>0)return e.highLimitValue.clone?e.highLimitValue.clone():e.highLimitValue;const o=this._keys;let t;if(this._coreAnimation)t=this._coreAnimation._key;else{const I=o.length;for(t=e.key;t>=0&&n<o[t].frame;)--t;for(;t+1<=I-1&&n>=o[t+1].frame;)++t;if(e.key=t,t<0)return r?void 0:this._getKeyValue(o[0].value);if(t+1>I-1)return r?void 0:this._getKeyValue(o[I-1].value);this._key=t}const i=o[t],s=o[t+1];if(r&&(n===i.frame||n===s.frame))return;const c=this._getKeyValue(i.value),l=this._getKeyValue(s.value);if(i.interpolation===1)return s.frame>n?c:l;const T=i.outTangent!==void 0&&s.inTangent!==void 0,u=s.frame-i.frame;let O=(n-i.frame)/u;const f=i.easingFunction||this.getEasingFunction();switch(f&&(O=f.ease(O)),this.dataType){case a.ANIMATIONTYPE_FLOAT:{const I=T?this.floatInterpolateFunctionWithTangents(c,i.outTangent*u,l,s.inTangent*u,O):this.floatInterpolateFunction(c,l,O);switch(e.loopMode){case a.ANIMATIONLOOPMODE_CYCLE:case a.ANIMATIONLOOPMODE_CONSTANT:case a.ANIMATIONLOOPMODE_YOYO:return I;case a.ANIMATIONLOOPMODE_RELATIVE:case a.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return(e.offsetValue??0)*e.repeatCount+I}break}case a.ANIMATIONTYPE_QUATERNION:{const I=T?this.quaternionInterpolateFunctionWithTangents(c,i.outTangent.scale(u),l,s.inTangent.scale(u),O):this.quaternionInterpolateFunction(c,l,O);switch(e.loopMode){case a.ANIMATIONLOOPMODE_CYCLE:case a.ANIMATIONLOOPMODE_CONSTANT:case a.ANIMATIONLOOPMODE_YOYO:return I;case a.ANIMATIONLOOPMODE_RELATIVE:case a.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return I.addInPlace((e.offsetValue||D).scale(e.repeatCount))}return I}case a.ANIMATIONTYPE_VECTOR3:{const I=T?this.vector3InterpolateFunctionWithTangents(c,i.outTangent.scale(u),l,s.inTangent.scale(u),O):this.vector3InterpolateFunction(c,l,O);switch(e.loopMode){case a.ANIMATIONLOOPMODE_CYCLE:case a.ANIMATIONLOOPMODE_CONSTANT:case a.ANIMATIONLOOPMODE_YOYO:return I;case a.ANIMATIONLOOPMODE_RELATIVE:case a.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return I.add((e.offsetValue||w).scale(e.repeatCount))}break}case a.ANIMATIONTYPE_VECTOR2:{const I=T?this.vector2InterpolateFunctionWithTangents(c,i.outTangent.scale(u),l,s.inTangent.scale(u),O):this.vector2InterpolateFunction(c,l,O);switch(e.loopMode){case a.ANIMATIONLOOPMODE_CYCLE:case a.ANIMATIONLOOPMODE_CONSTANT:case a.ANIMATIONLOOPMODE_YOYO:return I;case a.ANIMATIONLOOPMODE_RELATIVE:case a.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return I.add((e.offsetValue||K).scale(e.repeatCount))}break}case a.ANIMATIONTYPE_SIZE:{switch(e.loopMode){case a.ANIMATIONLOOPMODE_CYCLE:case a.ANIMATIONLOOPMODE_CONSTANT:case a.ANIMATIONLOOPMODE_YOYO:return this.sizeInterpolateFunction(c,l,O);case a.ANIMATIONLOOPMODE_RELATIVE:case a.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return this.sizeInterpolateFunction(c,l,O).add((e.offsetValue||U).scale(e.repeatCount))}break}case a.ANIMATIONTYPE_COLOR3:{const I=T?this.color3InterpolateFunctionWithTangents(c,i.outTangent.scale(u),l,s.inTangent.scale(u),O):this.color3InterpolateFunction(c,l,O);switch(e.loopMode){case a.ANIMATIONLOOPMODE_CYCLE:case a.ANIMATIONLOOPMODE_CONSTANT:case a.ANIMATIONLOOPMODE_YOYO:return I;case a.ANIMATIONLOOPMODE_RELATIVE:case a.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return I.add((e.offsetValue||z).scale(e.repeatCount))}break}case a.ANIMATIONTYPE_COLOR4:{const I=T?this.color4InterpolateFunctionWithTangents(c,i.outTangent.scale(u),l,s.inTangent.scale(u),O):this.color4InterpolateFunction(c,l,O);switch(e.loopMode){case a.ANIMATIONLOOPMODE_CYCLE:case a.ANIMATIONLOOPMODE_CONSTANT:case a.ANIMATIONLOOPMODE_YOYO:return I;case a.ANIMATIONLOOPMODE_RELATIVE:case a.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return I.add((e.offsetValue||Q).scale(e.repeatCount))}break}case a.ANIMATIONTYPE_MATRIX:{switch(e.loopMode){case a.ANIMATIONLOOPMODE_CYCLE:case a.ANIMATIONLOOPMODE_CONSTANT:case a.ANIMATIONLOOPMODE_YOYO:return a.AllowMatricesInterpolation?this.matrixInterpolateFunction(c,l,O,e.workValue):c;case a.ANIMATIONLOOPMODE_RELATIVE:case a.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return c}break}}return 0}matrixInterpolateFunction(n,e,r,o){return a.AllowMatrixDecomposeForInterpolation?o?(y.DecomposeLerpToRef(n,e,r,o),o):y.DecomposeLerp(n,e,r):o?(y.LerpToRef(n,e,r,o),o):y.Lerp(n,e,r)}clone(n=!1){const e=new a(this.name,this.targetPropertyPath.join("."),this.framePerSecond,this.dataType,this.loopMode);if(e.enableBlending=this.enableBlending,e.blendingSpeed=this.blendingSpeed,this._keys&&e.setKeys(this._keys,!1,n),this._ranges){e._ranges={};for(const r in this._ranges){const o=this._ranges[r];o&&(e._ranges[r]=o.clone())}}return e}setKeys(n,e=!1,r=!1){if(e)this._keys=n;else if(this._keys=n.slice(0),r)for(let o=0;o<this._keys.length;o++){const t=this._keys[o];this._keys[o]={frame:t.frame,value:t.value.clone?t.value.clone():t.value,inTangent:t.inTangent&&t.inTangent.clone?t.inTangent.clone():t.inTangent,outTangent:t.outTangent&&t.outTangent.clone?t.outTangent.clone():t.outTangent,interpolation:t.interpolation,lockedTangent:t.lockedTangent,easingFunction:t.easingFunction}}}createKeyForFrame(n){g.key=0;const e=this._interpolate(n,g,!0);if(!e)return this._keys[g.key].frame===n?g.key:g.key+1;const r={frame:n,value:e.clone?e.clone():e};return this._keys.splice(g.key+1,0,r),g.key+1}serialize(){const n={};n.name=this.name,n.property=this.targetProperty,n.framePerSecond=this.framePerSecond,n.dataType=this.dataType,n.loopBehavior=this.loopMode,n.enableBlending=this.enableBlending,n.blendingSpeed=this.blendingSpeed;const e=this.dataType;n.keys=[];const r=this.getKeys();for(let o=0;o<r.length;o++){const t=r[o],i={};switch(i.frame=t.frame,e){case a.ANIMATIONTYPE_FLOAT:i.values=[t.value],t.inTangent!==void 0&&i.values.push(t.inTangent),t.outTangent!==void 0&&(t.inTangent===void 0&&i.values.push(void 0),i.values.push(t.outTangent)),t.interpolation!==void 0&&(t.inTangent===void 0&&i.values.push(void 0),t.outTangent===void 0&&i.values.push(void 0),i.values.push(t.interpolation));break;case a.ANIMATIONTYPE_QUATERNION:case a.ANIMATIONTYPE_MATRIX:case a.ANIMATIONTYPE_VECTOR3:case a.ANIMATIONTYPE_COLOR3:case a.ANIMATIONTYPE_COLOR4:i.values=t.value.asArray(),t.inTangent!=null&&i.values.push(t.inTangent.asArray()),t.outTangent!=null&&(t.inTangent===void 0&&i.values.push(void 0),i.values.push(t.outTangent.asArray())),t.interpolation!==void 0&&(t.inTangent===void 0&&i.values.push(void 0),t.outTangent===void 0&&i.values.push(void 0),i.values.push(t.interpolation));break}n.keys.push(i)}n.ranges=[];for(const o in this._ranges){const t=this._ranges[o];if(!t)continue;const i={};i.name=o,i.from=t.from,i.to=t.to,n.ranges.push(i)}return n}static _UniversalLerp(n,e,r){const o=n.constructor;return o.Lerp?o.Lerp(n,e,r):o.Slerp?o.Slerp(n,e,r):n.toFixed?n*(1-r)+r*e:e}static Parse(n){const e=new a(n.name,n.property,n.framePerSecond,n.dataType,n.loopBehavior),r=n.dataType,o=[];let t,i;for(n.enableBlending&&(e.enableBlending=n.enableBlending),n.blendingSpeed&&(e.blendingSpeed=n.blendingSpeed),i=0;i<n.keys.length;i++){const s=n.keys[i];let c,l,T;switch(r){case a.ANIMATIONTYPE_FLOAT:t=s.values[0],s.values.length>=2&&(c=s.values[1]),s.values.length>=3&&(l=s.values[2]),s.values.length>=4&&(T=s.values[3]);break;case a.ANIMATIONTYPE_QUATERNION:if(t=h.FromArray(s.values),s.values.length>=8){const O=h.FromArray(s.values.slice(4,8));O.equals(h.Zero())||(c=O)}if(s.values.length>=12){const O=h.FromArray(s.values.slice(8,12));O.equals(h.Zero())||(l=O)}s.values.length>=13&&(T=s.values[12]);break;case a.ANIMATIONTYPE_MATRIX:t=y.FromArray(s.values),s.values.length>=17&&(T=s.values[16]);break;case a.ANIMATIONTYPE_COLOR3:t=M.FromArray(s.values),s.values[3]&&(c=M.FromArray(s.values[3])),s.values[4]&&(l=M.FromArray(s.values[4])),s.values[5]&&(T=s.values[5]);break;case a.ANIMATIONTYPE_COLOR4:t=p.FromArray(s.values),s.values[4]&&(c=p.FromArray(s.values[4])),s.values[5]&&(l=p.FromArray(s.values[5])),s.values[6]&&(T=p.FromArray(s.values[6]));break;case a.ANIMATIONTYPE_VECTOR3:default:t=E.FromArray(s.values),s.values[3]&&(c=E.FromArray(s.values[3])),s.values[4]&&(l=E.FromArray(s.values[4])),s.values[5]&&(T=s.values[5]);break}const u={};u.frame=s.frame,u.value=t,c!=null&&(u.inTangent=c),l!=null&&(u.outTangent=l),T!=null&&(u.interpolation=T),o.push(u)}if(e.setKeys(o),n.ranges)for(i=0;i<n.ranges.length;i++)t=n.ranges[i],e.createRange(t.name,t.from,t.to);return e}static AppendSerializedAnimations(n,e){S.AppendSerializedAnimations(n,e)}static async ParseFromFileAsync(n,e){return await new Promise((r,o)=>{const t=new F;t.addEventListener("readystatechange",()=>{if(t.readyState==4)if(t.status==200){let i=JSON.parse(t.responseText);if(i.animations&&(i=i.animations),i.length){const s=[];for(const c of i)s.push(this.Parse(c));r(s)}else{const s=this.Parse(i);n&&(s.name=n),r(s)}}else o("Unable to load the animation")}),t.open("GET",e),t.send()})}static async ParseFromSnippetAsync(n){return await new Promise((e,r)=>{const o=new F;o.addEventListener("readystatechange",()=>{if(o.readyState==4)if(o.status==200){const t=JSON.parse(JSON.parse(o.responseText).jsonPayload);if(t.animations){const i=JSON.parse(t.animations),s=[];for(const c of i.animations){const l=this.Parse(c);l.snippetId=n,s.push(l)}e(s)}else{const i=JSON.parse(t.animation),s=this.Parse(i);s.snippetId=n,e(s)}}else r("Unable to load the snippet "+n)}),o.open("GET",this.SnippetUrl+"/"+n.replace(/#/g,"/")),o.send()})}}a._UniqueIdGenerator=0;a.AllowMatricesInterpolation=!1;a.AllowMatrixDecomposeForInterpolation=!0;a.SnippetUrl="https://snippet.babylonjs.com";a.ANIMATIONTYPE_FLOAT=0;a.ANIMATIONTYPE_VECTOR3=1;a.ANIMATIONTYPE_QUATERNION=2;a.ANIMATIONTYPE_MATRIX=3;a.ANIMATIONTYPE_COLOR3=4;a.ANIMATIONTYPE_COLOR4=7;a.ANIMATIONTYPE_VECTOR2=5;a.ANIMATIONTYPE_SIZE=6;a.ANIMATIONLOOPMODE_RELATIVE=0;a.ANIMATIONLOOPMODE_CYCLE=1;a.ANIMATIONLOOPMODE_CONSTANT=2;a.ANIMATIONLOOPMODE_YOYO=4;a.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT=5;a.CreateFromSnippetAsync=a.ParseFromSnippetAsync;m("BABYLON.Animation",a);b._AnimationRangeFactory=(C,n,e)=>new _(C,n,e);export{a as A,z as _,_ as a,Q as b,D as c,U as d,K as e,w as f};
@@ -0,0 +1 @@
1
+ import{A,b as R,_ as E,d as M,e as N,f as B,c as k}from"./animation-C6iNAO1g.js";import{dv as F,eo as C,dL as P,eV as S,gj as T,gE as D,fk as W,bH as K,fP as w,gw as H}from"./dynamicTexture-Cuby-VOT.js";import{p as U}from"./lazy-Cj-01uhW.js";class Y{get currentFrame(){return this._currentFrame}get weight(){return this._weight}get currentValue(){return this._currentValue}get targetPath(){return this._targetPath}get target(){return this._currentActiveTarget}get isAdditive(){return this._host&&this._host.isAdditive}constructor(t,e,i,n){if(this._events=new Array,this._currentFrame=0,this._originalValue=new Array,this._originalBlendValue=null,this._offsetsCache={},this._highLimitsCache={},this._stopped=!1,this._blendingFactor=0,this._currentValue=null,this._currentActiveTarget=null,this._directTarget=null,this._targetPath="",this._weight=1,this._absoluteFrameOffset=0,this._previousElapsedTime=0,this._yoyoDirection=1,this._previousAbsoluteFrame=0,this._targetIsArray=!1,this._coreRuntimeAnimation=null,this._animation=e,this._target=t,this._scene=i,this._host=n,this._activeTargets=[],e._runtimeAnimations.push(this),this._animationState={key:0,repeatCount:0,loopMode:this._getCorrectLoopMode()},this._animation.dataType===A.ANIMATIONTYPE_MATRIX&&(this._animationState.workValue=F.Zero()),this._keys=this._animation.getKeys(),this._minFrame=this._keys[0].frame,this._maxFrame=this._keys[this._keys.length-1].frame,this._minFrame!==0){const a={frame:0,value:this._keys[0].value};this._keys.splice(0,0,a)}if(this._target instanceof Array){let a=0;for(const o of this._target)this._preparePath(o,a),this._getOriginalValues(a),a++;this._targetIsArray=!0}else this._preparePath(this._target),this._getOriginalValues(),this._targetIsArray=!1,this._directTarget=this._activeTargets[0];const s=e.getEvents();if(s&&s.length>0)for(const a of s)this._events.push(a._clone());this._enableBlending=t&&t.animationPropertiesOverride?t.animationPropertiesOverride.enableBlending:this._animation.enableBlending}_preparePath(t,e=0){const i=this._animation.targetPropertyPath;if(i.length>1){let n=t;for(let s=0;s<i.length-1;s++){const a=i[s];if(n=n[a],n===void 0)throw new Error(`Invalid property (${a}) in property path (${i.join(".")})`)}this._targetPath=i[i.length-1],this._activeTargets[e]=n}else this._targetPath=i[0],this._activeTargets[e]=t;if(this._activeTargets[e][this._targetPath]===void 0)throw new Error(`Invalid property (${this._targetPath}) in property path (${i.join(".")})`)}get animation(){return this._animation}reset(t=!1){if(t)if(this._target instanceof Array){let e=0;for(const i of this._target)this._originalValue[e]!==void 0&&this._setValue(i,this._activeTargets[e],this._originalValue[e],-1,e),e++}else this._originalValue[0]!==void 0&&this._setValue(this._target,this._directTarget,this._originalValue[0],-1,0);this._offsetsCache={},this._highLimitsCache={},this._currentFrame=0,this._blendingFactor=0;for(let e=0;e<this._events.length;e++)this._events[e].isDone=!1}isStopped(){return this._stopped}dispose(){const t=this._animation.runtimeAnimations.indexOf(this);t>-1&&this._animation.runtimeAnimations.splice(t,1)}setValue(t,e){if(this._targetIsArray){for(let i=0;i<this._target.length;i++){const n=this._target[i];this._setValue(n,this._activeTargets[i],t,e,i)}return}this._setValue(this._target,this._directTarget,t,e,0)}_getOriginalValues(t=0){let e;const i=this._activeTargets[t];i.getLocalMatrix&&this._targetPath==="_matrix"?e=i.getLocalMatrix():e=i[this._targetPath],e&&e.clone?this._originalValue[t]=e.clone():this._originalValue[t]=e}_registerTargetForLateAnimationBinding(t,e){const i=t.target;this._scene._registeredForLateAnimationBindings.pushNoDuplicate(i),i._lateAnimationHolders||(i._lateAnimationHolders={}),i._lateAnimationHolders[t.targetPath]||(i._lateAnimationHolders[t.targetPath]={totalWeight:0,totalAdditiveWeight:0,animations:[],additiveAnimations:[],originalValue:e}),t.isAdditive?(i._lateAnimationHolders[t.targetPath].additiveAnimations.push(t),i._lateAnimationHolders[t.targetPath].totalAdditiveWeight+=t.weight):(i._lateAnimationHolders[t.targetPath].animations.push(t),i._lateAnimationHolders[t.targetPath].totalWeight+=t.weight)}_setValue(t,e,i,n,s){if(this._currentActiveTarget=e,this._weight=n,this._enableBlending&&this._blendingFactor<=1){if(!this._originalBlendValue){const o=e[this._targetPath];o.clone?this._originalBlendValue=o.clone():this._originalBlendValue=o}this._originalBlendValue.m?A.AllowMatrixDecomposeForInterpolation?this._currentValue?F.DecomposeLerpToRef(this._originalBlendValue,i,this._blendingFactor,this._currentValue):this._currentValue=F.DecomposeLerp(this._originalBlendValue,i,this._blendingFactor):this._currentValue?F.LerpToRef(this._originalBlendValue,i,this._blendingFactor,this._currentValue):this._currentValue=F.Lerp(this._originalBlendValue,i,this._blendingFactor):this._currentValue=A._UniversalLerp(this._originalBlendValue,i,this._blendingFactor);const a=t&&t.animationPropertiesOverride?t.animationPropertiesOverride.blendingSpeed:this._animation.blendingSpeed;this._blendingFactor+=a}else this._currentValue?this._currentValue.copyFrom?this._currentValue.copyFrom(i):this._currentValue=i:i?.clone?this._currentValue=i.clone():this._currentValue=i;n!==-1?this._registerTargetForLateAnimationBinding(this,this._originalValue[s]):this._animationState.loopMode===A.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT?this._currentValue.addToRef?this._currentValue.addToRef(this._originalValue[s],e[this._targetPath]):e[this._targetPath]=this._originalValue[s]+this._currentValue:e[this._targetPath]=this._currentValue,t.markAsDirty&&t.markAsDirty(this._animation.targetProperty)}_getCorrectLoopMode(){return this._target&&this._target.animationPropertiesOverride?this._target.animationPropertiesOverride.loopMode:this._animation.loopMode}goToFrame(t,e=-1){const i=this._animation.getKeys();t<i[0].frame?t=i[0].frame:t>i[i.length-1].frame&&(t=i[i.length-1].frame);const n=this._events;if(n.length)for(let a=0;a<n.length;a++)n[a].onlyOnce||(n[a].isDone=n[a].frame<t);this._currentFrame=t;const s=this._animation._interpolate(t,this._animationState);this.setValue(s,e)}_prepareForSpeedRatioChange(t){const e=this._previousElapsedTime*(this._animation.framePerSecond*t)/1e3;this._absoluteFrameOffset=this._previousAbsoluteFrame-e}animate(t,e,i,n,s,a=-1){const o=this._animation,r=o.targetPropertyPath;if(!r||r.length<1)return this._stopped=!0,!1;let l=!0,g;const d=this._events;let c;if(this._coreRuntimeAnimation)c=i-e,g=this._coreRuntimeAnimation.currentFrame,this._currentFrame=g,this._animationState.repeatCount=this._coreRuntimeAnimation._animationState.repeatCount,this._animationState.highLimitValue=this._coreRuntimeAnimation._animationState.highLimitValue,this._animationState.offsetValue=this._coreRuntimeAnimation._animationState.offsetValue;else{(e<this._minFrame||e>this._maxFrame)&&(e=this._minFrame),(i<this._minFrame||i>this._maxFrame)&&(i=this._maxFrame),c=i-e;let _,m=t*(o.framePerSecond*s)/1e3+this._absoluteFrameOffset,b=0,V=!1;const v=n&&this._animationState.loopMode===A.ANIMATIONLOOPMODE_YOYO;if(v){const f=(m-e)/c,p=Math.sin(f*Math.PI);m=Math.abs(p)*c+e;const I=p>=0?1:-1;this._yoyoDirection!==I&&(V=!0),this._yoyoDirection=I}if(this._previousElapsedTime=t,this._previousAbsoluteFrame=m,!n&&i>=e&&(m>=c&&s>0||m<=0&&s<0))l=!1,b=o.evaluate(i);else if(!n&&e>=i&&(m<=c&&s<0||m>=0&&s>0))l=!1,b=o.evaluate(e);else if(this._animationState.loopMode!==A.ANIMATIONLOOPMODE_CYCLE){const f=i.toString()+e.toString();if(!this._offsetsCache[f]){this._animationState.repeatCount=0,this._animationState.loopMode=A.ANIMATIONLOOPMODE_CYCLE;const p=o._interpolate(e,this._animationState),y=o._interpolate(i,this._animationState);switch(this._animationState.loopMode=this._getCorrectLoopMode(),o.dataType){case A.ANIMATIONTYPE_FLOAT:this._offsetsCache[f]=y-p;break;case A.ANIMATIONTYPE_QUATERNION:this._offsetsCache[f]=y.subtract(p);break;case A.ANIMATIONTYPE_VECTOR3:this._offsetsCache[f]=y.subtract(p);break;case A.ANIMATIONTYPE_VECTOR2:this._offsetsCache[f]=y.subtract(p);break;case A.ANIMATIONTYPE_SIZE:this._offsetsCache[f]=y.subtract(p);break;case A.ANIMATIONTYPE_COLOR3:this._offsetsCache[f]=y.subtract(p);break}this._highLimitsCache[f]=y}b=this._highLimitsCache[f],_=this._offsetsCache[f]}if(_===void 0)switch(o.dataType){case A.ANIMATIONTYPE_FLOAT:_=0;break;case A.ANIMATIONTYPE_QUATERNION:_=k;break;case A.ANIMATIONTYPE_VECTOR3:_=B;break;case A.ANIMATIONTYPE_VECTOR2:_=N;break;case A.ANIMATIONTYPE_SIZE:_=M;break;case A.ANIMATIONTYPE_COLOR3:_=E;break;case A.ANIMATIONTYPE_COLOR4:_=R;break}if(this._host&&this._host.syncRoot){const f=this._host.syncRoot,p=(f.masterFrame-f.fromFrame)/(f.toFrame-f.fromFrame);g=e+c*p}else m>0&&e>i||m<0&&e<i?g=l&&c!==0?i+m%c:e:g=l&&c!==0?e+m%c:i;if(!v&&(s>0&&this.currentFrame>g||s<0&&this.currentFrame<g)||v&&V){this._onLoop();for(let f=0;f<d.length;f++)d[f].onlyOnce||(d[f].isDone=!1);this._animationState.key=s>0?0:o.getKeys().length-1}this._currentFrame=g,this._animationState.repeatCount=c===0?0:m/c>>0,this._animationState.highLimitValue=b,this._animationState.offsetValue=_}const u=o._interpolate(g,this._animationState);if(this.setValue(u,a),d.length){for(let _=0;_<d.length;_++)if(c>=0&&g>=d[_].frame&&d[_].frame>=e||c<0&&g<=d[_].frame&&d[_].frame<=e){const m=d[_];m.isDone||(m.onlyOnce&&(d.splice(_,1),_--),m.isDone=!0,m.action(g))}}return l||(this._stopped=!0),l}}class L{get syncRoot(){return this._syncRoot}get masterFrame(){return this._runtimeAnimations.length===0?0:this._runtimeAnimations[0].currentFrame}get weight(){return this._weight}set weight(t){if(t===-1){this._weight=-1;return}this._weight=Math.min(Math.max(t,0),1)}get speedRatio(){return this._speedRatio}set speedRatio(t){for(let e=0;e<this._runtimeAnimations.length;e++)this._runtimeAnimations[e]._prepareForSpeedRatioChange(t);this._speedRatio=t,this._goToFrame!==null&&this.goToFrame(this._goToFrame)}get elapsedTime(){return this._localDelayOffset===null?0:this._scene._animationTime-this._localDelayOffset}constructor(t,e,i=0,n=100,s=!1,a=1,o,r,l,g=!1,d=0){this.target=e,this.fromFrame=i,this.toFrame=n,this.loopAnimation=s,this.onAnimationEnd=o,this.onAnimationLoop=l,this.isAdditive=g,this.playOrder=d,this._localDelayOffset=null,this._pausedDelay=null,this._manualJumpDelay=null,this._runtimeAnimations=new Array,this._paused=!1,this._speedRatio=1,this._weight=-1,this._previousWeight=-1,this._syncRoot=null,this._frameToSyncFromJump=null,this._goToFrame=null,this.disposeOnEnd=!0,this.animationStarted=!1,this.onAnimationEndObservable=new P,this.onAnimationLoopObservable=new P,this._scene=t,r&&this.appendAnimations(e,r),this._speedRatio=a,t._activeAnimatables.push(this)}syncWith(t){if(this._syncRoot=t,t){const e=this._scene._activeAnimatables.indexOf(this);e>-1&&(this._scene._activeAnimatables.splice(e,1),this._scene._activeAnimatables.push(this))}return this}getAnimations(){return this._runtimeAnimations}appendAnimations(t,e){for(let i=0;i<e.length;i++){const n=e[i],s=new Y(t,n,this._scene,this);s._onLoop=()=>{this.onAnimationLoopObservable.notifyObservers(this),this.onAnimationLoop&&this.onAnimationLoop()},this._runtimeAnimations.push(s)}}getAnimationByTargetProperty(t){const e=this._runtimeAnimations;for(let i=0;i<e.length;i++)if(e[i].animation.targetProperty===t)return e[i].animation;return null}getRuntimeAnimationByTargetProperty(t){const e=this._runtimeAnimations;for(let i=0;i<e.length;i++)if(e[i].animation.targetProperty===t)return e[i];return null}reset(){const t=this._runtimeAnimations;for(let e=0;e<t.length;e++)t[e].reset(!0);this._localDelayOffset=null,this._pausedDelay=null}enableBlending(t){const e=this._runtimeAnimations;for(let i=0;i<e.length;i++)e[i].animation.enableBlending=!0,e[i].animation.blendingSpeed=t}disableBlending(){const t=this._runtimeAnimations;for(let e=0;e<t.length;e++)t[e].animation.enableBlending=!1}goToFrame(t,e=!1){const i=this._runtimeAnimations;if(i[0]){const n=i[0].animation.framePerSecond;this._frameToSyncFromJump=this._frameToSyncFromJump??i[0].currentFrame;const s=this.speedRatio===0?0:(t-this._frameToSyncFromJump)/n*1e3/this.speedRatio;this._manualJumpDelay=-s}for(let n=0;n<i.length;n++)i[n].goToFrame(t,e?this._weight:-1);this._goToFrame=t}get paused(){return this._paused}pause(){this._paused||(this._paused=!0)}restart(){this._paused=!1}_raiseOnAnimationEnd(){this.onAnimationEnd&&this.onAnimationEnd(),this.onAnimationEndObservable.notifyObservers(this)}stop(t,e,i=!1,n=!1){if(t||e){const s=this._scene._activeAnimatables.indexOf(this);if(s>-1){const a=this._runtimeAnimations;for(let o=a.length-1;o>=0;o--){const r=a[o];t&&r.animation.name!=t||e&&!e(r.target)||(r.dispose(),a.splice(o,1))}a.length==0&&(i||this._scene._activeAnimatables.splice(s,1),n||this._raiseOnAnimationEnd())}}else{const s=this._scene._activeAnimatables.indexOf(this);if(s>-1){i||this._scene._activeAnimatables.splice(s,1);const a=this._runtimeAnimations;for(let o=0;o<a.length;o++)a[o].dispose();this._runtimeAnimations.length=0,n||this._raiseOnAnimationEnd()}}}async waitAsync(){return await new Promise(t=>{this.onAnimationEndObservable.add(()=>{t(this)},void 0,void 0,this,!0)})}_animate(t){if(this._paused)return this.animationStarted=!1,this._pausedDelay===null&&(this._pausedDelay=t),!0;if(this._localDelayOffset===null?(this._localDelayOffset=t,this._pausedDelay=null):this._pausedDelay!==null&&(this._localDelayOffset+=t-this._pausedDelay,this._pausedDelay=null),this._manualJumpDelay!==null&&(this._localDelayOffset+=this.speedRatio<0?-this._manualJumpDelay:this._manualJumpDelay,this._manualJumpDelay=null,this._frameToSyncFromJump=null),this._goToFrame=null,!L.ProcessPausedAnimatables&&this._weight===0&&this._previousWeight===0)return!0;this._previousWeight=this._weight;let e=!1;const i=this._runtimeAnimations;let n;for(n=0;n<i.length;n++){const a=i[n].animate(t-this._localDelayOffset,this.fromFrame,this.toFrame,this.loopAnimation,this._speedRatio,this._weight);e=e||a}if(this.animationStarted=e,!e){if(this.disposeOnEnd)for(n=this._scene._activeAnimatables.indexOf(this),this._scene._activeAnimatables.splice(n,1),n=0;n<i.length;n++)i[n].dispose();this._raiseOnAnimationEnd(),this.disposeOnEnd&&(this.onAnimationEnd=null,this.onAnimationLoop=null,this.onAnimationLoopObservable.clear(),this.onAnimationEndObservable.clear())}return e}}L.ProcessPausedAnimatables=!1;function z(h){if(h.totalWeight===0&&h.totalAdditiveWeight===0)return h.originalValue;let t=1;const e=T.Vector3[0],i=T.Vector3[1],n=T.Quaternion[0];let s=0;const a=h.animations[0],o=h.originalValue;let r,l=!1;if(h.totalWeight<1)r=1-h.totalWeight,o.decompose(i,n,e);else{if(s=1,t=h.totalWeight,r=a.weight/t,r==1)if(h.totalAdditiveWeight)l=!0;else return a.currentValue;a.currentValue.decompose(i,n,e)}if(!l){i.scaleInPlace(r),e.scaleInPlace(r),n.scaleInPlace(r);for(let d=s;d<h.animations.length;d++){const c=h.animations[d];if(c.weight===0)continue;r=c.weight/t;const u=T.Vector3[2],_=T.Vector3[3],m=T.Quaternion[1];c.currentValue.decompose(_,m,u),_.scaleAndAddToRef(r,i),m.scaleAndAddToRef(S.Dot(n,m)>0?r:-r,n),u.scaleAndAddToRef(r,e)}n.normalize()}for(let d=0;d<h.additiveAnimations.length;d++){const c=h.additiveAnimations[d];if(c.weight===0)continue;const u=T.Vector3[2],_=T.Vector3[3],m=T.Quaternion[1];c.currentValue.decompose(_,m,u),_.multiplyToRef(i,_),D.LerpToRef(i,_,c.weight,i),n.multiplyToRef(m,m),S.SlerpToRef(n,m,c.weight,n),u.scaleAndAddToRef(c.weight,e)}const g=a?a._animationState.workValue:T.Matrix[0].clone();return F.ComposeToRef(i,n,e,g),g}function X(h,t){if(h.totalWeight===0&&h.totalAdditiveWeight===0)return t;const e=h.animations[0],i=h.originalValue;let n=t;if(h.totalWeight===0&&h.totalAdditiveWeight>0)n.copyFrom(i);else if(h.animations.length===1){if(S.SlerpToRef(i,e.currentValue,Math.min(1,h.totalWeight),n),h.totalAdditiveWeight===0)return n}else if(h.animations.length>1){let s=1,a,o;if(h.totalWeight<1){const l=1-h.totalWeight;a=[],o=[],a.push(i),o.push(l)}else{if(h.animations.length===2&&(S.SlerpToRef(h.animations[0].currentValue,h.animations[1].currentValue,h.animations[1].weight/h.totalWeight,t),h.totalAdditiveWeight===0))return t;a=[],o=[],s=h.totalWeight}for(let l=0;l<h.animations.length;l++){const g=h.animations[l];a.push(g.currentValue),o.push(g.weight/s)}let r=0;for(let l=0;l<a.length;){if(!l){S.SlerpToRef(a[l],a[l+1],o[l+1]/(o[l]+o[l+1]),t),n=t,r=o[l]+o[l+1],l+=2;continue}r+=o[l],S.SlerpToRef(n,a[l],o[l]/r,n),l++}}for(let s=0;s<h.additiveAnimations.length;s++){const a=h.additiveAnimations[s];a.weight!==0&&(n.multiplyToRef(a.currentValue,T.Quaternion[0]),S.SlerpToRef(n,T.Quaternion[0],a.weight,n))}return n}function J(h){if(h._registeredForLateAnimationBindings.length){for(let t=0;t<h._registeredForLateAnimationBindings.length;t++){const e=h._registeredForLateAnimationBindings.data[t];for(const i in e._lateAnimationHolders){const n=e._lateAnimationHolders[i],s=n.animations[0],a=n.originalValue;if(a==null)continue;const o=A.AllowMatrixDecomposeForInterpolation&&a.m;let r=e[i];if(o)r=z(n);else if(a.w!==void 0)r=X(n,r||S.Identity());else{let g=0,d=1;const c=s&&s._animationState.loopMode===A.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT;if(n.totalWeight<1)c?r=a.clone?a.clone():a:s&&a.scale?r=a.scale(1-n.totalWeight):s?r=a*(1-n.totalWeight):a.clone?r=a.clone():r=a;else if(s){d=n.totalWeight;const u=s.weight/d;u!==1?s.currentValue.scale?r=s.currentValue.scale(u):r=s.currentValue*u:r=s.currentValue,c&&(r.addToRef?r.addToRef(a,r):r+=a),g=1}for(let u=g;u<n.animations.length;u++){const _=n.animations[u],m=_.weight/d;if(m)_.currentValue.scaleAndAddToRef?_.currentValue.scaleAndAddToRef(m,r):r+=_.currentValue*m;else continue}for(let u=0;u<n.additiveAnimations.length;u++){const _=n.additiveAnimations[u],m=_.weight;if(m)_.currentValue.scaleAndAddToRef?_.currentValue.scaleAndAddToRef(m,r):r+=_.currentValue*m;else continue}}e[i]=r}e._lateAnimationHolders={}}h._registeredForLateAnimationBindings.reset()}}function Z(h,t,e){const i=t.target;h._registeredForLateAnimationBindings.pushNoDuplicate(i),i._lateAnimationHolders||(i._lateAnimationHolders={}),i._lateAnimationHolders[t.targetPath]||(i._lateAnimationHolders[t.targetPath]={totalWeight:0,totalAdditiveWeight:0,animations:[],additiveAnimations:[],originalValue:e}),t.isAdditive?(i._lateAnimationHolders[t.targetPath].additiveAnimations.push(t),i._lateAnimationHolders[t.targetPath].totalAdditiveWeight+=t.weight):(i._lateAnimationHolders[t.targetPath].animations.push(t),i._lateAnimationHolders[t.targetPath].totalWeight+=t.weight)}function q(h,t){t&&(t.prototype.copyAnimationRange=function(e,i,n,s=!1,a=null){this.animations.length===0&&(this.animations.push(new A(this.name,"_matrix",e.animations[0].framePerSecond,A.ANIMATIONTYPE_MATRIX,0)),this.animations[0].setKeys([]));const o=e.animations[0].getRange(i);if(!o)return!1;const r=o.from,l=o.to,g=e.animations[0].getKeys(),d=e.length,c=e.getParent(),u=this.getParent(),_=s&&c&&d&&this.length&&d!==this.length,m=_&&u&&c?u.length/c.length:1,b=s&&!u&&a&&(a.x!==1||a.y!==1||a.z!==1),V=this.animations[0].getKeys();let v,f,p;for(let y=0,I=g.length;y<I;y++)v=g[y],v.frame>=r&&v.frame<=l&&(s?(p=v.value.clone(),_?(f=p.getTranslation(),p.setTranslation(f.scaleInPlace(m))):b&&a?(f=p.getTranslation(),p.setTranslation(f.multiplyInPlace(a))):p=v.value):p=v.value,V.push({frame:v.frame+n,value:p}));return this.animations[0].createRange(i,r+n,l+n),!0}),h&&(h.prototype._animate=function(e){if(!this.animationsEnabled)return;const i=C.Now;if(!this._animationTimeLast){if(this._pendingData.length>0)return;this._animationTimeLast=i}this.deltaTime=e!==void 0?e:this.useConstantAnimationDeltaTime?16:(i-this._animationTimeLast)*this.animationTimeScale,this._animationTimeLast=i;const n=this._activeAnimatables;if(n.length===0)return;this._animationTime+=this.deltaTime;const s=this._animationTime;for(let a=0;a<n.length;a++){const o=n[a];!o._animate(s)&&o.disposeOnEnd&&a--}J(this)},h.prototype.sortActiveAnimatables=function(){this._activeAnimatables.sort((e,i)=>e.playOrder-i.playOrder)},h.prototype.beginWeightedAnimation=function(e,i,n,s=1,a,o=1,r,l,g,d,c=!1){const u=this.beginAnimation(e,i,n,a,o,r,l,!1,g,d,c);return u.weight=s,u},h.prototype.beginAnimation=function(e,i,n,s,a=1,o,r,l=!0,g,d,c=!1){if(a<0){const _=i;i=n,n=_,a=-a}i>n&&(a=-a),l&&this.stopAnimation(e,void 0,g),r||(r=new L(this,e,i,n,s,a,o,void 0,d,c));const u=g?g(e):!0;if(e.animations&&u&&r.appendAnimations(e,e.animations),e.getAnimatables){const _=e.getAnimatables();for(let m=0;m<_.length;m++)this.beginAnimation(_[m],i,n,s,a,o,r,l,g,d)}return r.reset(),r},h.prototype.beginHierarchyAnimation=function(e,i,n,s,a,o=1,r,l,g=!0,d,c,u=!1){const _=e.getDescendants(i),m=[];m.push(this.beginAnimation(e,n,s,a,o,r,l,g,d,void 0,u));for(const b of _)m.push(this.beginAnimation(b,n,s,a,o,r,l,g,d,void 0,u));return m},h.prototype.beginDirectAnimation=function(e,i,n,s,a,o=1,r,l,g=!1){if(o<0){const c=n;n=s,s=c,o=-o}return n>s&&(o=-o),new L(this,e,n,s,a,o,r,i,l,g)},h.prototype.beginDirectHierarchyAnimation=function(e,i,n,s,a,o,r,l,g,d=!1){const c=e.getDescendants(i),u=[];u.push(this.beginDirectAnimation(e,n,s,a,o,r,l,g,d));for(const _ of c)u.push(this.beginDirectAnimation(_,n,s,a,o,r,l,g,d));return u},h.prototype.getAnimatableByTarget=function(e){for(let i=0;i<this._activeAnimatables.length;i++)if(this._activeAnimatables[i].target===e)return this._activeAnimatables[i];return null},h.prototype.getAllAnimatablesByTarget=function(e){const i=[];for(let n=0;n<this._activeAnimatables.length;n++)this._activeAnimatables[n].target===e&&i.push(this._activeAnimatables[n]);return i},h.prototype.stopAnimation=function(e,i,n){const s=this.getAllAnimatablesByTarget(e);for(const a of s)a.stop(i,n)},h.prototype.stopAllAnimations=function(){if(this._activeAnimatables){for(let e=0;e<this._activeAnimatables.length;e++)this._activeAnimatables[e].stop(void 0,void 0,!0);this._activeAnimatables.length=0}for(const e of this.animationGroups)e.stop()})}q(W,U);class x{getClassName(){return"TargetedAnimation"}constructor(t){this.parent=t,this.uniqueId=H.UniqueId}serialize(){const t={};return t.animation=this.animation.serialize(),t.targetId=this.target.id,t.targetUniqueId=this.target.uniqueId,t}}class O{get mask(){return this._mask}set mask(t){this._mask!==t&&(this._mask=t,this.syncWithMask(!0))}syncWithMask(t=!1){if(!this.mask&&!t){this._numActiveAnimatables=this._targetedAnimations.length;return}this._numActiveAnimatables=0;for(let e=0;e<this._animatables.length;++e){const i=this._animatables[e];!this.mask||this.mask.disabled||this.mask.retainsTarget(i.target.name)?(this._numActiveAnimatables++,i.paused&&i.restart()):i.paused||i.pause()}}removeUnmaskedAnimations(){if(!(!this.mask||this.mask.disabled)){for(let t=0;t<this._animatables.length;++t){const e=this._animatables[t];this.mask.retainsTarget(e.target.name)||(e.stop(),this._animatables.splice(t,1),--t)}for(let t=0;t<this._targetedAnimations.length;t++){const e=this._targetedAnimations[t];this.mask.retainsTarget(e.target.name)||(this._targetedAnimations.splice(t,1),--t)}}}get from(){return this._from}set from(t){if(this._from!==t){this._from=t;for(let e=0;e<this._animatables.length;e++){const i=this._animatables[e];i.fromFrame=this._from}}}get to(){return this._to}set to(t){if(this._to!==t){this._to=t;for(let e=0;e<this._animatables.length;e++){const i=this._animatables[e];i.toFrame=this._to}}}get isStarted(){return this._isStarted}get isPlaying(){return this._isStarted&&!this._isPaused}get speedRatio(){return this._speedRatio}set speedRatio(t){if(this._speedRatio!==t){this._speedRatio=t;for(let e=0;e<this._animatables.length;e++){const i=this._animatables[e];i.speedRatio=this._speedRatio}}}get loopAnimation(){return this._loopAnimation}set loopAnimation(t){if(this._loopAnimation!==t){this._loopAnimation=t;for(let e=0;e<this._animatables.length;e++){const i=this._animatables[e];i.loopAnimation=this._loopAnimation}}}get isAdditive(){return this._isAdditive}set isAdditive(t){if(this._isAdditive!==t){this._isAdditive=t;for(let e=0;e<this._animatables.length;e++){const i=this._animatables[e];i.isAdditive=this._isAdditive}}}get weight(){return this._weight}set weight(t){this._weight!==t&&(this._weight=t,this.setWeightForAllAnimatables(this._weight))}get targetedAnimations(){return this._targetedAnimations}get animatables(){return this._animatables}get children(){return this._targetedAnimations}get playOrder(){return this._playOrder}set playOrder(t){if(this._playOrder!==t&&(this._playOrder=t,this._animatables.length>0)){for(let e=0;e<this._animatables.length;e++)this._animatables[e].playOrder=this._playOrder;this._scene.sortActiveAnimatables()}}get enableBlending(){return this._enableBlending}set enableBlending(t){if(this._enableBlending!==t&&(this._enableBlending=t,t!==null))for(let e=0;e<this._targetedAnimations.length;++e)this._targetedAnimations[e].animation.enableBlending=t}get blendingSpeed(){return this._blendingSpeed}set blendingSpeed(t){if(this._blendingSpeed!==t&&(this._blendingSpeed=t,t!==null))for(let e=0;e<this._targetedAnimations.length;++e)this._targetedAnimations[e].animation.blendingSpeed=t}getLength(t,e){t=t??this._from,e=e??this._to;const i=this.targetedAnimations[0].animation.framePerSecond*this._speedRatio;return(e-t)/i}static MergeAnimationGroups(t,e=!0,i=!1,n){if(t.length===0)return null;n=n??t[0].weight;let s=Number.MAX_VALUE,a=-Number.MAX_VALUE;if(i)for(const r of t)r.from<s&&(s=r.from),r.to>a&&(a=r.to);const o=new O(t[0].name+"_merged",t[0]._scene,n);for(const r of t){i&&r.normalize(s,a);for(const l of r.targetedAnimations)o.addTargetedAnimation(l.animation,l.target);e&&r.dispose()}return o}getScene(){return this._scene}constructor(t,e=null,i=-1,n=0){this.name=t,this._targetedAnimations=new Array,this._animatables=new Array,this._from=Number.MAX_VALUE,this._to=-Number.MAX_VALUE,this._speedRatio=1,this._loopAnimation=!1,this._isAdditive=!1,this._weight=-1,this._playOrder=0,this._enableBlending=null,this._blendingSpeed=null,this._numActiveAnimatables=0,this._shouldStart=!0,this._parentContainer=null,this.onAnimationEndObservable=new P,this.onAnimationLoopObservable=new P,this.onAnimationGroupLoopObservable=new P,this.onAnimationGroupEndObservable=new P,this.onAnimationGroupPauseObservable=new P,this.onAnimationGroupPlayObservable=new P,this.metadata=null,this._mask=null,this._animationLoopFlags=[],this._scene=e||K.LastCreatedScene,this._weight=i,this._playOrder=n,this.uniqueId=this._scene.getUniqueId(),this._scene.addAnimationGroup(this)}addTargetedAnimation(t,e){const i=new x(this);i.animation=t,i.target=e;const n=t.getKeys();return this._from>n[0].frame&&(this._from=n[0].frame),this._to<n[n.length-1].frame&&(this._to=n[n.length-1].frame),this._enableBlending!==null&&(t.enableBlending=this._enableBlending),this._blendingSpeed!==null&&(t.blendingSpeed=this._blendingSpeed),this._targetedAnimations.push(i),this._shouldStart=!0,i}removeTargetedAnimation(t){for(let e=this._targetedAnimations.length-1;e>-1;e--)this._targetedAnimations[e].animation===t&&this._targetedAnimations.splice(e,1)}normalize(t=null,e=null){t==null&&(t=this._from),e==null&&(e=this._to);for(let i=0;i<this._targetedAnimations.length;i++){const s=this._targetedAnimations[i].animation.getKeys(),a=s[0],o=s[s.length-1];if(a.frame>t){const r={frame:t,value:a.value,inTangent:a.inTangent,outTangent:a.outTangent,interpolation:a.interpolation};s.splice(0,0,r)}if(o.frame<e){const r={frame:e,value:o.value,inTangent:o.inTangent,outTangent:o.outTangent,interpolation:o.interpolation};s.push(r)}}return this._from=t,this._to=e,this}_processLoop(t,e,i){t.onAnimationLoop=()=>{this.onAnimationLoopObservable.notifyObservers(e),!this._animationLoopFlags[i]&&(this._animationLoopFlags[i]=!0,this._animationLoopCount++,this._animationLoopCount===this._numActiveAnimatables&&(this.onAnimationGroupLoopObservable.notifyObservers(this),this._animationLoopCount=0,this._animationLoopFlags.length=0))}}start(t=!1,e=1,i,n,s){if(this._isStarted||this._targetedAnimations.length===0)return this;this._loopAnimation=t,this._shouldStart=!1,this._animationLoopCount=0,this._animationLoopFlags.length=0;for(let a=0;a<this._targetedAnimations.length;a++){const o=this._targetedAnimations[a],r=this._scene.beginDirectAnimation(o.target,[o.animation],i!==void 0?i:this._from,n!==void 0?n:this._to,t,e,void 0,void 0,s!==void 0?s:this._isAdditive);r.weight=this._weight,r.playOrder=this._playOrder,r.onAnimationEnd=()=>{this.onAnimationEndObservable.notifyObservers(o),this._checkAnimationGroupEnded(r)},this._processLoop(r,o,a),this._animatables.push(r)}return this.syncWithMask(),this._scene.sortActiveAnimatables(),this._speedRatio=e,this._isStarted=!0,this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}pause(){if(!this._isStarted)return this;this._isPaused=!0;for(let t=0;t<this._animatables.length;t++)this._animatables[t].pause();return this.onAnimationGroupPauseObservable.notifyObservers(this),this}play(t){return this.isStarted&&this._animatables.length&&!this._shouldStart?(t!==void 0&&(this.loopAnimation=t),this.restart()):(this.stop(),this.start(t,this._speedRatio)),this}reset(){if(!this._isStarted)return this.play(),this.goToFrame(0),this.stop(!0),this;for(let t=0;t<this._animatables.length;t++)this._animatables[t].reset();return this}restart(){if(!this._isStarted)return this;for(let t=0;t<this._animatables.length;t++)this._animatables[t].restart();return this.syncWithMask(),this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}stop(t=!1){if(!this._isStarted)return this;const e=this._animatables.slice();for(let n=0;n<e.length;n++)e[n].stop(void 0,void 0,!0,t);let i=0;for(let n=0;n<this._scene._activeAnimatables.length;n++){const s=this._scene._activeAnimatables[n];s._runtimeAnimations.length>0?this._scene._activeAnimatables[i++]=s:t&&this._checkAnimationGroupEnded(s,t)}return this._scene._activeAnimatables.length=i,this._isStarted=!1,this}setWeightForAllAnimatables(t){for(let e=0;e<this._animatables.length;e++){const i=this._animatables[e];i.weight=t}return this}syncAllAnimationsWith(t){for(let e=0;e<this._animatables.length;e++)this._animatables[e].syncWith(t);return this}goToFrame(t,e=!1){if(!this._isStarted)return this;for(let i=0;i<this._animatables.length;i++)this._animatables[i].goToFrame(t,e);return this}getCurrentFrame(){return this.animatables[0]?.masterFrame||0}dispose(){if(this.isStarted&&this.stop(),this._targetedAnimations.length=0,this._animatables.length=0,this._scene.removeAnimationGroup(this),this._parentContainer){const t=this._parentContainer.animationGroups.indexOf(this);t>-1&&this._parentContainer.animationGroups.splice(t,1),this._parentContainer=null}this.onAnimationEndObservable.clear(),this.onAnimationGroupEndObservable.clear(),this.onAnimationGroupPauseObservable.clear(),this.onAnimationGroupPlayObservable.clear(),this.onAnimationLoopObservable.clear(),this.onAnimationGroupLoopObservable.clear()}_checkAnimationGroupEnded(t,e=!1){const i=this._animatables.indexOf(t);i>-1&&this._animatables.splice(i,1),this._animatables.length===this._targetedAnimations.length-this._numActiveAnimatables&&(this._isStarted=!1,e||this.onAnimationGroupEndObservable.notifyObservers(this),this._animatables.length=0)}clone(t,e,i=!1,n=!1){const s=new O(t||this.name,this._scene,this._weight,this._playOrder);s._from=this.from,s._to=this.to,s._speedRatio=this.speedRatio,s._loopAnimation=this.loopAnimation,s._isAdditive=this.isAdditive,s._enableBlending=this.enableBlending,s._blendingSpeed=this.blendingSpeed,s.metadata=this.metadata,s.mask=this.mask;for(const a of this._targetedAnimations)s.addTargetedAnimation(i?a.animation.clone(n):a.animation,e?e(a.target):a.target);return s}serialize(){const t={};t.name=this.name,t.from=this.from,t.to=this.to,t.speedRatio=this.speedRatio,t.loopAnimation=this.loopAnimation,t.isAdditive=this.isAdditive,t.weight=this.weight,t.playOrder=this.playOrder,t.enableBlending=this.enableBlending,t.blendingSpeed=this.blendingSpeed,t.targetedAnimations=[];for(let e=0;e<this.targetedAnimations.length;e++){const i=this.targetedAnimations[e];t.targetedAnimations[e]=i.serialize()}return w&&w.HasTags(this)&&(t.tags=w.GetTags(this)),this.metadata&&(t.metadata=this.metadata),t}static Parse(t,e,i){const n=new O(t.name,e,t.weight,t.playOrder);for(let s=0;s<t.targetedAnimations.length;s++){const a=t.targetedAnimations[s],o=A.Parse(a.animation),r=i?i(a):a.animation.property==="influence"?e.getMorphTargetById(a.targetId):e.getNodeById(a.targetId);r&&n.addTargetedAnimation(o,r)}return w&&w.AddTagsTo(n,t.tags),t.from!==null&&t.to!==null&&n.normalize(t.from,t.to),t.speedRatio!==void 0&&(n._speedRatio=t.speedRatio),t.loopAnimation!==void 0&&(n._loopAnimation=t.loopAnimation),t.isAdditive!==void 0&&(n._isAdditive=t.isAdditive),t.weight!==void 0&&(n._weight=t.weight),t.playOrder!==void 0&&(n._playOrder=t.playOrder),t.enableBlending!==void 0&&(n._enableBlending=t.enableBlending),t.blendingSpeed!==void 0&&(n._blendingSpeed=t.blendingSpeed),t.metadata!==void 0&&(n.metadata=t.metadata),n}static MakeAnimationAdditive(t,e,i,n=!1,s){let a;typeof e=="object"?a=e:a={referenceFrame:e,range:i,cloneOriginalAnimationGroup:n,clonedAnimationName:s};let o=t;a.cloneOriginalAnimationGroup&&(o=t.clone(a.clonedAnimationGroupName||o.name));const r=o.targetedAnimations;for(let l=0;l<r.length;l++){const g=r[l];g.animation=A.MakeAnimationAdditive(g.animation,a)}if(o.isAdditive=!0,a.clipKeys){let l=Number.MAX_VALUE,g=-Number.MAX_VALUE;const d=o.targetedAnimations;for(let c=0;c<d.length;c++){const m=d[c].animation.getKeys();l>m[0].frame&&(l=m[0].frame),g<m[m.length-1].frame&&(g=m[m.length-1].frame)}o._from=l,o._to=g}return o}static ClipKeys(t,e,i,n,s){const a=t.clone(n||t.name);return O.ClipKeysInPlace(a,e,i,s)}static ClipKeysInPlace(t,e,i,n){return O.ClipInPlace(t,e,i,n,!1)}static ClipFrames(t,e,i,n,s){const a=t.clone(n||t.name);return O.ClipFramesInPlace(a,e,i,s)}static ClipFramesInPlace(t,e,i,n){return O.ClipInPlace(t,e,i,n,!0)}static ClipInPlace(t,e,i,n,s=!1){let a=Number.MAX_VALUE,o=-Number.MAX_VALUE;const r=t.targetedAnimations;for(let l=0;l<r.length;l++){const g=r[l],d=n?g.animation:g.animation.clone();s&&(d.createKeyForFrame(e),d.createKeyForFrame(i));const c=d.getKeys(),u=[];let _=Number.MAX_VALUE;for(let m=0;m<c.length;m++){const b=c[m];if(!s&&m>=e&&m<=i||s&&b.frame>=e&&b.frame<=i){const V={frame:b.frame,value:b.value.clone?b.value.clone():b.value,inTangent:b.inTangent,outTangent:b.outTangent,interpolation:b.interpolation,lockedTangent:b.lockedTangent};_===Number.MAX_VALUE&&(_=V.frame),V.frame-=_,u.push(V)}}if(u.length===0){r.splice(l,1),l--;continue}a>u[0].frame&&(a=u[0].frame),o<u[u.length-1].frame&&(o=u[u.length-1].frame),d.setKeys(u,!0),g.animation=d}return t._from=a,t._to=o,t}getClassName(){return"AnimationGroup"}toString(t){let e="Name: "+this.name;return e+=", type: "+this.getClassName(),t&&(e+=", from: "+this._from,e+=", to: "+this._to,e+=", isStarted: "+this._isStarted,e+=", speedRatio: "+this._speedRatio,e+=", targetedAnimations length: "+this._targetedAnimations.length,e+=", animatables length: "+this._animatables),e}}const G=Object.freeze(Object.defineProperty({__proto__:null,AnimationGroup:O,TargetedAnimation:x},Symbol.toStringTag,{value:"Module"}));export{q as A,Z as R,x as T,L as a,O as b,Y as c,G as d};
@@ -0,0 +1 @@
1
+ import{e6 as f,eo as N,bK as A,dL as Y,gE as l,go as S,h3 as r,ir as h,d6 as K,R as z,bM as G,X as L,e4 as q,dv as M,gj as P,S as Q,fQ as j,gD as E,eV as F,dx as V,Q as T,dH as J,iD as U,iz as $,iC as tt,f1 as et}from"./dynamicTexture-Cuby-VOT.js";import{B as it,E as X,e as st}from"./easing-DbzzrXOl.js";import{A as R}from"./animation-C6iNAO1g.js";class at{constructor(){this._zoomStopsAnimation=!1,this._idleRotationSpeed=.05,this._idleRotationWaitTime=2e3,this._idleRotationSpinupTime=2e3,this.targetAlpha=null,this._attachedCamera=null,this._isPointerDown=!1,this._lastFrameTime=null,this._lastInteractionTime=-1/0,this._cameraRotationSpeed=0,this._lastFrameRadius=0}get name(){return"AutoRotation"}set zoomStopsAnimation(t){this._zoomStopsAnimation=t}get zoomStopsAnimation(){return this._zoomStopsAnimation}set idleRotationSpeed(t){this._idleRotationSpeed=t}get idleRotationSpeed(){return this._idleRotationSpeed}set idleRotationWaitTime(t){this._idleRotationWaitTime=t}get idleRotationWaitTime(){return this._idleRotationWaitTime}set idleRotationSpinupTime(t){this._idleRotationSpinupTime=t}get idleRotationSpinupTime(){return this._idleRotationSpinupTime}get rotationInProgress(){return Math.abs(this._cameraRotationSpeed)>0}get attachedNode(){return this._attachedCamera}init(){}attach(t){this._attachedCamera=t;const e=this._attachedCamera.getScene();this._onPrePointerObservableObserver=e.onPrePointerObservable.add(i=>{if(i.type===f.POINTERDOWN){this._isPointerDown=!0;return}i.type===f.POINTERUP&&(this._isPointerDown=!1)}),this._onAfterCheckInputsObserver=t.onAfterCheckInputsObservable.add(()=>{if(this._reachTargetAlpha())return;const i=N.Now;let s=0;this._lastFrameTime!=null&&(s=i-this._lastFrameTime),this._lastFrameTime=i,this._applyUserInteraction();const n=i-this._lastInteractionTime-this._idleRotationWaitTime,o=Math.max(Math.min(n/this._idleRotationSpinupTime,1),0);this._cameraRotationSpeed=this._idleRotationSpeed*o,this._attachedCamera&&(this._attachedCamera.alpha-=this._cameraRotationSpeed*(s/1e3))})}detach(){if(!this._attachedCamera)return;const t=this._attachedCamera.getScene();this._onPrePointerObservableObserver&&t.onPrePointerObservable.remove(this._onPrePointerObservableObserver),this._attachedCamera.onAfterCheckInputsObservable.remove(this._onAfterCheckInputsObserver),this._attachedCamera=null,this._lastFrameTime=null}resetLastInteractionTime(t){this._lastInteractionTime=t??N.Now}_reachTargetAlpha(){return this._attachedCamera&&this.targetAlpha?Math.abs(this._attachedCamera.alpha-this.targetAlpha)<A:!1}_userIsZooming(){return this._attachedCamera?this._attachedCamera.inertialRadiusOffset!==0:!1}_shouldAnimationStopForInteraction(){if(!this._attachedCamera)return!1;let t=!1;return this._lastFrameRadius===this._attachedCamera.radius&&this._attachedCamera.inertialRadiusOffset!==0&&(t=!0),this._lastFrameRadius=this._attachedCamera.radius,this._zoomStopsAnimation?t:this._userIsZooming()}_applyUserInteraction(){this._userIsMoving()&&!this._shouldAnimationStopForInteraction()&&(this._lastInteractionTime=N.Now)}_userIsMoving(){return this._attachedCamera?this._attachedCamera.inertialAlphaOffset!==0||this._attachedCamera.inertialBetaOffset!==0||this._attachedCamera.inertialRadiusOffset!==0||this._attachedCamera.inertialPanningX!==0||this._attachedCamera.inertialPanningY!==0||this._isPointerDown:!1}}class I{constructor(){this.transitionDuration=450,this.lowerRadiusTransitionRange=2,this.upperRadiusTransitionRange=-2,this._autoTransitionRange=!1,this._attachedCamera=null,this._radiusIsAnimating=!1,this._radiusBounceTransition=null,this._animatables=new Array}get name(){return"Bouncing"}get autoTransitionRange(){return this._autoTransitionRange}set autoTransitionRange(t){if(this._autoTransitionRange===t)return;this._autoTransitionRange=t;const e=this._attachedCamera;e&&(t?this._onMeshTargetChangedObserver=e.onMeshTargetChangedObservable.add(i=>{if(i&&(i.computeWorldMatrix(!0),i.getBoundingInfo)){const s=i.getBoundingInfo().diagonalLength;this.lowerRadiusTransitionRange=s*.05,this.upperRadiusTransitionRange=s*.05}}):this._onMeshTargetChangedObserver&&e.onMeshTargetChangedObservable.remove(this._onMeshTargetChangedObserver))}get attachedNode(){return this._attachedCamera}init(){}attach(t){this._attachedCamera=t,this._onAfterCheckInputsObserver=t.onAfterCheckInputsObservable.add(()=>{this._attachedCamera&&(this._isRadiusAtLimit(this._attachedCamera.lowerRadiusLimit)&&this._applyBoundRadiusAnimation(this.lowerRadiusTransitionRange),this._isRadiusAtLimit(this._attachedCamera.upperRadiusLimit)&&this._applyBoundRadiusAnimation(this.upperRadiusTransitionRange))})}detach(){this._attachedCamera&&(this._onAfterCheckInputsObserver&&this._attachedCamera.onAfterCheckInputsObservable.remove(this._onAfterCheckInputsObserver),this._onMeshTargetChangedObserver&&this._attachedCamera.onMeshTargetChangedObservable.remove(this._onMeshTargetChangedObserver),this._attachedCamera=null)}_isRadiusAtLimit(t){return this._attachedCamera?this._attachedCamera.radius===t&&!this._radiusIsAnimating:!1}_applyBoundRadiusAnimation(t){if(!this._attachedCamera)return;this._radiusBounceTransition||(I.EasingFunction.setEasingMode(I.EasingMode),this._radiusBounceTransition=R.CreateAnimation("radius",R.ANIMATIONTYPE_FLOAT,60,I.EasingFunction)),this._cachedWheelPrecision=this._attachedCamera.wheelPrecision,this._attachedCamera.wheelPrecision=1/0,this._attachedCamera.inertialRadiusOffset=0,this.stopAllAnimations(),this._radiusIsAnimating=!0;const e=R.TransitionTo("radius",this._attachedCamera.radius+t,this._attachedCamera,this._attachedCamera.getScene(),60,this._radiusBounceTransition,this.transitionDuration,()=>this._clearAnimationLocks());e&&this._animatables.push(e)}_clearAnimationLocks(){this._radiusIsAnimating=!1,this._attachedCamera&&(this._attachedCamera.wheelPrecision=this._cachedWheelPrecision)}stopAllAnimations(){for(this._attachedCamera&&(this._attachedCamera.animations=[]);this._animatables.length;)this._animatables[0].onAnimationEnd=null,this._animatables[0].stop(),this._animatables.shift()}}I.EasingFunction=new it(.3);I.EasingMode=X.EASINGMODE_EASEOUT;class b{constructor(){this.onTargetFramingAnimationEndObservable=new Y,this._mode=b.FitFrustumSidesMode,this._radiusScale=1,this._positionScale=.5,this._defaultElevation=.3,this._elevationReturnTime=1500,this._elevationReturnWaitTime=1e3,this._zoomStopsAnimation=!1,this._framingTime=1500,this.autoCorrectCameraLimitsAndSensibility=!0,this._attachedCamera=null,this._isPointerDown=!1,this._lastInteractionTime=-1/0,this._animatables=new Array,this._betaIsAnimating=!1}get name(){return"Framing"}set mode(t){this._mode=t}get mode(){return this._mode}set radiusScale(t){this._radiusScale=t}get radiusScale(){return this._radiusScale}set positionScale(t){this._positionScale=t}get positionScale(){return this._positionScale}set defaultElevation(t){this._defaultElevation=t}get defaultElevation(){return this._defaultElevation}set elevationReturnTime(t){this._elevationReturnTime=t}get elevationReturnTime(){return this._elevationReturnTime}set elevationReturnWaitTime(t){this._elevationReturnWaitTime=t}get elevationReturnWaitTime(){return this._elevationReturnWaitTime}set zoomStopsAnimation(t){this._zoomStopsAnimation=t}get zoomStopsAnimation(){return this._zoomStopsAnimation}set framingTime(t){this._framingTime=t}get framingTime(){return this._framingTime}get attachedNode(){return this._attachedCamera}init(){}attach(t){this._attachedCamera=t;const e=this._attachedCamera.getScene();b.EasingFunction.setEasingMode(b.EasingMode),this._onPrePointerObservableObserver=e.onPrePointerObservable.add(i=>{if(i.type===f.POINTERDOWN){this._isPointerDown=!0;return}i.type===f.POINTERUP&&(this._isPointerDown=!1)}),this._onMeshTargetChangedObserver=t.onMeshTargetChangedObservable.add(i=>{i&&i.getBoundingInfo&&this.zoomOnMesh(i,void 0,()=>{this.onTargetFramingAnimationEndObservable.notifyObservers()})}),this._onAfterCheckInputsObserver=t.onAfterCheckInputsObservable.add(()=>{this._applyUserInteraction(),this._maintainCameraAboveGround()})}detach(){if(!this._attachedCamera)return;const t=this._attachedCamera.getScene();this._onPrePointerObservableObserver&&t.onPrePointerObservable.remove(this._onPrePointerObservableObserver),this._onAfterCheckInputsObserver&&this._attachedCamera.onAfterCheckInputsObservable.remove(this._onAfterCheckInputsObserver),this._onMeshTargetChangedObserver&&this._attachedCamera.onMeshTargetChangedObservable.remove(this._onMeshTargetChangedObserver),this._attachedCamera=null}zoomOnMesh(t,e=!1,i=null){t.computeWorldMatrix(!0);const s=t.getBoundingInfo().boundingBox;this.zoomOnBoundingInfo(s.minimumWorld,s.maximumWorld,e,i)}zoomOnMeshHierarchy(t,e=!1,i=null){t.computeWorldMatrix(!0);const s=t.getHierarchyBoundingVectors(!0);this.zoomOnBoundingInfo(s.min,s.max,e,i)}zoomOnMeshesHierarchy(t,e=!1,i=null){const s=new l(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),n=new l(-Number.MAX_VALUE,-Number.MAX_VALUE,-Number.MAX_VALUE);for(let o=0;o<t.length;o++){const c=t[o].getHierarchyBoundingVectors(!0);l.CheckExtends(c.min,s,n),l.CheckExtends(c.max,s,n)}this.zoomOnBoundingInfo(s,n,e,i)}zoomOnBoundingInfo(t,e,i=!1,s=null){let n;if(!this._attachedCamera)return!1;const o=t.y,c=e.y,a=o+(c-o)*this._positionScale,d=e.subtract(t).scale(.5);if(!isFinite(a))return!1;if(i)n=new l(0,a,0);else{const m=t.add(d);n=new l(m.x,a,m.z)}this._vectorTransition||(this._vectorTransition=R.CreateAnimation("target",R.ANIMATIONTYPE_VECTOR3,60,b.EasingFunction)),this._betaIsAnimating=!0;let _=R.TransitionTo("target",n,this._attachedCamera,this._attachedCamera.getScene(),60,this._vectorTransition,this._framingTime);_&&this._animatables.push(_);let g=0;if(this._mode===b.FitFrustumSidesMode){const m=this._calculateLowerRadiusFromModelBoundingSphere(t,e);this.autoCorrectCameraLimitsAndSensibility&&(this._attachedCamera.lowerRadiusLimit=d.length()+this._attachedCamera.minZ),g=m}else this._mode===b.IgnoreBoundsSizeMode&&(g=this._calculateLowerRadiusFromModelBoundingSphere(t,e),this.autoCorrectCameraLimitsAndSensibility&&this._attachedCamera.lowerRadiusLimit===null&&(this._attachedCamera.lowerRadiusLimit=this._attachedCamera.minZ));if(this.autoCorrectCameraLimitsAndSensibility){const m=e.subtract(t).length();this._attachedCamera.panningSensibility=5e3/m,this._attachedCamera.wheelPrecision=100/g}return this._radiusTransition||(this._radiusTransition=R.CreateAnimation("radius",R.ANIMATIONTYPE_FLOAT,60,b.EasingFunction)),_=R.TransitionTo("radius",g,this._attachedCamera,this._attachedCamera.getScene(),60,this._radiusTransition,this._framingTime,()=>{this.stopAllAnimations(),s&&s(),this._attachedCamera&&this._attachedCamera.useInputToRestoreState&&this._attachedCamera.storeState()}),_&&this._animatables.push(_),!0}_calculateLowerRadiusFromModelBoundingSphere(t,e){const i=this._attachedCamera;if(!i)return 0;let s=i._calculateLowerRadiusFromModelBoundingSphere(t,e,this._radiusScale);return i.lowerRadiusLimit&&this._mode===b.IgnoreBoundsSizeMode&&(s=s<i.lowerRadiusLimit?i.lowerRadiusLimit:s),i.upperRadiusLimit&&(s=s>i.upperRadiusLimit?i.upperRadiusLimit:s),s}_maintainCameraAboveGround(){if(this._elevationReturnTime<0)return;const t=N.Now-this._lastInteractionTime,e=Math.PI*.5-this._defaultElevation,i=Math.PI*.5;if(this._attachedCamera&&!this._betaIsAnimating&&this._attachedCamera.beta>i&&t>=this._elevationReturnWaitTime){this._betaIsAnimating=!0,this.stopAllAnimations(),this._betaTransition||(this._betaTransition=R.CreateAnimation("beta",R.ANIMATIONTYPE_FLOAT,60,b.EasingFunction));const s=R.TransitionTo("beta",e,this._attachedCamera,this._attachedCamera.getScene(),60,this._betaTransition,this._elevationReturnTime,()=>{this._clearAnimationLocks(),this.stopAllAnimations()});s&&this._animatables.push(s)}}_clearAnimationLocks(){this._betaIsAnimating=!1}_applyUserInteraction(){this.isUserIsMoving&&(this._lastInteractionTime=N.Now,this.stopAllAnimations(),this._clearAnimationLocks())}stopAllAnimations(){for(this._attachedCamera&&(this._attachedCamera.animations=[]);this._animatables.length;)this._animatables[0]&&(this._animatables[0].onAnimationEnd=null,this._animatables[0].stop()),this._animatables.shift()}get isUserIsMoving(){return this._attachedCamera?this._attachedCamera.inertialAlphaOffset!==0||this._attachedCamera.inertialBetaOffset!==0||this._attachedCamera.inertialRadiusOffset!==0||this._attachedCamera.inertialPanningX!==0||this._attachedCamera.inertialPanningY!==0||this._isPointerDown:!1}}b.EasingFunction=new st;b.EasingMode=X.EASINGMODE_EASEINOUT;b.IgnoreBoundsSizeMode=0;b.FitFrustumSidesMode=1;class Z{constructor(){this._currentMousePointerIdDown=-1,this.buttons=[0,1,2]}attachControl(t){t=S.BackCompatCameraNoPreventDefault(arguments);const e=this.camera.getEngine(),i=e.getInputElement();let s=0,n=null;this._pointA=null,this._pointB=null,this._altKey=!1,this._ctrlKey=!1,this._metaKey=!1,this._shiftKey=!1,this._buttonsPressed=0,this._pointerInput=c=>{const a=c.event,d=a.pointerType==="touch";if(c.type!==f.POINTERMOVE&&this.buttons.indexOf(a.button)===-1)return;const _=a.target;if(this._altKey=a.altKey,this._ctrlKey=a.ctrlKey,this._metaKey=a.metaKey,this._shiftKey=a.shiftKey,this._buttonsPressed=a.buttons,e.isPointerLock){const g=a.movementX,m=a.movementY;this.onTouch(null,g,m),this._pointA=null,this._pointB=null}else{if(c.type!==f.POINTERDOWN&&c.type!==f.POINTERDOUBLETAP&&d&&this._pointA?.pointerId!==a.pointerId&&this._pointB?.pointerId!==a.pointerId)return;if(c.type===f.POINTERDOWN&&(this._currentMousePointerIdDown===-1||d)){try{_?.setPointerCapture(a.pointerId)}catch{}if(this._pointA===null)this._pointA={x:a.clientX,y:a.clientY,pointerId:a.pointerId,type:a.pointerType,button:a.button};else if(this._pointB===null)this._pointB={x:a.clientX,y:a.clientY,pointerId:a.pointerId,type:a.pointerType,button:a.button};else return;this._currentMousePointerIdDown===-1&&!d&&(this._currentMousePointerIdDown=a.pointerId),this.onButtonDown(a),t||(a.preventDefault(),i&&i.focus())}else if(c.type===f.POINTERDOUBLETAP)this.onDoubleTap(a.pointerType);else if(c.type===f.POINTERUP&&(this._currentMousePointerIdDown===a.pointerId||d)){try{_?.releasePointerCapture(a.pointerId)}catch{}d||(this._pointB=null),e._badOS?this._pointA=this._pointB=null:this._pointB&&this._pointA&&this._pointA.pointerId==a.pointerId?(this._pointA=this._pointB,this._pointB=null):this._pointA&&this._pointB&&this._pointB.pointerId==a.pointerId?this._pointB=null:this._pointA=this._pointB=null,(s!==0||n)&&(this.onMultiTouch(this._pointA,this._pointB,s,0,n,null),s=0,n=null),this._currentMousePointerIdDown=-1,this.onButtonUp(a),t||a.preventDefault()}else if(c.type===f.POINTERMOVE){if(t||a.preventDefault(),this._pointA&&this._pointB===null){const g=a.clientX-this._pointA.x,m=a.clientY-this._pointA.y;this._pointA.x=a.clientX,this._pointA.y=a.clientY,this.onTouch(this._pointA,g,m)}else if(this._pointA&&this._pointB){const g=this._pointA.pointerId===a.pointerId?this._pointA:this._pointB;g.x=a.clientX,g.y=a.clientY;const m=this._pointA.x-this._pointB.x,D=this._pointA.y-this._pointB.y,v=m*m+D*D,w={x:(this._pointA.x+this._pointB.x)/2,y:(this._pointA.y+this._pointB.y)/2,pointerId:a.pointerId,type:c.type};this.onMultiTouch(this._pointA,this._pointB,s,v,n,w),n=w,s=v}}}},this._observer=this.camera.getScene()._inputManager._addCameraPointerObserver(this._pointerInput,f.POINTERDOWN|f.POINTERUP|f.POINTERMOVE|f.POINTERDOUBLETAP),this._onLostFocus=()=>{this._pointA=this._pointB=null,s=0,n=null,this.onLostFocus()},this._contextMenuBind=c=>this.onContextMenu(c),i&&i.addEventListener("contextmenu",this._contextMenuBind,!1);const o=this.camera.getScene().getEngine().getHostWindow();o&&S.RegisterTopRootEvents(o,[{name:"blur",handler:this._onLostFocus}])}detachControl(){if(this._onLostFocus){const t=this.camera.getScene().getEngine().getHostWindow();t&&S.UnregisterTopRootEvents(t,[{name:"blur",handler:this._onLostFocus}])}if(this._observer){if(this.camera.getScene()._inputManager._removeCameraPointerObserver(this._observer),this._observer=null,this._contextMenuBind){const t=this.camera.getScene().getEngine().getInputElement();t&&t.removeEventListener("contextmenu",this._contextMenuBind)}this._onLostFocus=null}this._altKey=!1,this._ctrlKey=!1,this._metaKey=!1,this._shiftKey=!1,this._buttonsPressed=0,this._currentMousePointerIdDown=-1}getClassName(){return"BaseCameraPointersInput"}getSimpleName(){return"pointers"}onDoubleTap(t){}onTouch(t,e,i){}onMultiTouch(t,e,i,s,n,o){}onContextMenu(t){t.preventDefault()}onButtonDown(t){}onButtonUp(t){}onLostFocus(){}}r([h()],Z.prototype,"buttons",void 0);class C{constructor(){this.keysUp=[38],this.keysDown=[40],this.keysLeft=[37],this.keysRight=[39],this.keysReset=[220],this.panningSensibility=50,this.zoomingSensibility=25,this.useAltToZoom=!0,this.angularSpeed=.01,this._keys=new Array}attachControl(t){t=S.BackCompatCameraNoPreventDefault(arguments),!this._onCanvasBlurObserver&&(this._scene=this.camera.getScene(),this._engine=this._scene.getEngine(),this._onCanvasBlurObserver=this._engine.onCanvasBlurObservable.add(()=>{this._keys.length=0}),this._onKeyboardObserver=this._scene.onKeyboardObservable.add(e=>{const i=e.event;if(!i.metaKey){if(e.type===K.KEYDOWN)this._ctrlPressed=i.ctrlKey,this._altPressed=i.altKey,(this.keysUp.indexOf(i.keyCode)!==-1||this.keysDown.indexOf(i.keyCode)!==-1||this.keysLeft.indexOf(i.keyCode)!==-1||this.keysRight.indexOf(i.keyCode)!==-1||this.keysReset.indexOf(i.keyCode)!==-1)&&(this._keys.indexOf(i.keyCode)===-1&&this._keys.push(i.keyCode),i.preventDefault&&(t||i.preventDefault()));else if(this.keysUp.indexOf(i.keyCode)!==-1||this.keysDown.indexOf(i.keyCode)!==-1||this.keysLeft.indexOf(i.keyCode)!==-1||this.keysRight.indexOf(i.keyCode)!==-1||this.keysReset.indexOf(i.keyCode)!==-1){const s=this._keys.indexOf(i.keyCode);s>=0&&this._keys.splice(s,1),i.preventDefault&&(t||i.preventDefault())}}}))}detachControl(){this._scene&&(this._onKeyboardObserver&&this._scene.onKeyboardObservable.remove(this._onKeyboardObserver),this._onCanvasBlurObserver&&this._engine.onCanvasBlurObservable.remove(this._onCanvasBlurObserver),this._onKeyboardObserver=null,this._onCanvasBlurObserver=null),this._keys.length=0}checkInputs(){if(this._onKeyboardObserver){const t=this.camera;for(let e=0;e<this._keys.length;e++){const i=this._keys[e];this.keysLeft.indexOf(i)!==-1?this._ctrlPressed&&this.camera._useCtrlForPanning?t.inertialPanningX-=1/this.panningSensibility:t.inertialAlphaOffset-=this.angularSpeed:this.keysUp.indexOf(i)!==-1?this._ctrlPressed&&this.camera._useCtrlForPanning?t.inertialPanningY+=1/this.panningSensibility:this._altPressed&&this.useAltToZoom?t.inertialRadiusOffset+=1/this.zoomingSensibility:t.inertialBetaOffset-=this.angularSpeed:this.keysRight.indexOf(i)!==-1?this._ctrlPressed&&this.camera._useCtrlForPanning?t.inertialPanningX+=1/this.panningSensibility:t.inertialAlphaOffset+=this.angularSpeed:this.keysDown.indexOf(i)!==-1?this._ctrlPressed&&this.camera._useCtrlForPanning?t.inertialPanningY-=1/this.panningSensibility:this._altPressed&&this.useAltToZoom?t.inertialRadiusOffset-=1/this.zoomingSensibility:t.inertialBetaOffset+=this.angularSpeed:this.keysReset.indexOf(i)!==-1&&t.useInputToRestoreState&&t.restoreState()}}}getClassName(){return"ArcRotateCameraKeyboardMoveInput"}getSimpleName(){return"keyboard"}}r([h()],C.prototype,"keysUp",void 0);r([h()],C.prototype,"keysDown",void 0);r([h()],C.prototype,"keysLeft",void 0);r([h()],C.prototype,"keysRight",void 0);r([h()],C.prototype,"keysReset",void 0);r([h()],C.prototype,"panningSensibility",void 0);r([h()],C.prototype,"zoomingSensibility",void 0);r([h()],C.prototype,"useAltToZoom",void 0);r([h()],C.prototype,"angularSpeed",void 0);z.ArcRotateCameraKeyboardMoveInput=C;const nt=40;class x{constructor(){this.wheelPrecision=3,this.zoomToMouseLocation=!1,this.wheelDeltaPercentage=0,this.customComputeDeltaFromMouseWheel=null,this._viewOffset=new l(0,0,0),this._globalOffset=new l(0,0,0),this._inertialPanning=l.Zero()}_computeDeltaFromMouseWheelLegacyEvent(t,e){let i;const s=t*.01*this.wheelDeltaPercentage*e;return t>0?i=s/(1+this.wheelDeltaPercentage):i=s*(1+this.wheelDeltaPercentage),i}attachControl(t){t=S.BackCompatCameraNoPreventDefault(arguments),this._wheel=e=>{if(e.type!==f.POINTERWHEEL)return;const i=e.event;let s;const n=i.deltaMode===G.DOM_DELTA_LINE?nt:1,o=-(i.deltaY*n);if(this.customComputeDeltaFromMouseWheel)s=this.customComputeDeltaFromMouseWheel(o,this,i);else if(this.wheelDeltaPercentage){if(s=this._computeDeltaFromMouseWheelLegacyEvent(o,this.camera.radius),s>0){let c=this.camera.radius,a=this.camera.inertialRadiusOffset+s;for(let d=0;d<20&&!(c<=a||Math.abs(a*this.camera.inertia)<.001);d++)c-=a,a*=this.camera.inertia;c=L(c,0,Number.MAX_VALUE),s=this._computeDeltaFromMouseWheelLegacyEvent(o,c)}}else s=o/(this.wheelPrecision*40);s&&(this.zoomToMouseLocation?(this._hitPlane||this._updateHitPlane(),this._zoomToMouse(s)):this.camera.inertialRadiusOffset+=s),i.preventDefault&&(t||i.preventDefault())},this._observer=this.camera.getScene()._inputManager._addCameraPointerObserver(this._wheel,f.POINTERWHEEL),this.zoomToMouseLocation&&this._inertialPanning.setAll(0)}detachControl(){this._observer&&(this.camera.getScene()._inputManager._removeCameraPointerObserver(this._observer),this._observer=null,this._wheel=null)}checkInputs(){if(!this.zoomToMouseLocation)return;const t=this.camera;0+t.inertialAlphaOffset+t.inertialBetaOffset+t.inertialRadiusOffset&&(this._updateHitPlane(),t.target.addInPlace(this._inertialPanning),this._inertialPanning.scaleInPlace(t.inertia),this._zeroIfClose(this._inertialPanning))}getClassName(){return"ArcRotateCameraMouseWheelInput"}getSimpleName(){return"mousewheel"}_updateHitPlane(){const t=this.camera,e=t.target.subtract(t.position);this._hitPlane=q.FromPositionAndNormal(t.target,e)}_getPosition(){const t=this.camera,e=t.getScene(),i=e.createPickingRay(e.pointerX,e.pointerY,M.Identity(),t,!1);(t.targetScreenOffset.x!==0||t.targetScreenOffset.y!==0)&&(this._viewOffset.set(t.targetScreenOffset.x,t.targetScreenOffset.y,0),t.getViewMatrix().invertToRef(t._cameraTransformMatrix),this._globalOffset=l.TransformNormal(this._viewOffset,t._cameraTransformMatrix),i.origin.addInPlace(this._globalOffset));let s=0;return this._hitPlane&&(s=i.intersectsPlane(this._hitPlane)??0),i.origin.addInPlace(i.direction.scaleInPlace(s))}_zoomToMouse(t){const e=this.camera,i=1-e.inertia;if(e.lowerRadiusLimit){const a=e.lowerRadiusLimit??0;e.radius-(e.inertialRadiusOffset+t)/i<a&&(t=(e.radius-a)*i-e.inertialRadiusOffset)}if(e.upperRadiusLimit){const a=e.upperRadiusLimit??0;e.radius-(e.inertialRadiusOffset+t)/i>a&&(t=(e.radius-a)*i-e.inertialRadiusOffset)}const n=t/i/e.radius,o=this._getPosition(),c=P.Vector3[6];o.subtractToRef(e.target,c),c.scaleInPlace(n),c.scaleInPlace(i),this._inertialPanning.addInPlace(c),e.inertialRadiusOffset+=t}_zeroIfClose(t){Math.abs(t.x)<A&&(t.x=0),Math.abs(t.y)<A&&(t.y=0),Math.abs(t.z)<A&&(t.z=0)}}r([h()],x.prototype,"wheelPrecision",void 0);r([h()],x.prototype,"zoomToMouseLocation",void 0);r([h()],x.prototype,"wheelDeltaPercentage",void 0);z.ArcRotateCameraMouseWheelInput=x;class k extends Z{constructor(){super(...arguments),this.pinchZoom=!0,this.multiTouchPanning=!0,this.multiTouchPanAndZoom=!0,this._isPinching=!1,this._twoFingerActivityCount=0,this._shouldStartPinchZoom=!1}_computePinchZoom(t,e){}_computeMultiTouchPanning(t,e){}onMultiTouch(t,e,i,s,n,o){i===0&&n===null||s===0&&o===null||(this.multiTouchPanAndZoom?(this._computePinchZoom(i,s),this._computeMultiTouchPanning(n,o)):this.multiTouchPanning&&this.pinchZoom?(this._twoFingerActivityCount++,this._isPinching||this._shouldStartPinchZoom?(this._computePinchZoom(i,s),this._isPinching=!0):this._computeMultiTouchPanning(n,o)):this.multiTouchPanning?this._computeMultiTouchPanning(n,o):this.pinchZoom&&this._computePinchZoom(i,s))}onButtonUp(t){this._twoFingerActivityCount=0,this._isPinching=!1}onLostFocus(){this._twoFingerActivityCount=0,this._isPinching=!1}}r([h()],k.prototype,"pinchZoom",void 0);r([h()],k.prototype,"multiTouchPanning",void 0);r([h()],k.prototype,"multiTouchPanAndZoom",void 0);class O extends k{constructor(){super(...arguments),this.buttons=[0,1,2],this.angularSensibilityX=1e3,this.angularSensibilityY=1e3,this.pinchPrecision=12,this.pinchDeltaPercentage=0,this.useNaturalPinchZoom=!1,this.panningSensibility=1e3,this.pinchInwards=!0,this._isPanClick=!1}getClassName(){return"ArcRotateCameraPointersInput"}_computeMultiTouchPanning(t,e){if(this.panningSensibility!==0&&t&&e){const i=e.x-t.x,s=e.y-t.y;this.camera.inertialPanningX+=-i/this.panningSensibility,this.camera.inertialPanningY+=s/this.panningSensibility}}_computePinchZoom(t,e){const i=this.camera.radius||O.MinimumRadiusForPinch;this.useNaturalPinchZoom?this.camera.radius=i*Math.sqrt(t)/Math.sqrt(e):this.pinchDeltaPercentage?this.camera.inertialRadiusOffset+=(e-t)*.001*i*this.pinchDeltaPercentage:this.camera.inertialRadiusOffset+=(e-t)/(this.pinchPrecision*(this.pinchInwards?1:-1)*(this.angularSensibilityX+this.angularSensibilityY)/2)}onTouch(t,e,i){this.panningSensibility!==0&&(this._ctrlKey&&this.camera._useCtrlForPanning||this._isPanClick)?(this.camera.inertialPanningX+=-e/this.panningSensibility,this.camera.inertialPanningY+=i/this.panningSensibility):(this.camera.inertialAlphaOffset-=e/this.angularSensibilityX,this.camera.inertialBetaOffset-=i/this.angularSensibilityY)}onDoubleTap(){this.camera.useInputToRestoreState&&this.camera.restoreState()}onMultiTouch(t,e,i,s,n,o){this._shouldStartPinchZoom=this._twoFingerActivityCount<20&&Math.abs(Math.sqrt(s)-Math.sqrt(i))>this.camera.pinchToPanMaxDistance,super.onMultiTouch(t,e,i,s,n,o)}onButtonDown(t){this._isPanClick=t.button===this.camera._panningMouseButton,super.onButtonDown(t)}onButtonUp(t){super.onButtonUp(t)}onLostFocus(){this._isPanClick=!1,super.onLostFocus()}}O.MinimumRadiusForPinch=.001;r([h()],O.prototype,"buttons",void 0);r([h()],O.prototype,"angularSensibilityX",void 0);r([h()],O.prototype,"angularSensibilityY",void 0);r([h()],O.prototype,"pinchPrecision",void 0);r([h()],O.prototype,"pinchDeltaPercentage",void 0);r([h()],O.prototype,"useNaturalPinchZoom",void 0);r([h()],O.prototype,"panningSensibility",void 0);z.ArcRotateCameraPointersInput=O;class ot extends Q{constructor(t){super(t)}addMouseWheel(){return this.add(new x),this}addPointers(){return this.add(new O),this}addKeyboard(){return this.add(new C),this}}J.AddNodeConstructor("ArcRotateCamera",(p,t)=>()=>new u(p,0,0,1,l.Zero(),t));function W(p){let t=Math.PI/2;return p.x===0&&p.z===0||(t=Math.acos(p.x/Math.sqrt(Math.pow(p.x,2)+Math.pow(p.z,2)))),p.z<0&&(t=2*Math.PI-t),t}function H(p,t){return Math.acos(p/t)}function y(p,t){return isNaN(p)?t:p}class u extends j{get target(){return this._target}set target(t){this.setTarget(t)}get targetHost(){return this._targetHost}set targetHost(t){t&&this.setTarget(t)}getTarget(){return this.target}get position(){return this._position}set position(t){this.setPosition(t)}set upVector(t){this._upToYMatrix||(this._yToUpMatrix=new M,this._upToYMatrix=new M,this._upVector=l.Zero()),t.normalize(),this._upVector.copyFrom(t),this.setMatUp()}get upVector(){return this._upVector}setMatUp(){M.RotationAlignToRef(l.UpReadOnly,this._upVector,this._yToUpMatrix),M.RotationAlignToRef(this._upVector,l.UpReadOnly,this._upToYMatrix)}get angularSensibilityX(){const t=this.inputs.attached.pointers;return t?t.angularSensibilityX:0}set angularSensibilityX(t){const e=this.inputs.attached.pointers;e&&(e.angularSensibilityX=t)}get angularSensibilityY(){const t=this.inputs.attached.pointers;return t?t.angularSensibilityY:0}set angularSensibilityY(t){const e=this.inputs.attached.pointers;e&&(e.angularSensibilityY=t)}get pinchPrecision(){const t=this.inputs.attached.pointers;return t?t.pinchPrecision:0}set pinchPrecision(t){const e=this.inputs.attached.pointers;e&&(e.pinchPrecision=t)}get pinchDeltaPercentage(){const t=this.inputs.attached.pointers;return t?t.pinchDeltaPercentage:0}set pinchDeltaPercentage(t){const e=this.inputs.attached.pointers;e&&(e.pinchDeltaPercentage=t)}get useNaturalPinchZoom(){const t=this.inputs.attached.pointers;return t?t.useNaturalPinchZoom:!1}set useNaturalPinchZoom(t){const e=this.inputs.attached.pointers;e&&(e.useNaturalPinchZoom=t)}get panningSensibility(){const t=this.inputs.attached.pointers;return t?t.panningSensibility:0}set panningSensibility(t){const e=this.inputs.attached.pointers;e&&(e.panningSensibility=t)}get keysUp(){const t=this.inputs.attached.keyboard;return t?t.keysUp:[]}set keysUp(t){const e=this.inputs.attached.keyboard;e&&(e.keysUp=t)}get keysDown(){const t=this.inputs.attached.keyboard;return t?t.keysDown:[]}set keysDown(t){const e=this.inputs.attached.keyboard;e&&(e.keysDown=t)}get keysLeft(){const t=this.inputs.attached.keyboard;return t?t.keysLeft:[]}set keysLeft(t){const e=this.inputs.attached.keyboard;e&&(e.keysLeft=t)}get keysRight(){const t=this.inputs.attached.keyboard;return t?t.keysRight:[]}set keysRight(t){const e=this.inputs.attached.keyboard;e&&(e.keysRight=t)}get wheelPrecision(){const t=this.inputs.attached.mousewheel;return t?t.wheelPrecision:0}set wheelPrecision(t){const e=this.inputs.attached.mousewheel;e&&(e.wheelPrecision=t)}get zoomToMouseLocation(){const t=this.inputs.attached.mousewheel;return t?t.zoomToMouseLocation:!1}set zoomToMouseLocation(t){const e=this.inputs.attached.mousewheel;e&&(e.zoomToMouseLocation=t)}get wheelDeltaPercentage(){const t=this.inputs.attached.mousewheel;return t?t.wheelDeltaPercentage:0}set wheelDeltaPercentage(t){const e=this.inputs.attached.mousewheel;e&&(e.wheelDeltaPercentage=t)}get isInterpolating(){return this._isInterpolating}get bouncingBehavior(){return this._bouncingBehavior}get useBouncingBehavior(){return this._bouncingBehavior!=null}set useBouncingBehavior(t){t!==this.useBouncingBehavior&&(t?(this._bouncingBehavior=new I,this.addBehavior(this._bouncingBehavior)):this._bouncingBehavior&&(this.removeBehavior(this._bouncingBehavior),this._bouncingBehavior=null))}get framingBehavior(){return this._framingBehavior}get useFramingBehavior(){return this._framingBehavior!=null}set useFramingBehavior(t){t!==this.useFramingBehavior&&(t?(this._framingBehavior=new b,this.addBehavior(this._framingBehavior)):this._framingBehavior&&(this.removeBehavior(this._framingBehavior),this._framingBehavior=null))}get autoRotationBehavior(){return this._autoRotationBehavior}get useAutoRotationBehavior(){return this._autoRotationBehavior!=null}set useAutoRotationBehavior(t){t!==this.useAutoRotationBehavior&&(t?(this._autoRotationBehavior=new at,this.addBehavior(this._autoRotationBehavior)):this._autoRotationBehavior&&(this.removeBehavior(this._autoRotationBehavior),this._autoRotationBehavior=null))}constructor(t,e,i,s,n,o,c=!0){super(t,l.Zero(),o,c),this.inertialAlphaOffset=0,this.inertialBetaOffset=0,this.inertialRadiusOffset=0,this.lowerAlphaLimit=null,this.upperAlphaLimit=null,this.lowerBetaLimit=.01,this.upperBetaLimit=Math.PI-.01,this.lowerRadiusLimit=null,this.upperRadiusLimit=null,this.lowerTargetYLimit=-1/0,this.inertialPanningX=0,this.inertialPanningY=0,this.pinchToPanMaxDistance=20,this.panningDistanceLimit=null,this.panningOriginTarget=l.Zero(),this.panningInertia=.9,this.zoomOnFactor=1,this.targetScreenOffset=E.Zero(),this.allowUpsideDown=!0,this.useInputToRestoreState=!0,this.restoreStateInterpolationFactor=0,this._currentInterpolationFactor=0,this._viewMatrix=new M,this.panningAxis=new l(1,1,0),this._transformedDirection=new l,this.mapPanning=!1,this._isInterpolating=!1,this.onMeshTargetChangedObservable=new Y,this.checkCollisions=!1,this.collisionRadius=new l(.5,.5,.5),this._previousPosition=l.Zero(),this._collisionVelocity=l.Zero(),this._newPosition=l.Zero(),this._computationVector=l.Zero(),this._goalAlpha=NaN,this._goalBeta=NaN,this._goalRadius=NaN,this._goalTarget=new l(NaN,NaN,NaN),this._goalTargetScreenOffset=new E(NaN,NaN),this._onCollisionPositionChange=(a,d,_=null)=>{_?(this.setPosition(d),this.onCollide&&this.onCollide(_)):this._previousPosition.copyFrom(this._position);const g=Math.cos(this.alpha),m=Math.sin(this.alpha),D=Math.cos(this.beta);let v=Math.sin(this.beta);v===0&&(v=1e-4);const w=this._getTargetPosition();this._computationVector.copyFromFloats(this.radius*g*v,this.radius*D,this.radius*m*v),w.addToRef(this._computationVector,this._newPosition),this._position.copyFrom(this._newPosition);let B=this.upVector;this.allowUpsideDown&&this.beta<0&&(B=B.clone(),B=B.negate()),this._computeViewMatrix(this._position,w,B),this._viewMatrix.addAtIndex(12,this.targetScreenOffset.x),this._viewMatrix.addAtIndex(13,this.targetScreenOffset.y),this._collisionTriggered=!1},this._target=l.Zero(),n&&this.setTarget(n),this.alpha=e,this.beta=i,this.radius=s,this.getViewMatrix(),this.inputs=new ot(this),this.inputs.addKeyboard().addMouseWheel().addPointers()}_initCache(){super._initCache(),this._cache._target=new l(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),this._cache.alpha=void 0,this._cache.beta=void 0,this._cache.radius=void 0,this._cache.targetScreenOffset=E.Zero()}_updateCache(t){t||super._updateCache(),this._cache._target.copyFrom(this._getTargetPosition()),this._cache.alpha=this.alpha,this._cache.beta=this.beta,this._cache.radius=this.radius,this._cache.targetScreenOffset.copyFrom(this.targetScreenOffset)}_getTargetPosition(){if(this._targetHost&&this._targetHost.getAbsolutePosition){const e=this._targetHost.getAbsolutePosition();this._targetBoundingCenter?e.addToRef(this._targetBoundingCenter,this._target):this._target.copyFrom(e)}const t=this._getLockedTargetPosition();return t||this._target}storeState(){return this._storedAlpha=this.alpha,this._storedBeta=this.beta,this._storedRadius=this.radius,this._storedTarget=this._getTargetPosition().clone(),this._storedTargetScreenOffset=this.targetScreenOffset.clone(),super.storeState()}_restoreStateValues(){return this.hasStateStored()&&this.restoreStateInterpolationFactor>A&&this.restoreStateInterpolationFactor<1?(this.interpolateTo(this._storedAlpha,this._storedBeta,this._storedRadius,this._storedTarget,this._storedTargetScreenOffset,this.restoreStateInterpolationFactor),!0):super._restoreStateValues()?(this.setTarget(this._storedTarget.clone()),this.alpha=this._storedAlpha,this.beta=this._storedBeta,this.radius=this._storedRadius,this.targetScreenOffset=this._storedTargetScreenOffset.clone(),this.inertialAlphaOffset=0,this.inertialBetaOffset=0,this.inertialRadiusOffset=0,this.inertialPanningX=0,this.inertialPanningY=0,!0):!1}stopInterpolation(){this._goalAlpha=NaN,this._goalBeta=NaN,this._goalRadius=NaN,this._goalTarget.set(NaN,NaN,NaN),this._goalTargetScreenOffset.set(NaN,NaN)}interpolateTo(t=this.alpha,e=this.beta,i=this.radius,s=this.target,n=this.targetScreenOffset,o){this.inertialAlphaOffset=0,this.inertialBetaOffset=0,this.inertialRadiusOffset=0,this.inertialPanningX=0,this.inertialPanningY=0,o!=null?this._currentInterpolationFactor=o:this.restoreStateInterpolationFactor!==0?this._currentInterpolationFactor=this.restoreStateInterpolationFactor:this._currentInterpolationFactor=.1,this._goalAlpha=y(t,this._goalAlpha),this._goalBeta=y(e,this._goalBeta),this._goalRadius=y(i,this._goalRadius),this._goalTarget.set(y(s.x,this._goalTarget.x),y(s.y,this._goalTarget.y),y(s.z,this._goalTarget.z)),this._goalTargetScreenOffset.set(y(n.x,this._goalTargetScreenOffset.x),y(n.y,this._goalTargetScreenOffset.y)),this._goalAlpha=L(this._goalAlpha,this.lowerAlphaLimit??-1/0,this.upperAlphaLimit??1/0),this._goalBeta=L(this._goalBeta,this.lowerBetaLimit??-1/0,this.upperBetaLimit??1/0),this._goalRadius=L(this._goalRadius,this.lowerRadiusLimit??-1/0,this.upperRadiusLimit??1/0),this._goalTarget.y=L(this._goalTarget.y,this.lowerTargetYLimit??-1/0,1/0),this._isInterpolating=!0}_isSynchronizedViewMatrix(){return super._isSynchronizedViewMatrix()?this._cache._target.equals(this._getTargetPosition())&&this._cache.alpha===this.alpha&&this._cache.beta===this.beta&&this._cache.radius===this.radius&&this._cache.targetScreenOffset.equals(this.targetScreenOffset):!1}attachControl(t,e,i=!0,s=2){const n=arguments;e=S.BackCompatCameraNoPreventDefault(n),this._useCtrlForPanning=i,this._panningMouseButton=s,typeof n[0]=="boolean"&&(n.length>1&&(this._useCtrlForPanning=n[1]),n.length>2&&(this._panningMouseButton=n[2])),this.inputs.attachElement(e),this._reset=()=>{this.inertialAlphaOffset=0,this.inertialBetaOffset=0,this.inertialRadiusOffset=0,this.inertialPanningX=0,this.inertialPanningY=0}}detachControl(){this.inputs.detachElement(),this._reset&&this._reset()}_checkInputs(){if(this._collisionTriggered)return;this.inputs.checkInputs();let t=!1;if(this.inertialAlphaOffset!==0||this.inertialBetaOffset!==0||this.inertialRadiusOffset!==0){t=!0;const e=this.invertRotation?-1:1,i=this._calculateHandednessMultiplier();let s=this.inertialAlphaOffset*i;this.beta<0&&(s*=-1),this.alpha+=s*e,this.beta+=this.inertialBetaOffset*e,this.radius-=this.inertialRadiusOffset,this.inertialAlphaOffset*=this.inertia,this.inertialBetaOffset*=this.inertia,this.inertialRadiusOffset*=this.inertia,Math.abs(this.inertialAlphaOffset)<this._rotationEpsilon&&(this.inertialAlphaOffset=0),Math.abs(this.inertialBetaOffset)<this._rotationEpsilon&&(this.inertialBetaOffset=0),Math.abs(this.inertialRadiusOffset)<this.speed*this._rotationEpsilon&&(this.inertialRadiusOffset=0)}if(this.inertialPanningX!==0||this.inertialPanningY!==0){t=!0;const e=new l(this.inertialPanningX,this.inertialPanningY,this.inertialPanningY);if(this._viewMatrix.invertToRef(this._cameraTransformMatrix),e.multiplyInPlace(this.panningAxis),l.TransformNormalToRef(e,this._cameraTransformMatrix,this._transformedDirection),this.mapPanning){const s=this.upVector,n=l.CrossToRef(this._transformedDirection,s,this._transformedDirection);l.CrossToRef(s,n,this._transformedDirection)}else this.panningAxis.y||(this._transformedDirection.y=0);if(!this._targetHost)if(this.panningDistanceLimit)this._transformedDirection.addInPlace(this._target),l.DistanceSquared(this._transformedDirection,this.panningOriginTarget)<=this.panningDistanceLimit*this.panningDistanceLimit&&this._target.copyFrom(this._transformedDirection);else{if(this.parent){const s=P.Matrix[0];this.parent.getWorldMatrix().getRotationMatrixToRef(s),s.transposeToRef(s),l.TransformCoordinatesToRef(this._transformedDirection,s,this._transformedDirection)}this._target.addInPlace(this._transformedDirection)}this.inertialPanningX*=this.panningInertia,this.inertialPanningY*=this.panningInertia;const i=this.speed*this._panningEpsilon;Math.abs(this.inertialPanningX)<i&&(this.inertialPanningX=0),Math.abs(this.inertialPanningY)<i&&(this.inertialPanningY=0)}if(t)this.stopInterpolation();else if(this._isInterpolating){let e=!1;const i=this._scene.getEngine().getDeltaTime()/1e3,s=1-Math.pow(2,-i/this._currentInterpolationFactor),n=y(this._goalRadius,this.radius);if(!isNaN(this._goalTarget.x)||!isNaN(this._goalTarget.y)||!isNaN(this._goalTarget.z)){const o=P.Vector3[0].set(y(this._goalTarget.x,this._target.x),y(this._goalTarget.y,this._target.y),y(this._goalTarget.z,this._target.z));l.LerpToRef(this.target,o,s,this._target),l.Distance(this.target,o)*10/n<A?(this._goalTarget.set(NaN,NaN,NaN),this.target.copyFrom(o),this.setTarget(this.target,!1,!0,!0)):e=!0}if(!isNaN(this._goalAlpha)||!isNaN(this._goalBeta)){const o=F.RotationAlphaBetaGammaToRef(y(this._goalAlpha,this.alpha),y(this._goalBeta,this.beta),0,P.Quaternion[0]),c=F.RotationAlphaBetaGammaToRef(this.alpha,this.beta,0,P.Quaternion[1]),a=F.SlerpToRef(c,o,s,P.Quaternion[2]);a.normalize();const d=a.toAlphaBetaGammaToRef(P.Vector3[0]);if(this.alpha=d.x,this.beta=d.y,a.isApprox(o,A/5)){this._goalAlpha=NaN,this._goalBeta=NaN;const _=o.toAlphaBetaGammaToRef(P.Vector3[0]);this.alpha=_.x,this.beta=_.y}else e=!0}if(isNaN(this._goalRadius)||(this.radius+=(n-this.radius)*s,Math.abs(n/this.radius-1)<A?(this._goalRadius=NaN,this.radius=n):e=!0),!isNaN(this._goalTargetScreenOffset.x)||!isNaN(this._goalTargetScreenOffset.y)){const o=P.Vector2[0].set(y(this._goalTargetScreenOffset.x,this.targetScreenOffset.x),y(this._goalTargetScreenOffset.y,this.targetScreenOffset.y));E.LerpToRef(this.targetScreenOffset,o,s,this.targetScreenOffset),E.Distance(this.targetScreenOffset,o)<A?(this._goalTargetScreenOffset.set(NaN,NaN),this.targetScreenOffset.copyFrom(o)):e=!0}this._isInterpolating=e}this._checkLimits(),super._checkInputs()}_checkLimits(){this.lowerBetaLimit===null||this.lowerBetaLimit===void 0?this.allowUpsideDown&&this.beta>Math.PI&&(this.beta=this.beta-2*Math.PI):this.beta<this.lowerBetaLimit&&(this.beta=this.lowerBetaLimit),this.upperBetaLimit===null||this.upperBetaLimit===void 0?this.allowUpsideDown&&this.beta<-Math.PI&&(this.beta=this.beta+2*Math.PI):this.beta>this.upperBetaLimit&&(this.beta=this.upperBetaLimit),this.lowerAlphaLimit!==null&&this.alpha<this.lowerAlphaLimit&&(this.alpha=this.lowerAlphaLimit),this.upperAlphaLimit!==null&&this.alpha>this.upperAlphaLimit&&(this.alpha=this.upperAlphaLimit),this.lowerRadiusLimit!==null&&this.radius<this.lowerRadiusLimit&&(this.radius=this.lowerRadiusLimit,this.inertialRadiusOffset=0),this.upperRadiusLimit!==null&&this.radius>this.upperRadiusLimit&&(this.radius=this.upperRadiusLimit,this.inertialRadiusOffset=0),this.target.y=Math.max(this.target.y,this.lowerTargetYLimit)}rebuildAnglesAndRadius(){this._position.subtractToRef(this._getTargetPosition(),this._computationVector),(this._upVector.x!==0||this._upVector.y!==1||this._upVector.z!==0)&&l.TransformCoordinatesToRef(this._computationVector,this._upToYMatrix,this._computationVector),this.radius=this._computationVector.length(),this.radius===0&&(this.radius=1e-4);const t=this.alpha;this.alpha=W(this._computationVector),this.beta=H(this._computationVector.y,this.radius);const e=Math.round((t-this.alpha)/(2*Math.PI));this.alpha+=e*2*Math.PI,this._checkLimits()}setPosition(t){this._position.equals(t)||(this._position.copyFrom(t),this.rebuildAnglesAndRadius())}setTarget(t,e=!1,i=!1,s=!1){if(s=this.overrideCloneAlphaBetaRadius??s,t.computeWorldMatrix)e&&t.getBoundingInfo?this._targetBoundingCenter=t.getBoundingInfo().boundingBox.centerWorld.clone():this._targetBoundingCenter=null,t.computeWorldMatrix(),this._targetHost=t,this._target=this._getTargetPosition(),this.onMeshTargetChangedObservable.notifyObservers(this._targetHost);else{const n=t,o=this._getTargetPosition();if(o&&!i&&o.equals(n))return;this._targetHost=null,this._target=n,this._targetBoundingCenter=null,this.onMeshTargetChangedObservable.notifyObservers(null)}s||this.rebuildAnglesAndRadius()}_getViewMatrix(){const t=Math.cos(this.alpha),e=Math.sin(this.alpha),i=Math.cos(this.beta);let s=Math.sin(this.beta);s===0&&(s=1e-4),this.radius===0&&(this.radius=1e-4);const n=this._getTargetPosition();if(this._computationVector.copyFromFloats(this.radius*t*s,this.radius*i,this.radius*e*s),(this._upVector.x!==0||this._upVector.y!==1||this._upVector.z!==0)&&l.TransformCoordinatesToRef(this._computationVector,this._yToUpMatrix,this._computationVector),n.addToRef(this._computationVector,this._newPosition),this.getScene().collisionsEnabled&&this.checkCollisions){const o=this.getScene().collisionCoordinator;this._collider||(this._collider=o.createCollider()),this._collider._radius=this.collisionRadius,this._newPosition.subtractToRef(this._position,this._collisionVelocity),this._collisionTriggered=!0,o.getNewPosition(this._position,this._collisionVelocity,this._collider,3,null,this._onCollisionPositionChange,this.uniqueId)}else{this._position.copyFrom(this._newPosition);let o=this.upVector;this.allowUpsideDown&&s<0&&(o=o.negate()),this._computeViewMatrix(this._position,n,o),this._viewMatrix.addAtIndex(12,this.targetScreenOffset.x),this._viewMatrix.addAtIndex(13,this.targetScreenOffset.y)}return this._currentTarget.copyFrom(n),this._viewMatrix}zoomOn(t,e=!1){t=t||this.getScene().meshes;const i=V.MinMax(t);let s=this._calculateLowerRadiusFromModelBoundingSphere(i.min,i.max);if(s=Math.max(Math.min(s,this.upperRadiusLimit||Number.MAX_VALUE),this.lowerRadiusLimit||0),this.radius=s*this.zoomOnFactor,this.mode===T.ORTHOGRAPHIC_CAMERA){const n=this.getScene().getEngine().getAspectRatio(this),o=s*this.zoomOnFactor/2;this.orthoLeft=-o*n,this.orthoRight=o*n,this.orthoBottom=-o,this.orthoTop=o}this.focusOn({min:i.min,max:i.max,distance:s},e)}focusOn(t,e=!1){let i,s;if(t.min===void 0){const n=t||this.getScene().meshes;i=V.MinMax(n),s=l.Distance(i.min,i.max)}else{const n=t;i=n,s=n.distance}this._target=V.Center(i),e||(this.maxZ=s*2)}createRigCamera(t,e){let i=0;switch(this.cameraRigMode){case T.RIG_MODE_STEREOSCOPIC_ANAGLYPH:case T.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_PARALLEL:case T.RIG_MODE_STEREOSCOPIC_OVERUNDER:case T.RIG_MODE_STEREOSCOPIC_INTERLACED:case T.RIG_MODE_VR:i=this._cameraRigParams.stereoHalfAngle*(e===0?1:-1);break;case T.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_CROSSEYED:i=this._cameraRigParams.stereoHalfAngle*(e===0?-1:1);break}const s=new u(t,this.alpha+i,this.beta,this.radius,this._target,this.getScene());return s._cameraRigParams={},s.isRigCamera=!0,s.rigParent=this,s.upVector=this.upVector,s.mode=this.mode,s.orthoLeft=this.orthoLeft,s.orthoRight=this.orthoRight,s.orthoBottom=this.orthoBottom,s.orthoTop=this.orthoTop,s}_updateRigCameras(){const t=this._rigCameras[0],e=this._rigCameras[1];switch(t.beta=e.beta=this.beta,this.cameraRigMode){case T.RIG_MODE_STEREOSCOPIC_ANAGLYPH:case T.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_PARALLEL:case T.RIG_MODE_STEREOSCOPIC_OVERUNDER:case T.RIG_MODE_STEREOSCOPIC_INTERLACED:case T.RIG_MODE_VR:t.alpha=this.alpha-this._cameraRigParams.stereoHalfAngle,e.alpha=this.alpha+this._cameraRigParams.stereoHalfAngle;break;case T.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_CROSSEYED:t.alpha=this.alpha+this._cameraRigParams.stereoHalfAngle,e.alpha=this.alpha-this._cameraRigParams.stereoHalfAngle;break}super._updateRigCameras()}_calculateLowerRadiusFromModelBoundingSphere(t,e,i=1){const s=l.Distance(t,e),o=this.getScene().getEngine().getAspectRatio(this),c=Math.tan(this.fov/2),a=c*o,_=s*.5*i,g=_*Math.sqrt(1+1/(a*a)),m=_*Math.sqrt(1+1/(c*c));return Math.max(g,m)}dispose(){this.inputs.clear(),super.dispose()}getClassName(){return"ArcRotateCamera"}}r([h()],u.prototype,"alpha",void 0);r([h()],u.prototype,"beta",void 0);r([h()],u.prototype,"radius",void 0);r([h()],u.prototype,"overrideCloneAlphaBetaRadius",void 0);r([U("target")],u.prototype,"_target",void 0);r([$("targetHost")],u.prototype,"_targetHost",void 0);r([h()],u.prototype,"inertialAlphaOffset",void 0);r([h()],u.prototype,"inertialBetaOffset",void 0);r([h()],u.prototype,"inertialRadiusOffset",void 0);r([h()],u.prototype,"lowerAlphaLimit",void 0);r([h()],u.prototype,"upperAlphaLimit",void 0);r([h()],u.prototype,"lowerBetaLimit",void 0);r([h()],u.prototype,"upperBetaLimit",void 0);r([h()],u.prototype,"lowerRadiusLimit",void 0);r([h()],u.prototype,"upperRadiusLimit",void 0);r([h()],u.prototype,"lowerTargetYLimit",void 0);r([h()],u.prototype,"inertialPanningX",void 0);r([h()],u.prototype,"inertialPanningY",void 0);r([h()],u.prototype,"pinchToPanMaxDistance",void 0);r([h()],u.prototype,"panningDistanceLimit",void 0);r([U()],u.prototype,"panningOriginTarget",void 0);r([h()],u.prototype,"panningInertia",void 0);r([h()],u.prototype,"zoomToMouseLocation",null);r([h()],u.prototype,"zoomOnFactor",void 0);r([tt()],u.prototype,"targetScreenOffset",void 0);r([h()],u.prototype,"allowUpsideDown",void 0);r([h()],u.prototype,"useInputToRestoreState",void 0);r([h()],u.prototype,"restoreStateInterpolationFactor",void 0);et("BABYLON.ArcRotateCamera",u);const ct=Object.freeze(Object.defineProperty({__proto__:null,ArcRotateCamera:u,ComputeAlpha:W,ComputeBeta:H},Symbol.toStringTag,{value:"Module"}));export{u as A,Z as B,W as C,b as F,k as O,ot as a,C as b,x as c,O as d,at as e,I as f,H as g,ct as h};