@splinetool/runtime 2.0.13 → 2.0.14

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 (347) hide show
  1. package/build/{runtime-aiAssistant-L3HFJZ2G.js → runtime-aiAssistant-CYJ626R5.js} +1 -1
  2. package/build/runtime-aiAssistant-CYJ626R5.js.br +0 -0
  3. package/build/runtime-aiAssistant-CYJ626R5.js.gz +0 -0
  4. package/build/{runtime-apiServices-KSRZJMJI.js → runtime-apiServices-QWPNWK6X.js} +1 -1
  5. package/build/runtime-apiServices-QWPNWK6X.js.br +0 -0
  6. package/build/runtime-apiServices-QWPNWK6X.js.gz +0 -0
  7. package/build/{runtime-audio-CNGZPKC5.js → runtime-audio-CZNFK3LE.js} +1 -1
  8. package/build/runtime-audio-CZNFK3LE.js.br +0 -0
  9. package/build/runtime-audio-CZNFK3LE.js.gz +0 -0
  10. package/build/{runtime-chunk-QMMGYOLW.js → runtime-chunk-2PDJQLZS.js} +1 -1
  11. package/build/runtime-chunk-2PDJQLZS.js.br +0 -0
  12. package/build/runtime-chunk-2PDJQLZS.js.gz +0 -0
  13. package/build/{runtime-chunk-5POGWSQZ.js → runtime-chunk-44ON5NFS.js} +1 -1
  14. package/build/runtime-chunk-44ON5NFS.js.br +0 -0
  15. package/build/runtime-chunk-44ON5NFS.js.gz +0 -0
  16. package/build/{runtime-chunk-JIIVUL2M.js → runtime-chunk-4SENJRD5.js} +1 -1
  17. package/build/runtime-chunk-4SENJRD5.js.br +0 -0
  18. package/build/runtime-chunk-4SENJRD5.js.gz +0 -0
  19. package/build/{runtime-chunk-WILQUYJ4.js → runtime-chunk-4UHPUSEP.js} +1 -1
  20. package/build/runtime-chunk-4UHPUSEP.js.br +0 -0
  21. package/build/runtime-chunk-4UHPUSEP.js.gz +0 -0
  22. package/build/{runtime-chunk-VAANBQKN.js → runtime-chunk-7PFZBRGF.js} +1 -1
  23. package/build/runtime-chunk-7PFZBRGF.js.br +0 -0
  24. package/build/runtime-chunk-7PFZBRGF.js.gz +0 -0
  25. package/build/{runtime-chunk-D3BWEUN6.js → runtime-chunk-AIWIOLR6.js} +1 -1
  26. package/build/runtime-chunk-AIWIOLR6.js.br +0 -0
  27. package/build/{runtime-chunk-D3BWEUN6.js.gz → runtime-chunk-AIWIOLR6.js.gz} +0 -0
  28. package/build/runtime-chunk-CHOZ3Y5I.js +1 -0
  29. package/build/runtime-chunk-CHOZ3Y5I.js.br +0 -0
  30. package/build/runtime-chunk-CHOZ3Y5I.js.gz +0 -0
  31. package/build/runtime-chunk-DHZVCYH4.js +1 -0
  32. package/build/runtime-chunk-DHZVCYH4.js.br +0 -0
  33. package/build/runtime-chunk-DHZVCYH4.js.gz +0 -0
  34. package/build/{runtime-chunk-YH55FWRI.js → runtime-chunk-DMRFHNRP.js} +1 -1
  35. package/build/runtime-chunk-DMRFHNRP.js.br +0 -0
  36. package/build/runtime-chunk-DMRFHNRP.js.gz +0 -0
  37. package/build/{runtime-chunk-OUQPS3VD.js → runtime-chunk-EJDIVLQA.js} +1 -1
  38. package/build/runtime-chunk-EJDIVLQA.js.br +0 -0
  39. package/build/runtime-chunk-EJDIVLQA.js.gz +0 -0
  40. package/build/{runtime-chunk-T4UMOSIQ.js → runtime-chunk-GZVBZLQ3.js} +1 -1
  41. package/build/{runtime-chunk-T4UMOSIQ.js.br → runtime-chunk-GZVBZLQ3.js.br} +0 -0
  42. package/build/runtime-chunk-GZVBZLQ3.js.gz +0 -0
  43. package/build/{runtime-chunk-ITI3UXPR.js → runtime-chunk-H2442PY7.js} +1 -1
  44. package/build/runtime-chunk-H2442PY7.js.br +0 -0
  45. package/build/runtime-chunk-H2442PY7.js.gz +0 -0
  46. package/build/{runtime-chunk-3IBXKX7I.js → runtime-chunk-HKD2ORV5.js} +1 -1
  47. package/build/runtime-chunk-HKD2ORV5.js.br +0 -0
  48. package/build/runtime-chunk-HKD2ORV5.js.gz +0 -0
  49. package/build/runtime-chunk-INDD2IUU.js +1 -0
  50. package/build/runtime-chunk-INDD2IUU.js.br +0 -0
  51. package/build/runtime-chunk-INDD2IUU.js.gz +0 -0
  52. package/build/{runtime-chunk-4GNBET46.js → runtime-chunk-L5SU5F5J.js} +1 -1
  53. package/build/runtime-chunk-L5SU5F5J.js.br +0 -0
  54. package/build/runtime-chunk-L5SU5F5J.js.gz +0 -0
  55. package/build/{runtime-chunk-WWYY25M2.js → runtime-chunk-LUASUHYM.js} +1 -1
  56. package/build/runtime-chunk-LUASUHYM.js.br +0 -0
  57. package/build/runtime-chunk-LUASUHYM.js.gz +0 -0
  58. package/build/{runtime-chunk-2GAIM5RJ.js → runtime-chunk-MF6PRJPV.js} +1 -1
  59. package/build/runtime-chunk-MF6PRJPV.js.br +0 -0
  60. package/build/runtime-chunk-MF6PRJPV.js.gz +0 -0
  61. package/build/runtime-chunk-MKUFNGGW.js +1 -0
  62. package/build/runtime-chunk-MKUFNGGW.js.br +0 -0
  63. package/build/runtime-chunk-MKUFNGGW.js.gz +0 -0
  64. package/build/{runtime-chunk-XUHTMJJD.js → runtime-chunk-N473U2V2.js} +1 -1
  65. package/build/runtime-chunk-N473U2V2.js.br +0 -0
  66. package/build/runtime-chunk-N473U2V2.js.gz +0 -0
  67. package/build/{runtime-chunk-BEWQ5BW5.js → runtime-chunk-NAJO6T26.js} +1 -1
  68. package/build/runtime-chunk-NAJO6T26.js.br +0 -0
  69. package/build/runtime-chunk-NAJO6T26.js.gz +0 -0
  70. package/build/{runtime-chunk-SJQBQYDG.js → runtime-chunk-NQ5JYNZM.js} +1 -1
  71. package/build/runtime-chunk-NQ5JYNZM.js.br +0 -0
  72. package/build/runtime-chunk-NQ5JYNZM.js.gz +0 -0
  73. package/build/runtime-chunk-PCGGIHOQ.js +1 -0
  74. package/build/runtime-chunk-PCGGIHOQ.js.br +0 -0
  75. package/build/runtime-chunk-PCGGIHOQ.js.gz +0 -0
  76. package/build/{runtime-chunk-JLL5C22M.js → runtime-chunk-PLKRHTT5.js} +1 -1
  77. package/build/runtime-chunk-PLKRHTT5.js.br +0 -0
  78. package/build/runtime-chunk-PLKRHTT5.js.gz +0 -0
  79. package/build/runtime-chunk-QYZPTNBH.js +1 -0
  80. package/build/runtime-chunk-QYZPTNBH.js.br +0 -0
  81. package/build/runtime-chunk-QYZPTNBH.js.gz +0 -0
  82. package/build/{runtime-chunk-4KZXQGUQ.js → runtime-chunk-RTLL6WIB.js} +1 -1
  83. package/build/runtime-chunk-RTLL6WIB.js.br +0 -0
  84. package/build/runtime-chunk-RTLL6WIB.js.gz +0 -0
  85. package/build/{runtime-chunk-PS74VRLB.js → runtime-chunk-S6KLXGEL.js} +1 -1
  86. package/build/runtime-chunk-S6KLXGEL.js.br +0 -0
  87. package/build/runtime-chunk-S6KLXGEL.js.gz +0 -0
  88. package/build/runtime-chunk-ST4VJ5DF.js +1 -0
  89. package/build/runtime-chunk-ST4VJ5DF.js.br +0 -0
  90. package/build/runtime-chunk-ST4VJ5DF.js.gz +0 -0
  91. package/build/{runtime-chunk-JSOWOATQ.js → runtime-chunk-U5366HDY.js} +1 -1
  92. package/build/runtime-chunk-U5366HDY.js.br +0 -0
  93. package/build/runtime-chunk-U5366HDY.js.gz +0 -0
  94. package/build/{runtime-chunk-2S2NQ44M.js → runtime-chunk-XOP32NU4.js} +1 -1
  95. package/build/runtime-chunk-XOP32NU4.js.br +0 -0
  96. package/build/runtime-chunk-XOP32NU4.js.gz +0 -0
  97. package/build/{runtime-chunk-HKFPEE5F.js → runtime-chunk-YURN6PI7.js} +1 -1
  98. package/build/runtime-chunk-YURN6PI7.js.br +0 -0
  99. package/build/runtime-chunk-YURN6PI7.js.gz +0 -0
  100. package/build/{runtime-chunk-MJYVLFQT.js → runtime-chunk-ZH7TNSZJ.js} +1 -1
  101. package/build/runtime-chunk-ZH7TNSZJ.js.br +0 -0
  102. package/build/runtime-chunk-ZH7TNSZJ.js.gz +0 -0
  103. package/build/{runtime-classicRuntime-ZJP7UOQK.js → runtime-classicRuntime-CTLZXFOK.js} +1 -1
  104. package/build/runtime-classicRuntime-CTLZXFOK.js.br +0 -0
  105. package/build/runtime-classicRuntime-CTLZXFOK.js.gz +0 -0
  106. package/build/runtime-cloners-6BXWHHH6.js +1 -0
  107. package/build/runtime-cloners-6BXWHHH6.js.br +0 -0
  108. package/build/runtime-cloners-6BXWHHH6.js.gz +0 -0
  109. package/build/runtime-components-YTMTPERH.js +1 -0
  110. package/build/runtime-components-YTMTPERH.js.br +0 -0
  111. package/build/runtime-components-YTMTPERH.js.gz +0 -0
  112. package/build/runtime-conditional-CEO237EN.js +1 -0
  113. package/build/runtime-conditional-CEO237EN.js.br +0 -0
  114. package/build/runtime-conditional-CEO237EN.js.gz +0 -0
  115. package/build/{runtime-createDestroy-MAV4GFE6.js → runtime-createDestroy-2RJVOGQP.js} +1 -1
  116. package/build/runtime-createDestroy-2RJVOGQP.js.br +0 -0
  117. package/build/runtime-createDestroy-2RJVOGQP.js.gz +0 -0
  118. package/build/{runtime-dragDrop-IZ74WMYA.js → runtime-dragDrop-CUXGIFGP.js} +1 -1
  119. package/build/runtime-dragDrop-CUXGIFGP.js.br +0 -0
  120. package/build/runtime-dragDrop-CUXGIFGP.js.gz +0 -0
  121. package/build/{runtime-gameControls-ALSYS4GT.js → runtime-gameControls-HKLCWLKJ.js} +1 -1
  122. package/build/runtime-gameControls-HKLCWLKJ.js.br +0 -0
  123. package/build/runtime-gameControls-HKLCWLKJ.js.gz +0 -0
  124. package/build/runtime-hair-R36ZBISB.js +1 -0
  125. package/build/runtime-hair-R36ZBISB.js.br +1 -0
  126. package/build/runtime-hair-R36ZBISB.js.gz +0 -0
  127. package/build/{runtime-mergeStaticGeometries-OPJK4T22.js → runtime-mergeStaticGeometries-RPBLPAJO.js} +1 -1
  128. package/build/runtime-mergeStaticGeometries-RPBLPAJO.js.br +0 -0
  129. package/build/runtime-mergeStaticGeometries-RPBLPAJO.js.gz +0 -0
  130. package/build/runtime-miscActions-V7N7OCRE.js +1 -0
  131. package/build/runtime-miscActions-V7N7OCRE.js.br +0 -0
  132. package/build/runtime-miscActions-V7N7OCRE.js.gz +0 -0
  133. package/build/{runtime-mouseHover-FM43SWSA.js → runtime-mouseHover-2FQXNHVN.js} +1 -1
  134. package/build/runtime-mouseHover-2FQXNHVN.js.br +0 -0
  135. package/build/runtime-mouseHover-2FQXNHVN.js.gz +0 -0
  136. package/build/{runtime-particles-NY5M47HQ.js → runtime-particles-JZREUE5L.js} +1 -1
  137. package/build/runtime-particles-JZREUE5L.js.br +0 -0
  138. package/build/runtime-particles-JZREUE5L.js.gz +0 -0
  139. package/build/{runtime-paths-LU43LMTP.js → runtime-paths-H3BLID6D.js} +1 -1
  140. package/build/runtime-paths-H3BLID6D.js.br +0 -0
  141. package/build/runtime-paths-H3BLID6D.js.gz +0 -0
  142. package/build/runtime-resize-ZD62VEBD.js +1 -0
  143. package/build/runtime-resize-ZD62VEBD.js.br +0 -0
  144. package/build/runtime-resize-ZD62VEBD.js.gz +0 -0
  145. package/build/{runtime-sceneTransition-4R6LM4MA.js → runtime-sceneTransition-UMLH7ZRG.js} +1 -1
  146. package/build/runtime-sceneTransition-UMLH7ZRG.js.br +0 -0
  147. package/build/runtime-sceneTransition-UMLH7ZRG.js.gz +0 -0
  148. package/build/{runtime-scroll-KEVND4W5.js → runtime-scroll-G27Z5O4C.js} +1 -1
  149. package/build/runtime-scroll-G27Z5O4C.js.br +0 -0
  150. package/build/runtime-scroll-G27Z5O4C.js.gz +0 -0
  151. package/build/runtime-shapeBlends-E6SX5CX3.js +1 -0
  152. package/build/runtime-shapeBlends-E6SX5CX3.js.br +0 -0
  153. package/build/runtime-shapeBlends-E6SX5CX3.js.gz +0 -0
  154. package/build/{runtime-text-43V5BJGN.js → runtime-text-MQDKSA5W.js} +1 -1
  155. package/build/runtime-text-MQDKSA5W.js.br +0 -0
  156. package/build/runtime-text-MQDKSA5W.js.gz +0 -0
  157. package/build/{runtime-textInputs-WPBZO7XI.js → runtime-textInputs-5DEQBIWS.js} +1 -1
  158. package/build/runtime-textInputs-5DEQBIWS.js.br +0 -0
  159. package/build/runtime-textInputs-5DEQBIWS.js.gz +0 -0
  160. package/build/runtime-timeline-Z7YJ7ASI.js +1 -0
  161. package/build/runtime-timeline-Z7YJ7ASI.js.br +0 -0
  162. package/build/runtime-timeline-Z7YJ7ASI.js.gz +0 -0
  163. package/build/{runtime-tracking-T55DMPAI.js → runtime-tracking-IW6LURXT.js} +1 -1
  164. package/build/runtime-tracking-IW6LURXT.js.br +0 -0
  165. package/build/runtime-tracking-IW6LURXT.js.gz +0 -0
  166. package/build/runtime-transitions-B5OB67GR.js +1 -0
  167. package/build/runtime-transitions-B5OB67GR.js.br +0 -0
  168. package/build/runtime-transitions-B5OB67GR.js.gz +0 -0
  169. package/build/{runtime-ui2d-FPEODT3M.js → runtime-ui2d-R4W643OE.js} +1 -1
  170. package/build/runtime-ui2d-R4W643OE.js.br +0 -0
  171. package/build/runtime-ui2d-R4W643OE.js.gz +0 -0
  172. package/build/{runtime-updater-A22NUPB5.js → runtime-updater-2CFDVEWY.js} +1 -1
  173. package/build/runtime-updater-2CFDVEWY.js.br +0 -0
  174. package/build/runtime-updater-2CFDVEWY.js.gz +0 -0
  175. package/build/{runtime-variables-MHCE3K3T.js → runtime-variables-S7QUT7HH.js} +1 -1
  176. package/build/runtime-variables-S7QUT7HH.js.br +0 -0
  177. package/build/runtime-variables-S7QUT7HH.js.gz +0 -0
  178. package/build/{runtime-vectorShapes-ZXLM5DCY.js → runtime-vectorShapes-ASLQ3T6K.js} +1 -1
  179. package/build/runtime-vectorShapes-ASLQ3T6K.js.br +0 -0
  180. package/build/runtime-vectorShapes-ASLQ3T6K.js.gz +0 -0
  181. package/build/{runtime-video-YA2L3X6S.js → runtime-video-SBFWLQQT.js} +1 -1
  182. package/build/runtime-video-SBFWLQQT.js.br +0 -0
  183. package/build/runtime-video-SBFWLQQT.js.gz +0 -0
  184. package/build/{runtime-webgpu-WHAEJKRX.js → runtime-webgpu-XRBI423N.js} +1 -1
  185. package/build/runtime-webgpu-XRBI423N.js.br +0 -0
  186. package/build/runtime-webgpu-XRBI423N.js.gz +0 -0
  187. package/build/runtime.cjs +429 -431
  188. package/build/runtime.js +1 -1
  189. package/build/runtime.js.br +0 -0
  190. package/build/runtime.js.gz +0 -0
  191. package/build/runtime.standalone.js +1 -1
  192. package/build/runtime.standalone.js.br +0 -0
  193. package/build/runtime.standalone.js.gz +0 -0
  194. package/build/runtime.standalone.webgl.js +1 -1
  195. package/build/runtime.standalone.webgl.js.br +0 -0
  196. package/build/runtime.standalone.webgl.js.gz +0 -0
  197. package/build/runtime.standalone.webgpu.js +1 -1
  198. package/build/runtime.standalone.webgpu.js.br +0 -0
  199. package/build/runtime.standalone.webgpu.js.gz +0 -0
  200. package/build/runtime.standalone.webgpu.micro.js +1 -1
  201. package/build/runtime.standalone.webgpu.micro.js.br +0 -0
  202. package/build/runtime.standalone.webgpu.micro.js.gz +0 -0
  203. package/build/runtime.standalone.webgpu.min.js +1 -1
  204. package/build/runtime.standalone.webgpu.min.js.br +0 -0
  205. package/build/runtime.standalone.webgpu.min.js.gz +0 -0
  206. package/package.json +2 -1
  207. package/build/runtime-aiAssistant-L3HFJZ2G.js.br +0 -0
  208. package/build/runtime-aiAssistant-L3HFJZ2G.js.gz +0 -0
  209. package/build/runtime-apiServices-KSRZJMJI.js.br +0 -0
  210. package/build/runtime-apiServices-KSRZJMJI.js.gz +0 -0
  211. package/build/runtime-audio-CNGZPKC5.js.br +0 -0
  212. package/build/runtime-audio-CNGZPKC5.js.gz +0 -0
  213. package/build/runtime-chunk-2GAIM5RJ.js.br +0 -0
  214. package/build/runtime-chunk-2GAIM5RJ.js.gz +0 -0
  215. package/build/runtime-chunk-2S2NQ44M.js.br +0 -0
  216. package/build/runtime-chunk-2S2NQ44M.js.gz +0 -0
  217. package/build/runtime-chunk-3IBXKX7I.js.br +0 -0
  218. package/build/runtime-chunk-3IBXKX7I.js.gz +0 -0
  219. package/build/runtime-chunk-4GNBET46.js.br +0 -0
  220. package/build/runtime-chunk-4GNBET46.js.gz +0 -0
  221. package/build/runtime-chunk-4KZXQGUQ.js.br +0 -0
  222. package/build/runtime-chunk-4KZXQGUQ.js.gz +0 -0
  223. package/build/runtime-chunk-5POGWSQZ.js.br +0 -0
  224. package/build/runtime-chunk-5POGWSQZ.js.gz +0 -0
  225. package/build/runtime-chunk-A7IMJ4FJ.js +0 -1
  226. package/build/runtime-chunk-A7IMJ4FJ.js.br +0 -0
  227. package/build/runtime-chunk-A7IMJ4FJ.js.gz +0 -0
  228. package/build/runtime-chunk-ALTKMFUV.js +0 -1
  229. package/build/runtime-chunk-ALTKMFUV.js.br +0 -0
  230. package/build/runtime-chunk-ALTKMFUV.js.gz +0 -0
  231. package/build/runtime-chunk-BEWQ5BW5.js.br +0 -0
  232. package/build/runtime-chunk-BEWQ5BW5.js.gz +0 -0
  233. package/build/runtime-chunk-D3BWEUN6.js.br +0 -0
  234. package/build/runtime-chunk-ESL2VL5C.js +0 -1
  235. package/build/runtime-chunk-ESL2VL5C.js.br +0 -0
  236. package/build/runtime-chunk-ESL2VL5C.js.gz +0 -0
  237. package/build/runtime-chunk-F5CUMYOK.js +0 -1
  238. package/build/runtime-chunk-F5CUMYOK.js.br +0 -0
  239. package/build/runtime-chunk-F5CUMYOK.js.gz +0 -0
  240. package/build/runtime-chunk-HKFPEE5F.js.br +0 -0
  241. package/build/runtime-chunk-HKFPEE5F.js.gz +0 -0
  242. package/build/runtime-chunk-ITI3UXPR.js.br +0 -0
  243. package/build/runtime-chunk-ITI3UXPR.js.gz +0 -0
  244. package/build/runtime-chunk-JIIVUL2M.js.br +0 -0
  245. package/build/runtime-chunk-JIIVUL2M.js.gz +0 -0
  246. package/build/runtime-chunk-JLL5C22M.js.br +0 -0
  247. package/build/runtime-chunk-JLL5C22M.js.gz +0 -0
  248. package/build/runtime-chunk-JSOWOATQ.js.br +0 -0
  249. package/build/runtime-chunk-JSOWOATQ.js.gz +0 -0
  250. package/build/runtime-chunk-KGZNRID6.js +0 -1
  251. package/build/runtime-chunk-KGZNRID6.js.br +0 -1
  252. package/build/runtime-chunk-KGZNRID6.js.gz +0 -0
  253. package/build/runtime-chunk-MJYVLFQT.js.br +0 -0
  254. package/build/runtime-chunk-MJYVLFQT.js.gz +0 -0
  255. package/build/runtime-chunk-OUQPS3VD.js.br +0 -0
  256. package/build/runtime-chunk-OUQPS3VD.js.gz +0 -0
  257. package/build/runtime-chunk-PS74VRLB.js.br +0 -0
  258. package/build/runtime-chunk-PS74VRLB.js.gz +0 -0
  259. package/build/runtime-chunk-QMMGYOLW.js.br +0 -0
  260. package/build/runtime-chunk-QMMGYOLW.js.gz +0 -0
  261. package/build/runtime-chunk-R43XZP65.js +0 -1
  262. package/build/runtime-chunk-R43XZP65.js.br +0 -0
  263. package/build/runtime-chunk-R43XZP65.js.gz +0 -0
  264. package/build/runtime-chunk-SJQBQYDG.js.br +0 -0
  265. package/build/runtime-chunk-SJQBQYDG.js.gz +0 -0
  266. package/build/runtime-chunk-T4UMOSIQ.js.gz +0 -0
  267. package/build/runtime-chunk-VAANBQKN.js.br +0 -0
  268. package/build/runtime-chunk-VAANBQKN.js.gz +0 -0
  269. package/build/runtime-chunk-VGEECQH4.js +0 -1
  270. package/build/runtime-chunk-VGEECQH4.js.br +0 -0
  271. package/build/runtime-chunk-VGEECQH4.js.gz +0 -0
  272. package/build/runtime-chunk-WGBR2HLR.js +0 -1
  273. package/build/runtime-chunk-WGBR2HLR.js.br +0 -0
  274. package/build/runtime-chunk-WGBR2HLR.js.gz +0 -0
  275. package/build/runtime-chunk-WILQUYJ4.js.br +0 -0
  276. package/build/runtime-chunk-WILQUYJ4.js.gz +0 -0
  277. package/build/runtime-chunk-WWYY25M2.js.br +0 -0
  278. package/build/runtime-chunk-WWYY25M2.js.gz +0 -0
  279. package/build/runtime-chunk-XUHTMJJD.js.br +0 -0
  280. package/build/runtime-chunk-XUHTMJJD.js.gz +0 -0
  281. package/build/runtime-chunk-YH55FWRI.js.br +0 -0
  282. package/build/runtime-chunk-YH55FWRI.js.gz +0 -0
  283. package/build/runtime-classicRuntime-ZJP7UOQK.js.br +0 -0
  284. package/build/runtime-classicRuntime-ZJP7UOQK.js.gz +0 -0
  285. package/build/runtime-cloners-V4TFNW2E.js +0 -1
  286. package/build/runtime-cloners-V4TFNW2E.js.br +0 -0
  287. package/build/runtime-cloners-V4TFNW2E.js.gz +0 -0
  288. package/build/runtime-components-P5ZGYATF.js +0 -1
  289. package/build/runtime-components-P5ZGYATF.js.br +0 -0
  290. package/build/runtime-components-P5ZGYATF.js.gz +0 -0
  291. package/build/runtime-conditional-66QFNGF3.js +0 -1
  292. package/build/runtime-conditional-66QFNGF3.js.br +0 -0
  293. package/build/runtime-conditional-66QFNGF3.js.gz +0 -0
  294. package/build/runtime-createDestroy-MAV4GFE6.js.br +0 -0
  295. package/build/runtime-createDestroy-MAV4GFE6.js.gz +0 -0
  296. package/build/runtime-dragDrop-IZ74WMYA.js.br +0 -0
  297. package/build/runtime-dragDrop-IZ74WMYA.js.gz +0 -0
  298. package/build/runtime-gameControls-ALSYS4GT.js.br +0 -0
  299. package/build/runtime-gameControls-ALSYS4GT.js.gz +0 -0
  300. package/build/runtime-hair-PML4TDM4.js +0 -1
  301. package/build/runtime-hair-PML4TDM4.js.br +0 -1
  302. package/build/runtime-hair-PML4TDM4.js.gz +0 -0
  303. package/build/runtime-mergeStaticGeometries-OPJK4T22.js.br +0 -0
  304. package/build/runtime-mergeStaticGeometries-OPJK4T22.js.gz +0 -0
  305. package/build/runtime-miscActions-JZQXYHKG.js +0 -1
  306. package/build/runtime-miscActions-JZQXYHKG.js.br +0 -0
  307. package/build/runtime-miscActions-JZQXYHKG.js.gz +0 -0
  308. package/build/runtime-mouseHover-FM43SWSA.js.br +0 -0
  309. package/build/runtime-mouseHover-FM43SWSA.js.gz +0 -0
  310. package/build/runtime-particles-NY5M47HQ.js.br +0 -0
  311. package/build/runtime-particles-NY5M47HQ.js.gz +0 -0
  312. package/build/runtime-paths-LU43LMTP.js.br +0 -0
  313. package/build/runtime-paths-LU43LMTP.js.gz +0 -0
  314. package/build/runtime-resize-BWOD7P3W.js +0 -1
  315. package/build/runtime-resize-BWOD7P3W.js.br +0 -0
  316. package/build/runtime-resize-BWOD7P3W.js.gz +0 -0
  317. package/build/runtime-sceneTransition-4R6LM4MA.js.br +0 -0
  318. package/build/runtime-sceneTransition-4R6LM4MA.js.gz +0 -0
  319. package/build/runtime-scroll-KEVND4W5.js.br +0 -0
  320. package/build/runtime-scroll-KEVND4W5.js.gz +0 -0
  321. package/build/runtime-shapeBlends-LXJ4P3XD.js +0 -1
  322. package/build/runtime-shapeBlends-LXJ4P3XD.js.br +0 -0
  323. package/build/runtime-shapeBlends-LXJ4P3XD.js.gz +0 -0
  324. package/build/runtime-text-43V5BJGN.js.br +0 -0
  325. package/build/runtime-text-43V5BJGN.js.gz +0 -0
  326. package/build/runtime-textInputs-WPBZO7XI.js.br +0 -0
  327. package/build/runtime-textInputs-WPBZO7XI.js.gz +0 -0
  328. package/build/runtime-timeline-AERFJWNC.js +0 -1
  329. package/build/runtime-timeline-AERFJWNC.js.br +0 -0
  330. package/build/runtime-timeline-AERFJWNC.js.gz +0 -0
  331. package/build/runtime-tracking-T55DMPAI.js.br +0 -0
  332. package/build/runtime-tracking-T55DMPAI.js.gz +0 -0
  333. package/build/runtime-transitions-SLQEEKRO.js +0 -1
  334. package/build/runtime-transitions-SLQEEKRO.js.br +0 -0
  335. package/build/runtime-transitions-SLQEEKRO.js.gz +0 -0
  336. package/build/runtime-ui2d-FPEODT3M.js.br +0 -0
  337. package/build/runtime-ui2d-FPEODT3M.js.gz +0 -0
  338. package/build/runtime-updater-A22NUPB5.js.br +0 -1
  339. package/build/runtime-updater-A22NUPB5.js.gz +0 -0
  340. package/build/runtime-variables-MHCE3K3T.js.br +0 -0
  341. package/build/runtime-variables-MHCE3K3T.js.gz +0 -0
  342. package/build/runtime-vectorShapes-ZXLM5DCY.js.br +0 -0
  343. package/build/runtime-vectorShapes-ZXLM5DCY.js.gz +0 -0
  344. package/build/runtime-video-YA2L3X6S.js.br +0 -0
  345. package/build/runtime-video-YA2L3X6S.js.gz +0 -0
  346. package/build/runtime-webgpu-WHAEJKRX.js.br +0 -0
  347. package/build/runtime-webgpu-WHAEJKRX.js.gz +0 -0
@@ -1 +1 @@
1
- import{v as e}from"./runtime-chunk-A7IMJ4FJ.js";import{Ec as t,Fc as s,Fd as a,Gc as i,Ge as r,Ib as n,Oc as h,Tc as o,Wd as l,Xd as d,Zc as c,kd as u,ld as g}from"./runtime-chunk-BVVSZMXD.js";var p=null;function b(e){p=e}function S(){return p}var m=null;function f(e){m=e}function M(){return m}var y=new o;function R(e,t,s){return y.setRGB(e,t,s,n),{r:y.r,g:y.g,b:y.b}}var w=(e,t)=>"number"==typeof e&&Number.isFinite(e)?e:t,x=e=>Array.isArray(e)&&"number"==typeof e[0]&&"number"==typeof e[1]?[e[0],e[1]]:[0,0];function v(e,t,s){let a,i=w(e.angle,0),[r,n]=x(e.offset),[h,o]=x(e.morph),l=e.colors??[],d=e.steps??[],c=Math.min(10,l.length,d.length);if(0===c)return[1,1,1,1];if(1===e.gradientType){let e=3*(t+h)-(t+r)-1,l=3*(s+o)-(s+n)-1;a=Math.hypot(e,l)+i}else if(2===e.gradientType){let e=-1*Math.atan2(t+h-.5+r,s+o-.5+n),l=i/Math.PI/-2+.5*e/Math.PI;a=l-Math.floor(l)}else{let e=.5+h/(0!==t?t:1e-6),l=o/(0!==s?s:1e-6),d=Math.cos(i)*e-Math.sin(i)*l,c=Math.sin(i)*e+Math.cos(i)*l,u=d*d+c*c;a=u>1e-12?(((t-.5+r)/2+d/2)*d+((s-.5+n)/2+c/2)*c)/u:0}let u=l[0][0],g=l[0][1],p=l[0][2],b=l[0][3];for(let t=1;t<c;t++){let s=d[t-1],i=d[t]-s,r=0!==i?Math.min(1,Math.max(0,(a-s)/i)):a>=s?1:0;e.smooth&&(r=r*r*(3-2*r)),u+=(l[t][0]-u)*r,g+=(l[t][1]-g)*r,p+=(l[t][2]-p)*r,b+=(l[t][3]-b)*r}return[u,g,p,b]}function A(e,t){let s=e,a=s?.data?.layers;if(a&&"function"==typeof a.forEach){let e=t,s=[];return a.forEach(t=>{let a=t.data;if(!1===a.visible||!0===a.isMask)return;let i=w(a.alpha,1);if(!(i<=0))if("color"===a.type){let t,r=a.color;"string"==typeof r?t="function"==typeof e?.color?e.color(r):void 0:r&&"number"==typeof r.r&&(t=r),t&&s.push({kind:"color",layer:a,rgb:{...R(t.r,t.g,t.b),a:t.a??1},alpha:i})}else"gradient"===a.type&&s.push({kind:"gradient",layer:a,alpha:i})}),0===s.length?null:(e,t)=>{let a=1,i=1,r=1,n=!0;for(let h of s){let s,o,l,d;if("color"===h.kind)({r:s,g:o,b:l}=h.rgb),d=h.rgb.a;else{let[a,i,r,n]=v(h.layer,e,t);({r:s,g:o,b:l}=R(a,i,r)),d=n}let c=n?1:Math.min(1,Math.max(0,d*h.alpha));a+=(s-a)*c,i+=(o-i)*c,r+=(l-r)*c,n=!1}return{r:a,g:i,b:r}}}if(s?.color&&!0===s.color.isColor){let{r:e,g:t,b:a}=s.color;return()=>({r:e,g:t,b:a})}return null}var j=32,I=16384,F=32*I,B=100;function W(e,t){if("torus"===e){let e=t()*Math.PI*2,s=t()*Math.PI*2,a=Math.cos(e),i=Math.sin(e),r=Math.cos(s),n=Math.sin(s);return{x:(1.4+.7*r)*a,y:-(1.4+.7*r)*i,z:.7*n,nx:r*a,ny:-r*i,nz:n,cr:1,cg:1,cb:1}}if("cylinder"===e){let e=t()*Math.PI*2,s=Math.cos(e),a=Math.sin(e);return{x:.8*s,y:1.6*(t()-.5),z:.8*a,nx:s,ny:0,nz:a,cr:1,cg:1,cb:1}}let s=t()*Math.PI*2,a=2*t()-1,i=Math.acos(a),r=Math.sin(i)*Math.cos(s),n=Math.cos(i),h=Math.sin(i)*Math.sin(s);return{x:r,y:n,z:h,nx:r,ny:n,nz:h,cr:1,cg:1,cb:1}}function k(e){let{geometry:t,matrix:s}=e,a=t.getAttribute("position");if(!a||a.count<3)return null;let r=t.getAttribute("normal"),n=t.getAttribute("uv"),h=t.getAttribute("color"),o=t.getIndex(),l=o?o.count/3:a.count/3;if(l<1)return null;let d=(e,t)=>o?o.getX(3*e+t):3*e+t,c=s?s.elements:null,u=s?(new i).getNormalMatrix(s).elements:null,g=e=>{let t=a.getX(e),s=a.getY(e),i=a.getZ(e);return c?c[0]*t+c[4]*s+c[8]*i+c[12]:t},p=e=>{let t=a.getX(e),s=a.getY(e),i=a.getZ(e);return c?c[1]*t+c[5]*s+c[9]*i+c[13]:s},b=e=>{let t=a.getX(e),s=a.getY(e),i=a.getZ(e);return c?c[2]*t+c[6]*s+c[10]*i+c[14]:i},S=new Float64Array(l),m=0;for(let e=0;e<l;e++){let t=d(e,0),s=d(e,1),a=d(e,2),i=g(t),r=p(t),n=b(t),h=g(s)-i,o=p(s)-r,l=b(s)-n,c=g(a)-i,u=p(a)-r,f=b(a)-n,M=o*f-l*u,y=l*c-h*f,R=h*u-o*c;m+=.5*Math.sqrt(M*M+y*y+R*R),S[e]=m}return m<=0?null:{total:m,sample:(t,s)=>{let a=0,i=l-1;for(;a<i;){let e=a+i>>1;S[e]<t?a=e+1:i=e}let o=a,c=d(o,0),m=d(o,1),f=d(o,2),M=s(),y=s();M+y>1&&(M=1-M,y=1-y);let R,w,x,v=1-M-y,A=g(c)*v+g(m)*M+g(f)*y,j=p(c)*v+p(m)*M+p(f)*y,I=b(c)*v+b(m)*M+b(f)*y;if(r){if(R=r.getX(c)*v+r.getX(m)*M+r.getX(f)*y,w=r.getY(c)*v+r.getY(m)*M+r.getY(f)*y,x=r.getZ(c)*v+r.getZ(m)*M+r.getZ(f)*y,u){let e=u[0]*R+u[3]*w+u[6]*x,t=u[1]*R+u[4]*w+u[7]*x,s=u[2]*R+u[5]*w+u[8]*x;R=e,w=t,x=s}}else{let e=g(c),t=p(c),s=b(c),a=g(m)-e,i=p(m)-t,r=b(m)-s,n=g(f)-e,h=p(f)-t,o=b(f)-s;R=i*o-r*h,w=r*n-a*o,x=a*h-i*n}let F=Math.sqrt(R*R+w*w+x*x)||1,B=1,W=1,k=1;if(h)B=h.getX(c)*v+h.getX(m)*M+h.getX(f)*y,W=h.getY(c)*v+h.getY(m)*M+h.getY(f)*y,k=h.getZ(c)*v+h.getZ(m)*M+h.getZ(f)*y;else if(e.sampleColor){let t=n?n.getX(c)*v+n.getX(m)*M+n.getX(f)*y:.5,s=n?n.getY(c)*v+n.getY(m)*M+n.getY(f)*y:.5,a=e.sampleColor(t,s);a&&(B=a.r,W=a.g,k=a.b)}return{x:A,y:j,z:I,nx:R/F,ny:w/F,nz:x/F,cr:B,cg:W,cb:k}}}}function C(e){let t=Math.min(Math.max(1,Math.floor(e.guideStrands)),I),s=function(e){let t=e>>>0;return()=>{t|=0,t=t+1831565813|0;let e=Math.imul(t^t>>>15,1|t);return e=e+Math.imul(e^e>>>7,61|e)^e,((e^e>>>14)>>>0)/4294967296}}(e.seed??1337),a="object"===e.shape&&e.sampler,i=a?e.samplerRadius??B:B,r=new Float32Array(4*F),n=new Float32Array(F),h=new Float32Array(4*I).fill(1);for(let o=0;o<t;o++){let t=a?e.sampler(s):W(e.shape,s),l=a?t.x:t.x*i,d=a?t.y:t.y*i,c=a?t.z:t.z*i,{nx:u,ny:g,nz:p}=t;h[4*o+0]=t.cr,h[4*o+1]=t.cg,h[4*o+2]=t.cb;let b,S,m,f=32*o,M=(1.8+.8*s())*e.hairLength*i/31,y=.5+1.5*s(),R=(.02+.06*s())*i;Math.abs(g)<.99?(b=-p,S=0,m=u):(b=1,S=0,m=0);let w=Math.sqrt(b*b+S*S+m*m)||1;for(let e=0;e<32;e++){let t=e/31,s=t*t*.4*i,a=R*Math.sin(t*y*Math.PI*2),h=4*(f+e);r[h+0]=l+u*M*e+a*b/w,r[h+1]=d+g*M*e-s+a*S/w,r[h+2]=c+p*M*e+a*m/w,r[h+3]=0===e?0:1,e<31&&(n[f+e]=M)}}return{initialPositions:r,restLengths:n,unitScale:i,rootColors:h}}var H=1/60,O=4,L=new h,P=new t,z=new s,X=new s,q=class extends e{constructor(e,a,i){super(e,a),this.type="HairSystem",this.isHairSystem=!0,this.simRunning=!1,this.previewRequested=!1,this.playModeActive=!1,this.pendingSimSeconds=0,this.simTime=0,this.resetRequested=!0,this.generation=0,this.settledSimSeconds=0,this.lastMotionFingerprint=0,this.lastBoneQuat=new t,this.lastBonePos=new s,this.hasLastBone=!1,this.baseFoundAtRegen=!1,this.baseSourceGeomsAtRegen=[],this.baseSourceHashesAtRegen=[],this.baseColorHashAtRegen=0,this.baseScaleAtRegen=0,this.classicFallbackWarned=!1,this.regenSnapshot=null,this.context=i,this.data=a,this.geometry.setAttribute("position",new c(new Float32Array(0),3)),this.material=new u({colorWrite:!1,depthWrite:!1}),this.frustumCulled=!1,this.scalpMesh=new g(new l(B,48,32),new u({color:5448477})),this.scalpMesh.name="HairScalp",this.add(this.scalpMesh);let n=new r;n.setAttribute("position",new c(new Float32Array(12),3)),n.setIndex([0,2,1,2,3,1]),n.instanceCount=0,this.ribbonMesh=new g(n,new u({visible:!1})),this.ribbonMesh.name="HairRibbons",this.ribbonMesh.frustumCulled=!1,this.ribbonMesh.visible=!1,this.ribbonMesh.matrixAutoUpdate=!1,this.ribbonMesh.updateMatrixWorld=()=>{this.ribbonMesh.matrixWorld.identity()},this.ribbonMesh.updateWorldMatrix=()=>{this.ribbonMesh.matrixWorld.identity()},this.add(this.ribbonMesh),this.activeGuideStrands=a.guideStrands,this.roots=this.buildRoots(),this.regenSnapshot={guideStrands:a.guideStrands,hairLength:a.hairLength,spreadRadius:a.spreadRadius,headShape:a.headShape,baseObjectId:a.baseObjectId},this.applyScalpState(),this.applyShadowState(),this.syncSimRunning()}update(e){!this.simRunning||(this.pendingSimSeconds=Math.min(this.pendingSimSeconds+e/1e3,4*H*2),this.trackMotionRest(e/1e3))}trackMotionRest(e){this.boneTransform(P,z);let t=this.hasLastBone&&(Math.abs(this.lastBoneQuat.dot(P))<.9999995||this.lastBonePos.distanceToSquared(z)>1e-8),s=this.motionFingerprint(),a=!this.hasLastBone||t||this.resetRequested||s!==this.lastMotionFingerprint||this.data.windStrength>.001;this.lastBoneQuat.copy(P),this.lastBonePos.copy(z),this.lastMotionFingerprint=s,this.hasLastBone=!0,this.settledSimSeconds=a?0:this.settledSimSeconds+e}motionFingerprint(){let e=this.data;return e.gravity+2*e.damping+3*e.localStiffness+4*e.globalStiffness+5*e.globalRange+6*e.stiffnessFalloff+7*e.windStrength+8*e.vspCoefficient+9*e.kink+10*e.kinkFrequency+11*e.clumpStrength+12*e.clumpSize+13*e.clumpTipScale}get isSimulating(){return(this.simRunning||this.resetRequested)&&this.visible}get isMotionSettled(){return this.settledSimSeconds>6}get isVisiblyAnimating(){return this.isSimulating&&!this.isMotionSettled}startPreview(){this.previewRequested=!0,this.syncSimRunning()}stopPreview(){this.previewRequested=!1,this.syncSimRunning()}setPlayMode(e){this.playModeActive=e,e&&this.resetSimulation(),this.syncSimRunning()}resetSimulation(){this.resetRequested=!0,this.pendingSimSeconds=0,this.simTime=0,this.settledSimSeconds=0}warnClassicFallbackOnce(){this.classicFallbackWarned||(this.classicFallbackWarned=!0,console.warn("[spline] Hair System strands require the WebGPU renderer — the WebGL fallback shows only the scalp. Reload with ?renderer=webgpu in a WebGPU-capable browser."))}syncSimRunning(){this.simRunning=this.playModeActive||this.previewRequested||this.data.autoPlay}updateState(e,t){super.updateState(e,t),this.updateHairState(e)}updateHairState(e){if((void 0!==e.guideStrands||void 0!==e.hairLength||void 0!==e.spreadRadius||void 0!==e.headShape||void 0!==e.baseObjectId)&&this.regenerate(),(void 0!==e.headShape||void 0!==e.baseObjectId)&&this.applyScalpState(),void 0!==e.headColor){let t=this.scalpMesh.material;!0===t.isMeshBasicMaterial&&t.color.setRGB(e.headColor.r,e.headColor.g,e.headColor.b,n)}(void 0!==e.castShadow||void 0!==e.receiveShadow)&&this.applyShadowState(),void 0!==e.autoPlay&&this.syncSimRunning()}applyShadowState(){let e=this.data.castShadow??!0,t=this.data.receiveShadow??!0;this.castShadow=e,this.receiveShadow=t,this.scalpMesh.castShadow=e,this.scalpMesh.receiveShadow=t,this.ribbonMesh.castShadow=e,this.ribbonMesh.receiveShadow=t}regenerate(){this.activeGuideStrands=Math.max(1,Math.min(Math.floor(this.data.guideStrands),16384)),this.roots=this.buildRoots(),this.generation++,this.regenSnapshot={guideStrands:this.data.guideStrands,hairLength:this.data.hairLength,spreadRadius:this.data.spreadRadius,headShape:this.data.headShape,baseObjectId:this.data.baseObjectId},this.resetSimulation()}checkDataDrift(){let e=this.data,t=this.regenSnapshot;if(null===t||t.guideStrands!==e.guideStrands||t.hairLength!==e.hairLength||t.spreadRadius!==e.spreadRadius||t.headShape!==e.headShape||t.baseObjectId!==e.baseObjectId){let s=null===t||t.headShape!==e.headShape||t.baseObjectId!==e.baseObjectId;this.regenerate(),s&&this.applyScalpState()}this.syncSimRunning(),this.applyShadowState(),this.checkBaseDrift()}buildRoots(){let{headShape:e,baseObjectId:t,guideStrands:s,hairLength:a}=this.data;if(this.baseFoundAtRegen=!1,this.baseSourceGeomsAtRegen=[],this.baseSourceHashesAtRegen=[],this.baseColorHashAtRegen=0,this.baseScaleAtRegen=0,"object"===e&&t){let e=this.context.scene.find(t);if(e){this.baseFoundAtRegen=!0,e.updateWorldMatrix(!0,!0);let t=this.collectBaseSources(e),i=t?function(e){let t=[];for(let s of e){let e=k(s);e&&t.push(e)}if(0===t.length)return null;let s=new Float64Array(t.length),a=0;for(let e=0;e<t.length;e++)a+=t[e].total,s[e]=a;return a<=0?null:e=>{let i=e()*a,r=0,n=t.length-1;for(;r<n;){let e=r+n>>1;s[e]<i?r=e+1:n=e}let h=0===r?i:i-s[r-1];return t[r].sample(h,e)}}(t.sources):null;if(this.baseSourceGeomsAtRegen=t?.sources.map(e=>e.geometry)??[],this.baseSourceHashesAtRegen=t?.hashes??[],this.baseColorHashAtRegen=t?.colorHash??0,t&&i){let r=this.baseWorldScale(e),n=Math.max(t.radius*r,.001);this.baseScaleAtRegen=r;let h=r;return C({shape:"object",guideStrands:s,hairLength:a,sampler:e=>{let t=i(e);return{...t,x:t.x*h,y:t.y*h,z:t.z*h}},samplerRadius:n})}}}return C({shape:"object"===e?"sphere":e,guideStrands:s,hairLength:a})}collectBaseSources(e){let t=[],s=[],a=0,i=0;L.copy(e.matrixWorld).invert();let r=L.clone(),n=o=>{if(!0===o.isHairSystem||o!==e&&!1===o.visible)return;let l=o.geometry;if(!0===o.isMesh&&l&&(l.getAttribute("position")?.count??0)>=3){let n=o===e?void 0:(new h).multiplyMatrices(r,o.matrixWorld),d=Array.isArray(o.material)?o.material[0]:o.material;t.push({geometry:l,matrix:n,sampleColor:A(d,this.context.shared)??void 0}),s.push(q.matrixHash(n)),i+=function(e,t){let s=e,a=0,i=1,r=e=>{a+=e*i,i+=1},n=s?.data?.layers;if(n&&"function"==typeof n.forEach){let e=t;n.forEach(t=>{let s=t.data;if(!1!==s.visible)if("color"===s.type){let t=s.color,a="string"==typeof t?"function"==typeof e?.color?e.color(t):void 0:t;a&&"number"==typeof a.r&&(r(a.r),r(a.g),r(a.b)),r(w(s.alpha,1))}else if("gradient"===s.type){let e=s;for(let t of e.colors??[])r(t[0]),r(t[1]),r(t[2]),r(t[3]);for(let t of e.steps??[])r(t);r(w(e.angle,0)),r(e.gradientType),r(e.smooth?1:0)}})}else s?.color&&!0===s.color.isColor&&(r(s.color.r),r(s.color.g),r(s.color.b));return a}(d,this.context.shared),null===l.boundingSphere&&l.computeBoundingSphere();let c=l.boundingSphere;if(c){let e=0,t=1;n?(z.copy(c.center).applyMatrix4(n),e=z.length(),t=q.matrixMaxScale(n)):e=c.center.length(),a=Math.max(a,e+c.radius*t)}}for(let e of o.children)n(e)};return n(e),0===t.length?null:{sources:t,hashes:s,radius:Math.max(a,.001),colorHash:i}}static matrixHash(e){if(!e)return 0;let t=e.elements,s=0;for(let e=0;e<16;e++)s+=t[e]*(e+1);return s}static matrixMaxScale(e){let t=e.elements,s=Math.hypot(t[0],t[1],t[2]),a=Math.hypot(t[4],t[5],t[6]),i=Math.hypot(t[8],t[9],t[10]);return Math.max(s,a,i,1e-6)}baseWorldScale(e){return L.copy(e.matrixWorld).decompose(z,P,X),Math.max(Math.abs(X.x),Math.abs(X.y),Math.abs(X.z),1e-6)}get widthWorldScale(){return"object"===this.data.headShape&&this.data.baseObjectId&&this.baseScaleAtRegen>0?this.baseScaleAtRegen:1}checkBaseDrift(){if("object"!==this.data.headShape||!this.data.baseObjectId)return;let e=this.context.scene.find(this.data.baseObjectId);if(!e)return;if(!this.baseFoundAtRegen)return void this.regenerate();e.updateWorldMatrix(!0,!0);let t=this.collectBaseSources(e),s=t?.sources??[],a=t?.hashes??[],i=this.baseSourceGeomsAtRegen,r=this.baseSourceHashesAtRegen,n=s.length!==i.length;if(!n)for(let e=0;e<s.length;e++)if(s[e].geometry!==i[e]||Math.abs(a[e]-r[e])>1e-4*Math.max(Math.abs(r[e]),1)){n=!0;break}if(!n&&"object"===this.data.hairColorSource&&(t?.colorHash??0)!==this.baseColorHashAtRegen&&(n=!0),!n&&s.length>0){let t=this.baseWorldScale(e);n=Math.abs(t-this.baseScaleAtRegen)>.001*Math.max(this.baseScaleAtRegen,1e-6)}n&&this.regenerate()}applyScalpState(){let e=this.data.headShape,t="object"===e&&null!==this.data.baseObjectId;this.scalpMesh.visible=!t,!t&&(this.scalpMesh.geometry.dispose(),this.scalpMesh.geometry="torus"===e?new d(140,70,24,48):"cylinder"===e?new a(80,80,160,48,1):new l(B,48,32))}boneTransform(e,t){let s=this.matrixWorld;if("object"===this.data.headShape&&this.data.baseObjectId){let e=this.context.scene.find(this.data.baseObjectId)?.matrixWorld;e&&(s=e)}L.copy(s).decompose(t,e,X)}raycast(e,t){if(!this.scalpMesh.visible)return;let s=[];this.scalpMesh.raycast(e,s);for(let e of s)e.object=this,t.push(e)}get shadowBoundsRadius(){let e="torus"===this.data.headShape?2.6:1.5;return this.roots.unitScale*(e+2.6*Math.max(this.data.hairLength,0))}getShadowBoundsCenter(e){return this.boneTransform(P,e),e}updateEntityBoxSize(e,t){let s=this.shadowBoundsRadius;e.set(0,0,0),t.set(s,s,s)}dispose(){super.dispose(),this.scalpMesh.geometry.dispose(),this.scalpMesh.material.dispose(),this.ribbonMesh.geometry.dispose(),this.ribbonMesh.material.dispose?.(),M()?.release(this)}};export{b as a,S as b,f as c,M as d,j as e,I as f,F as g,B as h,H as i,O as j,q as k};
1
+ import{v as e}from"./runtime-chunk-QYZPTNBH.js";import{Ec as t,Fc as s,Fd as a,Gc as i,Ge as r,Ib as n,Oc as h,Tc as o,Wd as l,Xd as d,Zc as c,kd as u,ld as g}from"./runtime-chunk-BVVSZMXD.js";var p=null;function b(e){p=e}function S(){return p}var m=null;function f(e){m=e}function M(){return m}var y=new o;function R(e,t,s){return y.setRGB(e,t,s,n),{r:y.r,g:y.g,b:y.b}}var w=(e,t)=>"number"==typeof e&&Number.isFinite(e)?e:t,x=e=>Array.isArray(e)&&"number"==typeof e[0]&&"number"==typeof e[1]?[e[0],e[1]]:[0,0];function v(e,t,s){let a,i=w(e.angle,0),[r,n]=x(e.offset),[h,o]=x(e.morph),l=e.colors??[],d=e.steps??[],c=Math.min(10,l.length,d.length);if(0===c)return[1,1,1,1];if(1===e.gradientType){let e=3*(t+h)-(t+r)-1,l=3*(s+o)-(s+n)-1;a=Math.hypot(e,l)+i}else if(2===e.gradientType){let e=-1*Math.atan2(t+h-.5+r,s+o-.5+n),l=i/Math.PI/-2+.5*e/Math.PI;a=l-Math.floor(l)}else{let e=.5+h/(0!==t?t:1e-6),l=o/(0!==s?s:1e-6),d=Math.cos(i)*e-Math.sin(i)*l,c=Math.sin(i)*e+Math.cos(i)*l,u=d*d+c*c;a=u>1e-12?(((t-.5+r)/2+d/2)*d+((s-.5+n)/2+c/2)*c)/u:0}let u=l[0][0],g=l[0][1],p=l[0][2],b=l[0][3];for(let t=1;t<c;t++){let s=d[t-1],i=d[t]-s,r=0!==i?Math.min(1,Math.max(0,(a-s)/i)):a>=s?1:0;e.smooth&&(r=r*r*(3-2*r)),u+=(l[t][0]-u)*r,g+=(l[t][1]-g)*r,p+=(l[t][2]-p)*r,b+=(l[t][3]-b)*r}return[u,g,p,b]}function A(e,t){let s=e,a=s?.data?.layers;if(a&&"function"==typeof a.forEach){let e=t,s=[];return a.forEach(t=>{let a=t.data;if(!1===a.visible||!0===a.isMask)return;let i=w(a.alpha,1);if(!(i<=0))if("color"===a.type){let t,r=a.color;"string"==typeof r?t="function"==typeof e?.color?e.color(r):void 0:r&&"number"==typeof r.r&&(t=r),t&&s.push({kind:"color",layer:a,rgb:{...R(t.r,t.g,t.b),a:t.a??1},alpha:i})}else"gradient"===a.type&&s.push({kind:"gradient",layer:a,alpha:i})}),0===s.length?null:(e,t)=>{let a=1,i=1,r=1,n=!0;for(let h of s){let s,o,l,d;if("color"===h.kind)({r:s,g:o,b:l}=h.rgb),d=h.rgb.a;else{let[a,i,r,n]=v(h.layer,e,t);({r:s,g:o,b:l}=R(a,i,r)),d=n}let c=n?1:Math.min(1,Math.max(0,d*h.alpha));a+=(s-a)*c,i+=(o-i)*c,r+=(l-r)*c,n=!1}return{r:a,g:i,b:r}}}if(s?.color&&!0===s.color.isColor){let{r:e,g:t,b:a}=s.color;return()=>({r:e,g:t,b:a})}return null}var j=32,I=16384,B=32*I,F=100;function W(e,t){if("torus"===e){let e=t()*Math.PI*2,s=t()*Math.PI*2,a=Math.cos(e),i=Math.sin(e),r=Math.cos(s),n=Math.sin(s);return{x:(1.4+.7*r)*a,y:-(1.4+.7*r)*i,z:.7*n,nx:r*a,ny:-r*i,nz:n,cr:1,cg:1,cb:1}}if("cylinder"===e){let e=t()*Math.PI*2,s=Math.cos(e),a=Math.sin(e);return{x:.8*s,y:1.6*(t()-.5),z:.8*a,nx:s,ny:0,nz:a,cr:1,cg:1,cb:1}}let s=t()*Math.PI*2,a=2*t()-1,i=Math.acos(a),r=Math.sin(i)*Math.cos(s),n=Math.cos(i),h=Math.sin(i)*Math.sin(s);return{x:r,y:n,z:h,nx:r,ny:n,nz:h,cr:1,cg:1,cb:1}}function k(e){let{geometry:t,matrix:s}=e,a=t.getAttribute("position");if(!a||a.count<3)return null;let r=t.getAttribute("normal"),n=t.getAttribute("uv"),h=t.getAttribute("color"),o=t.getIndex(),l=o?o.count/3:a.count/3;if(l<1)return null;let d=(e,t)=>o?o.getX(3*e+t):3*e+t,c=s?s.elements:null,u=s?(new i).getNormalMatrix(s).elements:null,g=e=>{let t=a.getX(e),s=a.getY(e),i=a.getZ(e);return c?c[0]*t+c[4]*s+c[8]*i+c[12]:t},p=e=>{let t=a.getX(e),s=a.getY(e),i=a.getZ(e);return c?c[1]*t+c[5]*s+c[9]*i+c[13]:s},b=e=>{let t=a.getX(e),s=a.getY(e),i=a.getZ(e);return c?c[2]*t+c[6]*s+c[10]*i+c[14]:i},S=new Float64Array(l),m=0;for(let e=0;e<l;e++){let t=d(e,0),s=d(e,1),a=d(e,2),i=g(t),r=p(t),n=b(t),h=g(s)-i,o=p(s)-r,l=b(s)-n,c=g(a)-i,u=p(a)-r,f=b(a)-n,M=o*f-l*u,y=l*c-h*f,R=h*u-o*c;m+=.5*Math.sqrt(M*M+y*y+R*R),S[e]=m}return m<=0?null:{total:m,sample:(t,s)=>{let a=0,i=l-1;for(;a<i;){let e=a+i>>1;S[e]<t?a=e+1:i=e}let o=a,c=d(o,0),m=d(o,1),f=d(o,2),M=s(),y=s();M+y>1&&(M=1-M,y=1-y);let R,w,x,v=1-M-y,A=g(c)*v+g(m)*M+g(f)*y,j=p(c)*v+p(m)*M+p(f)*y,I=b(c)*v+b(m)*M+b(f)*y;if(r){if(R=r.getX(c)*v+r.getX(m)*M+r.getX(f)*y,w=r.getY(c)*v+r.getY(m)*M+r.getY(f)*y,x=r.getZ(c)*v+r.getZ(m)*M+r.getZ(f)*y,u){let e=u[0]*R+u[3]*w+u[6]*x,t=u[1]*R+u[4]*w+u[7]*x,s=u[2]*R+u[5]*w+u[8]*x;R=e,w=t,x=s}}else{let e=g(c),t=p(c),s=b(c),a=g(m)-e,i=p(m)-t,r=b(m)-s,n=g(f)-e,h=p(f)-t,o=b(f)-s;R=i*o-r*h,w=r*n-a*o,x=a*h-i*n}let B=Math.sqrt(R*R+w*w+x*x)||1,F=1,W=1,k=1;if(h)F=h.getX(c)*v+h.getX(m)*M+h.getX(f)*y,W=h.getY(c)*v+h.getY(m)*M+h.getY(f)*y,k=h.getZ(c)*v+h.getZ(m)*M+h.getZ(f)*y;else if(e.sampleColor){let t=n?n.getX(c)*v+n.getX(m)*M+n.getX(f)*y:.5,s=n?n.getY(c)*v+n.getY(m)*M+n.getY(f)*y:.5,a=e.sampleColor(t,s);a&&(F=a.r,W=a.g,k=a.b)}return{x:A,y:j,z:I,nx:R/B,ny:w/B,nz:x/B,cr:F,cg:W,cb:k}}}}function H(e){let t=Math.min(Math.max(1,Math.floor(e.guideStrands)),I),s=function(e){let t=e>>>0;return()=>{t|=0,t=t+1831565813|0;let e=Math.imul(t^t>>>15,1|t);return e=e+Math.imul(e^e>>>7,61|e)^e,((e^e>>>14)>>>0)/4294967296}}(e.seed??1337),a="object"===e.shape&&e.sampler,i=a?e.samplerRadius??F:F,r=new Float32Array(4*B),n=new Float32Array(B),h=new Float32Array(4*I).fill(1);for(let o=0;o<t;o++){let t=a?e.sampler(s):W(e.shape,s),l=a?t.x:t.x*i,d=a?t.y:t.y*i,c=a?t.z:t.z*i,{nx:u,ny:g,nz:p}=t;h[4*o+0]=t.cr,h[4*o+1]=t.cg,h[4*o+2]=t.cb;let b,S,m,f=32*o,M=(1.8+.8*s())*e.hairLength*i/31,y=.5+1.5*s(),R=(.02+.06*s())*i;Math.abs(g)<.99?(b=-p,S=0,m=u):(b=1,S=0,m=0);let w=Math.sqrt(b*b+S*S+m*m)||1;for(let e=0;e<32;e++){let t=e/31,s=t*t*.4*i,a=R*Math.sin(t*y*Math.PI*2),h=4*(f+e);r[h+0]=l+u*M*e+a*b/w,r[h+1]=d+g*M*e-s+a*S/w,r[h+2]=c+p*M*e+a*m/w,r[h+3]=0===e?0:1,e<31&&(n[f+e]=M)}}return{initialPositions:r,restLengths:n,unitScale:i,rootColors:h}}var C=1/60,O=4,P=new h,L=new t,z=new s,X=new s,q=class extends e{constructor(e,a,i){super(e,a),this.type="HairSystem",this.isHairSystem=!0,this.simRunning=!1,this.previewRequested=!1,this.playModeActive=!1,this.pendingSimSeconds=0,this.simTime=0,this.resetRequested=!0,this.generation=0,this.settledSimSeconds=0,this.lastMotionFingerprint=0,this.lastBoneQuat=new t,this.lastBonePos=new s,this.hasLastBone=!1,this.baseFoundAtRegen=!1,this.baseSourceGeomsAtRegen=[],this.baseSourceHashesAtRegen=[],this.baseColorHashAtRegen=0,this.baseScaleAtRegen=0,this.classicFallbackWarned=!1,this.regenSnapshot=null,this.context=i,this.data=a,this.geometry.setAttribute("position",new c(new Float32Array(0),3)),this.material=new u({colorWrite:!1,depthWrite:!1}),this.frustumCulled=!1,this.scalpMesh=new g(new l(F,48,32),new u({color:5448477})),this.scalpMesh.name="HairScalp",this.add(this.scalpMesh);let n=new r;n.setAttribute("position",new c(new Float32Array(12),3)),n.setIndex([0,2,1,2,3,1]),n.instanceCount=0,this.ribbonMesh=new g(n,new u({visible:!1})),this.ribbonMesh.name="HairRibbons",this.ribbonMesh.frustumCulled=!1,this.ribbonMesh.visible=!1,this.ribbonMesh.matrixAutoUpdate=!1,this.ribbonMesh.updateMatrixWorld=()=>{this.ribbonMesh.matrixWorld.identity()},this.ribbonMesh.updateWorldMatrix=()=>{this.ribbonMesh.matrixWorld.identity()},this.add(this.ribbonMesh),this.activeGuideStrands=a.guideStrands,this.roots=this.buildRoots(),this.regenSnapshot={guideStrands:a.guideStrands,hairLength:a.hairLength,spreadRadius:a.spreadRadius,headShape:a.headShape,baseObjectId:a.baseObjectId},this.applyScalpState(),this.applyShadowState(),this.syncSimRunning()}update(e){!this.simRunning||(this.pendingSimSeconds=Math.min(this.pendingSimSeconds+e/1e3,4*C*2),this.trackMotionRest(e/1e3))}trackMotionRest(e){this.boneTransform(L,z);let t=this.hasLastBone&&(Math.abs(this.lastBoneQuat.dot(L))<.9999995||this.lastBonePos.distanceToSquared(z)>1e-8),s=this.motionFingerprint(),a=!this.hasLastBone||t||this.resetRequested||s!==this.lastMotionFingerprint||this.data.windStrength>.001;this.lastBoneQuat.copy(L),this.lastBonePos.copy(z),this.lastMotionFingerprint=s,this.hasLastBone=!0,this.settledSimSeconds=a?0:this.settledSimSeconds+e}motionFingerprint(){let e=this.data;return e.gravity+2*e.damping+3*e.localStiffness+4*e.globalStiffness+5*e.globalRange+6*e.stiffnessFalloff+7*e.windStrength+8*e.vspCoefficient+9*e.kink+10*e.kinkFrequency+11*e.clumpStrength+12*e.clumpSize+13*e.clumpTipScale}get isSimulating(){return(this.simRunning||this.resetRequested)&&this.visible}get isMotionSettled(){return this.settledSimSeconds>6}get isVisiblyAnimating(){return this.isSimulating&&!this.isMotionSettled}startPreview(){this.previewRequested=!0,this.syncSimRunning()}stopPreview(){this.previewRequested=!1,this.syncSimRunning()}setPlayMode(e){this.playModeActive=e,e&&this.resetSimulation(),this.syncSimRunning()}resetSimulation(){this.resetRequested=!0,this.pendingSimSeconds=0,this.simTime=0,this.settledSimSeconds=0}warnClassicFallbackOnce(){this.classicFallbackWarned||(this.classicFallbackWarned=!0,console.warn("[spline] Hair System strands require the WebGPU renderer — the WebGL fallback shows only the scalp. Reload with ?renderer=webgpu in a WebGPU-capable browser."))}syncSimRunning(){this.simRunning=this.playModeActive||this.previewRequested||this.data.autoPlay}updateState(e,t){super.updateState(e,t),this.updateHairState(e)}updateHairState(e){if((void 0!==e.guideStrands||void 0!==e.hairLength||void 0!==e.spreadRadius||void 0!==e.headShape||void 0!==e.baseObjectId)&&this.regenerate(),(void 0!==e.headShape||void 0!==e.baseObjectId)&&this.applyScalpState(),void 0!==e.headColor){let t=this.scalpMesh.material;!0===t.isMeshBasicMaterial&&t.color.setRGB(e.headColor.r,e.headColor.g,e.headColor.b,n)}(void 0!==e.castShadow||void 0!==e.receiveShadow)&&this.applyShadowState(),void 0!==e.autoPlay&&this.syncSimRunning()}applyShadowState(){let e=this.data.castShadow??!0,t=this.data.receiveShadow??!0;this.castShadow=e,this.receiveShadow=t,this.scalpMesh.castShadow=e,this.scalpMesh.receiveShadow=t,this.ribbonMesh.castShadow=e,this.ribbonMesh.receiveShadow=t}regenerate(){this.activeGuideStrands=Math.max(1,Math.min(Math.floor(this.data.guideStrands),16384)),this.roots=this.buildRoots(),this.generation++,this.regenSnapshot={guideStrands:this.data.guideStrands,hairLength:this.data.hairLength,spreadRadius:this.data.spreadRadius,headShape:this.data.headShape,baseObjectId:this.data.baseObjectId},this.resetSimulation()}checkDataDrift(){let e=this.data,t=this.regenSnapshot;if(null===t||t.guideStrands!==e.guideStrands||t.hairLength!==e.hairLength||t.spreadRadius!==e.spreadRadius||t.headShape!==e.headShape||t.baseObjectId!==e.baseObjectId){let s=null===t||t.headShape!==e.headShape||t.baseObjectId!==e.baseObjectId;this.regenerate(),s&&this.applyScalpState()}this.syncSimRunning(),this.applyShadowState(),this.checkBaseDrift()}buildRoots(){let{headShape:e,baseObjectId:t,guideStrands:s,hairLength:a}=this.data;if(this.baseFoundAtRegen=!1,this.baseSourceGeomsAtRegen=[],this.baseSourceHashesAtRegen=[],this.baseColorHashAtRegen=0,this.baseScaleAtRegen=0,"object"===e&&t){let e=this.context.scene.find(t);if(e){this.baseFoundAtRegen=!0,e.updateWorldMatrix(!0,!0);let t=this.collectBaseSources(e),i=t?function(e){let t=[];for(let s of e){let e=k(s);e&&t.push(e)}if(0===t.length)return null;let s=new Float64Array(t.length),a=0;for(let e=0;e<t.length;e++)a+=t[e].total,s[e]=a;return a<=0?null:e=>{let i=e()*a,r=0,n=t.length-1;for(;r<n;){let e=r+n>>1;s[e]<i?r=e+1:n=e}let h=0===r?i:i-s[r-1];return t[r].sample(h,e)}}(t.sources):null;if(this.baseSourceGeomsAtRegen=t?.sources.map(e=>e.geometry)??[],this.baseSourceHashesAtRegen=t?.hashes??[],this.baseColorHashAtRegen=t?.colorHash??0,t&&i){let r=this.baseWorldScale(e),n=Math.max(t.radius*r,.001);this.baseScaleAtRegen=r;let h=r;return H({shape:"object",guideStrands:s,hairLength:a,sampler:e=>{let t=i(e);return{...t,x:t.x*h,y:t.y*h,z:t.z*h}},samplerRadius:n})}}}return H({shape:"object"===e?"sphere":e,guideStrands:s,hairLength:a})}collectBaseSources(e){let t=[],s=[],a=0,i=0;P.copy(e.matrixWorld).invert();let r=P.clone(),n=o=>{if(!0===o.isHairSystem||o!==e&&!1===o.visible)return;let l=o.geometry;if(!0===o.isMesh&&l&&(l.getAttribute("position")?.count??0)>=3){let n=o===e?void 0:(new h).multiplyMatrices(r,o.matrixWorld),d=Array.isArray(o.material)?o.material[0]:o.material;t.push({geometry:l,matrix:n,sampleColor:A(d,this.context.shared)??void 0}),s.push(q.matrixHash(n)),i+=function(e,t){let s=e,a=0,i=1,r=e=>{a+=e*i,i+=1},n=s?.data?.layers;if(n&&"function"==typeof n.forEach){let e=t;n.forEach(t=>{let s=t.data;if(!1!==s.visible)if("color"===s.type){let t=s.color,a="string"==typeof t?"function"==typeof e?.color?e.color(t):void 0:t;a&&"number"==typeof a.r&&(r(a.r),r(a.g),r(a.b)),r(w(s.alpha,1))}else if("gradient"===s.type){let e=s;for(let t of e.colors??[])r(t[0]),r(t[1]),r(t[2]),r(t[3]);for(let t of e.steps??[])r(t);r(w(e.angle,0)),r(e.gradientType),r(e.smooth?1:0)}})}else s?.color&&!0===s.color.isColor&&(r(s.color.r),r(s.color.g),r(s.color.b));return a}(d,this.context.shared),null===l.boundingSphere&&l.computeBoundingSphere();let c=l.boundingSphere;if(c){let e=0,t=1;n?(z.copy(c.center).applyMatrix4(n),e=z.length(),t=q.matrixMaxScale(n)):e=c.center.length(),a=Math.max(a,e+c.radius*t)}}for(let e of o.children)n(e)};return n(e),0===t.length?null:{sources:t,hashes:s,radius:Math.max(a,.001),colorHash:i}}static matrixHash(e){if(!e)return 0;let t=e.elements,s=0;for(let e=0;e<16;e++)s+=t[e]*(e+1);return s}static matrixMaxScale(e){let t=e.elements,s=Math.hypot(t[0],t[1],t[2]),a=Math.hypot(t[4],t[5],t[6]),i=Math.hypot(t[8],t[9],t[10]);return Math.max(s,a,i,1e-6)}baseWorldScale(e){return P.copy(e.matrixWorld).decompose(z,L,X),Math.max(Math.abs(X.x),Math.abs(X.y),Math.abs(X.z),1e-6)}get widthWorldScale(){return"object"===this.data.headShape&&this.data.baseObjectId&&this.baseScaleAtRegen>0?this.baseScaleAtRegen:1}checkBaseDrift(){if("object"!==this.data.headShape||!this.data.baseObjectId)return;let e=this.context.scene.find(this.data.baseObjectId);if(!e)return;if(!this.baseFoundAtRegen)return void this.regenerate();e.updateWorldMatrix(!0,!0);let t=this.collectBaseSources(e),s=t?.sources??[],a=t?.hashes??[],i=this.baseSourceGeomsAtRegen,r=this.baseSourceHashesAtRegen,n=s.length!==i.length;if(!n)for(let e=0;e<s.length;e++)if(s[e].geometry!==i[e]||Math.abs(a[e]-r[e])>1e-4*Math.max(Math.abs(r[e]),1)){n=!0;break}if(!n&&"object"===this.data.hairColorSource&&(t?.colorHash??0)!==this.baseColorHashAtRegen&&(n=!0),!n&&s.length>0){let t=this.baseWorldScale(e);n=Math.abs(t-this.baseScaleAtRegen)>.001*Math.max(this.baseScaleAtRegen,1e-6)}n&&this.regenerate()}applyScalpState(){let e=this.data.headShape,t="object"===e&&null!==this.data.baseObjectId;this.scalpMesh.visible=!t,!t&&(this.scalpMesh.geometry.dispose(),this.scalpMesh.geometry="torus"===e?new d(140,70,24,48):"cylinder"===e?new a(80,80,160,48,1):new l(F,48,32))}boneTransform(e,t){let s=this.matrixWorld;if("object"===this.data.headShape&&this.data.baseObjectId){let e=this.context.scene.find(this.data.baseObjectId)?.matrixWorld;e&&(s=e)}P.copy(s).decompose(t,e,X)}raycast(e,t){if(!this.scalpMesh.visible)return;let s=[];this.scalpMesh.raycast(e,s);for(let e of s)e.object=this,t.push(e)}get shadowBoundsRadius(){let e="torus"===this.data.headShape?2.6:1.5;return this.roots.unitScale*(e+2.6*Math.max(this.data.hairLength,0))}getShadowBoundsCenter(e){return this.boneTransform(L,e),e}updateEntityBoxSize(e,t){let s=this.shadowBoundsRadius;e.set(0,0,0),t.set(s,s,s)}dispose(){super.dispose(),this.scalpMesh.geometry.dispose(),this.scalpMesh.material.dispose(),this.ribbonMesh.geometry.dispose(),this.ribbonMesh.material.dispose?.(),M()?.release(this)}};export{b as a,S as b,f as c,M as d,j as e,I as f,B as g,F as h,C as i,O as j,q as k};