@spawnite/engine 0.1.0-beta.15

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 (2563) hide show
  1. package/LICENSE.md +169 -0
  2. package/README.md +92 -0
  3. package/dist/-MLBVTaO.js +1 -0
  4. package/dist/28wIPE7L.js +1 -0
  5. package/dist/3rj0AvB6.js +1 -0
  6. package/dist/5L-NcwKR.js +1 -0
  7. package/dist/B-qLcgSf.js +1 -0
  8. package/dist/B0WN1jqX.js +41 -0
  9. package/dist/B1OUgdbN.js +1 -0
  10. package/dist/BEL83Bb6.js +1 -0
  11. package/dist/BGDOC3Q-.js +1 -0
  12. package/dist/BGM1SnEr.js +1 -0
  13. package/dist/BH6Ftfg9.js +1 -0
  14. package/dist/BJIJuxaE.js +1 -0
  15. package/dist/BJclgjKG.js +1 -0
  16. package/dist/BKc2k2s6.js +1 -0
  17. package/dist/BLB4-b4b.js +2 -0
  18. package/dist/BQnBIIt8.js +1 -0
  19. package/dist/BR3nbYwS.js +7 -0
  20. package/dist/BV9hGHeu.js +623 -0
  21. package/dist/BWOKsReG.js +1 -0
  22. package/dist/BWlq9jqw.js +1 -0
  23. package/dist/BXmxKBbF.js +3 -0
  24. package/dist/BYXhtwWy.js +1 -0
  25. package/dist/B_HFa2lJ.js +1 -0
  26. package/dist/BciVglt5.js +1 -0
  27. package/dist/Bfg1Y9_2.js +1 -0
  28. package/dist/Bh-CVkQx.js +1 -0
  29. package/dist/BiH9xCBB.js +1 -0
  30. package/dist/BobsCMiL.js +9 -0
  31. package/dist/Bp238wbZ.js +1 -0
  32. package/dist/Bpe0g5hX.js +1 -0
  33. package/dist/BrfUaL46.js +2 -0
  34. package/dist/Bw06YsIc.js +1 -0
  35. package/dist/Bydoy8wO.js +1 -0
  36. package/dist/BzaiZux2.js +1 -0
  37. package/dist/C25qqozO.js +1 -0
  38. package/dist/C6Ja5Z7G.js +1 -0
  39. package/dist/CCh4CnV9.js +1 -0
  40. package/dist/CEuuijY1.js +1 -0
  41. package/dist/CHntUxHl.js +1 -0
  42. package/dist/CIq9KviM.js +1 -0
  43. package/dist/CQPA3y5T.js +1 -0
  44. package/dist/CRfoqBKG.js +1 -0
  45. package/dist/CSXcU95U.js +1 -0
  46. package/dist/CU0epHFG.js +3 -0
  47. package/dist/CVgRrBP4.js +1 -0
  48. package/dist/CZV99t6a.js +7 -0
  49. package/dist/Cg33N9Ej.js +1 -0
  50. package/dist/Chcm92bZ.js +1 -0
  51. package/dist/CjiCdqiE.js +2 -0
  52. package/dist/Cp5beIll.js +1 -0
  53. package/dist/Cq6VqPHb.js +2 -0
  54. package/dist/CwZDkslT.js +1 -0
  55. package/dist/D3Y2LHFe.js +1 -0
  56. package/dist/D3wyrZ2_.js +1 -0
  57. package/dist/D8jIS84n.js +1 -0
  58. package/dist/DCIejHqp.js +1 -0
  59. package/dist/DHsBnfoU.js +1 -0
  60. package/dist/DJSpRhXB.js +1 -0
  61. package/dist/DOeUeeKs.js +1 -0
  62. package/dist/DR9bHgf0.js +1 -0
  63. package/dist/DRnuSAbu.js +1 -0
  64. package/dist/DSb1ApLU.js +1 -0
  65. package/dist/DXtppcZ7.js +1 -0
  66. package/dist/DZIhHLUn.js +1 -0
  67. package/dist/DgMhVbMU.js +1 -0
  68. package/dist/Dh5kh1nX.js +1 -0
  69. package/dist/DiGFL8kd.js +1 -0
  70. package/dist/DkKmurqu.js +1 -0
  71. package/dist/DlkDsMQd.js +1 -0
  72. package/dist/DnNEzpz-.js +1 -0
  73. package/dist/Dqx9hHBK.js +1 -0
  74. package/dist/DsgWLyZo.js +1 -0
  75. package/dist/DucRBEvN.js +1 -0
  76. package/dist/Dwcms3jX.js +1 -0
  77. package/dist/Dwfie-ev.js +1 -0
  78. package/dist/DyHjwN2H.js +1 -0
  79. package/dist/SMby3e6M.js +4 -0
  80. package/dist/THIRD-PARTY-NOTICES +329 -0
  81. package/dist/UJDr3Nrd.js +1 -0
  82. package/dist/V70ADx0g.js +2 -0
  83. package/dist/abilities.d.ts +1 -0
  84. package/dist/abilities.js +1 -0
  85. package/dist/core.d.ts +1 -0
  86. package/dist/core.js +1 -0
  87. package/dist/devtools.d.ts +1 -0
  88. package/dist/devtools.js +1 -0
  89. package/dist/dragAndDrop.d.ts +1 -0
  90. package/dist/dragAndDrop.js +1 -0
  91. package/dist/eYC1fQo5.js +1 -0
  92. package/dist/eslint.js +1 -0
  93. package/dist/hQBGE7c4.js +1 -0
  94. package/dist/index.d.ts +1 -0
  95. package/dist/index.js +297 -0
  96. package/dist/internal/cli.js +1 -0
  97. package/dist/internal/devServer.js +2 -0
  98. package/dist/internal/devtools.js +1 -0
  99. package/dist/internal/room.js +1 -0
  100. package/dist/inventory.d.ts +1 -0
  101. package/dist/inventory.js +1 -0
  102. package/dist/jMKXPXIH.js +33 -0
  103. package/dist/looks/dusk.d.ts +1 -0
  104. package/dist/looks/dusk.js +1 -0
  105. package/dist/looks/morning.d.ts +1 -0
  106. package/dist/looks/morning.js +1 -0
  107. package/dist/looks/night.d.ts +1 -0
  108. package/dist/looks/night.js +1 -0
  109. package/dist/looks/noon.d.ts +1 -0
  110. package/dist/looks/noon.js +1 -0
  111. package/dist/looks/overcast.d.ts +1 -0
  112. package/dist/looks/overcast.js +1 -0
  113. package/dist/npcs.d.ts +1 -0
  114. package/dist/npcs.js +1 -0
  115. package/dist/public.d.ts +18818 -0
  116. package/dist/replay.d.ts +1 -0
  117. package/dist/replay.js +1 -0
  118. package/dist/testing.d.ts +542 -0
  119. package/dist/testing.js +1 -0
  120. package/dist/three.d.ts +1 -0
  121. package/dist/three.js +1 -0
  122. package/dist/tracks.d.ts +1 -0
  123. package/dist/tracks.js +1 -0
  124. package/dist/vite.d.ts +123 -0
  125. package/dist/vite.js +1 -0
  126. package/dist/weapons.d.ts +1 -0
  127. package/dist/weapons.js +1 -0
  128. package/dist/wiki/engine/ai/metadata.md +143 -0
  129. package/dist/wiki/engine/audio/sound.md +72 -0
  130. package/dist/wiki/engine/audio/voice.md +153 -0
  131. package/dist/wiki/engine/behaviours/abilities.md +328 -0
  132. package/dist/wiki/engine/behaviours/bob.md +37 -0
  133. package/dist/wiki/engine/behaviours/chase.md +158 -0
  134. package/dist/wiki/engine/behaviours/cooldowns.md +83 -0
  135. package/dist/wiki/engine/behaviours/dialog.md +172 -0
  136. package/dist/wiki/engine/behaviours/health.md +330 -0
  137. package/dist/wiki/engine/behaviours/interact.md +41 -0
  138. package/dist/wiki/engine/behaviours/inventory.md +266 -0
  139. package/dist/wiki/engine/behaviours/loot.md +90 -0
  140. package/dist/wiki/engine/behaviours/pickup.md +149 -0
  141. package/dist/wiki/engine/behaviours/resources.md +274 -0
  142. package/dist/wiki/engine/behaviours/routines.md +99 -0
  143. package/dist/wiki/engine/behaviours/spin.md +36 -0
  144. package/dist/wiki/engine/behaviours/stats.md +220 -0
  145. package/dist/wiki/engine/behaviours/targeting.md +155 -0
  146. package/dist/wiki/engine/behaviours/track-mover.md +121 -0
  147. package/dist/wiki/engine/behaviours/track-trigger.md +117 -0
  148. package/dist/wiki/engine/behaviours/trigger.md +158 -0
  149. package/dist/wiki/engine/behaviours/weapon.md +462 -0
  150. package/dist/wiki/engine/entities/camera.md +326 -0
  151. package/dist/wiki/engine/entities/entity.mdx +1063 -0
  152. package/dist/wiki/engine/entities/npc.md +64 -0
  153. package/dist/wiki/engine/entities/player.md +435 -0
  154. package/dist/wiki/engine/errors/SP0001.md +20 -0
  155. package/dist/wiki/engine/errors/SP0002.md +20 -0
  156. package/dist/wiki/engine/errors/SP0003.md +20 -0
  157. package/dist/wiki/engine/errors/SP0008.md +20 -0
  158. package/dist/wiki/engine/errors/SP0009.md +20 -0
  159. package/dist/wiki/engine/errors/SP0010.md +20 -0
  160. package/dist/wiki/engine/errors/SP0011.md +20 -0
  161. package/dist/wiki/engine/errors/SP0014.md +20 -0
  162. package/dist/wiki/engine/errors/SP0015.md +20 -0
  163. package/dist/wiki/engine/errors/SP0016.md +20 -0
  164. package/dist/wiki/engine/errors/SP0017.md +20 -0
  165. package/dist/wiki/engine/errors/SP0018.md +20 -0
  166. package/dist/wiki/engine/errors/SP0019.md +20 -0
  167. package/dist/wiki/engine/errors/SP0020.md +20 -0
  168. package/dist/wiki/engine/errors/SP0021.md +20 -0
  169. package/dist/wiki/engine/errors/SP0022.md +20 -0
  170. package/dist/wiki/engine/errors/SP0023.md +20 -0
  171. package/dist/wiki/engine/errors/SP0024.md +20 -0
  172. package/dist/wiki/engine/errors/SP0025.md +20 -0
  173. package/dist/wiki/engine/errors/SP0026.md +22 -0
  174. package/dist/wiki/engine/errors/SP0027.md +20 -0
  175. package/dist/wiki/engine/errors/SP0028.md +20 -0
  176. package/dist/wiki/engine/errors/SP0029.md +20 -0
  177. package/dist/wiki/engine/errors/SP0030.md +20 -0
  178. package/dist/wiki/engine/errors/SP0031.md +20 -0
  179. package/dist/wiki/engine/errors/SP0034.md +20 -0
  180. package/dist/wiki/engine/errors/SP0035.md +20 -0
  181. package/dist/wiki/engine/errors/SP0036.md +20 -0
  182. package/dist/wiki/engine/errors/SP0037.md +20 -0
  183. package/dist/wiki/engine/errors/SP0038.md +20 -0
  184. package/dist/wiki/engine/errors/SP0039.md +20 -0
  185. package/dist/wiki/engine/errors/SP0040.md +20 -0
  186. package/dist/wiki/engine/errors/SP0041.md +20 -0
  187. package/dist/wiki/engine/errors/SP0042.md +20 -0
  188. package/dist/wiki/engine/errors/SP0043.md +20 -0
  189. package/dist/wiki/engine/errors/SP0045.md +20 -0
  190. package/dist/wiki/engine/errors/SP0046.md +20 -0
  191. package/dist/wiki/engine/errors/SP0047.md +20 -0
  192. package/dist/wiki/engine/errors/SP0048.md +20 -0
  193. package/dist/wiki/engine/errors/SP0049.md +20 -0
  194. package/dist/wiki/engine/errors/SP0050.md +20 -0
  195. package/dist/wiki/engine/errors/SP0051.md +20 -0
  196. package/dist/wiki/engine/errors/SP0052.md +20 -0
  197. package/dist/wiki/engine/errors/SP0053.md +20 -0
  198. package/dist/wiki/engine/errors/SP0054.md +20 -0
  199. package/dist/wiki/engine/errors/SP0055.md +20 -0
  200. package/dist/wiki/engine/errors/SP0056.md +20 -0
  201. package/dist/wiki/engine/errors/SP0057.md +20 -0
  202. package/dist/wiki/engine/errors/SP0058.md +20 -0
  203. package/dist/wiki/engine/errors/SP0059.md +20 -0
  204. package/dist/wiki/engine/errors/SP0060.md +20 -0
  205. package/dist/wiki/engine/errors/SP0061.md +20 -0
  206. package/dist/wiki/engine/errors/SP0064.md +20 -0
  207. package/dist/wiki/engine/errors/SP0065.md +20 -0
  208. package/dist/wiki/engine/errors/SP0066.md +20 -0
  209. package/dist/wiki/engine/errors/SP0067.md +20 -0
  210. package/dist/wiki/engine/errors/SP0070.md +20 -0
  211. package/dist/wiki/engine/errors/SP0071.md +20 -0
  212. package/dist/wiki/engine/errors/SP0072.md +20 -0
  213. package/dist/wiki/engine/errors/SP0073.md +20 -0
  214. package/dist/wiki/engine/errors/SP0074.md +20 -0
  215. package/dist/wiki/engine/errors/SP0075.md +20 -0
  216. package/dist/wiki/engine/errors/SP0076.md +20 -0
  217. package/dist/wiki/engine/errors/SP0077.md +20 -0
  218. package/dist/wiki/engine/errors/SP0078.md +20 -0
  219. package/dist/wiki/engine/errors/SP0079.md +20 -0
  220. package/dist/wiki/engine/errors/SP0080.md +20 -0
  221. package/dist/wiki/engine/errors/SP0081.md +20 -0
  222. package/dist/wiki/engine/errors/SP0082.md +20 -0
  223. package/dist/wiki/engine/errors/SP0083.md +20 -0
  224. package/dist/wiki/engine/errors/SP0084.md +20 -0
  225. package/dist/wiki/engine/errors/SP0085.md +20 -0
  226. package/dist/wiki/engine/errors/SP0086.md +20 -0
  227. package/dist/wiki/engine/errors/SP0087.md +20 -0
  228. package/dist/wiki/engine/errors/SP0089.md +20 -0
  229. package/dist/wiki/engine/errors/SP0090.md +20 -0
  230. package/dist/wiki/engine/errors/SP0091.md +20 -0
  231. package/dist/wiki/engine/errors/SP0092.md +20 -0
  232. package/dist/wiki/engine/errors/SP0093.md +20 -0
  233. package/dist/wiki/engine/errors/SP0094.md +20 -0
  234. package/dist/wiki/engine/errors/SP0095.md +20 -0
  235. package/dist/wiki/engine/errors/SP0096.md +20 -0
  236. package/dist/wiki/engine/errors/SP0097.md +20 -0
  237. package/dist/wiki/engine/errors/SP0098.md +20 -0
  238. package/dist/wiki/engine/errors/SP0099.md +20 -0
  239. package/dist/wiki/engine/errors/SP0100.md +20 -0
  240. package/dist/wiki/engine/errors/SP0101.md +20 -0
  241. package/dist/wiki/engine/errors/SP0102.md +20 -0
  242. package/dist/wiki/engine/errors/SP0103.md +20 -0
  243. package/dist/wiki/engine/errors/SP0104.md +20 -0
  244. package/dist/wiki/engine/errors/SP0105.md +20 -0
  245. package/dist/wiki/engine/errors/SP0106.md +20 -0
  246. package/dist/wiki/engine/errors/SP0107.md +20 -0
  247. package/dist/wiki/engine/errors/SP0108.md +20 -0
  248. package/dist/wiki/engine/errors/SP0109.md +20 -0
  249. package/dist/wiki/engine/errors/SP0110.md +20 -0
  250. package/dist/wiki/engine/errors/SP0111.md +20 -0
  251. package/dist/wiki/engine/errors/SP0112.md +20 -0
  252. package/dist/wiki/engine/errors/SP0113.md +20 -0
  253. package/dist/wiki/engine/errors/SP0114.md +20 -0
  254. package/dist/wiki/engine/errors/SP0115.md +20 -0
  255. package/dist/wiki/engine/errors/SP0116.md +20 -0
  256. package/dist/wiki/engine/errors/SP0117.md +20 -0
  257. package/dist/wiki/engine/errors/SP0118.md +20 -0
  258. package/dist/wiki/engine/errors/SP0119.md +20 -0
  259. package/dist/wiki/engine/errors/SP0120.md +20 -0
  260. package/dist/wiki/engine/errors/SP0121.md +20 -0
  261. package/dist/wiki/engine/errors/SP0122.md +20 -0
  262. package/dist/wiki/engine/errors/SP0125.md +20 -0
  263. package/dist/wiki/engine/errors/SP0126.md +20 -0
  264. package/dist/wiki/engine/errors/SP0132.md +20 -0
  265. package/dist/wiki/engine/errors/SP0133.md +20 -0
  266. package/dist/wiki/engine/errors/SP0134.md +20 -0
  267. package/dist/wiki/engine/errors/SP0137.md +20 -0
  268. package/dist/wiki/engine/errors/SP0138.md +20 -0
  269. package/dist/wiki/engine/errors/SP0139.md +20 -0
  270. package/dist/wiki/engine/errors/SP0143.md +20 -0
  271. package/dist/wiki/engine/errors/SP0145.md +20 -0
  272. package/dist/wiki/engine/errors/SP0146.md +20 -0
  273. package/dist/wiki/engine/errors/SP0147.md +20 -0
  274. package/dist/wiki/engine/errors/SP0148.md +20 -0
  275. package/dist/wiki/engine/errors/SP0149.md +20 -0
  276. package/dist/wiki/engine/errors/SP0150.md +20 -0
  277. package/dist/wiki/engine/errors/SP0151.md +20 -0
  278. package/dist/wiki/engine/errors/SP0152.md +20 -0
  279. package/dist/wiki/engine/errors/SP0154.md +20 -0
  280. package/dist/wiki/engine/errors/SP0157.md +20 -0
  281. package/dist/wiki/engine/errors/SP0158.md +20 -0
  282. package/dist/wiki/engine/errors/SP0159.md +20 -0
  283. package/dist/wiki/engine/errors/SP0160.md +20 -0
  284. package/dist/wiki/engine/errors/SP0161.md +20 -0
  285. package/dist/wiki/engine/errors/SP0162.md +20 -0
  286. package/dist/wiki/engine/errors/SP0163.md +20 -0
  287. package/dist/wiki/engine/errors/SP0164.md +20 -0
  288. package/dist/wiki/engine/errors/SP0165.md +20 -0
  289. package/dist/wiki/engine/errors/SP0166.md +20 -0
  290. package/dist/wiki/engine/errors/SP0167.md +20 -0
  291. package/dist/wiki/engine/errors/SP0169.md +20 -0
  292. package/dist/wiki/engine/errors/SP0175.md +20 -0
  293. package/dist/wiki/engine/errors/SP0176.md +20 -0
  294. package/dist/wiki/engine/errors/SP0177.md +20 -0
  295. package/dist/wiki/engine/errors/SP0178.md +20 -0
  296. package/dist/wiki/engine/errors/SP0179.md +20 -0
  297. package/dist/wiki/engine/errors/SP0180.md +20 -0
  298. package/dist/wiki/engine/errors/SP0181.md +20 -0
  299. package/dist/wiki/engine/errors/SP0182.md +20 -0
  300. package/dist/wiki/engine/errors/SP0183.md +20 -0
  301. package/dist/wiki/engine/errors/SP0184.md +20 -0
  302. package/dist/wiki/engine/errors/SP0185.md +20 -0
  303. package/dist/wiki/engine/errors/SP0186.md +20 -0
  304. package/dist/wiki/engine/errors/SP0187.md +20 -0
  305. package/dist/wiki/engine/errors/SP0188.md +20 -0
  306. package/dist/wiki/engine/errors/SP0189.md +20 -0
  307. package/dist/wiki/engine/errors/SP0190.md +20 -0
  308. package/dist/wiki/engine/errors/SP0191.md +20 -0
  309. package/dist/wiki/engine/errors/SP0192.md +20 -0
  310. package/dist/wiki/engine/errors/SP0193.md +20 -0
  311. package/dist/wiki/engine/errors/SP0194.md +20 -0
  312. package/dist/wiki/engine/errors/SP0195.md +20 -0
  313. package/dist/wiki/engine/errors/SP0196.md +20 -0
  314. package/dist/wiki/engine/errors/SP0197.md +20 -0
  315. package/dist/wiki/engine/errors/SP0198.md +20 -0
  316. package/dist/wiki/engine/errors/SP0199.md +20 -0
  317. package/dist/wiki/engine/errors/SP0200.md +20 -0
  318. package/dist/wiki/engine/errors/SP0202.md +20 -0
  319. package/dist/wiki/engine/errors/SP0203.md +20 -0
  320. package/dist/wiki/engine/errors/SP0204.md +20 -0
  321. package/dist/wiki/engine/errors/SP0205.md +20 -0
  322. package/dist/wiki/engine/errors/SP0206.md +20 -0
  323. package/dist/wiki/engine/errors/SP0207.md +20 -0
  324. package/dist/wiki/engine/errors/SP0208.md +20 -0
  325. package/dist/wiki/engine/errors/SP0210.md +20 -0
  326. package/dist/wiki/engine/errors/SP0211.md +20 -0
  327. package/dist/wiki/engine/errors/SP0212.md +20 -0
  328. package/dist/wiki/engine/errors/SP0213.md +20 -0
  329. package/dist/wiki/engine/errors/SP0214.md +20 -0
  330. package/dist/wiki/engine/errors/SP0215.md +20 -0
  331. package/dist/wiki/engine/errors/SP0216.md +20 -0
  332. package/dist/wiki/engine/errors/SP0219.md +20 -0
  333. package/dist/wiki/engine/errors/SP0220.md +20 -0
  334. package/dist/wiki/engine/errors/SP0221.md +20 -0
  335. package/dist/wiki/engine/errors/SP0225.md +20 -0
  336. package/dist/wiki/engine/errors/SP0228.md +20 -0
  337. package/dist/wiki/engine/errors/SP0229.md +20 -0
  338. package/dist/wiki/engine/errors/SP0230.md +20 -0
  339. package/dist/wiki/engine/errors/SP0231.md +20 -0
  340. package/dist/wiki/engine/errors/SP0232.md +20 -0
  341. package/dist/wiki/engine/errors/SP0233.md +20 -0
  342. package/dist/wiki/engine/errors/SP0234.md +20 -0
  343. package/dist/wiki/engine/errors/SP0235.md +20 -0
  344. package/dist/wiki/engine/errors/SP0236.md +20 -0
  345. package/dist/wiki/engine/errors/SP0237.md +20 -0
  346. package/dist/wiki/engine/errors/SP0238.md +20 -0
  347. package/dist/wiki/engine/errors/SP0239.md +20 -0
  348. package/dist/wiki/engine/errors/SP0240.md +20 -0
  349. package/dist/wiki/engine/errors/SP0241.md +20 -0
  350. package/dist/wiki/engine/errors/SP0242.md +20 -0
  351. package/dist/wiki/engine/errors/SP0243.md +20 -0
  352. package/dist/wiki/engine/errors/SP0244.md +20 -0
  353. package/dist/wiki/engine/errors/SP0245.md +20 -0
  354. package/dist/wiki/engine/errors/SP0247.md +20 -0
  355. package/dist/wiki/engine/errors/SP0249.md +20 -0
  356. package/dist/wiki/engine/errors/SP0250.md +20 -0
  357. package/dist/wiki/engine/errors/SP0251.md +20 -0
  358. package/dist/wiki/engine/errors/SP0252.md +20 -0
  359. package/dist/wiki/engine/errors/SP0253.md +20 -0
  360. package/dist/wiki/engine/errors/SP0254.md +20 -0
  361. package/dist/wiki/engine/errors/SP0255.md +20 -0
  362. package/dist/wiki/engine/errors/SP0256.md +20 -0
  363. package/dist/wiki/engine/errors/SP0257.md +20 -0
  364. package/dist/wiki/engine/errors/SP0258.md +20 -0
  365. package/dist/wiki/engine/errors/SP0259.md +20 -0
  366. package/dist/wiki/engine/errors/SP0260.md +20 -0
  367. package/dist/wiki/engine/errors/SP0270.md +20 -0
  368. package/dist/wiki/engine/errors/SP0271.md +20 -0
  369. package/dist/wiki/engine/errors/SP0272.md +20 -0
  370. package/dist/wiki/engine/errors/SP0273.md +20 -0
  371. package/dist/wiki/engine/errors/SP0274.md +20 -0
  372. package/dist/wiki/engine/errors/SP0275.md +20 -0
  373. package/dist/wiki/engine/errors/SP0276.md +20 -0
  374. package/dist/wiki/engine/errors/SP0277.md +20 -0
  375. package/dist/wiki/engine/errors/SP0278.md +20 -0
  376. package/dist/wiki/engine/errors/SP0279.md +20 -0
  377. package/dist/wiki/engine/errors/SP0280.md +20 -0
  378. package/dist/wiki/engine/errors/SP0281.md +20 -0
  379. package/dist/wiki/engine/errors/SP0282.md +20 -0
  380. package/dist/wiki/engine/errors/SP0283.md +20 -0
  381. package/dist/wiki/engine/errors/SP0284.md +20 -0
  382. package/dist/wiki/engine/errors/SP0285.md +20 -0
  383. package/dist/wiki/engine/errors/SP0286.md +20 -0
  384. package/dist/wiki/engine/errors/SP0287.md +20 -0
  385. package/dist/wiki/engine/errors/SP0288.md +20 -0
  386. package/dist/wiki/engine/errors/SP0289.md +20 -0
  387. package/dist/wiki/engine/errors/SP0290.md +20 -0
  388. package/dist/wiki/engine/errors/SP0291.md +20 -0
  389. package/dist/wiki/engine/errors/SP0292.md +20 -0
  390. package/dist/wiki/engine/errors/SP0293.md +20 -0
  391. package/dist/wiki/engine/errors/SP0294.md +20 -0
  392. package/dist/wiki/engine/errors/SP0295.md +20 -0
  393. package/dist/wiki/engine/errors/SP0296.md +20 -0
  394. package/dist/wiki/engine/errors/SP0297.md +20 -0
  395. package/dist/wiki/engine/errors/SP0298.md +20 -0
  396. package/dist/wiki/engine/errors/SP0299.md +20 -0
  397. package/dist/wiki/engine/errors/SP0300.md +20 -0
  398. package/dist/wiki/engine/errors/SP0301.md +20 -0
  399. package/dist/wiki/engine/errors/SP0302.md +20 -0
  400. package/dist/wiki/engine/errors/SP0303.md +20 -0
  401. package/dist/wiki/engine/errors/SP0304.md +20 -0
  402. package/dist/wiki/engine/errors/SP0305.md +20 -0
  403. package/dist/wiki/engine/errors/SP0306.md +20 -0
  404. package/dist/wiki/engine/errors/SP0307.md +20 -0
  405. package/dist/wiki/engine/errors/SP0308.md +20 -0
  406. package/dist/wiki/engine/errors/SP0309.md +20 -0
  407. package/dist/wiki/engine/errors/SP0310.md +20 -0
  408. package/dist/wiki/engine/errors/SP0311.md +20 -0
  409. package/dist/wiki/engine/errors/SP0312.md +20 -0
  410. package/dist/wiki/engine/errors/SP0313.md +20 -0
  411. package/dist/wiki/engine/errors/SP0314.md +20 -0
  412. package/dist/wiki/engine/errors/SP0315.md +20 -0
  413. package/dist/wiki/engine/errors/SP0316.md +20 -0
  414. package/dist/wiki/engine/errors/SP0317.md +20 -0
  415. package/dist/wiki/engine/errors/SP0318.md +20 -0
  416. package/dist/wiki/engine/errors/SP0319.md +20 -0
  417. package/dist/wiki/engine/errors/SP0320.md +20 -0
  418. package/dist/wiki/engine/errors/SP0321.md +20 -0
  419. package/dist/wiki/engine/errors/SP0322.md +20 -0
  420. package/dist/wiki/engine/errors/SP0323.md +20 -0
  421. package/dist/wiki/engine/errors/SP0324.md +20 -0
  422. package/dist/wiki/engine/errors/SP0325.md +20 -0
  423. package/dist/wiki/engine/errors/SP0326.md +20 -0
  424. package/dist/wiki/engine/errors/SP0327.md +20 -0
  425. package/dist/wiki/engine/errors/SP0328.md +20 -0
  426. package/dist/wiki/engine/errors/SP0329.md +20 -0
  427. package/dist/wiki/engine/errors/SP0330.md +20 -0
  428. package/dist/wiki/engine/errors/SP0331.md +20 -0
  429. package/dist/wiki/engine/errors/SP0332.md +20 -0
  430. package/dist/wiki/engine/errors/SP0333.md +20 -0
  431. package/dist/wiki/engine/errors/SP0334.md +20 -0
  432. package/dist/wiki/engine/errors/SP0335.md +20 -0
  433. package/dist/wiki/engine/errors/SP0336.md +20 -0
  434. package/dist/wiki/engine/errors/SP0337.md +20 -0
  435. package/dist/wiki/engine/errors/SP0338.md +20 -0
  436. package/dist/wiki/engine/errors/SP0339.md +20 -0
  437. package/dist/wiki/engine/errors/SP0340.md +20 -0
  438. package/dist/wiki/engine/errors/SP0341.md +20 -0
  439. package/dist/wiki/engine/errors/SP0342.md +20 -0
  440. package/dist/wiki/engine/errors/SP0343.md +20 -0
  441. package/dist/wiki/engine/errors/SP0344.md +20 -0
  442. package/dist/wiki/engine/errors/SP0346.md +20 -0
  443. package/dist/wiki/engine/errors/SP0347.md +20 -0
  444. package/dist/wiki/engine/errors/SP0348.md +20 -0
  445. package/dist/wiki/engine/errors/SP0349.md +20 -0
  446. package/dist/wiki/engine/errors/SP0350.md +20 -0
  447. package/dist/wiki/engine/errors/SP0351.md +20 -0
  448. package/dist/wiki/engine/errors/SP0352.md +20 -0
  449. package/dist/wiki/engine/errors/SP0353.md +20 -0
  450. package/dist/wiki/engine/errors/SP0354.md +20 -0
  451. package/dist/wiki/engine/errors/SP0355.md +20 -0
  452. package/dist/wiki/engine/errors/SP0356.md +20 -0
  453. package/dist/wiki/engine/errors/SP0357.md +20 -0
  454. package/dist/wiki/engine/errors/SP0358.md +20 -0
  455. package/dist/wiki/engine/errors/SP0359.md +20 -0
  456. package/dist/wiki/engine/errors/SP0360.md +20 -0
  457. package/dist/wiki/engine/errors/SP0361.md +20 -0
  458. package/dist/wiki/engine/errors/SP0362.md +20 -0
  459. package/dist/wiki/engine/errors/SP0363.md +20 -0
  460. package/dist/wiki/engine/errors/SP0364.md +20 -0
  461. package/dist/wiki/engine/errors/SP0365.md +20 -0
  462. package/dist/wiki/engine/errors/SP0366.md +20 -0
  463. package/dist/wiki/engine/errors/SP0367.md +20 -0
  464. package/dist/wiki/engine/errors/SP0368.md +20 -0
  465. package/dist/wiki/engine/errors/SP0369.md +20 -0
  466. package/dist/wiki/engine/errors/SP0370.md +20 -0
  467. package/dist/wiki/engine/errors/SP0371.md +20 -0
  468. package/dist/wiki/engine/errors/SP0372.md +20 -0
  469. package/dist/wiki/engine/errors/SP0373.md +20 -0
  470. package/dist/wiki/engine/errors/SP0374.md +20 -0
  471. package/dist/wiki/engine/errors/SP0375.md +20 -0
  472. package/dist/wiki/engine/errors/SP0376.md +20 -0
  473. package/dist/wiki/engine/errors/SP0377.md +20 -0
  474. package/dist/wiki/engine/errors/SP0378.md +20 -0
  475. package/dist/wiki/engine/errors/SP0379.md +20 -0
  476. package/dist/wiki/engine/errors/SP0380.md +20 -0
  477. package/dist/wiki/engine/errors/SP0381.md +20 -0
  478. package/dist/wiki/engine/errors/SP0382.md +20 -0
  479. package/dist/wiki/engine/errors/SP0383.md +20 -0
  480. package/dist/wiki/engine/errors/SP0384.md +20 -0
  481. package/dist/wiki/engine/errors/SP0385.md +20 -0
  482. package/dist/wiki/engine/errors/SP0386.md +20 -0
  483. package/dist/wiki/engine/errors/SP0387.md +21 -0
  484. package/dist/wiki/engine/errors/SP0388.md +20 -0
  485. package/dist/wiki/engine/errors/SP0389.md +20 -0
  486. package/dist/wiki/engine/errors/SP0390.md +20 -0
  487. package/dist/wiki/engine/errors/SP0391.md +20 -0
  488. package/dist/wiki/engine/errors/SP0392.md +20 -0
  489. package/dist/wiki/engine/errors/SP0393.md +20 -0
  490. package/dist/wiki/engine/errors/SP0394.md +20 -0
  491. package/dist/wiki/engine/errors/SP0395.md +20 -0
  492. package/dist/wiki/engine/errors/SP0396.md +20 -0
  493. package/dist/wiki/engine/errors/SP0397.md +20 -0
  494. package/dist/wiki/engine/errors/SP0398.md +20 -0
  495. package/dist/wiki/engine/errors/SP0399.md +20 -0
  496. package/dist/wiki/engine/errors/SP0400.md +20 -0
  497. package/dist/wiki/engine/errors/SP0401.md +20 -0
  498. package/dist/wiki/engine/errors/SP0402.md +20 -0
  499. package/dist/wiki/engine/errors/SP0403.md +20 -0
  500. package/dist/wiki/engine/errors/SP0404.md +20 -0
  501. package/dist/wiki/engine/errors/SP0405.md +20 -0
  502. package/dist/wiki/engine/errors/SP0406.md +20 -0
  503. package/dist/wiki/engine/errors/SP0407.md +20 -0
  504. package/dist/wiki/engine/errors/SP0408.md +20 -0
  505. package/dist/wiki/engine/errors/SP0409.md +20 -0
  506. package/dist/wiki/engine/errors/SP0410.md +20 -0
  507. package/dist/wiki/engine/errors/SP0411.md +20 -0
  508. package/dist/wiki/engine/errors/SP0412.md +20 -0
  509. package/dist/wiki/engine/errors/SP0413.md +20 -0
  510. package/dist/wiki/engine/errors/SP0414.md +20 -0
  511. package/dist/wiki/engine/errors/SP0415.md +20 -0
  512. package/dist/wiki/engine/errors/SP0416.md +20 -0
  513. package/dist/wiki/engine/errors/SP0417.md +20 -0
  514. package/dist/wiki/engine/errors/SP0418.md +20 -0
  515. package/dist/wiki/engine/errors/SP0419.md +20 -0
  516. package/dist/wiki/engine/errors/SP0420.md +20 -0
  517. package/dist/wiki/engine/errors/SP0421.md +20 -0
  518. package/dist/wiki/engine/errors/SP0422.md +20 -0
  519. package/dist/wiki/engine/errors/SP0423.md +20 -0
  520. package/dist/wiki/engine/errors/SP0427.md +20 -0
  521. package/dist/wiki/engine/errors/SP0428.md +20 -0
  522. package/dist/wiki/engine/errors/SP0429.md +20 -0
  523. package/dist/wiki/engine/errors/SP0430.md +20 -0
  524. package/dist/wiki/engine/errors/SP0431.md +20 -0
  525. package/dist/wiki/engine/errors/SP0432.md +20 -0
  526. package/dist/wiki/engine/errors/SP0433.md +20 -0
  527. package/dist/wiki/engine/errors/SP0434.md +20 -0
  528. package/dist/wiki/engine/errors/SP0435.md +20 -0
  529. package/dist/wiki/engine/errors/SP0436.md +20 -0
  530. package/dist/wiki/engine/errors/SP0437.md +20 -0
  531. package/dist/wiki/engine/errors/SP0438.md +20 -0
  532. package/dist/wiki/engine/errors/SP0439.md +20 -0
  533. package/dist/wiki/engine/errors/SP0440.md +20 -0
  534. package/dist/wiki/engine/errors/SP0442.md +20 -0
  535. package/dist/wiki/engine/errors/SP0443.md +20 -0
  536. package/dist/wiki/engine/errors/SP0444.md +20 -0
  537. package/dist/wiki/engine/errors/SP0445.md +20 -0
  538. package/dist/wiki/engine/errors/SP0446.md +20 -0
  539. package/dist/wiki/engine/errors/SP0447.md +20 -0
  540. package/dist/wiki/engine/errors/SP0448.md +20 -0
  541. package/dist/wiki/engine/errors/SP0449.md +20 -0
  542. package/dist/wiki/engine/errors/SP0450.md +20 -0
  543. package/dist/wiki/engine/errors/SP0451.md +20 -0
  544. package/dist/wiki/engine/errors/SP0452.md +20 -0
  545. package/dist/wiki/engine/errors/SP0453.md +20 -0
  546. package/dist/wiki/engine/errors/SP0454.md +20 -0
  547. package/dist/wiki/engine/errors/SP0455.md +20 -0
  548. package/dist/wiki/engine/errors/SP0456.md +20 -0
  549. package/dist/wiki/engine/errors/SP0457.md +20 -0
  550. package/dist/wiki/engine/errors/SP0458.md +20 -0
  551. package/dist/wiki/engine/errors/SP0459.md +20 -0
  552. package/dist/wiki/engine/errors/SP0460.md +20 -0
  553. package/dist/wiki/engine/errors/SP0461.md +20 -0
  554. package/dist/wiki/engine/errors/SP0462.md +20 -0
  555. package/dist/wiki/engine/errors/SP0463.md +20 -0
  556. package/dist/wiki/engine/errors/SP0464.md +20 -0
  557. package/dist/wiki/engine/errors/SP0465.md +20 -0
  558. package/dist/wiki/engine/errors/SP0466.md +20 -0
  559. package/dist/wiki/engine/errors/SP0467.md +20 -0
  560. package/dist/wiki/engine/errors/SP0468.md +20 -0
  561. package/dist/wiki/engine/errors/SP0469.md +20 -0
  562. package/dist/wiki/engine/errors/SP0470.md +20 -0
  563. package/dist/wiki/engine/errors/SP0471.md +20 -0
  564. package/dist/wiki/engine/errors/SP0472.md +20 -0
  565. package/dist/wiki/engine/errors/SP0473.md +20 -0
  566. package/dist/wiki/engine/errors/SP0474.md +20 -0
  567. package/dist/wiki/engine/errors/SP0475.md +20 -0
  568. package/dist/wiki/engine/errors/SP0476.md +20 -0
  569. package/dist/wiki/engine/errors/SP0477.md +20 -0
  570. package/dist/wiki/engine/errors/SP0478.md +20 -0
  571. package/dist/wiki/engine/errors/SP0479.md +20 -0
  572. package/dist/wiki/engine/errors/SP0480.md +20 -0
  573. package/dist/wiki/engine/errors/SP0481.md +20 -0
  574. package/dist/wiki/engine/errors/SP0482.md +20 -0
  575. package/dist/wiki/engine/errors/SP0483.md +20 -0
  576. package/dist/wiki/engine/errors/SP0484.md +20 -0
  577. package/dist/wiki/engine/errors/SP0497.md +20 -0
  578. package/dist/wiki/engine/errors/SP0498.md +20 -0
  579. package/dist/wiki/engine/errors/SP0500.md +20 -0
  580. package/dist/wiki/engine/errors/SP0501.md +20 -0
  581. package/dist/wiki/engine/errors/SP0502.md +20 -0
  582. package/dist/wiki/engine/errors/SP0503.md +20 -0
  583. package/dist/wiki/engine/errors/SP0504.md +20 -0
  584. package/dist/wiki/engine/errors/SP0505.md +20 -0
  585. package/dist/wiki/engine/errors/SP0506.md +20 -0
  586. package/dist/wiki/engine/errors/SP0507.md +20 -0
  587. package/dist/wiki/engine/errors/SP0508.md +20 -0
  588. package/dist/wiki/engine/errors/SP0509.md +20 -0
  589. package/dist/wiki/engine/errors/SP0510.md +20 -0
  590. package/dist/wiki/engine/errors/SP0511.md +20 -0
  591. package/dist/wiki/engine/errors/SP0512.md +20 -0
  592. package/dist/wiki/engine/errors/SP0513.md +20 -0
  593. package/dist/wiki/engine/errors/SP0514.md +20 -0
  594. package/dist/wiki/engine/errors/SP0515.md +20 -0
  595. package/dist/wiki/engine/errors/SP0516.md +20 -0
  596. package/dist/wiki/engine/errors/SP0517.md +20 -0
  597. package/dist/wiki/engine/errors/SP0518.md +20 -0
  598. package/dist/wiki/engine/errors/SP0519.md +20 -0
  599. package/dist/wiki/engine/errors/SP0520.md +20 -0
  600. package/dist/wiki/engine/errors/SP0521.md +20 -0
  601. package/dist/wiki/engine/errors/SP0522.md +20 -0
  602. package/dist/wiki/engine/errors/SP0523.md +20 -0
  603. package/dist/wiki/engine/errors/SP0524.md +20 -0
  604. package/dist/wiki/engine/errors/SP0525.md +20 -0
  605. package/dist/wiki/engine/errors/SP0526.md +20 -0
  606. package/dist/wiki/engine/errors/SP0527.md +20 -0
  607. package/dist/wiki/engine/errors/SP0528.md +20 -0
  608. package/dist/wiki/engine/errors/SP0529.md +20 -0
  609. package/dist/wiki/engine/errors/SP0530.md +20 -0
  610. package/dist/wiki/engine/errors/SP0531.md +20 -0
  611. package/dist/wiki/engine/errors/SP0532.md +20 -0
  612. package/dist/wiki/engine/errors/SP0533.md +20 -0
  613. package/dist/wiki/engine/errors/SP0534.md +20 -0
  614. package/dist/wiki/engine/errors/SP0535.md +20 -0
  615. package/dist/wiki/engine/errors/SP0536.md +20 -0
  616. package/dist/wiki/engine/errors/SP0537.md +20 -0
  617. package/dist/wiki/engine/errors/SP0538.md +20 -0
  618. package/dist/wiki/engine/errors/SP0539.md +20 -0
  619. package/dist/wiki/engine/errors/SP0540.md +20 -0
  620. package/dist/wiki/engine/errors/SP0541.md +20 -0
  621. package/dist/wiki/engine/errors/SP0542.md +20 -0
  622. package/dist/wiki/engine/errors/SP0543.md +20 -0
  623. package/dist/wiki/engine/errors/SP0545.md +20 -0
  624. package/dist/wiki/engine/errors/SP0546.md +20 -0
  625. package/dist/wiki/engine/errors/SP0547.md +20 -0
  626. package/dist/wiki/engine/errors/SP0548.md +20 -0
  627. package/dist/wiki/engine/errors/SP0549.md +20 -0
  628. package/dist/wiki/engine/errors/SP0550.md +20 -0
  629. package/dist/wiki/engine/errors/SP0551.md +20 -0
  630. package/dist/wiki/engine/errors/SP0552.md +20 -0
  631. package/dist/wiki/engine/errors/SP0553.md +20 -0
  632. package/dist/wiki/engine/errors/SP0554.md +20 -0
  633. package/dist/wiki/engine/errors/SP0555.md +20 -0
  634. package/dist/wiki/engine/errors/SP0556.md +20 -0
  635. package/dist/wiki/engine/errors/SP0557.md +20 -0
  636. package/dist/wiki/engine/errors/SP0558.md +20 -0
  637. package/dist/wiki/engine/errors/SP0559.md +20 -0
  638. package/dist/wiki/engine/errors/SP0560.md +20 -0
  639. package/dist/wiki/engine/errors/SP0561.md +20 -0
  640. package/dist/wiki/engine/errors/SP0562.md +20 -0
  641. package/dist/wiki/engine/errors/SP0563.md +20 -0
  642. package/dist/wiki/engine/errors/SP0564.md +20 -0
  643. package/dist/wiki/engine/errors/SP0565.md +20 -0
  644. package/dist/wiki/engine/errors/SP0566.md +20 -0
  645. package/dist/wiki/engine/errors/SP0567.md +20 -0
  646. package/dist/wiki/engine/errors/SP0568.md +20 -0
  647. package/dist/wiki/engine/errors/SP0569.md +20 -0
  648. package/dist/wiki/engine/errors/SP0570.md +20 -0
  649. package/dist/wiki/engine/errors/index.md +504 -0
  650. package/dist/wiki/engine/graphics/crt-material.md +64 -0
  651. package/dist/wiki/engine/graphics/energy-orb-material.md +52 -0
  652. package/dist/wiki/engine/graphics/instanced-model.md +89 -0
  653. package/dist/wiki/engine/graphics/looks.md +196 -0
  654. package/dist/wiki/engine/graphics/particles.md +185 -0
  655. package/dist/wiki/engine/graphics/portal-material.md +49 -0
  656. package/dist/wiki/engine/graphics/post-processing.md +130 -0
  657. package/dist/wiki/engine/graphics/renderer.md +103 -0
  658. package/dist/wiki/engine/graphics/shader.md +331 -0
  659. package/dist/wiki/engine/graphics/skinned-batch.md +115 -0
  660. package/dist/wiki/engine/graphics/track-scatter.md +124 -0
  661. package/dist/wiki/engine/graphics/track-surface.md +107 -0
  662. package/dist/wiki/engine/graphics/water-material.md +60 -0
  663. package/dist/wiki/engine/graphics/webgpu.md +87 -0
  664. package/dist/wiki/engine/structure/game.md +301 -0
  665. package/dist/wiki/engine/structure/levels.md +239 -0
  666. package/dist/wiki/engine/structure/plugins.md +423 -0
  667. package/dist/wiki/engine/structure/round.md +229 -0
  668. package/dist/wiki/engine/structure/saves.md +251 -0
  669. package/dist/wiki/engine/structure/scene.md +69 -0
  670. package/dist/wiki/engine/structure/states.md +202 -0
  671. package/dist/wiki/engine/structure/systems.md +242 -0
  672. package/dist/wiki/engine/structure/track-level.md +73 -0
  673. package/dist/wiki/engine/structure/world.md +371 -0
  674. package/dist/wiki/engine/testing/agent-state.md +131 -0
  675. package/dist/wiki/engine/testing/dev-server.md +101 -0
  676. package/dist/wiki/engine/testing/devtools-wiki.md +80 -0
  677. package/dist/wiki/engine/testing/devtools.md +143 -0
  678. package/dist/wiki/engine/testing/directing.md +125 -0
  679. package/dist/wiki/engine/testing/director.md +285 -0
  680. package/dist/wiki/engine/testing/editing.md +71 -0
  681. package/dist/wiki/engine/testing/errors.md +146 -0
  682. package/dist/wiki/engine/testing/frame.md +175 -0
  683. package/dist/wiki/engine/testing/headless.md +133 -0
  684. package/dist/wiki/engine/testing/hitches.md +140 -0
  685. package/dist/wiki/engine/testing/joins.md +129 -0
  686. package/dist/wiki/engine/testing/measuring.md +97 -0
  687. package/dist/wiki/engine/testing/performance.md +48 -0
  688. package/dist/wiki/engine/testing/processes.md +87 -0
  689. package/dist/wiki/engine/testing/replay-storage.md +156 -0
  690. package/dist/wiki/engine/testing/replay.md +230 -0
  691. package/dist/wiki/engine/testing/runs.md +162 -0
  692. package/dist/wiki/engine/testing/which-tool.md +155 -0
  693. package/dist/wiki/engine/ui/action-bar.md +121 -0
  694. package/dist/wiki/engine/ui/bar.md +54 -0
  695. package/dist/wiki/engine/ui/billboard.md +64 -0
  696. package/dist/wiki/engine/ui/button.md +69 -0
  697. package/dist/wiki/engine/ui/controls.md +131 -0
  698. package/dist/wiki/engine/ui/counter.md +40 -0
  699. package/dist/wiki/engine/ui/devtools-panel.md +69 -0
  700. package/dist/wiki/engine/ui/drag-and-drop.md +134 -0
  701. package/dist/wiki/engine/ui/floating-text.md +129 -0
  702. package/dist/wiki/engine/ui/graphics-quality.md +254 -0
  703. package/dist/wiki/engine/ui/heading.md +43 -0
  704. package/dist/wiki/engine/ui/hud.md +100 -0
  705. package/dist/wiki/engine/ui/icon.md +34 -0
  706. package/dist/wiki/engine/ui/image.md +38 -0
  707. package/dist/wiki/engine/ui/index.md +59 -0
  708. package/dist/wiki/engine/ui/joystick.md +32 -0
  709. package/dist/wiki/engine/ui/modal.md +95 -0
  710. package/dist/wiki/engine/ui/panel.md +100 -0
  711. package/dist/wiki/engine/ui/settings.md +303 -0
  712. package/dist/wiki/engine/ui/tap.md +33 -0
  713. package/dist/wiki/engine/ui/text.md +56 -0
  714. package/dist/wiki/engine/ui/theme.md +119 -0
  715. package/dist/wiki/engine/ui/window.md +68 -0
  716. package/dist/wmIDrLkF.js +1 -0
  717. package/dist/yhuZzG90.js +1 -0
  718. package/dist/z3YXvfLT.js +1 -0
  719. package/dist-browser/@pixiv/three-vrm/nodes.js +1 -0
  720. package/dist-browser/@pixiv/three-vrm.js +1 -0
  721. package/dist-browser/@react-three/drei/exports/-accumulative-shadows.js +1 -0
  722. package/dist-browser/@react-three/drei/exports/-adaptive-dpr.js +1 -0
  723. package/dist-browser/@react-three/drei/exports/-adaptive-events.js +1 -0
  724. package/dist-browser/@react-three/drei/exports/-arcball-controls.js +1 -0
  725. package/dist-browser/@react-three/drei/exports/-ascii-renderer.js +1 -0
  726. package/dist-browser/@react-three/drei/exports/-b-b-anchor.js +1 -0
  727. package/dist-browser/@react-three/drei/exports/-backdrop.js +1 -0
  728. package/dist-browser/@react-three/drei/exports/-bake-shadows.js +1 -0
  729. package/dist-browser/@react-three/drei/exports/-billboard.js +1 -0
  730. package/dist-browser/@react-three/drei/exports/-bounds.js +1 -0
  731. package/dist-browser/@react-three/drei/exports/-box.js +1 -0
  732. package/dist-browser/@react-three/drei/exports/-bvh.js +1 -0
  733. package/dist-browser/@react-three/drei/exports/-camera-controls-impl.js +1 -0
  734. package/dist-browser/@react-three/drei/exports/-camera-controls.js +1 -0
  735. package/dist-browser/@react-three/drei/exports/-camera-shake.js +1 -0
  736. package/dist-browser/@react-three/drei/exports/-capsule.js +1 -0
  737. package/dist-browser/@react-three/drei/exports/-catmull-rom-line.js +1 -0
  738. package/dist-browser/@react-three/drei/exports/-caustics.js +1 -0
  739. package/dist-browser/@react-three/drei/exports/-center.js +1 -0
  740. package/dist-browser/@react-three/drei/exports/-circle.js +1 -0
  741. package/dist-browser/@react-three/drei/exports/-clone.js +1 -0
  742. package/dist-browser/@react-three/drei/exports/-cloud-instance.js +1 -0
  743. package/dist-browser/@react-three/drei/exports/-cloud.js +1 -0
  744. package/dist-browser/@react-three/drei/exports/-clouds.js +1 -0
  745. package/dist-browser/@react-three/drei/exports/-computed-attribute.js +1 -0
  746. package/dist-browser/@react-three/drei/exports/-cone.js +1 -0
  747. package/dist-browser/@react-three/drei/exports/-contact-shadows.js +1 -0
  748. package/dist-browser/@react-three/drei/exports/-cube-camera.js +1 -0
  749. package/dist-browser/@react-three/drei/exports/-cube-texture.js +1 -0
  750. package/dist-browser/@react-three/drei/exports/-cubic-bezier-line.js +1 -0
  751. package/dist-browser/@react-three/drei/exports/-curve-modifier.js +1 -0
  752. package/dist-browser/@react-three/drei/exports/-cycle-raycast.js +1 -0
  753. package/dist-browser/@react-three/drei/exports/-cylinder.js +1 -0
  754. package/dist-browser/@react-three/drei/exports/-decal.js +1 -0
  755. package/dist-browser/@react-three/drei/exports/-detailed.js +1 -0
  756. package/dist-browser/@react-three/drei/exports/-detect-g-p-u.js +1 -0
  757. package/dist-browser/@react-three/drei/exports/-device-orientation-controls.js +1 -0
  758. package/dist-browser/@react-three/drei/exports/-dodecahedron.js +1 -0
  759. package/dist-browser/@react-three/drei/exports/-drag-controls.js +1 -0
  760. package/dist-browser/@react-three/drei/exports/-edges.js +1 -0
  761. package/dist-browser/@react-three/drei/exports/-effects.js +1 -0
  762. package/dist-browser/@react-three/drei/exports/-environment-cube.js +1 -0
  763. package/dist-browser/@react-three/drei/exports/-environment-map.js +1 -0
  764. package/dist-browser/@react-three/drei/exports/-environment-portal.js +1 -0
  765. package/dist-browser/@react-three/drei/exports/-environment.js +1 -0
  766. package/dist-browser/@react-three/drei/exports/-example.js +1 -0
  767. package/dist-browser/@react-three/drei/exports/-extrude.js +1 -0
  768. package/dist-browser/@react-three/drei/exports/-face-controls.js +1 -0
  769. package/dist-browser/@react-three/drei/exports/-face-landmarker-defaults.js +1 -0
  770. package/dist-browser/@react-three/drei/exports/-face-landmarker.js +1 -0
  771. package/dist-browser/@react-three/drei/exports/-facemesh-datas.js +1 -0
  772. package/dist-browser/@react-three/drei/exports/-facemesh-eye-defaults.js +1 -0
  773. package/dist-browser/@react-three/drei/exports/-facemesh-eye.js +1 -0
  774. package/dist-browser/@react-three/drei/exports/-facemesh.js +1 -0
  775. package/dist-browser/@react-three/drei/exports/-fbo.js +1 -0
  776. package/dist-browser/@react-three/drei/exports/-fbx.js +1 -0
  777. package/dist-browser/@react-three/drei/exports/-first-person-controls.js +1 -0
  778. package/dist-browser/@react-three/drei/exports/-fisheye.js +1 -0
  779. package/dist-browser/@react-three/drei/exports/-float.js +1 -0
  780. package/dist-browser/@react-three/drei/exports/-fly-controls.js +1 -0
  781. package/dist-browser/@react-three/drei/exports/-gizmo-helper.js +1 -0
  782. package/dist-browser/@react-three/drei/exports/-gizmo-viewcube.js +1 -0
  783. package/dist-browser/@react-three/drei/exports/-gizmo-viewport.js +1 -0
  784. package/dist-browser/@react-three/drei/exports/-gltf.js +1 -0
  785. package/dist-browser/@react-three/drei/exports/-gradient-texture.js +1 -0
  786. package/dist-browser/@react-three/drei/exports/-gradient-type.js +1 -0
  787. package/dist-browser/@react-three/drei/exports/-grid.js +1 -0
  788. package/dist-browser/@react-three/drei/exports/-helper.js +1 -0
  789. package/dist-browser/@react-three/drei/exports/-html.js +1 -0
  790. package/dist-browser/@react-three/drei/exports/-hud.js +1 -0
  791. package/dist-browser/@react-three/drei/exports/-icosahedron.js +1 -0
  792. package/dist-browser/@react-three/drei/exports/-image.js +1 -0
  793. package/dist-browser/@react-three/drei/exports/-instance.js +1 -0
  794. package/dist-browser/@react-three/drei/exports/-instanced-attribute.js +1 -0
  795. package/dist-browser/@react-three/drei/exports/-instances.js +1 -0
  796. package/dist-browser/@react-three/drei/exports/-is-object.js +1 -0
  797. package/dist-browser/@react-three/drei/exports/-keyboard-controls.js +1 -0
  798. package/dist-browser/@react-three/drei/exports/-ktx2.js +1 -0
  799. package/dist-browser/@react-three/drei/exports/-lathe.js +1 -0
  800. package/dist-browser/@react-three/drei/exports/-lightformer.js +1 -0
  801. package/dist-browser/@react-three/drei/exports/-line.js +1 -0
  802. package/dist-browser/@react-three/drei/exports/-loader.js +1 -0
  803. package/dist-browser/@react-three/drei/exports/-map-controls.js +1 -0
  804. package/dist-browser/@react-three/drei/exports/-marching-cube.js +1 -0
  805. package/dist-browser/@react-three/drei/exports/-marching-cubes.js +1 -0
  806. package/dist-browser/@react-three/drei/exports/-marching-plane.js +1 -0
  807. package/dist-browser/@react-three/drei/exports/-mask.js +1 -0
  808. package/dist-browser/@react-three/drei/exports/-matcap-texture.js +1 -0
  809. package/dist-browser/@react-three/drei/exports/-merged.js +1 -0
  810. package/dist-browser/@react-three/drei/exports/-mesh-discard-material.js +1 -0
  811. package/dist-browser/@react-three/drei/exports/-mesh-distort-material.js +1 -0
  812. package/dist-browser/@react-three/drei/exports/-mesh-portal-material.js +1 -0
  813. package/dist-browser/@react-three/drei/exports/-mesh-reflector-material.js +1 -0
  814. package/dist-browser/@react-three/drei/exports/-mesh-refraction-material.js +1 -0
  815. package/dist-browser/@react-three/drei/exports/-mesh-transmission-material.js +1 -0
  816. package/dist-browser/@react-three/drei/exports/-mesh-wobble-material.js +1 -0
  817. package/dist-browser/@react-three/drei/exports/-motion-path-controls.js +1 -0
  818. package/dist-browser/@react-three/drei/exports/-multi-material.js +1 -0
  819. package/dist-browser/@react-three/drei/exports/-normal-texture.js +1 -0
  820. package/dist-browser/@react-three/drei/exports/-octahedron.js +1 -0
  821. package/dist-browser/@react-three/drei/exports/-orbit-controls.js +1 -0
  822. package/dist-browser/@react-three/drei/exports/-orthographic-camera.js +1 -0
  823. package/dist-browser/@react-three/drei/exports/-outlines.js +1 -0
  824. package/dist-browser/@react-three/drei/exports/-performance-monitor.js +1 -0
  825. package/dist-browser/@react-three/drei/exports/-perspective-camera.js +1 -0
  826. package/dist-browser/@react-three/drei/exports/-pivot-controls.js +1 -0
  827. package/dist-browser/@react-three/drei/exports/-plane.js +1 -0
  828. package/dist-browser/@react-three/drei/exports/-point-material-impl.js +1 -0
  829. package/dist-browser/@react-three/drei/exports/-point-material.js +1 -0
  830. package/dist-browser/@react-three/drei/exports/-point.js +1 -0
  831. package/dist-browser/@react-three/drei/exports/-pointer-lock-controls.js +1 -0
  832. package/dist-browser/@react-three/drei/exports/-points-buffer.js +1 -0
  833. package/dist-browser/@react-three/drei/exports/-points.js +1 -0
  834. package/dist-browser/@react-three/drei/exports/-polyhedron.js +1 -0
  835. package/dist-browser/@react-three/drei/exports/-position-mesh.js +1 -0
  836. package/dist-browser/@react-three/drei/exports/-position-point.js +1 -0
  837. package/dist-browser/@react-three/drei/exports/-positional-audio.js +1 -0
  838. package/dist-browser/@react-three/drei/exports/-preload.js +1 -0
  839. package/dist-browser/@react-three/drei/exports/-presentation-controls.js +1 -0
  840. package/dist-browser/@react-three/drei/exports/-progress.js +1 -0
  841. package/dist-browser/@react-three/drei/exports/-quadratic-bezier-line.js +1 -0
  842. package/dist-browser/@react-three/drei/exports/-randomized-light.js +1 -0
  843. package/dist-browser/@react-three/drei/exports/-render-cube-texture.js +1 -0
  844. package/dist-browser/@react-three/drei/exports/-render-texture.js +1 -0
  845. package/dist-browser/@react-three/drei/exports/-resize.js +1 -0
  846. package/dist-browser/@react-three/drei/exports/-ring.js +1 -0
  847. package/dist-browser/@react-three/drei/exports/-rounded-box-geometry.js +1 -0
  848. package/dist-browser/@react-three/drei/exports/-rounded-box.js +1 -0
  849. package/dist-browser/@react-three/drei/exports/-sampler.js +1 -0
  850. package/dist-browser/@react-three/drei/exports/-screen-quad.js +1 -0
  851. package/dist-browser/@react-three/drei/exports/-screen-sizer.js +1 -0
  852. package/dist-browser/@react-three/drei/exports/-screen-space.js +1 -0
  853. package/dist-browser/@react-three/drei/exports/-screen-video-texture.js +1 -0
  854. package/dist-browser/@react-three/drei/exports/-scroll-controls.js +1 -0
  855. package/dist-browser/@react-three/drei/exports/-scroll.js +1 -0
  856. package/dist-browser/@react-three/drei/exports/-segment-object.js +1 -0
  857. package/dist-browser/@react-three/drei/exports/-segment.js +1 -0
  858. package/dist-browser/@react-three/drei/exports/-segments.js +1 -0
  859. package/dist-browser/@react-three/drei/exports/-select.js +1 -0
  860. package/dist-browser/@react-three/drei/exports/-shadow-alpha.js +1 -0
  861. package/dist-browser/@react-three/drei/exports/-shadow.js +1 -0
  862. package/dist-browser/@react-three/drei/exports/-shape.js +1 -0
  863. package/dist-browser/@react-three/drei/exports/-sky.js +1 -0
  864. package/dist-browser/@react-three/drei/exports/-soft-shadows.js +1 -0
  865. package/dist-browser/@react-three/drei/exports/-sparkles.js +1 -0
  866. package/dist-browser/@react-three/drei/exports/-sphere.js +1 -0
  867. package/dist-browser/@react-three/drei/exports/-splat.js +1 -0
  868. package/dist-browser/@react-three/drei/exports/-spot-light-shadow.js +1 -0
  869. package/dist-browser/@react-three/drei/exports/-spot-light.js +1 -0
  870. package/dist-browser/@react-three/drei/exports/-sprite-animator.js +1 -0
  871. package/dist-browser/@react-three/drei/exports/-stage.js +1 -0
  872. package/dist-browser/@react-three/drei/exports/-stars.js +1 -0
  873. package/dist-browser/@react-three/drei/exports/-stats-gl.js +1 -0
  874. package/dist-browser/@react-three/drei/exports/-stats.js +1 -0
  875. package/dist-browser/@react-three/drei/exports/-svg.js +1 -0
  876. package/dist-browser/@react-three/drei/exports/-tetrahedron.js +1 -0
  877. package/dist-browser/@react-three/drei/exports/-text.js +1 -0
  878. package/dist-browser/@react-three/drei/exports/-text3-d.js +1 -0
  879. package/dist-browser/@react-three/drei/exports/-texture.js +1 -0
  880. package/dist-browser/@react-three/drei/exports/-torus-knot.js +1 -0
  881. package/dist-browser/@react-three/drei/exports/-torus.js +1 -0
  882. package/dist-browser/@react-three/drei/exports/-trackball-controls.js +1 -0
  883. package/dist-browser/@react-three/drei/exports/-trail-texture.js +1 -0
  884. package/dist-browser/@react-three/drei/exports/-trail.js +1 -0
  885. package/dist-browser/@react-three/drei/exports/-transform-controls.js +1 -0
  886. package/dist-browser/@react-three/drei/exports/-tube.js +1 -0
  887. package/dist-browser/@react-three/drei/exports/-video-texture.js +1 -0
  888. package/dist-browser/@react-three/drei/exports/-view.js +1 -0
  889. package/dist-browser/@react-three/drei/exports/-webcam-video-texture.js +1 -0
  890. package/dist-browser/@react-three/drei/exports/-wireframe.js +1 -0
  891. package/dist-browser/@react-three/drei/exports/accumulative-context.js +1 -0
  892. package/dist-browser/@react-three/drei/exports/calc-pos-from-angles.js +1 -0
  893. package/dist-browser/@react-three/drei/exports/calculate-scale-factor.js +1 -0
  894. package/dist-browser/@react-three/drei/exports/check-if-frame-is-empty.js +1 -0
  895. package/dist-browser/@react-three/drei/exports/create-instances.js +1 -0
  896. package/dist-browser/@react-three/drei/exports/get-first-frame.js +1 -0
  897. package/dist-browser/@react-three/drei/exports/is-web-g-l2-available.js +1 -0
  898. package/dist-browser/@react-three/drei/exports/mesh-bounds.js +1 -0
  899. package/dist-browser/@react-three/drei/exports/shader-material.js +1 -0
  900. package/dist-browser/@react-three/drei/exports/use-animations.js +1 -0
  901. package/dist-browser/@react-three/drei/exports/use-aspect.js +1 -0
  902. package/dist-browser/@react-three/drei/exports/use-b-v-h.js +1 -0
  903. package/dist-browser/@react-three/drei/exports/use-bounds.js +1 -0
  904. package/dist-browser/@react-three/drei/exports/use-box-projected-env.js +1 -0
  905. package/dist-browser/@react-three/drei/exports/use-camera.js +1 -0
  906. package/dist-browser/@react-three/drei/exports/use-context-bridge.js +1 -0
  907. package/dist-browser/@react-three/drei/exports/use-cube-camera.js +1 -0
  908. package/dist-browser/@react-three/drei/exports/use-cube-texture.js +1 -0
  909. package/dist-browser/@react-three/drei/exports/use-cursor.js +1 -0
  910. package/dist-browser/@react-three/drei/exports/use-depth-buffer.js +1 -0
  911. package/dist-browser/@react-three/drei/exports/use-detect-g-p-u.js +1 -0
  912. package/dist-browser/@react-three/drei/exports/use-environment.js +1 -0
  913. package/dist-browser/@react-three/drei/exports/use-f-b-o.js +1 -0
  914. package/dist-browser/@react-three/drei/exports/use-f-b-x.js +1 -0
  915. package/dist-browser/@react-three/drei/exports/use-face-controls.js +1 -0
  916. package/dist-browser/@react-three/drei/exports/use-face-landmarker.js +1 -0
  917. package/dist-browser/@react-three/drei/exports/use-font.js +1 -0
  918. package/dist-browser/@react-three/drei/exports/use-g-l-t-f.js +1 -0
  919. package/dist-browser/@react-three/drei/exports/use-gizmo-context.js +1 -0
  920. package/dist-browser/@react-three/drei/exports/use-helper.js +1 -0
  921. package/dist-browser/@react-three/drei/exports/use-intersect.js +1 -0
  922. package/dist-browser/@react-three/drei/exports/use-k-t-x2.js +1 -0
  923. package/dist-browser/@react-three/drei/exports/use-keyboard-controls.js +1 -0
  924. package/dist-browser/@react-three/drei/exports/use-mask.js +1 -0
  925. package/dist-browser/@react-three/drei/exports/use-matcap-texture.js +1 -0
  926. package/dist-browser/@react-three/drei/exports/use-motion.js +1 -0
  927. package/dist-browser/@react-three/drei/exports/use-normal-texture.js +1 -0
  928. package/dist-browser/@react-three/drei/exports/use-performance-monitor.js +1 -0
  929. package/dist-browser/@react-three/drei/exports/use-progress.js +1 -0
  930. package/dist-browser/@react-three/drei/exports/use-scroll.js +1 -0
  931. package/dist-browser/@react-three/drei/exports/use-select.js +1 -0
  932. package/dist-browser/@react-three/drei/exports/use-sprite-animator.js +1 -0
  933. package/dist-browser/@react-three/drei/exports/use-sprite-loader.js +1 -0
  934. package/dist-browser/@react-three/drei/exports/use-surface-sampler.js +1 -0
  935. package/dist-browser/@react-three/drei/exports/use-texture.js +1 -0
  936. package/dist-browser/@react-three/drei/exports/use-trail-texture.js +1 -0
  937. package/dist-browser/@react-three/drei/exports/use-trail.js +1 -0
  938. package/dist-browser/@react-three/drei/exports/use-video-texture.js +1 -0
  939. package/dist-browser/@react-three/drei.js +1 -0
  940. package/dist-browser/@react-three/fiber.js +1 -0
  941. package/dist-browser/@react-three/postprocessing.js +1 -0
  942. package/dist-browser/@spawnite/engine/abilities.js +1 -0
  943. package/dist-browser/@spawnite/engine/core.js +1 -0
  944. package/dist-browser/@spawnite/engine/dragAndDrop.js +1 -0
  945. package/dist-browser/@spawnite/engine/inventory.js +1 -0
  946. package/dist-browser/@spawnite/engine/looks/dusk.js +1 -0
  947. package/dist-browser/@spawnite/engine/looks/morning.js +1 -0
  948. package/dist-browser/@spawnite/engine/looks/night.js +1 -0
  949. package/dist-browser/@spawnite/engine/looks/noon.js +1 -0
  950. package/dist-browser/@spawnite/engine/looks/overcast.js +1 -0
  951. package/dist-browser/@spawnite/engine/npcs.js +1 -0
  952. package/dist-browser/@spawnite/engine/rounds.js +1 -0
  953. package/dist-browser/@spawnite/engine/three.js +1 -0
  954. package/dist-browser/@spawnite/engine/tracks.js +1 -0
  955. package/dist-browser/@spawnite/engine/weapons.js +1 -0
  956. package/dist-browser/@spawnite/engine.js +376 -0
  957. package/dist-browser/@spawnite/schema/exports/-agent-state.js +1 -0
  958. package/dist-browser/@spawnite/schema/exports/-app-message-type.js +1 -0
  959. package/dist-browser/@spawnite/schema/exports/-channel-handshake.js +1 -0
  960. package/dist-browser/@spawnite/schema/exports/-clip-clock.js +1 -0
  961. package/dist-browser/@spawnite/schema/exports/-clip-record-action.js +1 -0
  962. package/dist-browser/@spawnite/schema/exports/-clip-shape.js +1 -0
  963. package/dist-browser/@spawnite/schema/exports/-collision-shape.js +1 -0
  964. package/dist-browser/@spawnite/schema/exports/-cover-kind.js +1 -0
  965. package/dist-browser/@spawnite/schema/exports/-credential-kind.js +1 -0
  966. package/dist-browser/@spawnite/schema/exports/-device-class.js +1 -0
  967. package/dist-browser/@spawnite/schema/exports/-engine-save-name.js +1 -0
  968. package/dist-browser/@spawnite/schema/exports/-favorite-kind.js +1 -0
  969. package/dist-browser/@spawnite/schema/exports/-model-style.js +1 -0
  970. package/dist-browser/@spawnite/schema/exports/-page-connection-status.js +1 -0
  971. package/dist-browser/@spawnite/schema/exports/-page-message-type.js +1 -0
  972. package/dist-browser/@spawnite/schema/exports/-performance-stats-mode.js +1 -0
  973. package/dist-browser/@spawnite/schema/exports/-prop-shape.js +1 -0
  974. package/dist-browser/@spawnite/schema/exports/-quality-group.js +1 -0
  975. package/dist-browser/@spawnite/schema/exports/-quality-level.js +1 -0
  976. package/dist-browser/@spawnite/schema/exports/-room-mode.js +1 -0
  977. package/dist-browser/@spawnite/schema/exports/-save-owner-change.js +1 -0
  978. package/dist-browser/@spawnite/schema/exports/-save-section.js +1 -0
  979. package/dist-browser/@spawnite/schema/exports/-scatter-family.js +1 -0
  980. package/dist-browser/@spawnite/schema/exports/-scatter-kind.js +1 -0
  981. package/dist-browser/@spawnite/schema/exports/-shot-angle.js +1 -0
  982. package/dist-browser/@spawnite/schema/exports/-voice-mode.js +1 -0
  983. package/dist-browser/@spawnite/schema/exports/-wiki-scope.js +1 -0
  984. package/dist-browser/@spawnite/schema/exports/add-asset-input.js +1 -0
  985. package/dist-browser/@spawnite/schema/exports/add-behaviour-input.js +1 -0
  986. package/dist-browser/@spawnite/schema/exports/add-dialog-input.js +1 -0
  987. package/dist-browser/@spawnite/schema/exports/add-entity-input.js +1 -0
  988. package/dist-browser/@spawnite/schema/exports/add-hud-input.js +1 -0
  989. package/dist-browser/@spawnite/schema/exports/add-item-input.js +1 -0
  990. package/dist-browser/@spawnite/schema/exports/add-map-input.js +1 -0
  991. package/dist-browser/@spawnite/schema/exports/add-npc-input.js +1 -0
  992. package/dist-browser/@spawnite/schema/exports/add-panel-input.js +1 -0
  993. package/dist-browser/@spawnite/schema/exports/add-scene-input.js +1 -0
  994. package/dist-browser/@spawnite/schema/exports/add-shader-input.js +1 -0
  995. package/dist-browser/@spawnite/schema/exports/agent-activity-event.js +1 -0
  996. package/dist-browser/@spawnite/schema/exports/agent-heartbeat-milliseconds.js +1 -0
  997. package/dist-browser/@spawnite/schema/exports/app-channel-version.js +1 -0
  998. package/dist-browser/@spawnite/schema/exports/app-credential.js +1 -0
  999. package/dist-browser/@spawnite/schema/exports/app-inset-edges.js +1 -0
  1000. package/dist-browser/@spawnite/schema/exports/app-insets.js +1 -0
  1001. package/dist-browser/@spawnite/schema/exports/app-message-versions.js +1 -0
  1002. package/dist-browser/@spawnite/schema/exports/app-message.js +1 -0
  1003. package/dist-browser/@spawnite/schema/exports/app-player.js +1 -0
  1004. package/dist-browser/@spawnite/schema/exports/app-settings-message.js +1 -0
  1005. package/dist-browser/@spawnite/schema/exports/asset-catalog.js +1 -0
  1006. package/dist-browser/@spawnite/schema/exports/asset-category.js +1 -0
  1007. package/dist-browser/@spawnite/schema/exports/asset-declaration.js +1 -0
  1008. package/dist-browser/@spawnite/schema/exports/asset-entry.js +1 -0
  1009. package/dist-browser/@spawnite/schema/exports/asset-filters.js +1 -0
  1010. package/dist-browser/@spawnite/schema/exports/asset-key.js +1 -0
  1011. package/dist-browser/@spawnite/schema/exports/asset-kind.js +1 -0
  1012. package/dist-browser/@spawnite/schema/exports/asset-licence.js +1 -0
  1013. package/dist-browser/@spawnite/schema/exports/asset-manifest.js +1 -0
  1014. package/dist-browser/@spawnite/schema/exports/asset-source.js +1 -0
  1015. package/dist-browser/@spawnite/schema/exports/asset-style.js +1 -0
  1016. package/dist-browser/@spawnite/schema/exports/asset-url.js +1 -0
  1017. package/dist-browser/@spawnite/schema/exports/assets-site.js +1 -0
  1018. package/dist-browser/@spawnite/schema/exports/brush-shapes.js +1 -0
  1019. package/dist-browser/@spawnite/schema/exports/build-save-manifest-entry.js +1 -0
  1020. package/dist-browser/@spawnite/schema/exports/bundle-file.js +1 -0
  1021. package/dist-browser/@spawnite/schema/exports/bundle-limits.js +1 -0
  1022. package/dist-browser/@spawnite/schema/exports/bundle-manifest-file.js +1 -0
  1023. package/dist-browser/@spawnite/schema/exports/bundle-manifest.js +1 -0
  1024. package/dist-browser/@spawnite/schema/exports/bundle-page-folder.js +1 -0
  1025. package/dist-browser/@spawnite/schema/exports/bundle-server-folder.js +1 -0
  1026. package/dist-browser/@spawnite/schema/exports/carried-setting-key-list.js +1 -0
  1027. package/dist-browser/@spawnite/schema/exports/carried-setting-keys.js +1 -0
  1028. package/dist-browser/@spawnite/schema/exports/carried-settings.js +1 -0
  1029. package/dist-browser/@spawnite/schema/exports/catalog-row.js +1 -0
  1030. package/dist-browser/@spawnite/schema/exports/cell-paint.js +1 -0
  1031. package/dist-browser/@spawnite/schema/exports/channel-connect.js +1 -0
  1032. package/dist-browser/@spawnite/schema/exports/channel-hello.js +1 -0
  1033. package/dist-browser/@spawnite/schema/exports/chat-folder-name.js +1 -0
  1034. package/dist-browser/@spawnite/schema/exports/chat-path.js +1 -0
  1035. package/dist-browser/@spawnite/schema/exports/chat-post.js +1 -0
  1036. package/dist-browser/@spawnite/schema/exports/chat-read-folder-name.js +1 -0
  1037. package/dist-browser/@spawnite/schema/exports/check-game-slug.js +1 -0
  1038. package/dist-browser/@spawnite/schema/exports/check-model-input.js +1 -0
  1039. package/dist-browser/@spawnite/schema/exports/check-save-migrations.js +1 -0
  1040. package/dist-browser/@spawnite/schema/exports/check-save-publish.js +1 -0
  1041. package/dist-browser/@spawnite/schema/exports/check-sound-input.js +1 -0
  1042. package/dist-browser/@spawnite/schema/exports/clip-finish.js +1 -0
  1043. package/dist-browser/@spawnite/schema/exports/clip-meta.js +1 -0
  1044. package/dist-browser/@spawnite/schema/exports/clip-name.js +1 -0
  1045. package/dist-browser/@spawnite/schema/exports/clips-folder-name.js +1 -0
  1046. package/dist-browser/@spawnite/schema/exports/clips-path.js +1 -0
  1047. package/dist-browser/@spawnite/schema/exports/compare-save-manifest-entries.js +1 -0
  1048. package/dist-browser/@spawnite/schema/exports/compare-shots-input.js +1 -0
  1049. package/dist-browser/@spawnite/schema/exports/component-name.js +1 -0
  1050. package/dist-browser/@spawnite/schema/exports/condition-seconds.js +1 -0
  1051. package/dist-browser/@spawnite/schema/exports/connection-message.js +1 -0
  1052. package/dist-browser/@spawnite/schema/exports/create-quality-schema.js +1 -0
  1053. package/dist-browser/@spawnite/schema/exports/create-site.js +1 -0
  1054. package/dist-browser/@spawnite/schema/exports/create-tagged-save-value-schema.js +1 -0
  1055. package/dist-browser/@spawnite/schema/exports/credential-versions.js +1 -0
  1056. package/dist-browser/@spawnite/schema/exports/day-hour.js +1 -0
  1057. package/dist-browser/@spawnite/schema/exports/day-length.js +1 -0
  1058. package/dist-browser/@spawnite/schema/exports/default-player-settings.js +1 -0
  1059. package/dist-browser/@spawnite/schema/exports/default-room-players.js +1 -0
  1060. package/dist-browser/@spawnite/schema/exports/default-room-send-rate.js +1 -0
  1061. package/dist-browser/@spawnite/schema/exports/describe-entity-input.js +1 -0
  1062. package/dist-browser/@spawnite/schema/exports/describe-map-input.js +1 -0
  1063. package/dist-browser/@spawnite/schema/exports/describe-save-publish-refusal.js +1 -0
  1064. package/dist-browser/@spawnite/schema/exports/dev-saves-cleared-file.js +1 -0
  1065. package/dist-browser/@spawnite/schema/exports/dev-saves-cleared-meta-name.js +1 -0
  1066. package/dist-browser/@spawnite/schema/exports/dev-saves-folder.js +1 -0
  1067. package/dist-browser/@spawnite/schema/exports/dev-server-file.js +1 -0
  1068. package/dist-browser/@spawnite/schema/exports/dev-server-prefix.js +1 -0
  1069. package/dist-browser/@spawnite/schema/exports/devtools-favorites.js +1 -0
  1070. package/dist-browser/@spawnite/schema/exports/devtools-presets.js +1 -0
  1071. package/dist-browser/@spawnite/schema/exports/direct-link.js +1 -0
  1072. package/dist-browser/@spawnite/schema/exports/edit-material-input.js +1 -0
  1073. package/dist-browser/@spawnite/schema/exports/edit-terrain-input.js +1 -0
  1074. package/dist-browser/@spawnite/schema/exports/engine-build-meta-name.js +1 -0
  1075. package/dist-browser/@spawnite/schema/exports/engine-build-path.js +1 -0
  1076. package/dist-browser/@spawnite/schema/exports/engine-label.js +1 -0
  1077. package/dist-browser/@spawnite/schema/exports/engine-origin.js +1 -0
  1078. package/dist-browser/@spawnite/schema/exports/engine-save-readers.js +1 -0
  1079. package/dist-browser/@spawnite/schema/exports/engine-save-schemas.js +1 -0
  1080. package/dist-browser/@spawnite/schema/exports/error-reports-config.js +1 -0
  1081. package/dist-browser/@spawnite/schema/exports/error-reports-meta-name.js +1 -0
  1082. package/dist-browser/@spawnite/schema/exports/error-reports-path.js +1 -0
  1083. package/dist-browser/@spawnite/schema/exports/favorite-field.js +1 -0
  1084. package/dist-browser/@spawnite/schema/exports/filter-assets.js +1 -0
  1085. package/dist-browser/@spawnite/schema/exports/find-particle-effect-excess.js +1 -0
  1086. package/dist-browser/@spawnite/schema/exports/find-room-settings-problems.js +1 -0
  1087. package/dist-browser/@spawnite/schema/exports/find-terrain-cell.js +1 -0
  1088. package/dist-browser/@spawnite/schema/exports/fingerprint-save-schema.js +1 -0
  1089. package/dist-browser/@spawnite/schema/exports/format-clip-length.js +1 -0
  1090. package/dist-browser/@spawnite/schema/exports/format-clip-size.js +1 -0
  1091. package/dist-browser/@spawnite/schema/exports/format-link-conditions.js +1 -0
  1092. package/dist-browser/@spawnite/schema/exports/framed-shot-schema.js +1 -0
  1093. package/dist-browser/@spawnite/schema/exports/fullscreen-answer-message.js +1 -0
  1094. package/dist-browser/@spawnite/schema/exports/fullscreen-message.js +1 -0
  1095. package/dist-browser/@spawnite/schema/exports/game-materials-name.js +1 -0
  1096. package/dist-browser/@spawnite/schema/exports/game-materials-schema.js +1 -0
  1097. package/dist-browser/@spawnite/schema/exports/game-origin.js +1 -0
  1098. package/dist-browser/@spawnite/schema/exports/game-page-path.js +1 -0
  1099. package/dist-browser/@spawnite/schema/exports/game-save-key.js +1 -0
  1100. package/dist-browser/@spawnite/schema/exports/grid-map.js +1 -0
  1101. package/dist-browser/@spawnite/schema/exports/ground-rule-schema.js +1 -0
  1102. package/dist-browser/@spawnite/schema/exports/ground-schema.js +1 -0
  1103. package/dist-browser/@spawnite/schema/exports/hud-slot.js +1 -0
  1104. package/dist-browser/@spawnite/schema/exports/init-message.js +1 -0
  1105. package/dist-browser/@spawnite/schema/exports/init-save.js +1 -0
  1106. package/dist-browser/@spawnite/schema/exports/insets-message.js +1 -0
  1107. package/dist-browser/@spawnite/schema/exports/is-additive-schema-change.js +1 -0
  1108. package/dist-browser/@spawnite/schema/exports/is-game-id.js +1 -0
  1109. package/dist-browser/@spawnite/schema/exports/is-game-slug.js +1 -0
  1110. package/dist-browser/@spawnite/schema/exports/is-kept-label.js +1 -0
  1111. package/dist-browser/@spawnite/schema/exports/is-link-direct.js +1 -0
  1112. package/dist-browser/@spawnite/schema/exports/is-older-reader.js +1 -0
  1113. package/dist-browser/@spawnite/schema/exports/is-particle-effect-looping.js +1 -0
  1114. package/dist-browser/@spawnite/schema/exports/is-room-players.js +1 -0
  1115. package/dist-browser/@spawnite/schema/exports/is-room-send-rate.js +1 -0
  1116. package/dist-browser/@spawnite/schema/exports/item-definition.js +1 -0
  1117. package/dist-browser/@spawnite/schema/exports/join-room-input.js +1 -0
  1118. package/dist-browser/@spawnite/schema/exports/leave-message.js +1 -0
  1119. package/dist-browser/@spawnite/schema/exports/left-message.js +1 -0
  1120. package/dist-browser/@spawnite/schema/exports/list-assets-input.js +1 -0
  1121. package/dist-browser/@spawnite/schema/exports/list-clips-input.js +1 -0
  1122. package/dist-browser/@spawnite/schema/exports/list-templates-input.js +1 -0
  1123. package/dist-browser/@spawnite/schema/exports/list-wiki-input.js +1 -0
  1124. package/dist-browser/@spawnite/schema/exports/long-call-input.js +1 -0
  1125. package/dist-browser/@spawnite/schema/exports/longest-timeout-seconds.js +1 -0
  1126. package/dist-browser/@spawnite/schema/exports/make-model-input.js +1 -0
  1127. package/dist-browser/@spawnite/schema/exports/map-base-schema.js +1 -0
  1128. package/dist-browser/@spawnite/schema/exports/map-path.js +1 -0
  1129. package/dist-browser/@spawnite/schema/exports/map-point.js +1 -0
  1130. package/dist-browser/@spawnite/schema/exports/map-post.js +1 -0
  1131. package/dist-browser/@spawnite/schema/exports/map-prop-schema.js +1 -0
  1132. package/dist-browser/@spawnite/schema/exports/map-props-patch.js +1 -0
  1133. package/dist-browser/@spawnite/schema/exports/map-props-schema.js +1 -0
  1134. package/dist-browser/@spawnite/schema/exports/map-schema.js +1 -0
  1135. package/dist-browser/@spawnite/schema/exports/map-sea-schema.js +1 -0
  1136. package/dist-browser/@spawnite/schema/exports/map-terrain-schema.js +1 -0
  1137. package/dist-browser/@spawnite/schema/exports/material-cover-schema.js +1 -0
  1138. package/dist-browser/@spawnite/schema/exports/material-look-schema.js +1 -0
  1139. package/dist-browser/@spawnite/schema/exports/material-name.js +1 -0
  1140. package/dist-browser/@spawnite/schema/exports/material-sets.js +1 -0
  1141. package/dist-browser/@spawnite/schema/exports/materials-schema.js +1 -0
  1142. package/dist-browser/@spawnite/schema/exports/max-error-report-bytes.js +1 -0
  1143. package/dist-browser/@spawnite/schema/exports/max-save-body-bytes.js +1 -0
  1144. package/dist-browser/@spawnite/schema/exports/max-save-body-ceiling-bytes.js +1 -0
  1145. package/dist-browser/@spawnite/schema/exports/max-save-unpacked-bytes.js +1 -0
  1146. package/dist-browser/@spawnite/schema/exports/max-save-unpacked-ceiling-bytes.js +1 -0
  1147. package/dist-browser/@spawnite/schema/exports/menu-message.js +1 -0
  1148. package/dist-browser/@spawnite/schema/exports/merge-carried-settings.js +1 -0
  1149. package/dist-browser/@spawnite/schema/exports/merge-save-highest.js +1 -0
  1150. package/dist-browser/@spawnite/schema/exports/model-reference-schema.js +1 -0
  1151. package/dist-browser/@spawnite/schema/exports/model-triangle-budget.js +1 -0
  1152. package/dist-browser/@spawnite/schema/exports/most-rejoin-hold-seconds.js +1 -0
  1153. package/dist-browser/@spawnite/schema/exports/most-room-players.js +1 -0
  1154. package/dist-browser/@spawnite/schema/exports/name-schema.js +1 -0
  1155. package/dist-browser/@spawnite/schema/exports/new-game-input.js +1 -0
  1156. package/dist-browser/@spawnite/schema/exports/package-room-hint.js +1 -0
  1157. package/dist-browser/@spawnite/schema/exports/package-room.js +1 -0
  1158. package/dist-browser/@spawnite/schema/exports/page-message-versions.js +1 -0
  1159. package/dist-browser/@spawnite/schema/exports/page-message.js +1 -0
  1160. package/dist-browser/@spawnite/schema/exports/page-settings-message.js +1 -0
  1161. package/dist-browser/@spawnite/schema/exports/parse-link-conditions.js +1 -0
  1162. package/dist-browser/@spawnite/schema/exports/particle-effect-limits.js +1 -0
  1163. package/dist-browser/@spawnite/schema/exports/particle-sprite-max-side.js +1 -0
  1164. package/dist-browser/@spawnite/schema/exports/place-loot-input.js +1 -0
  1165. package/dist-browser/@spawnite/schema/exports/place-props-input.js +1 -0
  1166. package/dist-browser/@spawnite/schema/exports/play-domain.js +1 -0
  1167. package/dist-browser/@spawnite/schema/exports/profile-game-input.js +1 -0
  1168. package/dist-browser/@spawnite/schema/exports/project-folder.js +1 -0
  1169. package/dist-browser/@spawnite/schema/exports/publish-assets-input.js +1 -0
  1170. package/dist-browser/@spawnite/schema/exports/publish-version-input.js +1 -0
  1171. package/dist-browser/@spawnite/schema/exports/query-map-input.js +1 -0
  1172. package/dist-browser/@spawnite/schema/exports/read-ai-tree-input.js +1 -0
  1173. package/dist-browser/@spawnite/schema/exports/read-chat-input.js +1 -0
  1174. package/dist-browser/@spawnite/schema/exports/read-clip-input.js +1 -0
  1175. package/dist-browser/@spawnite/schema/exports/read-clip-start-time.js +1 -0
  1176. package/dist-browser/@spawnite/schema/exports/read-game-id.js +1 -0
  1177. package/dist-browser/@spawnite/schema/exports/read-game-wiki-input.js +1 -0
  1178. package/dist-browser/@spawnite/schema/exports/read-package-room.js +1 -0
  1179. package/dist-browser/@spawnite/schema/exports/read-paint-grid.js +1 -0
  1180. package/dist-browser/@spawnite/schema/exports/read-particle-effect.js +1 -0
  1181. package/dist-browser/@spawnite/schema/exports/read-room-mode.js +1 -0
  1182. package/dist-browser/@spawnite/schema/exports/read-run-input.js +1 -0
  1183. package/dist-browser/@spawnite/schema/exports/read-save-mark.js +1 -0
  1184. package/dist-browser/@spawnite/schema/exports/read-save-record.js +1 -0
  1185. package/dist-browser/@spawnite/schema/exports/read-terrain-grid.js +1 -0
  1186. package/dist-browser/@spawnite/schema/exports/read-track-level.js +1 -0
  1187. package/dist-browser/@spawnite/schema/exports/read-wiki-input.js +1 -0
  1188. package/dist-browser/@spawnite/schema/exports/ready-message.js +1 -0
  1189. package/dist-browser/@spawnite/schema/exports/record-clip-input.js +1 -0
  1190. package/dist-browser/@spawnite/schema/exports/registry-entry.js +1 -0
  1191. package/dist-browser/@spawnite/schema/exports/registry-file.js +1 -0
  1192. package/dist-browser/@spawnite/schema/exports/registry-item-schema-url.js +1 -0
  1193. package/dist-browser/@spawnite/schema/exports/registry-item.js +1 -0
  1194. package/dist-browser/@spawnite/schema/exports/registry-schema-url.js +1 -0
  1195. package/dist-browser/@spawnite/schema/exports/registry.js +1 -0
  1196. package/dist-browser/@spawnite/schema/exports/resolve-room-settings.js +1 -0
  1197. package/dist-browser/@spawnite/schema/exports/reverse-wiki-relation.js +1 -0
  1198. package/dist-browser/@spawnite/schema/exports/room-send-rates.js +1 -0
  1199. package/dist-browser/@spawnite/schema/exports/save-codec-mark.js +1 -0
  1200. package/dist-browser/@spawnite/schema/exports/save-failed-message.js +1 -0
  1201. package/dist-browser/@spawnite/schema/exports/save-fingerprint-format.js +1 -0
  1202. package/dist-browser/@spawnite/schema/exports/save-limit-warning-share.js +1 -0
  1203. package/dist-browser/@spawnite/schema/exports/save-load-failed-message.js +1 -0
  1204. package/dist-browser/@spawnite/schema/exports/save-message.js +1 -0
  1205. package/dist-browser/@spawnite/schema/exports/save-now-message.js +1 -0
  1206. package/dist-browser/@spawnite/schema/exports/save-record-message.js +1 -0
  1207. package/dist-browser/@spawnite/schema/exports/saved-health-schema.js +1 -0
  1208. package/dist-browser/@spawnite/schema/exports/saved-level-schema.js +1 -0
  1209. package/dist-browser/@spawnite/schema/exports/saved-message.js +1 -0
  1210. package/dist-browser/@spawnite/schema/exports/saved-stack-schema.js +1 -0
  1211. package/dist-browser/@spawnite/schema/exports/saved-stat-schema.js +1 -0
  1212. package/dist-browser/@spawnite/schema/exports/saved-vector-schema.js +1 -0
  1213. package/dist-browser/@spawnite/schema/exports/scatter-kinds.js +1 -0
  1214. package/dist-browser/@spawnite/schema/exports/scene-name.js +1 -0
  1215. package/dist-browser/@spawnite/schema/exports/screenshot-input.js +1 -0
  1216. package/dist-browser/@spawnite/schema/exports/search-wiki-input.js +1 -0
  1217. package/dist-browser/@spawnite/schema/exports/seat-credential.js +1 -0
  1218. package/dist-browser/@spawnite/schema/exports/seat-message.js +1 -0
  1219. package/dist-browser/@spawnite/schema/exports/send-input-input.js +1 -0
  1220. package/dist-browser/@spawnite/schema/exports/servers-folder-name.js +1 -0
  1221. package/dist-browser/@spawnite/schema/exports/set-nickname-input.js +1 -0
  1222. package/dist-browser/@spawnite/schema/exports/set-trait-input.js +1 -0
  1223. package/dist-browser/@spawnite/schema/exports/set-visibility-input.js +1 -0
  1224. package/dist-browser/@spawnite/schema/exports/settings-schema.js +1 -0
  1225. package/dist-browser/@spawnite/schema/exports/shot-angle-schema.js +1 -0
  1226. package/dist-browser/@spawnite/schema/exports/shot-camera-schema.js +1 -0
  1227. package/dist-browser/@spawnite/schema/exports/shot-post.js +1 -0
  1228. package/dist-browser/@spawnite/schema/exports/shots-folder-name.js +1 -0
  1229. package/dist-browser/@spawnite/schema/exports/shots-path.js +1 -0
  1230. package/dist-browser/@spawnite/schema/exports/simulate-input.js +1 -0
  1231. package/dist-browser/@spawnite/schema/exports/slug-limits.js +1 -0
  1232. package/dist-browser/@spawnite/schema/exports/slugify-game-name.js +1 -0
  1233. package/dist-browser/@spawnite/schema/exports/snapshot-save-schema.js +1 -0
  1234. package/dist-browser/@spawnite/schema/exports/space-point-schema.js +1 -0
  1235. package/dist-browser/@spawnite/schema/exports/spawnite-folder-name.js +1 -0
  1236. package/dist-browser/@spawnite/schema/exports/start-playtest-input.js +1 -0
  1237. package/dist-browser/@spawnite/schema/exports/start-save-key.js +1 -0
  1238. package/dist-browser/@spawnite/schema/exports/steps-per-second.js +1 -0
  1239. package/dist-browser/@spawnite/schema/exports/store-age-bands.js +1 -0
  1240. package/dist-browser/@spawnite/schema/exports/store-page-limits.js +1 -0
  1241. package/dist-browser/@spawnite/schema/exports/store-page.js +1 -0
  1242. package/dist-browser/@spawnite/schema/exports/store-picture-rules.js +1 -0
  1243. package/dist-browser/@spawnite/schema/exports/store-picture.js +1 -0
  1244. package/dist-browser/@spawnite/schema/exports/tab-info.js +1 -0
  1245. package/dist-browser/@spawnite/schema/exports/tab-path.js +1 -0
  1246. package/dist-browser/@spawnite/schema/exports/tab-post.js +1 -0
  1247. package/dist-browser/@spawnite/schema/exports/tab-token-header.js +1 -0
  1248. package/dist-browser/@spawnite/schema/exports/tagged-save-value-schema.js +1 -0
  1249. package/dist-browser/@spawnite/schema/exports/terrain-brush.js +1 -0
  1250. package/dist-browser/@spawnite/schema/exports/terrain-fill.js +1 -0
  1251. package/dist-browser/@spawnite/schema/exports/terrain-map.js +1 -0
  1252. package/dist-browser/@spawnite/schema/exports/terrain-restore.js +1 -0
  1253. package/dist-browser/@spawnite/schema/exports/terrain-settlings.js +1 -0
  1254. package/dist-browser/@spawnite/schema/exports/terrain-stroke-shape.js +1 -0
  1255. package/dist-browser/@spawnite/schema/exports/terrain-stroke.js +1 -0
  1256. package/dist-browser/@spawnite/schema/exports/terrain-tools.js +1 -0
  1257. package/dist-browser/@spawnite/schema/exports/timeline-input.js +1 -0
  1258. package/dist-browser/@spawnite/schema/exports/to-display-name.js +1 -0
  1259. package/dist-browser/@spawnite/schema/exports/to-wiki-anchor.js +1 -0
  1260. package/dist-browser/@spawnite/schema/exports/track-level-schema.js +1 -0
  1261. package/dist-browser/@spawnite/schema/exports/untouched.js +1 -0
  1262. package/dist-browser/@spawnite/schema/exports/upload-store-page-input.js +1 -0
  1263. package/dist-browser/@spawnite/schema/exports/upload-version-input.js +1 -0
  1264. package/dist-browser/@spawnite/schema/exports/versions-of-save-manifest-entry.js +1 -0
  1265. package/dist-browser/@spawnite/schema/exports/versions-of.js +1 -0
  1266. package/dist-browser/@spawnite/schema/exports/view-schema.js +1 -0
  1267. package/dist-browser/@spawnite/schema/exports/voice-settings.js +1 -0
  1268. package/dist-browser/@spawnite/schema/exports/whoami-input.js +1 -0
  1269. package/dist-browser/@spawnite/schema/exports/wiki-overview-path.js +1 -0
  1270. package/dist-browser/@spawnite/schema/exports/wiki-page-path.js +1 -0
  1271. package/dist-browser/@spawnite/schema/exports/wiki-page-ref.js +1 -0
  1272. package/dist-browser/@spawnite/schema/exports/wiki-path-part.js +1 -0
  1273. package/dist-browser/@spawnite/schema/exports/wiki-site.js +1 -0
  1274. package/dist-browser/@spawnite/schema/exports/write-link-settings.js +1 -0
  1275. package/dist-browser/@spawnite/schema/exports/write-paint-grid.js +1 -0
  1276. package/dist-browser/@spawnite/schema/exports/write-save-record.js +1 -0
  1277. package/dist-browser/@spawnite/schema/exports/write-terrain-grid.js +1 -0
  1278. package/dist-browser/@spawnite/schema/exports/write-wiki-page-input.js +1 -0
  1279. package/dist-browser/@spawnite/schema/exports/z.js +1 -0
  1280. package/dist-browser/@spawnite/schema.js +1 -0
  1281. package/dist-browser/@spawnite/ui/motion.js +1 -0
  1282. package/dist-browser/@spawnite/ui.js +1 -0
  1283. package/dist-browser/THIRD-PARTY-NOTICES +2949 -0
  1284. package/dist-browser/assets/basis_transcoder-VXdx5NbI.wasm +0 -0
  1285. package/dist-browser/assets/basis_transcoder-o4Hde_L7.js +19 -0
  1286. package/dist-browser/assets/draco_decoder-C32yEggz.wasm +0 -0
  1287. package/dist-browser/assets/draco_decoder-Z1_iN-Ht.wasm +0 -0
  1288. package/dist-browser/assets/draco_decoder-fzg4nYZr.js +34 -0
  1289. package/dist-browser/assets/draco_wasm_wrapper-DxJM36Ib.js +117 -0
  1290. package/dist-browser/assets/draco_wasm_wrapper-fZCQGLGb.js +116 -0
  1291. package/dist-browser/assets/rapier_wasm3d_bg-CcJdV3OS.wasm +0 -0
  1292. package/dist-browser/chunks/-8xKUVc-.js +1 -0
  1293. package/dist-browser/chunks/0Bppyo06.js +1 -0
  1294. package/dist-browser/chunks/0XBYBf4e.js +1 -0
  1295. package/dist-browser/chunks/1Pk4GW-o.js +1 -0
  1296. package/dist-browser/chunks/1TfeBVY_.js +1 -0
  1297. package/dist-browser/chunks/2GzBwp8F.js +1 -0
  1298. package/dist-browser/chunks/37dBpPRN.js +1 -0
  1299. package/dist-browser/chunks/3GDQ_l39.js +1 -0
  1300. package/dist-browser/chunks/4r3wlCT-.js +56 -0
  1301. package/dist-browser/chunks/51muForc.js +2 -0
  1302. package/dist-browser/chunks/5l3Kj8OA.js +25 -0
  1303. package/dist-browser/chunks/5v0sm-la.js +1 -0
  1304. package/dist-browser/chunks/6RSie8Zr.js +1 -0
  1305. package/dist-browser/chunks/6VxScSBj.js +1 -0
  1306. package/dist-browser/chunks/6r1L_s87.js +1 -0
  1307. package/dist-browser/chunks/703AF8IC.js +2 -0
  1308. package/dist-browser/chunks/7kk1UrXM.js +54 -0
  1309. package/dist-browser/chunks/7v-xFmSc.js +1 -0
  1310. package/dist-browser/chunks/8CwB1oG9.js +1 -0
  1311. package/dist-browser/chunks/8GjxAP3h.js +1 -0
  1312. package/dist-browser/chunks/8Pep1QKH.js +1 -0
  1313. package/dist-browser/chunks/8eSx71cM.js +1 -0
  1314. package/dist-browser/chunks/8qLBuj0B.js +1 -0
  1315. package/dist-browser/chunks/8uMFNz4F.js +48 -0
  1316. package/dist-browser/chunks/9BUmmiDi.js +64 -0
  1317. package/dist-browser/chunks/AEQH3xKs.js +1 -0
  1318. package/dist-browser/chunks/B04SdTxo.js +1 -0
  1319. package/dist-browser/chunks/B0d1OhsT.js +1 -0
  1320. package/dist-browser/chunks/B0d94ulh.js +1 -0
  1321. package/dist-browser/chunks/B0dIJJnS.js +104 -0
  1322. package/dist-browser/chunks/B0sEcOA4.js +1 -0
  1323. package/dist-browser/chunks/B17MsfBW.js +2 -0
  1324. package/dist-browser/chunks/B1Q2EYQa.js +409 -0
  1325. package/dist-browser/chunks/B1VGbFnq.js +1 -0
  1326. package/dist-browser/chunks/B1ZLDwkb.js +1 -0
  1327. package/dist-browser/chunks/B1gZ4XNT.js +1 -0
  1328. package/dist-browser/chunks/B2P8OKx4.js +114 -0
  1329. package/dist-browser/chunks/B2lwHY_A.js +1 -0
  1330. package/dist-browser/chunks/B2rfjAu3.js +1 -0
  1331. package/dist-browser/chunks/B3cpZ7qW.js +1 -0
  1332. package/dist-browser/chunks/B3zyuqQe.js +1 -0
  1333. package/dist-browser/chunks/B4HH7vxm.js +1 -0
  1334. package/dist-browser/chunks/B4L72GuI.js +1 -0
  1335. package/dist-browser/chunks/B4PXM93E.js +1 -0
  1336. package/dist-browser/chunks/B4dyXOK4.js +2 -0
  1337. package/dist-browser/chunks/B4f83JmW.js +1 -0
  1338. package/dist-browser/chunks/B4rtOA11.js +1 -0
  1339. package/dist-browser/chunks/B53Q2-Fw.js +42 -0
  1340. package/dist-browser/chunks/B5YG9Ima.js +35 -0
  1341. package/dist-browser/chunks/B5npwEiE.js +1 -0
  1342. package/dist-browser/chunks/B6TyyPfn.js +2280 -0
  1343. package/dist-browser/chunks/B6YPgX9B.js +1 -0
  1344. package/dist-browser/chunks/B7K2KMcP.js +289 -0
  1345. package/dist-browser/chunks/B8GCRzu-.js +1 -0
  1346. package/dist-browser/chunks/B8f3enUO.js +42 -0
  1347. package/dist-browser/chunks/B9dPPcmc.js +239 -0
  1348. package/dist-browser/chunks/B9n7U8x8.js +24 -0
  1349. package/dist-browser/chunks/BAcEoh4A.js +1 -0
  1350. package/dist-browser/chunks/BBTy17gV.js +23 -0
  1351. package/dist-browser/chunks/BBoWq_28.js +1 -0
  1352. package/dist-browser/chunks/BCEkROxA.js +1 -0
  1353. package/dist-browser/chunks/BCSDojKA.js +2 -0
  1354. package/dist-browser/chunks/BCnGjanZ.js +1 -0
  1355. package/dist-browser/chunks/BCy2Imwl.js +1 -0
  1356. package/dist-browser/chunks/BD93nK4k.js +1 -0
  1357. package/dist-browser/chunks/BDYWv4Pt.js +1 -0
  1358. package/dist-browser/chunks/BDntRBeD.js +1 -0
  1359. package/dist-browser/chunks/BE0sHH_C.js +1 -0
  1360. package/dist-browser/chunks/BE7yKwOS.js +1 -0
  1361. package/dist-browser/chunks/BFDqfrDx.js +61 -0
  1362. package/dist-browser/chunks/BFnCgym5.js +1 -0
  1363. package/dist-browser/chunks/BFpenkAR.js +1 -0
  1364. package/dist-browser/chunks/BFvqTjM2.js +1 -0
  1365. package/dist-browser/chunks/BG8QaCAl.js +1 -0
  1366. package/dist-browser/chunks/BGsrJU1n.js +219 -0
  1367. package/dist-browser/chunks/BGze3w87.js +1 -0
  1368. package/dist-browser/chunks/BHYG5big.js +1 -0
  1369. package/dist-browser/chunks/BHZuFsZC.js +26 -0
  1370. package/dist-browser/chunks/BHePouWp.js +1 -0
  1371. package/dist-browser/chunks/BIGc2B5x.js +106 -0
  1372. package/dist-browser/chunks/BIgbJOA7.js +1 -0
  1373. package/dist-browser/chunks/BIlEJ_uM.js +1 -0
  1374. package/dist-browser/chunks/BIrJsLCp.js +1 -0
  1375. package/dist-browser/chunks/BJCTIWwI.js +97 -0
  1376. package/dist-browser/chunks/BJWwGEft.js +22 -0
  1377. package/dist-browser/chunks/BJbnvkQD.js +33 -0
  1378. package/dist-browser/chunks/BJj_P5qy.js +40 -0
  1379. package/dist-browser/chunks/BKMmwIjP.js +1 -0
  1380. package/dist-browser/chunks/BL2b-bga.js +1 -0
  1381. package/dist-browser/chunks/BL3GFPpX.js +1 -0
  1382. package/dist-browser/chunks/BL3JqalM.js +1 -0
  1383. package/dist-browser/chunks/BLQoPgRQ.js +17 -0
  1384. package/dist-browser/chunks/BLdTHuK5.js +38 -0
  1385. package/dist-browser/chunks/BLxVM0Bx.js +1 -0
  1386. package/dist-browser/chunks/BMOXLfbG.js +1 -0
  1387. package/dist-browser/chunks/BMyF16Pb.js +1 -0
  1388. package/dist-browser/chunks/BN0JituG.js +1 -0
  1389. package/dist-browser/chunks/BNiTh9Zb.js +1 -0
  1390. package/dist-browser/chunks/BNm7BDEl.js +1 -0
  1391. package/dist-browser/chunks/BNucCtAC.js +1 -0
  1392. package/dist-browser/chunks/BOAa4bZ5.js +80 -0
  1393. package/dist-browser/chunks/BOIXSUZ_.js +1 -0
  1394. package/dist-browser/chunks/BOY2osHs.js +1 -0
  1395. package/dist-browser/chunks/BP9HooTj.js +1 -0
  1396. package/dist-browser/chunks/BPsQn259.js +1 -0
  1397. package/dist-browser/chunks/BPyPftW0.js +1 -0
  1398. package/dist-browser/chunks/BQl3ddsW.js +1 -0
  1399. package/dist-browser/chunks/BSaFdJJr.js +1 -0
  1400. package/dist-browser/chunks/BSb5Y-Am.js +1 -0
  1401. package/dist-browser/chunks/BSoHyLeW.js +1 -0
  1402. package/dist-browser/chunks/BUJHJVUo.js +1 -0
  1403. package/dist-browser/chunks/BV45MfzJ.js +206 -0
  1404. package/dist-browser/chunks/BWLobtMG.js +1 -0
  1405. package/dist-browser/chunks/BWX2omqC.js +1 -0
  1406. package/dist-browser/chunks/BX-IJ6Jw.js +1 -0
  1407. package/dist-browser/chunks/BZ67u85L.js +1 -0
  1408. package/dist-browser/chunks/BZL3DkMo.js +1 -0
  1409. package/dist-browser/chunks/BZkTFuN8.js +32 -0
  1410. package/dist-browser/chunks/B_olo1g0.js +1 -0
  1411. package/dist-browser/chunks/B_xcv6lP.js +1 -0
  1412. package/dist-browser/chunks/BadDFgpu.js +3 -0
  1413. package/dist-browser/chunks/BbIllpJG.js +1 -0
  1414. package/dist-browser/chunks/Bc7uTOHd.js +1 -0
  1415. package/dist-browser/chunks/BcH7_nnK.js +1 -0
  1416. package/dist-browser/chunks/Bdd_iq-Z.js +1 -0
  1417. package/dist-browser/chunks/BdkaRoRG.js +3 -0
  1418. package/dist-browser/chunks/BeUM0nnI.js +1 -0
  1419. package/dist-browser/chunks/BfkxY7do.js +13 -0
  1420. package/dist-browser/chunks/BfzfmpKY.js +1 -0
  1421. package/dist-browser/chunks/BgNGXLZH.js +1 -0
  1422. package/dist-browser/chunks/Bgmtnmc9.js +1 -0
  1423. package/dist-browser/chunks/BgtS-68o.js +1 -0
  1424. package/dist-browser/chunks/BhE7ED0P.js +1 -0
  1425. package/dist-browser/chunks/BhG-aLlJ.js +17 -0
  1426. package/dist-browser/chunks/BhtgOF9y.js +1 -0
  1427. package/dist-browser/chunks/BhvPhm_f.js +12 -0
  1428. package/dist-browser/chunks/Bhvb25xz.js +1 -0
  1429. package/dist-browser/chunks/Bi2imP0-.js +1 -0
  1430. package/dist-browser/chunks/Bi4f74NJ.js +1 -0
  1431. package/dist-browser/chunks/BiCMFIxo.js +1 -0
  1432. package/dist-browser/chunks/BiSn0Dtc.js +1 -0
  1433. package/dist-browser/chunks/BiU0PYSX.js +1 -0
  1434. package/dist-browser/chunks/BipZQXT8.js +1 -0
  1435. package/dist-browser/chunks/BiqCT0be.js +1 -0
  1436. package/dist-browser/chunks/BjVVweLJ.js +1 -0
  1437. package/dist-browser/chunks/BjeL5CV8.js +1 -0
  1438. package/dist-browser/chunks/BjikXbkr.js +1 -0
  1439. package/dist-browser/chunks/BkNRpWJF.js +1 -0
  1440. package/dist-browser/chunks/BkWdvCr2.js +1 -0
  1441. package/dist-browser/chunks/BkfYP8sS.js +1 -0
  1442. package/dist-browser/chunks/BkoAp3nt.js +17 -0
  1443. package/dist-browser/chunks/BkuNzUds.js +5 -0
  1444. package/dist-browser/chunks/BlDBqfnQ.js +1 -0
  1445. package/dist-browser/chunks/Blob4piG.js +1 -0
  1446. package/dist-browser/chunks/Bm-NgCJv.js +290 -0
  1447. package/dist-browser/chunks/BmwnZMHR.js +1 -0
  1448. package/dist-browser/chunks/Bn-oguIM.js +1 -0
  1449. package/dist-browser/chunks/Bn8JxKQd.js +947 -0
  1450. package/dist-browser/chunks/Bn8l74kN.js +1 -0
  1451. package/dist-browser/chunks/Bo2vvsC6.js +1 -0
  1452. package/dist-browser/chunks/BoJD7UsQ.js +5 -0
  1453. package/dist-browser/chunks/BoRPdfTd.js +1 -0
  1454. package/dist-browser/chunks/BoTmVVAp.js +1 -0
  1455. package/dist-browser/chunks/BoiOnH_p.js +1 -0
  1456. package/dist-browser/chunks/Bpe2I0GB.js +1 -0
  1457. package/dist-browser/chunks/BqD0o821.js +25 -0
  1458. package/dist-browser/chunks/BqXaJXLb.js +1 -0
  1459. package/dist-browser/chunks/BqsB_Ag5.js +1 -0
  1460. package/dist-browser/chunks/Br-JA8rZ.js +1 -0
  1461. package/dist-browser/chunks/Br2nhNMH.js +1 -0
  1462. package/dist-browser/chunks/BrezGx31.js +3 -0
  1463. package/dist-browser/chunks/BsZMTFvx.js +1 -0
  1464. package/dist-browser/chunks/Bt2nCTua.js +51 -0
  1465. package/dist-browser/chunks/BtM7kQaS.js +1 -0
  1466. package/dist-browser/chunks/BtZNIAhj.js +1 -0
  1467. package/dist-browser/chunks/Btgu8kW9.js +3 -0
  1468. package/dist-browser/chunks/Btjboa9G.js +248 -0
  1469. package/dist-browser/chunks/Btn1Hp7-.js +1 -0
  1470. package/dist-browser/chunks/Bu1cOMsK.js +1 -0
  1471. package/dist-browser/chunks/Bv2bGJo9.js +1 -0
  1472. package/dist-browser/chunks/BvK95JoS.js +1 -0
  1473. package/dist-browser/chunks/BvrPFs0h.js +1 -0
  1474. package/dist-browser/chunks/BvsNGgEj.js +1 -0
  1475. package/dist-browser/chunks/ByyEEkYz.js +1 -0
  1476. package/dist-browser/chunks/BzAJiB5u.js +1 -0
  1477. package/dist-browser/chunks/BzCmY2x1.js +68 -0
  1478. package/dist-browser/chunks/BzKtjbg2.js +1 -0
  1479. package/dist-browser/chunks/BzZ2lwsC.js +134 -0
  1480. package/dist-browser/chunks/BzcZWs3f.js +1 -0
  1481. package/dist-browser/chunks/BzuN4nW7.js +33 -0
  1482. package/dist-browser/chunks/BzwHJPea.js +1 -0
  1483. package/dist-browser/chunks/Bzy44bV2.js +4216 -0
  1484. package/dist-browser/chunks/C-O8NhHK.js +1 -0
  1485. package/dist-browser/chunks/C-_LmeNn.js +934 -0
  1486. package/dist-browser/chunks/C-ztiLpW.js +1 -0
  1487. package/dist-browser/chunks/C0Iji4Qk.js +1 -0
  1488. package/dist-browser/chunks/C12xlM79.js +1 -0
  1489. package/dist-browser/chunks/C1BDCorD.js +99 -0
  1490. package/dist-browser/chunks/C2Dm6eUt.js +1 -0
  1491. package/dist-browser/chunks/C2RePWen.js +1 -0
  1492. package/dist-browser/chunks/C2suuPFw.js +1 -0
  1493. package/dist-browser/chunks/C33aG9gN.js +1 -0
  1494. package/dist-browser/chunks/C3Y15gp1.js +1 -0
  1495. package/dist-browser/chunks/C3gvA1lh.js +1 -0
  1496. package/dist-browser/chunks/C3pLayiC.js +143 -0
  1497. package/dist-browser/chunks/C3wBsE11.js +1 -0
  1498. package/dist-browser/chunks/C4E_bIDB.js +1 -0
  1499. package/dist-browser/chunks/C4OFzvAP.js +1 -0
  1500. package/dist-browser/chunks/C4fzyzUE.js +1 -0
  1501. package/dist-browser/chunks/C5P0RHNI.js +1 -0
  1502. package/dist-browser/chunks/C6XZSTSj.js +39 -0
  1503. package/dist-browser/chunks/C784v2VA.js +1 -0
  1504. package/dist-browser/chunks/C7CUzsYJ.js +1 -0
  1505. package/dist-browser/chunks/C7FykdRJ.js +1 -0
  1506. package/dist-browser/chunks/C7RSxM0z.js +1 -0
  1507. package/dist-browser/chunks/C9J2i9In.js +2 -0
  1508. package/dist-browser/chunks/C9Kd-Lrf.js +1 -0
  1509. package/dist-browser/chunks/C9OKiK4z.js +15 -0
  1510. package/dist-browser/chunks/C9bAX0wX.js +1 -0
  1511. package/dist-browser/chunks/C9duFT9_.js +9 -0
  1512. package/dist-browser/chunks/CA52Vkpa.js +3 -0
  1513. package/dist-browser/chunks/CAB0sdkM.js +8 -0
  1514. package/dist-browser/chunks/CBcRTsvX.js +1 -0
  1515. package/dist-browser/chunks/CC8kNj4O.js +1 -0
  1516. package/dist-browser/chunks/CC_taxfs.js +1 -0
  1517. package/dist-browser/chunks/CCnjeop3.js +1 -0
  1518. package/dist-browser/chunks/CD1Phcj7.js +1 -0
  1519. package/dist-browser/chunks/CDBmfTua.js +1 -0
  1520. package/dist-browser/chunks/CDFKagMr.js +1 -0
  1521. package/dist-browser/chunks/CDZegpP1.js +1 -0
  1522. package/dist-browser/chunks/CD_-ZdOx.js +1 -0
  1523. package/dist-browser/chunks/CDmSfsbx.js +1 -0
  1524. package/dist-browser/chunks/CDy5CkBb.js +1 -0
  1525. package/dist-browser/chunks/CDyybrEA.js +1 -0
  1526. package/dist-browser/chunks/CENY_jwA.js +5 -0
  1527. package/dist-browser/chunks/CEfq3wMj.js +1 -0
  1528. package/dist-browser/chunks/CEtY4HlI.js +1 -0
  1529. package/dist-browser/chunks/CEtbZ-Ou.js +51 -0
  1530. package/dist-browser/chunks/CFVbNh1J.js +1 -0
  1531. package/dist-browser/chunks/CG5A_mHR.js +1 -0
  1532. package/dist-browser/chunks/CGFRQ0IS.js +3 -0
  1533. package/dist-browser/chunks/CGPPrudP.js +1 -0
  1534. package/dist-browser/chunks/CGZdRHCz.js +1 -0
  1535. package/dist-browser/chunks/CG_ggIC3.js +230 -0
  1536. package/dist-browser/chunks/CHD7Siks.js +61 -0
  1537. package/dist-browser/chunks/CHGAmNbz.js +24 -0
  1538. package/dist-browser/chunks/CH_3weAk.js +136 -0
  1539. package/dist-browser/chunks/CHnMaz0U.js +1 -0
  1540. package/dist-browser/chunks/CHx28aAq.js +1 -0
  1541. package/dist-browser/chunks/CIPEdQZg.js +1 -0
  1542. package/dist-browser/chunks/CIU50MA1.js +1 -0
  1543. package/dist-browser/chunks/CIXqygz5.js +42 -0
  1544. package/dist-browser/chunks/CIz-HH07.js +1585 -0
  1545. package/dist-browser/chunks/CJ4zQQhO.js +1 -0
  1546. package/dist-browser/chunks/CJD9mRmQ.js +1 -0
  1547. package/dist-browser/chunks/CJgknJ-O.js +12 -0
  1548. package/dist-browser/chunks/CL1lltpM.js +1 -0
  1549. package/dist-browser/chunks/CLxcu-z_.js +73 -0
  1550. package/dist-browser/chunks/CM3pB59z.js +1 -0
  1551. package/dist-browser/chunks/CM7fr6V2.js +1 -0
  1552. package/dist-browser/chunks/CMCldyjy.js +1 -0
  1553. package/dist-browser/chunks/CMhbdUh_.js +1 -0
  1554. package/dist-browser/chunks/CMj-G0tG.js +1 -0
  1555. package/dist-browser/chunks/CMy5JYMZ.js +1 -0
  1556. package/dist-browser/chunks/CNS048lI.js +1 -0
  1557. package/dist-browser/chunks/CO0SZ1hy.js +1 -0
  1558. package/dist-browser/chunks/COnv2PBF.js +2 -0
  1559. package/dist-browser/chunks/CP27PMpS.js +1 -0
  1560. package/dist-browser/chunks/CQRcPihd.js +6 -0
  1561. package/dist-browser/chunks/CRDIjF8C.js +2 -0
  1562. package/dist-browser/chunks/CRFCYrrv.js +1 -0
  1563. package/dist-browser/chunks/CRL527zA.js +1 -0
  1564. package/dist-browser/chunks/CRuuK4qI.js +1 -0
  1565. package/dist-browser/chunks/CSrliGR5.js +1 -0
  1566. package/dist-browser/chunks/CT24MROG.js +36 -0
  1567. package/dist-browser/chunks/CTKsfpS6.js +1 -0
  1568. package/dist-browser/chunks/CTovL-9G.js +1 -0
  1569. package/dist-browser/chunks/CU2_4WYp.js +1 -0
  1570. package/dist-browser/chunks/CVn3AkL4.js +3 -0
  1571. package/dist-browser/chunks/CW47wlpJ.js +1 -0
  1572. package/dist-browser/chunks/CWtE2FH4.js +6 -0
  1573. package/dist-browser/chunks/CWtqwiJb.js +1 -0
  1574. package/dist-browser/chunks/CX2yvOMR.js +32 -0
  1575. package/dist-browser/chunks/CXYvZiC5.js +1 -0
  1576. package/dist-browser/chunks/CY2_o-A_.js +1 -0
  1577. package/dist-browser/chunks/CYD5IpHG.js +1 -0
  1578. package/dist-browser/chunks/CYFmo-2d.js +1 -0
  1579. package/dist-browser/chunks/CYzJaZmG.js +1 -0
  1580. package/dist-browser/chunks/CZng9q4s.js +1 -0
  1581. package/dist-browser/chunks/C_3LSlp_.js +1 -0
  1582. package/dist-browser/chunks/C_popvm5.js +1 -0
  1583. package/dist-browser/chunks/Ca2qCbBO.js +227 -0
  1584. package/dist-browser/chunks/CaayFmFc.js +68 -0
  1585. package/dist-browser/chunks/CagC9ufD.js +6 -0
  1586. package/dist-browser/chunks/CamHr2sm.js +9 -0
  1587. package/dist-browser/chunks/Caw9wDgF.js +1 -0
  1588. package/dist-browser/chunks/CbRyzWz3.js +1 -0
  1589. package/dist-browser/chunks/CcQz6dxG.js +68 -0
  1590. package/dist-browser/chunks/CcUHIKVc.js +1 -0
  1591. package/dist-browser/chunks/Cd20lYkt.js +23 -0
  1592. package/dist-browser/chunks/Cdj8C4sv.js +1 -0
  1593. package/dist-browser/chunks/CeWzMWwP.js +1 -0
  1594. package/dist-browser/chunks/Ceeo2sCz.js +1 -0
  1595. package/dist-browser/chunks/CerF2aP5.js +1 -0
  1596. package/dist-browser/chunks/Cew-kv76.js +1 -0
  1597. package/dist-browser/chunks/Cf1F89pD.js +1 -0
  1598. package/dist-browser/chunks/Cff8_5zr.js +1 -0
  1599. package/dist-browser/chunks/Cgy6G_V-.js +1 -0
  1600. package/dist-browser/chunks/ChAqhjhd.js +243 -0
  1601. package/dist-browser/chunks/Chg_Q8x6.js +1 -0
  1602. package/dist-browser/chunks/Chx9z6ee.js +3 -0
  1603. package/dist-browser/chunks/Ci0DiZOM.js +1 -0
  1604. package/dist-browser/chunks/CiD_XHlg.js +1 -0
  1605. package/dist-browser/chunks/CjL-uP84.js +1 -0
  1606. package/dist-browser/chunks/CjPBNVRF.js +2 -0
  1607. package/dist-browser/chunks/CjTILWD4.js +3 -0
  1608. package/dist-browser/chunks/CkmGh-87.js +1 -0
  1609. package/dist-browser/chunks/ClZqxSEX.js +1 -0
  1610. package/dist-browser/chunks/CluBrQDl.js +1 -0
  1611. package/dist-browser/chunks/Clzbw8hC.js +104 -0
  1612. package/dist-browser/chunks/CmEJbuVc.js +1 -0
  1613. package/dist-browser/chunks/CmlWyQpr.js +1 -0
  1614. package/dist-browser/chunks/Cnh5-qw-.js +10 -0
  1615. package/dist-browser/chunks/CnwbVRym.js +1 -0
  1616. package/dist-browser/chunks/Co55Z6b-.js +34 -0
  1617. package/dist-browser/chunks/CoqDcyee.js +1 -0
  1618. package/dist-browser/chunks/CorZBnkZ.js +71 -0
  1619. package/dist-browser/chunks/CpKf07f9.js +72 -0
  1620. package/dist-browser/chunks/CqXobSJH.js +82 -0
  1621. package/dist-browser/chunks/CqwcKTEN.js +1 -0
  1622. package/dist-browser/chunks/Cs23D-lk.js +18 -0
  1623. package/dist-browser/chunks/CsT20qOq.js +1 -0
  1624. package/dist-browser/chunks/CsTuUPUb.js +1 -0
  1625. package/dist-browser/chunks/CtCvKs-8.js +1 -0
  1626. package/dist-browser/chunks/CtpF73Mi.js +1 -0
  1627. package/dist-browser/chunks/CuHid4qh.js +1 -0
  1628. package/dist-browser/chunks/CuhwmTWw.js +2 -0
  1629. package/dist-browser/chunks/Cv31r4NA.js +1 -0
  1630. package/dist-browser/chunks/CvVTau-c.js +1 -0
  1631. package/dist-browser/chunks/Cvdyeg_0.js +1 -0
  1632. package/dist-browser/chunks/CvgsNxMb.js +1 -0
  1633. package/dist-browser/chunks/Cvk3fWJd.js +31 -0
  1634. package/dist-browser/chunks/Cvq_OonK.js +1 -0
  1635. package/dist-browser/chunks/Cvzg7xRz.js +1039 -0
  1636. package/dist-browser/chunks/CwPUhsCN.js +111 -0
  1637. package/dist-browser/chunks/CwTYnDSQ.js +1 -0
  1638. package/dist-browser/chunks/CwVb7sDh.js +1 -0
  1639. package/dist-browser/chunks/CwkwVzf9.js +1 -0
  1640. package/dist-browser/chunks/Cwsm87qt.js +1 -0
  1641. package/dist-browser/chunks/CwtYJaZ0.js +1 -0
  1642. package/dist-browser/chunks/CxBgnQIE.js +1 -0
  1643. package/dist-browser/chunks/CxRCGV_D.js +1 -0
  1644. package/dist-browser/chunks/CxW3h7EP.js +1 -0
  1645. package/dist-browser/chunks/CxdFFqFC.js +1 -0
  1646. package/dist-browser/chunks/Cxl6U4QM.js +1 -0
  1647. package/dist-browser/chunks/CxqqJceE.js +262 -0
  1648. package/dist-browser/chunks/CyUjhzls.js +1 -0
  1649. package/dist-browser/chunks/CzHZycAX.js +1 -0
  1650. package/dist-browser/chunks/CzVBHx3T.js +1 -0
  1651. package/dist-browser/chunks/D-J5r5vm.js +502 -0
  1652. package/dist-browser/chunks/D-ZRVGDk.js +1 -0
  1653. package/dist-browser/chunks/D10MTZ8f.js +1 -0
  1654. package/dist-browser/chunks/D1dFmEHc.js +82 -0
  1655. package/dist-browser/chunks/D2SJBO5U.js +1 -0
  1656. package/dist-browser/chunks/D2bDAUlP.js +1 -0
  1657. package/dist-browser/chunks/D2qpNyTi.js +1 -0
  1658. package/dist-browser/chunks/D3Fr6yvq.js +1 -0
  1659. package/dist-browser/chunks/D3_eaTYS.js +1 -0
  1660. package/dist-browser/chunks/D3lBoMMr.js +29 -0
  1661. package/dist-browser/chunks/D5CFWMVX.js +1 -0
  1662. package/dist-browser/chunks/D5Cj4ub7.js +1 -0
  1663. package/dist-browser/chunks/D5EJDMZ-.js +2 -0
  1664. package/dist-browser/chunks/D6E_gImS.js +1 -0
  1665. package/dist-browser/chunks/D6XXX9Ue.js +1 -0
  1666. package/dist-browser/chunks/D6fd1dZA.js +1 -0
  1667. package/dist-browser/chunks/D852BHwA.js +40 -0
  1668. package/dist-browser/chunks/D8inQ_yL.js +1 -0
  1669. package/dist-browser/chunks/D9XZ_4Ga.js +145 -0
  1670. package/dist-browser/chunks/D9dlo-Ln.js +1 -0
  1671. package/dist-browser/chunks/DAB0WqX0.js +1 -0
  1672. package/dist-browser/chunks/DAH2JXIW.js +1 -0
  1673. package/dist-browser/chunks/DAPFhXVb.js +22 -0
  1674. package/dist-browser/chunks/DAxE8pMD.js +45 -0
  1675. package/dist-browser/chunks/DBj6QGQs.js +1 -0
  1676. package/dist-browser/chunks/DC3L5U86.js +1 -0
  1677. package/dist-browser/chunks/DC9vc-0L.js +1 -0
  1678. package/dist-browser/chunks/DCJlJ3lv.js +1 -0
  1679. package/dist-browser/chunks/DCaQLeIq.js +1 -0
  1680. package/dist-browser/chunks/DCc-gTDg.js +1 -0
  1681. package/dist-browser/chunks/DD2V7Wxl.js +1 -0
  1682. package/dist-browser/chunks/DD6onItE.js +1 -0
  1683. package/dist-browser/chunks/DDLmvpjg.js +1 -0
  1684. package/dist-browser/chunks/DDRCiC_a.js +1 -0
  1685. package/dist-browser/chunks/DEW70SgN.js +1 -0
  1686. package/dist-browser/chunks/DEucxoKb.js +1 -0
  1687. package/dist-browser/chunks/DF6Qh6eu.js +1 -0
  1688. package/dist-browser/chunks/DFtj_qQf.js +63 -0
  1689. package/dist-browser/chunks/DG4h2xXm.js +45 -0
  1690. package/dist-browser/chunks/DGYxR7PN.js +26 -0
  1691. package/dist-browser/chunks/DGlba0EV.js +1 -0
  1692. package/dist-browser/chunks/DHOehIg0.js +30 -0
  1693. package/dist-browser/chunks/DHiTLWtz.js +1 -0
  1694. package/dist-browser/chunks/DIHxCXEJ.js +1 -0
  1695. package/dist-browser/chunks/DII2y8tL.js +546 -0
  1696. package/dist-browser/chunks/DIcTMzLD.js +31 -0
  1697. package/dist-browser/chunks/DImXrYb5.js +1 -0
  1698. package/dist-browser/chunks/DIvOsQJS.js +393 -0
  1699. package/dist-browser/chunks/DJCfJlBy.js +1 -0
  1700. package/dist-browser/chunks/DKnN7RH0.js +1 -0
  1701. package/dist-browser/chunks/DKrOx_1M.js +1 -0
  1702. package/dist-browser/chunks/DMcWzziy.js +1 -0
  1703. package/dist-browser/chunks/DMk6G0lv.js +1 -0
  1704. package/dist-browser/chunks/DMyNEYzI.js +1 -0
  1705. package/dist-browser/chunks/DN0xP1fa.js +1 -0
  1706. package/dist-browser/chunks/DNef-bWt.js +1 -0
  1707. package/dist-browser/chunks/DNhTxxCh.js +1 -0
  1708. package/dist-browser/chunks/DNoIqPE7.js +1 -0
  1709. package/dist-browser/chunks/DNsR67l1.js +3 -0
  1710. package/dist-browser/chunks/DOEmZHjx.js +1 -0
  1711. package/dist-browser/chunks/DOFYt5cj.js +1 -0
  1712. package/dist-browser/chunks/DOWMFTFl.js +38 -0
  1713. package/dist-browser/chunks/DOYycP3M.js +1 -0
  1714. package/dist-browser/chunks/DOidSPk5.js +1 -0
  1715. package/dist-browser/chunks/DOvE9vCY.js +97 -0
  1716. package/dist-browser/chunks/DOyIRes1.js +1 -0
  1717. package/dist-browser/chunks/DPIksCnG.js +41 -0
  1718. package/dist-browser/chunks/DPNgRv8u.js +1 -0
  1719. package/dist-browser/chunks/DPXctdFS.js +27 -0
  1720. package/dist-browser/chunks/DPnn0uIO.js +1 -0
  1721. package/dist-browser/chunks/DQ0A9BJI.js +1 -0
  1722. package/dist-browser/chunks/DQbqNpgw.js +1 -0
  1723. package/dist-browser/chunks/DQea7zxR.js +1 -0
  1724. package/dist-browser/chunks/DSMSQCrr.js +36 -0
  1725. package/dist-browser/chunks/DSp9shD_.js +1 -0
  1726. package/dist-browser/chunks/DT0rWxA4.js +1176 -0
  1727. package/dist-browser/chunks/DTtjHrtM.js +1 -0
  1728. package/dist-browser/chunks/DV53iZve.js +64 -0
  1729. package/dist-browser/chunks/DVAMQgZs.js +1 -0
  1730. package/dist-browser/chunks/DVcRBsZ0.js +69 -0
  1731. package/dist-browser/chunks/DVrViq4W.js +1 -0
  1732. package/dist-browser/chunks/DWe0PJKb.js +1 -0
  1733. package/dist-browser/chunks/DWgUahRJ.js +1 -0
  1734. package/dist-browser/chunks/DXJRs_pC.js +1 -0
  1735. package/dist-browser/chunks/DXq97sWO.js +1 -0
  1736. package/dist-browser/chunks/DXzwsPHQ.js +8 -0
  1737. package/dist-browser/chunks/DYoIHzIt.js +2 -0
  1738. package/dist-browser/chunks/DZJGj1NY.js +1 -0
  1739. package/dist-browser/chunks/DZYUBtK-.js +10 -0
  1740. package/dist-browser/chunks/DZmRZ_iP.js +1 -0
  1741. package/dist-browser/chunks/D_MQ9Xc9.js +1 -0
  1742. package/dist-browser/chunks/D_V_oqfi.js +1 -0
  1743. package/dist-browser/chunks/D_fJrOcA.js +1 -0
  1744. package/dist-browser/chunks/DaE8j1Mj.js +1 -0
  1745. package/dist-browser/chunks/DaNJDW05.js +120 -0
  1746. package/dist-browser/chunks/DaqOKjgV.js +2 -0
  1747. package/dist-browser/chunks/DbM1VGG0.js +1 -0
  1748. package/dist-browser/chunks/DbVolxbX.js +1 -0
  1749. package/dist-browser/chunks/Dd3Azzh1.js +102 -0
  1750. package/dist-browser/chunks/Dd_HZKyk.js +1 -0
  1751. package/dist-browser/chunks/DePrIwoT.js +1 -0
  1752. package/dist-browser/chunks/Df-3V4RI.js +1 -0
  1753. package/dist-browser/chunks/DfPCBWZC.js +35 -0
  1754. package/dist-browser/chunks/DfTjtDZE.js +1 -0
  1755. package/dist-browser/chunks/Dfdpy3ar.js +1 -0
  1756. package/dist-browser/chunks/DhQi6uM8.js +1 -0
  1757. package/dist-browser/chunks/Dhq0zrZC.js +131 -0
  1758. package/dist-browser/chunks/DhrQ_H4H.js +1 -0
  1759. package/dist-browser/chunks/Di27GzYt.js +1 -0
  1760. package/dist-browser/chunks/Di8-zyqt.js +1 -0
  1761. package/dist-browser/chunks/DifZdnzu.js +1 -0
  1762. package/dist-browser/chunks/DikvOXI-.js +1 -0
  1763. package/dist-browser/chunks/Dj3lr7h3.js +33 -0
  1764. package/dist-browser/chunks/Dj8ovMlo.js +1 -0
  1765. package/dist-browser/chunks/DjcMDPrm.js +67 -0
  1766. package/dist-browser/chunks/DkVVho_1.js +1 -0
  1767. package/dist-browser/chunks/Dkh1AfX5.js +1 -0
  1768. package/dist-browser/chunks/DkwGHqUD.js +1 -0
  1769. package/dist-browser/chunks/Dl96d5U7.js +1 -0
  1770. package/dist-browser/chunks/DlW29B4u.js +3 -0
  1771. package/dist-browser/chunks/DmSNe3jl.js +387 -0
  1772. package/dist-browser/chunks/DmxSxKXn.js +1 -0
  1773. package/dist-browser/chunks/DnFdLC2j.js +1 -0
  1774. package/dist-browser/chunks/DnUyDgmE.js +1 -0
  1775. package/dist-browser/chunks/DnvK0nWc.js +1 -0
  1776. package/dist-browser/chunks/DoEd4p-l.js +1 -0
  1777. package/dist-browser/chunks/DoX7pGYd.js +140 -0
  1778. package/dist-browser/chunks/Dp6fzsZG.js +1 -0
  1779. package/dist-browser/chunks/DpM23pTz.js +33 -0
  1780. package/dist-browser/chunks/DpZZtTTL.js +2 -0
  1781. package/dist-browser/chunks/DqAbaJTn.js +1 -0
  1782. package/dist-browser/chunks/DqMSA0q-.js +1 -0
  1783. package/dist-browser/chunks/DqNrCZSo.js +1 -0
  1784. package/dist-browser/chunks/DqP3aSvp.js +43 -0
  1785. package/dist-browser/chunks/Dqi6K18W.js +1 -0
  1786. package/dist-browser/chunks/DqqKpYoS.js +2 -0
  1787. package/dist-browser/chunks/Dqqmos-r.js +1 -0
  1788. package/dist-browser/chunks/Dr26QZ_C.js +1 -0
  1789. package/dist-browser/chunks/DrRp_OBG.js +1 -0
  1790. package/dist-browser/chunks/Ds0gQyON.js +1 -0
  1791. package/dist-browser/chunks/DsNI9SjT.js +1 -0
  1792. package/dist-browser/chunks/DskxWO57.js +1 -0
  1793. package/dist-browser/chunks/DspI2fym.js +33 -0
  1794. package/dist-browser/chunks/DtbRpC-a.js +2 -0
  1795. package/dist-browser/chunks/Dtc9u0hV.js +1 -0
  1796. package/dist-browser/chunks/DtdxxwYW.js +1 -0
  1797. package/dist-browser/chunks/Du2r_IDC.js +1 -0
  1798. package/dist-browser/chunks/DuiL5B5s.js +1 -0
  1799. package/dist-browser/chunks/DvMRww-v.js +1 -0
  1800. package/dist-browser/chunks/Dvzw_jou.js +1 -0
  1801. package/dist-browser/chunks/DwsXVYGF.js +1 -0
  1802. package/dist-browser/chunks/DxVZve2V.js +89 -0
  1803. package/dist-browser/chunks/Dy4Ev-pT.js +1 -0
  1804. package/dist-browser/chunks/DyGuOmo0.js +1 -0
  1805. package/dist-browser/chunks/DyXA-iwx.js +1 -0
  1806. package/dist-browser/chunks/Dypqlsev.js +1 -0
  1807. package/dist-browser/chunks/Dyqt3CuN.js +1 -0
  1808. package/dist-browser/chunks/DyxvzuFy.js +284 -0
  1809. package/dist-browser/chunks/DzMSiy_7.js +1 -0
  1810. package/dist-browser/chunks/DzaY1F1G.js +1 -0
  1811. package/dist-browser/chunks/EtRHumNJ.js +1 -0
  1812. package/dist-browser/chunks/FASUCRk-.js +3 -0
  1813. package/dist-browser/chunks/FeUl7sn8.js +1 -0
  1814. package/dist-browser/chunks/FjuaFAN8.js +25 -0
  1815. package/dist-browser/chunks/FsV9kMlK.js +1 -0
  1816. package/dist-browser/chunks/GB4zXBMC.js +1 -0
  1817. package/dist-browser/chunks/Guirowam.js +8 -0
  1818. package/dist-browser/chunks/HJHNBZzR.js +1 -0
  1819. package/dist-browser/chunks/HOXwa5Zi.js +1 -0
  1820. package/dist-browser/chunks/HhGGA2q1.js +1 -0
  1821. package/dist-browser/chunks/HjLsj9Wb.js +1 -0
  1822. package/dist-browser/chunks/ILniMPMQ.js +1 -0
  1823. package/dist-browser/chunks/IPgW5q-o.js +1 -0
  1824. package/dist-browser/chunks/IRJFdyYz.js +1 -0
  1825. package/dist-browser/chunks/J1EyHJSp.js +1 -0
  1826. package/dist-browser/chunks/JtVcQQeX.js +5 -0
  1827. package/dist-browser/chunks/KYZpoAyE.js +1 -0
  1828. package/dist-browser/chunks/KjHCb3-W.js +2 -0
  1829. package/dist-browser/chunks/Kp8JypHd.js +441 -0
  1830. package/dist-browser/chunks/Ku6I7UKh.js +1 -0
  1831. package/dist-browser/chunks/KzprlngN.js +1 -0
  1832. package/dist-browser/chunks/L5CwTQJI.js +4 -0
  1833. package/dist-browser/chunks/L9tCceA2.js +150 -0
  1834. package/dist-browser/chunks/L_tB79W_.js +1 -0
  1835. package/dist-browser/chunks/MDiJyUbk.js +1 -0
  1836. package/dist-browser/chunks/MaXgxQlM.js +1 -0
  1837. package/dist-browser/chunks/N5x7ZUws.js +1 -0
  1838. package/dist-browser/chunks/NZYk81nU.js +1 -0
  1839. package/dist-browser/chunks/Np7O_rbA.js +1 -0
  1840. package/dist-browser/chunks/Oo8Rc01u.js +1 -0
  1841. package/dist-browser/chunks/OtECxeEN.js +9 -0
  1842. package/dist-browser/chunks/OtOkABqS.js +158 -0
  1843. package/dist-browser/chunks/Oyc0qEPK.js +1 -0
  1844. package/dist-browser/chunks/PDPf8POY.js +1 -0
  1845. package/dist-browser/chunks/QRJE7tia.js +1 -0
  1846. package/dist-browser/chunks/Q_sagimg.js +1 -0
  1847. package/dist-browser/chunks/QgFqrot_.js +1 -0
  1848. package/dist-browser/chunks/QpPH2K9r.js +1 -0
  1849. package/dist-browser/chunks/R8vFmq4f.js +1 -0
  1850. package/dist-browser/chunks/RxUw8kPH.js +1 -0
  1851. package/dist-browser/chunks/SO6iJj34.js +1 -0
  1852. package/dist-browser/chunks/SWr9_u-k.js +13 -0
  1853. package/dist-browser/chunks/TQJJL2UK.js +27 -0
  1854. package/dist-browser/chunks/UE6Xi3ol.js +1 -0
  1855. package/dist-browser/chunks/VGXLiJ0S.js +1 -0
  1856. package/dist-browser/chunks/VMH7wDAk.js +1 -0
  1857. package/dist-browser/chunks/VwXcqbG4.js +23 -0
  1858. package/dist-browser/chunks/Wmd1pmNu.js +1 -0
  1859. package/dist-browser/chunks/XTdr3vkK.js +1 -0
  1860. package/dist-browser/chunks/XaLSS-X1.js +23 -0
  1861. package/dist-browser/chunks/XhPbWY7N.js +1 -0
  1862. package/dist-browser/chunks/Y4nknrnT.js +1 -0
  1863. package/dist-browser/chunks/Y9xF8jFn.js +23 -0
  1864. package/dist-browser/chunks/_-SUJuni.js +1 -0
  1865. package/dist-browser/chunks/_M7-qabf.js +101 -0
  1866. package/dist-browser/chunks/_qsNVwXW.js +1 -0
  1867. package/dist-browser/chunks/_vvwCLWQ.js +1 -0
  1868. package/dist-browser/chunks/b6V8XMYY.js +1 -0
  1869. package/dist-browser/chunks/bA3FB4mi.js +3 -0
  1870. package/dist-browser/chunks/bAf7cF9y.js +1 -0
  1871. package/dist-browser/chunks/bhrkTdEx.js +538 -0
  1872. package/dist-browser/chunks/dFGbvMHe.js +1 -0
  1873. package/dist-browser/chunks/dOIX3hJ7.js +1 -0
  1874. package/dist-browser/chunks/eUYPiZ2p.js +1 -0
  1875. package/dist-browser/chunks/eUiHGfWU.js +1 -0
  1876. package/dist-browser/chunks/f6_vnw-E.js +1 -0
  1877. package/dist-browser/chunks/fE2ZfJiX.js +1 -0
  1878. package/dist-browser/chunks/gZQtAM7h.js +2 -0
  1879. package/dist-browser/chunks/h8XD1xl-.js +1 -0
  1880. package/dist-browser/chunks/hEdm-zUW.js +1 -0
  1881. package/dist-browser/chunks/hWCYme74.js +1 -0
  1882. package/dist-browser/chunks/hfB064S0.js +1 -0
  1883. package/dist-browser/chunks/hlEBxUea.js +1 -0
  1884. package/dist-browser/chunks/j5sGo2Pt.js +1 -0
  1885. package/dist-browser/chunks/kG0ku-oF.js +1 -0
  1886. package/dist-browser/chunks/kLNROLfT.js +1 -0
  1887. package/dist-browser/chunks/kggDnku6.js +1 -0
  1888. package/dist-browser/chunks/klRtNUrN.js +1 -0
  1889. package/dist-browser/chunks/lOD1Gn8c.js +1 -0
  1890. package/dist-browser/chunks/lrh33Ko2.js +1 -0
  1891. package/dist-browser/chunks/mB6FoGFb.js +1 -0
  1892. package/dist-browser/chunks/msmucz6Z.js +1 -0
  1893. package/dist-browser/chunks/nEtJtbDE.js +1 -0
  1894. package/dist-browser/chunks/nvwS1LmH.js +1 -0
  1895. package/dist-browser/chunks/oqmnhzmi.js +2 -0
  1896. package/dist-browser/chunks/pICTBHHN.js +1 -0
  1897. package/dist-browser/chunks/pU4H1b3r.js +43 -0
  1898. package/dist-browser/chunks/qBpAlJSP.js +1 -0
  1899. package/dist-browser/chunks/qCjqID6v.js +1 -0
  1900. package/dist-browser/chunks/r-cfH8A5.js +1 -0
  1901. package/dist-browser/chunks/rgDalb_G.js +1 -0
  1902. package/dist-browser/chunks/rolldown-runtime-hePW80VL.js +1 -0
  1903. package/dist-browser/chunks/sdmDudQj.js +1 -0
  1904. package/dist-browser/chunks/shRf5cdU.js +1 -0
  1905. package/dist-browser/chunks/tvcsfh86.js +1 -0
  1906. package/dist-browser/chunks/tz7IArSg.js +1 -0
  1907. package/dist-browser/chunks/u--BrnjZ.js +1 -0
  1908. package/dist-browser/chunks/uBIymjUX.js +1 -0
  1909. package/dist-browser/chunks/uHO_HSNA.js +1 -0
  1910. package/dist-browser/chunks/uZz_bF7-.js +1 -0
  1911. package/dist-browser/chunks/uc0Y9KUA.js +1 -0
  1912. package/dist-browser/chunks/ud6upqGO.js +2 -0
  1913. package/dist-browser/chunks/udTuD3NU.js +1 -0
  1914. package/dist-browser/chunks/ul0Kb67V.js +38 -0
  1915. package/dist-browser/chunks/uq1wJ3hU.js +322 -0
  1916. package/dist-browser/chunks/vA_owFWw.js +1 -0
  1917. package/dist-browser/chunks/vgYSnL0k.js +1 -0
  1918. package/dist-browser/chunks/vjQO9b4G.js +1 -0
  1919. package/dist-browser/chunks/vm1kntVK.js +18 -0
  1920. package/dist-browser/chunks/vnMr9U1p.js +1 -0
  1921. package/dist-browser/chunks/vyik5ymL.js +1 -0
  1922. package/dist-browser/chunks/w2RB3fs9.js +1 -0
  1923. package/dist-browser/chunks/wmdxOiEL.js +1 -0
  1924. package/dist-browser/chunks/xtpWQ17d.js +27 -0
  1925. package/dist-browser/chunks/yRMgu4ay.js +3 -0
  1926. package/dist-browser/chunks/yYrq3lUc.js +42 -0
  1927. package/dist-browser/chunks/yieoIIce.js +1 -0
  1928. package/dist-browser/chunks/yzr1keSX.js +38 -0
  1929. package/dist-browser/chunks/z94mqM9o.js +1 -0
  1930. package/dist-browser/chunks/zSWKwMId.js +1 -0
  1931. package/dist-browser/importmap.json +1761 -0
  1932. package/dist-browser/koota/react.js +1 -0
  1933. package/dist-browser/koota.js +1 -0
  1934. package/dist-browser/postprocessing.js +1 -0
  1935. package/dist-browser/react/jsx-runtime.js +1 -0
  1936. package/dist-browser/react-dom/client.js +1 -0
  1937. package/dist-browser/react-dom.js +1 -0
  1938. package/dist-browser/react.js +1 -0
  1939. package/dist-browser/release.json +11655 -0
  1940. package/dist-browser/three/addons/Addons.js +1 -0
  1941. package/dist-browser/three/addons/animation/AnimationClipCreator.js +1 -0
  1942. package/dist-browser/three/addons/animation/CCDIKSolver.js +1 -0
  1943. package/dist-browser/three/addons/capabilities/WebGL.js +1 -0
  1944. package/dist-browser/three/addons/capabilities/WebGPU.js +1 -0
  1945. package/dist-browser/three/addons/controls/ArcballControls.js +1 -0
  1946. package/dist-browser/three/addons/controls/DragControls.js +1 -0
  1947. package/dist-browser/three/addons/controls/FirstPersonControls.js +1 -0
  1948. package/dist-browser/three/addons/controls/FlyControls.js +1 -0
  1949. package/dist-browser/three/addons/controls/MapControls.js +1 -0
  1950. package/dist-browser/three/addons/controls/OrbitControls.js +1 -0
  1951. package/dist-browser/three/addons/controls/PointerLockControls.js +1 -0
  1952. package/dist-browser/three/addons/controls/TrackballControls.js +1 -0
  1953. package/dist-browser/three/addons/controls/TransformControls.js +1 -0
  1954. package/dist-browser/three/addons/csm/CSM.js +1 -0
  1955. package/dist-browser/three/addons/csm/CSMFrustum.js +1 -0
  1956. package/dist-browser/three/addons/csm/CSMHelper.js +1 -0
  1957. package/dist-browser/three/addons/csm/CSMShader.js +1 -0
  1958. package/dist-browser/three/addons/csm/CSMShadowNode.js +1 -0
  1959. package/dist-browser/three/addons/curves/CurveExtras.js +1 -0
  1960. package/dist-browser/three/addons/curves/NURBSCurve.js +1 -0
  1961. package/dist-browser/three/addons/curves/NURBSSurface.js +1 -0
  1962. package/dist-browser/three/addons/curves/NURBSUtils.js +1 -0
  1963. package/dist-browser/three/addons/curves/NURBSVolume.js +1 -0
  1964. package/dist-browser/three/addons/effects/AnaglyphEffect.js +1 -0
  1965. package/dist-browser/three/addons/effects/AsciiEffect.js +1 -0
  1966. package/dist-browser/three/addons/effects/OutlineEffect.js +1 -0
  1967. package/dist-browser/three/addons/effects/ParallaxBarrierEffect.js +1 -0
  1968. package/dist-browser/three/addons/effects/StereoEffect.js +1 -0
  1969. package/dist-browser/three/addons/environments/ColorEnvironment.js +1 -0
  1970. package/dist-browser/three/addons/environments/DebugEnvironment.js +1 -0
  1971. package/dist-browser/three/addons/environments/RoomEnvironment.js +1 -0
  1972. package/dist-browser/three/addons/exporters/DRACOExporter.js +1 -0
  1973. package/dist-browser/three/addons/exporters/EXRExporter.js +1 -0
  1974. package/dist-browser/three/addons/exporters/GLTFExporter.js +1 -0
  1975. package/dist-browser/three/addons/exporters/KTX2Exporter.js +1 -0
  1976. package/dist-browser/three/addons/exporters/OBJExporter.js +1 -0
  1977. package/dist-browser/three/addons/exporters/PLYExporter.js +1 -0
  1978. package/dist-browser/three/addons/exporters/STLExporter.js +1 -0
  1979. package/dist-browser/three/addons/exporters/USDZExporter.js +1 -0
  1980. package/dist-browser/three/addons/generators/CityGenerator.js +1 -0
  1981. package/dist-browser/three/addons/generators/ForestGenerator.js +1 -0
  1982. package/dist-browser/three/addons/generators/TerrainGenerator.js +1 -0
  1983. package/dist-browser/three/addons/generators/TreeGenerator.js +1 -0
  1984. package/dist-browser/three/addons/generators/city/BenchGenerator.js +1 -0
  1985. package/dist-browser/three/addons/generators/city/CarGenerator.js +1 -0
  1986. package/dist-browser/three/addons/generators/city/CityGeneratorUtils.js +1 -0
  1987. package/dist-browser/three/addons/generators/city/HydrantGenerator.js +1 -0
  1988. package/dist-browser/three/addons/generators/city/InstancedMeshGenerator.js +1 -0
  1989. package/dist-browser/three/addons/generators/city/PersonGenerator.js +1 -0
  1990. package/dist-browser/three/addons/generators/city/SidewalkGenerator.js +1 -0
  1991. package/dist-browser/three/addons/generators/city/SkyscraperGenerator.js +1 -0
  1992. package/dist-browser/three/addons/generators/city/StreetTreeGenerator.js +1 -0
  1993. package/dist-browser/three/addons/generators/city/StreetlightGenerator.js +1 -0
  1994. package/dist-browser/three/addons/generators/city/TrafficlightGenerator.js +1 -0
  1995. package/dist-browser/three/addons/generators/city/TrashcanGenerator.js +1 -0
  1996. package/dist-browser/three/addons/geometries/BoxLineGeometry.js +1 -0
  1997. package/dist-browser/three/addons/geometries/ConvexGeometry.js +1 -0
  1998. package/dist-browser/three/addons/geometries/DecalGeometry.js +1 -0
  1999. package/dist-browser/three/addons/geometries/LoftGeometry.js +1 -0
  2000. package/dist-browser/three/addons/geometries/ParametricFunctions.js +1 -0
  2001. package/dist-browser/three/addons/geometries/ParametricGeometry.js +1 -0
  2002. package/dist-browser/three/addons/geometries/RoundedBoxGeometry.js +1 -0
  2003. package/dist-browser/three/addons/geometries/TeapotGeometry.js +1 -0
  2004. package/dist-browser/three/addons/geometries/TextGeometry.js +1 -0
  2005. package/dist-browser/three/addons/gpgpu/BitonicSort.js +1 -0
  2006. package/dist-browser/three/addons/gpgpu/CountingSort.js +1 -0
  2007. package/dist-browser/three/addons/helpers/AnimationPathHelper.js +1 -0
  2008. package/dist-browser/three/addons/helpers/LightProbeGridHelper.js +1 -0
  2009. package/dist-browser/three/addons/helpers/LightProbeGridHelperWebGL.js +80 -0
  2010. package/dist-browser/three/addons/helpers/LightProbeHelper.js +1 -0
  2011. package/dist-browser/three/addons/helpers/LightProbeHelperGPU.js +1 -0
  2012. package/dist-browser/three/addons/helpers/OctreeHelper.js +1 -0
  2013. package/dist-browser/three/addons/helpers/PositionalAudioHelper.js +1 -0
  2014. package/dist-browser/three/addons/helpers/RapierHelper.js +1 -0
  2015. package/dist-browser/three/addons/helpers/RectAreaLightHelper.js +1 -0
  2016. package/dist-browser/three/addons/helpers/TextureHelper.js +1 -0
  2017. package/dist-browser/three/addons/helpers/TextureHelperGPU.js +1 -0
  2018. package/dist-browser/three/addons/helpers/VertexNormalsHelper.js +1 -0
  2019. package/dist-browser/three/addons/helpers/VertexTangentsHelper.js +1 -0
  2020. package/dist-browser/three/addons/helpers/ViewHelper.js +1 -0
  2021. package/dist-browser/three/addons/inspector/Extension.js +1 -0
  2022. package/dist-browser/three/addons/inspector/Inspector.js +1 -0
  2023. package/dist-browser/three/addons/inspector/RendererInspector.js +1 -0
  2024. package/dist-browser/three/addons/inspector/extensions/color-grading/ColorGrading.js +1 -0
  2025. package/dist-browser/three/addons/inspector/extensions/color-grading/ColorWheel.js +1 -0
  2026. package/dist-browser/three/addons/inspector/extensions/color-grading/CurveEditor.js +1 -0
  2027. package/dist-browser/three/addons/inspector/extensions/color-grading/LUT3DStyle.js +1 -0
  2028. package/dist-browser/three/addons/inspector/extensions/color-grading/LUTMath.js +1 -0
  2029. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/BrightnessModule.js +1 -0
  2030. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/ColorWheelModule.js +1 -0
  2031. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/ContrastModule.js +1 -0
  2032. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/CurvesModule.js +1 -0
  2033. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/ExposureHueModule.js +1 -0
  2034. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/ExposureModule.js +1 -0
  2035. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/HueModule.js +1 -0
  2036. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/ImportedCubeModule.js +1 -0
  2037. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/Module.js +1 -0
  2038. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/OutputModule.js +1 -0
  2039. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/RendererModule.js +1 -0
  2040. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/SatVibranceModule.js +1 -0
  2041. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/SaturationModule.js +1 -0
  2042. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/VibranceModule.js +1 -0
  2043. package/dist-browser/three/addons/inspector/extensions/color-grading/modules/WhiteBalanceModule.js +1 -0
  2044. package/dist-browser/three/addons/inspector/extensions/tsl-graph/TSLGraphEditor.js +1 -0
  2045. package/dist-browser/three/addons/inspector/extensions/tsl-graph/TSLGraphLoader.js +1 -0
  2046. package/dist-browser/three/addons/inspector/tabs/Console.js +1 -0
  2047. package/dist-browser/three/addons/inspector/tabs/Memory.js +1 -0
  2048. package/dist-browser/three/addons/inspector/tabs/Parameters.js +1 -0
  2049. package/dist-browser/three/addons/inspector/tabs/Performance.js +1 -0
  2050. package/dist-browser/three/addons/inspector/tabs/Settings.js +1 -0
  2051. package/dist-browser/three/addons/inspector/tabs/Timeline.js +1 -0
  2052. package/dist-browser/three/addons/inspector/tabs/Viewer.js +1 -0
  2053. package/dist-browser/three/addons/inspector/ui/Graph.js +1 -0
  2054. package/dist-browser/three/addons/inspector/ui/Item.js +1 -0
  2055. package/dist-browser/three/addons/inspector/ui/List.js +1 -0
  2056. package/dist-browser/three/addons/inspector/ui/Profiler.js +1 -0
  2057. package/dist-browser/three/addons/inspector/ui/Style.js +1 -0
  2058. package/dist-browser/three/addons/inspector/ui/Tab.js +1 -0
  2059. package/dist-browser/three/addons/inspector/ui/Values.js +1 -0
  2060. package/dist-browser/three/addons/inspector/ui/utils.js +1 -0
  2061. package/dist-browser/three/addons/interaction/InteractionManager.js +1 -0
  2062. package/dist-browser/three/addons/interactive/HTMLMesh.js +1 -0
  2063. package/dist-browser/three/addons/interactive/InteractiveGroup.js +1 -0
  2064. package/dist-browser/three/addons/interactive/SelectionBox.js +1 -0
  2065. package/dist-browser/three/addons/interactive/SelectionHelper.js +1 -0
  2066. package/dist-browser/three/addons/libs/chevrotain.module.min.js +1 -0
  2067. package/dist-browser/three/addons/libs/demuxer_mp4.js +1 -0
  2068. package/dist-browser/three/addons/libs/fflate.module.js +1 -0
  2069. package/dist-browser/three/addons/libs/ktx-parse.module.js +1 -0
  2070. package/dist-browser/three/addons/libs/lil-gui.module.min.js +4 -0
  2071. package/dist-browser/three/addons/libs/meshopt_clusterizer.module.js +1 -0
  2072. package/dist-browser/three/addons/libs/meshopt_decoder.module.js +1 -0
  2073. package/dist-browser/three/addons/libs/meshopt_simplifier.module.js +1 -0
  2074. package/dist-browser/three/addons/libs/mikktspace.module.js +1 -0
  2075. package/dist-browser/three/addons/libs/motion-controllers.module.js +1 -0
  2076. package/dist-browser/three/addons/libs/potpack.module.js +1 -0
  2077. package/dist-browser/three/addons/libs/stats.module.js +1 -0
  2078. package/dist-browser/three/addons/libs/surfaceNet.js +1 -0
  2079. package/dist-browser/three/addons/libs/tween.module.js +1 -0
  2080. package/dist-browser/three/addons/libs/utif.module.js +1 -0
  2081. package/dist-browser/three/addons/libs/zstddec.module.js +1 -0
  2082. package/dist-browser/three/addons/lighting/ClusteredLighting.js +1 -0
  2083. package/dist-browser/three/addons/lighting/DynamicLighting.js +1 -0
  2084. package/dist-browser/three/addons/lighting/LightProbeGrid.js +1 -0
  2085. package/dist-browser/three/addons/lighting/LightProbeGridUtils.js +1 -0
  2086. package/dist-browser/three/addons/lighting/LightProbeGridWebGL.js +135 -0
  2087. package/dist-browser/three/addons/lighting/vxgi/VXGIConeTracer.js +1 -0
  2088. package/dist-browser/three/addons/lighting/vxgi/VXGINode.js +1 -0
  2089. package/dist-browser/three/addons/lighting/vxgi/VXGISceneCollector.js +1 -0
  2090. package/dist-browser/three/addons/lighting/vxgi/VXGIVolume.js +1 -0
  2091. package/dist-browser/three/addons/lights/LightProbeGenerator.js +1 -0
  2092. package/dist-browser/three/addons/lights/RectAreaLightTexturesLib.js +1 -0
  2093. package/dist-browser/three/addons/lights/RectAreaLightUniformsLib.js +1 -0
  2094. package/dist-browser/three/addons/lights/SunLight.js +1 -0
  2095. package/dist-browser/three/addons/lights/SunLightNode.js +1 -0
  2096. package/dist-browser/three/addons/lights/SunLightShadow.js +1 -0
  2097. package/dist-browser/three/addons/lights/SunShadowNode.js +1 -0
  2098. package/dist-browser/three/addons/lines/Line2.js +1 -0
  2099. package/dist-browser/three/addons/lines/LineGeometry.js +1 -0
  2100. package/dist-browser/three/addons/lines/LineMaterial.js +1 -0
  2101. package/dist-browser/three/addons/lines/LineSegments2.js +1 -0
  2102. package/dist-browser/three/addons/lines/LineSegmentsGeometry.js +1 -0
  2103. package/dist-browser/three/addons/lines/Wireframe.js +1 -0
  2104. package/dist-browser/three/addons/lines/WireframeGeometry2.js +1 -0
  2105. package/dist-browser/three/addons/lines/webgpu/Line2.js +1 -0
  2106. package/dist-browser/three/addons/lines/webgpu/LineSegments2.js +1 -0
  2107. package/dist-browser/three/addons/lines/webgpu/Wireframe.js +1 -0
  2108. package/dist-browser/three/addons/loaders/3DMLoader.js +1 -0
  2109. package/dist-browser/three/addons/loaders/3MFLoader.js +1 -0
  2110. package/dist-browser/three/addons/loaders/AMFLoader.js +1 -0
  2111. package/dist-browser/three/addons/loaders/BVHLoader.js +1 -0
  2112. package/dist-browser/three/addons/loaders/ColladaLoader.js +1 -0
  2113. package/dist-browser/three/addons/loaders/DDSLoader.js +1 -0
  2114. package/dist-browser/three/addons/loaders/DRACOLoader.js +1 -0
  2115. package/dist-browser/three/addons/loaders/EXRLoader.js +1 -0
  2116. package/dist-browser/three/addons/loaders/FBXLoader.js +1 -0
  2117. package/dist-browser/three/addons/loaders/FontLoader.js +1 -0
  2118. package/dist-browser/three/addons/loaders/GCodeLoader.js +1 -0
  2119. package/dist-browser/three/addons/loaders/GLTFGaussianSplatLoaderExtension.js +1 -0
  2120. package/dist-browser/three/addons/loaders/GLTFLoader.js +1 -0
  2121. package/dist-browser/three/addons/loaders/GaussianSplatPLYLoader.js +1 -0
  2122. package/dist-browser/three/addons/loaders/HDRCubeTextureLoader.js +1 -0
  2123. package/dist-browser/three/addons/loaders/HDRLoader.js +1 -0
  2124. package/dist-browser/three/addons/loaders/IESLoader.js +1 -0
  2125. package/dist-browser/three/addons/loaders/KMZLoader.js +1 -0
  2126. package/dist-browser/three/addons/loaders/KSPLATLoader.js +1 -0
  2127. package/dist-browser/three/addons/loaders/KTX2Loader.js +1 -0
  2128. package/dist-browser/three/addons/loaders/KTXLoader.js +1 -0
  2129. package/dist-browser/three/addons/loaders/LDrawLoader.js +1 -0
  2130. package/dist-browser/three/addons/loaders/LUT3dlLoader.js +1 -0
  2131. package/dist-browser/three/addons/loaders/LUTCubeLoader.js +1 -0
  2132. package/dist-browser/three/addons/loaders/LUTImageLoader.js +1 -0
  2133. package/dist-browser/three/addons/loaders/LWOLoader.js +1 -0
  2134. package/dist-browser/three/addons/loaders/MD2Loader.js +1 -0
  2135. package/dist-browser/three/addons/loaders/MDDLoader.js +1 -0
  2136. package/dist-browser/three/addons/loaders/MTLLoader.js +1 -0
  2137. package/dist-browser/three/addons/loaders/MaterialXLoader.js +1 -0
  2138. package/dist-browser/three/addons/loaders/NRRDLoader.js +1 -0
  2139. package/dist-browser/three/addons/loaders/OBJLoader.js +1 -0
  2140. package/dist-browser/three/addons/loaders/PCDLoader.js +1 -0
  2141. package/dist-browser/three/addons/loaders/PDBLoader.js +1 -0
  2142. package/dist-browser/three/addons/loaders/PLYLoader.js +1 -0
  2143. package/dist-browser/three/addons/loaders/PVRLoader.js +1 -0
  2144. package/dist-browser/three/addons/loaders/RGBELoader.js +1 -0
  2145. package/dist-browser/three/addons/loaders/SPLATLoader.js +1 -0
  2146. package/dist-browser/three/addons/loaders/SPZLoader.js +1 -0
  2147. package/dist-browser/three/addons/loaders/STLLoader.js +1 -0
  2148. package/dist-browser/three/addons/loaders/SVGLoader.js +1 -0
  2149. package/dist-browser/three/addons/loaders/TDSLoader.js +1 -0
  2150. package/dist-browser/three/addons/loaders/TGALoader.js +1 -0
  2151. package/dist-browser/three/addons/loaders/TIFFLoader.js +1 -0
  2152. package/dist-browser/three/addons/loaders/TTFLoader.js +1 -0
  2153. package/dist-browser/three/addons/loaders/USDLoader.js +1 -0
  2154. package/dist-browser/three/addons/loaders/USDZLoader.js +1 -0
  2155. package/dist-browser/three/addons/loaders/UltraHDRLoader.js +1 -0
  2156. package/dist-browser/three/addons/loaders/VOXLoader.js +1 -0
  2157. package/dist-browser/three/addons/loaders/VRMLLoader.js +1 -0
  2158. package/dist-browser/three/addons/loaders/VTKLoader.js +1 -0
  2159. package/dist-browser/three/addons/loaders/XYZLoader.js +1 -0
  2160. package/dist-browser/three/addons/loaders/collada/ColladaComposer.js +1 -0
  2161. package/dist-browser/three/addons/loaders/collada/ColladaParser.js +1 -0
  2162. package/dist-browser/three/addons/loaders/lwo/IFFParser.js +1 -0
  2163. package/dist-browser/three/addons/loaders/lwo/LWO2Parser.js +1 -0
  2164. package/dist-browser/three/addons/loaders/lwo/LWO3Parser.js +1 -0
  2165. package/dist-browser/three/addons/loaders/materialx/MaterialXArchive.js +1 -0
  2166. package/dist-browser/three/addons/loaders/materialx/MaterialXDocument.js +1 -0
  2167. package/dist-browser/three/addons/loaders/materialx/MaterialXHextile.js +1 -0
  2168. package/dist-browser/three/addons/loaders/materialx/MaterialXInterfaceValidation.js +1 -0
  2169. package/dist-browser/three/addons/loaders/materialx/MaterialXLog.js +1 -0
  2170. package/dist-browser/three/addons/loaders/materialx/MaterialXNodeInterfaceRegistry.js +1 -0
  2171. package/dist-browser/three/addons/loaders/materialx/MaterialXNodeLibrary.js +1 -0
  2172. package/dist-browser/three/addons/loaders/materialx/MaterialXSurfaceMappings.js +1 -0
  2173. package/dist-browser/three/addons/loaders/materialx/MaterialXUtils.js +1 -0
  2174. package/dist-browser/three/addons/loaders/materialx/compile/MaterialXCompileRegistry.js +1 -0
  2175. package/dist-browser/three/addons/loaders/materialx/parse/MaterialXParser.js +1 -0
  2176. package/dist-browser/three/addons/loaders/usd/USDAParser.js +1 -0
  2177. package/dist-browser/three/addons/loaders/usd/USDCParser.js +1 -0
  2178. package/dist-browser/three/addons/loaders/usd/USDComposer.js +1 -0
  2179. package/dist-browser/three/addons/materials/LDrawConditionalLineMaterial.js +1 -0
  2180. package/dist-browser/three/addons/materials/LDrawConditionalLineNodeMaterial.js +1 -0
  2181. package/dist-browser/three/addons/materials/WoodNodeMaterial.js +42 -0
  2182. package/dist-browser/three/addons/math/Capsule.js +1 -0
  2183. package/dist-browser/three/addons/math/ColorConverter.js +1 -0
  2184. package/dist-browser/three/addons/math/ColorSpaces.js +1 -0
  2185. package/dist-browser/three/addons/math/ConvexHull.js +1 -0
  2186. package/dist-browser/three/addons/math/ImprovedNoise.js +1 -0
  2187. package/dist-browser/three/addons/math/Lut.js +1 -0
  2188. package/dist-browser/three/addons/math/MeshSurfaceSampler.js +1 -0
  2189. package/dist-browser/three/addons/math/OBB.js +1 -0
  2190. package/dist-browser/three/addons/math/Octree.js +1 -0
  2191. package/dist-browser/three/addons/math/SimplexNoise.js +1 -0
  2192. package/dist-browser/three/addons/misc/ConvexObjectBreaker.js +1 -0
  2193. package/dist-browser/three/addons/misc/GPUComputationRenderer.js +1 -0
  2194. package/dist-browser/three/addons/misc/Gyroscope.js +1 -0
  2195. package/dist-browser/three/addons/misc/MD2Character.js +1 -0
  2196. package/dist-browser/three/addons/misc/MD2CharacterComplex.js +1 -0
  2197. package/dist-browser/three/addons/misc/MorphAnimMesh.js +1 -0
  2198. package/dist-browser/three/addons/misc/MorphBlendMesh.js +1 -0
  2199. package/dist-browser/three/addons/misc/ProgressiveLightMap.js +1 -0
  2200. package/dist-browser/three/addons/misc/ProgressiveLightMapGPU.js +1 -0
  2201. package/dist-browser/three/addons/misc/RollerCoaster.js +1 -0
  2202. package/dist-browser/three/addons/misc/Sculptor.js +1 -0
  2203. package/dist-browser/three/addons/misc/SculptorMesh.js +1 -0
  2204. package/dist-browser/three/addons/misc/SculptorTools.js +1 -0
  2205. package/dist-browser/three/addons/misc/SculptorUtils.js +1 -0
  2206. package/dist-browser/three/addons/misc/TileCreasedNormalsPlugin.js +1 -0
  2207. package/dist-browser/three/addons/misc/TubePainter.js +1 -0
  2208. package/dist-browser/three/addons/misc/Volume.js +1 -0
  2209. package/dist-browser/three/addons/misc/VolumeSlice.js +1 -0
  2210. package/dist-browser/three/addons/modifiers/CurveModifier.js +1 -0
  2211. package/dist-browser/three/addons/modifiers/CurveModifierGPU.js +1 -0
  2212. package/dist-browser/three/addons/modifiers/EdgeSplitModifier.js +1 -0
  2213. package/dist-browser/three/addons/modifiers/SimplifyModifier.js +1 -0
  2214. package/dist-browser/three/addons/modifiers/TessellateModifier.js +1 -0
  2215. package/dist-browser/three/addons/objects/GaussianSplat.js +1 -0
  2216. package/dist-browser/three/addons/objects/GroundedSkybox.js +1 -0
  2217. package/dist-browser/three/addons/objects/Lensflare.js +1 -0
  2218. package/dist-browser/three/addons/objects/LensflareMesh.js +1 -0
  2219. package/dist-browser/three/addons/objects/MarchingCubes.js +1 -0
  2220. package/dist-browser/three/addons/objects/Reflector.js +1 -0
  2221. package/dist-browser/three/addons/objects/ReflectorForSSRPass.js +1 -0
  2222. package/dist-browser/three/addons/objects/Refractor.js +1 -0
  2223. package/dist-browser/three/addons/objects/ShadowMesh.js +1 -0
  2224. package/dist-browser/three/addons/objects/Sky.js +1 -0
  2225. package/dist-browser/three/addons/objects/SkyMesh.js +1 -0
  2226. package/dist-browser/three/addons/objects/Water.js +1 -0
  2227. package/dist-browser/three/addons/objects/Water2.js +1 -0
  2228. package/dist-browser/three/addons/objects/Water2Mesh.js +1 -0
  2229. package/dist-browser/three/addons/objects/WaterMesh.js +1 -0
  2230. package/dist-browser/three/addons/offscreen/jank.js +1 -0
  2231. package/dist-browser/three/addons/offscreen/offscreen.js +0 -0
  2232. package/dist-browser/three/addons/offscreen/scene.js +1 -0
  2233. package/dist-browser/three/addons/physics/AmmoPhysics.js +1 -0
  2234. package/dist-browser/three/addons/physics/JoltPhysics.js +1 -0
  2235. package/dist-browser/three/addons/physics/RapierPhysics.js +1 -0
  2236. package/dist-browser/three/addons/postprocessing/AfterimagePass.js +1 -0
  2237. package/dist-browser/three/addons/postprocessing/BloomPass.js +1 -0
  2238. package/dist-browser/three/addons/postprocessing/BokehPass.js +1 -0
  2239. package/dist-browser/three/addons/postprocessing/ClearPass.js +1 -0
  2240. package/dist-browser/three/addons/postprocessing/CubeTexturePass.js +1 -0
  2241. package/dist-browser/three/addons/postprocessing/DotScreenPass.js +1 -0
  2242. package/dist-browser/three/addons/postprocessing/EffectComposer.js +1 -0
  2243. package/dist-browser/three/addons/postprocessing/FXAAPass.js +1 -0
  2244. package/dist-browser/three/addons/postprocessing/FilmPass.js +1 -0
  2245. package/dist-browser/three/addons/postprocessing/GTAOPass.js +1 -0
  2246. package/dist-browser/three/addons/postprocessing/GlitchPass.js +1 -0
  2247. package/dist-browser/three/addons/postprocessing/HalftonePass.js +1 -0
  2248. package/dist-browser/three/addons/postprocessing/LUTPass.js +1 -0
  2249. package/dist-browser/three/addons/postprocessing/MaskPass.js +1 -0
  2250. package/dist-browser/three/addons/postprocessing/OutlinePass.js +1 -0
  2251. package/dist-browser/three/addons/postprocessing/OutputPass.js +1 -0
  2252. package/dist-browser/three/addons/postprocessing/Pass.js +1 -0
  2253. package/dist-browser/three/addons/postprocessing/RenderPass.js +1 -0
  2254. package/dist-browser/three/addons/postprocessing/RenderPixelatedPass.js +1 -0
  2255. package/dist-browser/three/addons/postprocessing/RenderTransitionPass.js +1 -0
  2256. package/dist-browser/three/addons/postprocessing/SAOPass.js +1 -0
  2257. package/dist-browser/three/addons/postprocessing/SMAAPass.js +1 -0
  2258. package/dist-browser/three/addons/postprocessing/SSAARenderPass.js +1 -0
  2259. package/dist-browser/three/addons/postprocessing/SSAOPass.js +1 -0
  2260. package/dist-browser/three/addons/postprocessing/SSRPass.js +1 -0
  2261. package/dist-browser/three/addons/postprocessing/SavePass.js +1 -0
  2262. package/dist-browser/three/addons/postprocessing/ShaderPass.js +1 -0
  2263. package/dist-browser/three/addons/postprocessing/TAARenderPass.js +1 -0
  2264. package/dist-browser/three/addons/postprocessing/TexturePass.js +1 -0
  2265. package/dist-browser/three/addons/postprocessing/UnrealBloomPass.js +1 -0
  2266. package/dist-browser/three/addons/renderers/CSS2DRenderer.js +1 -0
  2267. package/dist-browser/three/addons/renderers/CSS3DRenderer.js +1 -0
  2268. package/dist-browser/three/addons/renderers/Projector.js +1 -0
  2269. package/dist-browser/three/addons/renderers/SVGRenderer.js +1 -0
  2270. package/dist-browser/three/addons/shaders/ACESFilmicToneMappingShader.js +1 -0
  2271. package/dist-browser/three/addons/shaders/AfterimageShader.js +1 -0
  2272. package/dist-browser/three/addons/shaders/BasicShader.js +1 -0
  2273. package/dist-browser/three/addons/shaders/BleachBypassShader.js +1 -0
  2274. package/dist-browser/three/addons/shaders/BlendShader.js +1 -0
  2275. package/dist-browser/three/addons/shaders/BokehShader.js +1 -0
  2276. package/dist-browser/three/addons/shaders/BokehShader2.js +1 -0
  2277. package/dist-browser/three/addons/shaders/BrightnessContrastShader.js +1 -0
  2278. package/dist-browser/three/addons/shaders/ColorCorrectionShader.js +1 -0
  2279. package/dist-browser/three/addons/shaders/ColorifyShader.js +1 -0
  2280. package/dist-browser/three/addons/shaders/ConvolutionShader.js +1 -0
  2281. package/dist-browser/three/addons/shaders/CopyShader.js +1 -0
  2282. package/dist-browser/three/addons/shaders/DOFMipMapShader.js +1 -0
  2283. package/dist-browser/three/addons/shaders/DepthLimitedBlurShader.js +1 -0
  2284. package/dist-browser/three/addons/shaders/DigitalGlitch.js +1 -0
  2285. package/dist-browser/three/addons/shaders/DotScreenShader.js +1 -0
  2286. package/dist-browser/three/addons/shaders/ExposureShader.js +1 -0
  2287. package/dist-browser/three/addons/shaders/FXAAShader.js +1 -0
  2288. package/dist-browser/three/addons/shaders/FilmShader.js +1 -0
  2289. package/dist-browser/three/addons/shaders/FocusShader.js +1 -0
  2290. package/dist-browser/three/addons/shaders/FreiChenShader.js +1 -0
  2291. package/dist-browser/three/addons/shaders/GTAOShader.js +1 -0
  2292. package/dist-browser/three/addons/shaders/GammaCorrectionShader.js +1 -0
  2293. package/dist-browser/three/addons/shaders/HalftoneShader.js +1 -0
  2294. package/dist-browser/three/addons/shaders/HorizontalBlurShader.js +1 -0
  2295. package/dist-browser/three/addons/shaders/HorizontalTiltShiftShader.js +1 -0
  2296. package/dist-browser/three/addons/shaders/HueSaturationShader.js +1 -0
  2297. package/dist-browser/three/addons/shaders/KaleidoShader.js +1 -0
  2298. package/dist-browser/three/addons/shaders/LuminosityHighPassShader.js +1 -0
  2299. package/dist-browser/three/addons/shaders/LuminosityShader.js +1 -0
  2300. package/dist-browser/three/addons/shaders/MirrorShader.js +1 -0
  2301. package/dist-browser/three/addons/shaders/NormalMapShader.js +1 -0
  2302. package/dist-browser/three/addons/shaders/OutputShader.js +1 -0
  2303. package/dist-browser/three/addons/shaders/PoissonDenoiseShader.js +1 -0
  2304. package/dist-browser/three/addons/shaders/RGBShiftShader.js +1 -0
  2305. package/dist-browser/three/addons/shaders/SAOShader.js +1 -0
  2306. package/dist-browser/three/addons/shaders/SMAAShader.js +1 -0
  2307. package/dist-browser/three/addons/shaders/SSAOShader.js +1 -0
  2308. package/dist-browser/three/addons/shaders/SSRShader.js +1 -0
  2309. package/dist-browser/three/addons/shaders/SepiaShader.js +1 -0
  2310. package/dist-browser/three/addons/shaders/SobelOperatorShader.js +1 -0
  2311. package/dist-browser/three/addons/shaders/SubsurfaceScatteringShader.js +1 -0
  2312. package/dist-browser/three/addons/shaders/TechnicolorShader.js +1 -0
  2313. package/dist-browser/three/addons/shaders/ToonShader.js +1 -0
  2314. package/dist-browser/three/addons/shaders/TriangleBlurShader.js +1 -0
  2315. package/dist-browser/three/addons/shaders/UnpackDepthRGBAShader.js +1 -0
  2316. package/dist-browser/three/addons/shaders/VelocityShader.js +1 -0
  2317. package/dist-browser/three/addons/shaders/VerticalBlurShader.js +1 -0
  2318. package/dist-browser/three/addons/shaders/VerticalTiltShiftShader.js +1 -0
  2319. package/dist-browser/three/addons/shaders/VignetteShader.js +1 -0
  2320. package/dist-browser/three/addons/shaders/VolumeShader.js +1 -0
  2321. package/dist-browser/three/addons/shaders/WaterRefractionShader.js +1 -0
  2322. package/dist-browser/three/addons/textures/FlakesTexture.js +1 -0
  2323. package/dist-browser/three/addons/transpiler/AST.js +1 -0
  2324. package/dist-browser/three/addons/transpiler/GLSLDecoder.js +1 -0
  2325. package/dist-browser/three/addons/transpiler/Linker.js +1 -0
  2326. package/dist-browser/three/addons/transpiler/ShaderToyDecoder.js +1 -0
  2327. package/dist-browser/three/addons/transpiler/TSLEncoder.js +55 -0
  2328. package/dist-browser/three/addons/transpiler/Transpiler.js +1 -0
  2329. package/dist-browser/three/addons/transpiler/TranspilerUtils.js +1 -0
  2330. package/dist-browser/three/addons/transpiler/WGSLEncoder.js +30 -0
  2331. package/dist-browser/three/addons/tsl/WebGLNodesHandler.js +1 -0
  2332. package/dist-browser/three/addons/tsl/display/AfterImageNode.js +1 -0
  2333. package/dist-browser/three/addons/tsl/display/AnaglyphPassNode.js +1 -0
  2334. package/dist-browser/three/addons/tsl/display/BilateralBlurNode.js +1 -0
  2335. package/dist-browser/three/addons/tsl/display/BleachBypass.js +1 -0
  2336. package/dist-browser/three/addons/tsl/display/BloomNode.js +1 -0
  2337. package/dist-browser/three/addons/tsl/display/CRT.js +1 -0
  2338. package/dist-browser/three/addons/tsl/display/ChromaticAberrationNode.js +1 -0
  2339. package/dist-browser/three/addons/tsl/display/DenoiseNode.js +1 -0
  2340. package/dist-browser/three/addons/tsl/display/DepthOfFieldNode.js +1 -0
  2341. package/dist-browser/three/addons/tsl/display/DotScreenNode.js +1 -0
  2342. package/dist-browser/three/addons/tsl/display/FSR1Node.js +1 -0
  2343. package/dist-browser/three/addons/tsl/display/FXAANode.js +1 -0
  2344. package/dist-browser/three/addons/tsl/display/FilmNode.js +1 -0
  2345. package/dist-browser/three/addons/tsl/display/GTAONode.js +1 -0
  2346. package/dist-browser/three/addons/tsl/display/GaussianBlurNode.js +1 -0
  2347. package/dist-browser/three/addons/tsl/display/GodraysNode.js +1 -0
  2348. package/dist-browser/three/addons/tsl/display/ImportanceSampledEnvironment.js +1 -0
  2349. package/dist-browser/three/addons/tsl/display/LensflareNode.js +1 -0
  2350. package/dist-browser/three/addons/tsl/display/Lut3DNode.js +1 -0
  2351. package/dist-browser/three/addons/tsl/display/MotionBlur.js +1 -0
  2352. package/dist-browser/three/addons/tsl/display/OITPassNode.js +1 -0
  2353. package/dist-browser/three/addons/tsl/display/OutlineNode.js +1 -0
  2354. package/dist-browser/three/addons/tsl/display/ParallaxBarrierPassNode.js +1 -0
  2355. package/dist-browser/three/addons/tsl/display/PixelationPassNode.js +1 -0
  2356. package/dist-browser/three/addons/tsl/display/RGBShiftNode.js +1 -0
  2357. package/dist-browser/three/addons/tsl/display/RecurrentDenoiseNode.js +1 -0
  2358. package/dist-browser/three/addons/tsl/display/RetroPassNode.js +1 -0
  2359. package/dist-browser/three/addons/tsl/display/SMAANode.js +1 -0
  2360. package/dist-browser/three/addons/tsl/display/SSAAPassNode.js +1 -0
  2361. package/dist-browser/three/addons/tsl/display/SSAONode.js +1 -0
  2362. package/dist-browser/three/addons/tsl/display/SSGINode.js +1 -0
  2363. package/dist-browser/three/addons/tsl/display/SSRNode.js +1 -0
  2364. package/dist-browser/three/addons/tsl/display/SSSNode.js +1 -0
  2365. package/dist-browser/three/addons/tsl/display/Sepia.js +1 -0
  2366. package/dist-browser/three/addons/tsl/display/Shape.js +1 -0
  2367. package/dist-browser/three/addons/tsl/display/SharpenNode.js +1 -0
  2368. package/dist-browser/three/addons/tsl/display/SobelOperatorNode.js +1 -0
  2369. package/dist-browser/three/addons/tsl/display/StereoCompositePassNode.js +1 -0
  2370. package/dist-browser/three/addons/tsl/display/StereoPassNode.js +1 -0
  2371. package/dist-browser/three/addons/tsl/display/TAAUNode.js +1 -0
  2372. package/dist-browser/three/addons/tsl/display/TRAANode.js +1 -0
  2373. package/dist-browser/three/addons/tsl/display/TemporalReprojectNode.js +1 -0
  2374. package/dist-browser/three/addons/tsl/display/TransitionNode.js +1 -0
  2375. package/dist-browser/three/addons/tsl/display/boxBlur.js +1 -0
  2376. package/dist-browser/three/addons/tsl/display/depthAwareBlend.js +1 -0
  2377. package/dist-browser/three/addons/tsl/display/depthAwareBlur.js +1 -0
  2378. package/dist-browser/three/addons/tsl/display/hashBlur.js +1 -0
  2379. package/dist-browser/three/addons/tsl/display/radialBlur.js +1 -0
  2380. package/dist-browser/three/addons/tsl/lighting/ClusteredLightsNode.js +1 -0
  2381. package/dist-browser/three/addons/tsl/lighting/DynamicLightsNode.js +1 -0
  2382. package/dist-browser/three/addons/tsl/lighting/LightProbeGridNode.js +1 -0
  2383. package/dist-browser/three/addons/tsl/lighting/data/AmbientLightDataNode.js +1 -0
  2384. package/dist-browser/three/addons/tsl/lighting/data/DirectionalLightDataNode.js +1 -0
  2385. package/dist-browser/three/addons/tsl/lighting/data/HemisphereLightDataNode.js +1 -0
  2386. package/dist-browser/three/addons/tsl/lighting/data/PointLightDataNode.js +1 -0
  2387. package/dist-browser/three/addons/tsl/lighting/data/SpotLightDataNode.js +1 -0
  2388. package/dist-browser/three/addons/tsl/math/Bayer.js +1 -0
  2389. package/dist-browser/three/addons/tsl/math/curlNoise.js +1 -0
  2390. package/dist-browser/three/addons/tsl/math/voronoiNoise.js +1 -0
  2391. package/dist-browser/three/addons/tsl/shadows/TileShadowNode.js +1 -0
  2392. package/dist-browser/three/addons/tsl/shadows/TileShadowNodeHelper.js +1 -0
  2393. package/dist-browser/three/addons/tsl/utils/GroundedSkybox.js +1 -0
  2394. package/dist-browser/three/addons/tsl/utils/RNoise.js +1 -0
  2395. package/dist-browser/three/addons/tsl/utils/Raymarching.js +1 -0
  2396. package/dist-browser/three/addons/tsl/utils/SoftParticles.js +1 -0
  2397. package/dist-browser/three/addons/tsl/utils/SpecularHelpers.js +1 -0
  2398. package/dist-browser/three/addons/tsl/utils/TAAUtils.js +1 -0
  2399. package/dist-browser/three/addons/utils/BufferGeometryUtils.js +1 -0
  2400. package/dist-browser/three/addons/utils/CameraUtils.js +1 -0
  2401. package/dist-browser/three/addons/utils/ColorUtils.js +1 -0
  2402. package/dist-browser/three/addons/utils/GaussianSplatUtils.js +1 -0
  2403. package/dist-browser/three/addons/utils/GeometryCompressionUtils.js +1 -0
  2404. package/dist-browser/three/addons/utils/GeometryUtils.js +1 -0
  2405. package/dist-browser/three/addons/utils/LDrawUtils.js +1 -0
  2406. package/dist-browser/three/addons/utils/SceneOptimizer.js +1 -0
  2407. package/dist-browser/three/addons/utils/SceneUtils.js +1 -0
  2408. package/dist-browser/three/addons/utils/ShadowMapViewer.js +1 -0
  2409. package/dist-browser/three/addons/utils/ShadowMapViewerGPU.js +1 -0
  2410. package/dist-browser/three/addons/utils/SkeletonUtils.js +1 -0
  2411. package/dist-browser/three/addons/utils/SortUtils.js +1 -0
  2412. package/dist-browser/three/addons/utils/UVsDebug.js +1 -0
  2413. package/dist-browser/three/addons/utils/WebGLTextureUtils.js +1 -0
  2414. package/dist-browser/three/addons/utils/WebGPUTextureUtils.js +1 -0
  2415. package/dist-browser/three/addons/utils/WorkerPool.js +1 -0
  2416. package/dist-browser/three/addons/webxr/ARButton.js +1 -0
  2417. package/dist-browser/three/addons/webxr/OculusHandModel.js +1 -0
  2418. package/dist-browser/three/addons/webxr/OculusHandPointerModel.js +1 -0
  2419. package/dist-browser/three/addons/webxr/Text2D.js +1 -0
  2420. package/dist-browser/three/addons/webxr/VRButton.js +1 -0
  2421. package/dist-browser/three/addons/webxr/WebGLXRFallback.js +1 -0
  2422. package/dist-browser/three/addons/webxr/XRButton.js +1 -0
  2423. package/dist-browser/three/addons/webxr/XRControllerModelFactory.js +1 -0
  2424. package/dist-browser/three/addons/webxr/XREstimatedLight.js +1 -0
  2425. package/dist-browser/three/addons/webxr/XRHandMeshModel.js +1 -0
  2426. package/dist-browser/three/addons/webxr/XRHandModelFactory.js +1 -0
  2427. package/dist-browser/three/addons/webxr/XRHandPrimitiveModel.js +1 -0
  2428. package/dist-browser/three/addons/webxr/XRPlanes.js +1 -0
  2429. package/dist-browser/three/addons.js +1 -0
  2430. package/dist-browser/three/tsl.js +1 -0
  2431. package/dist-browser/three/webgpu.js +1 -0
  2432. package/dist-browser/three.js +1 -0
  2433. package/dist-browser/three.quarks.js +1 -0
  2434. package/dist-browser/zustand/middleware.js +1 -0
  2435. package/dist-browser/zustand/shallow.js +1 -0
  2436. package/dist-browser/zustand/vanilla.js +1 -0
  2437. package/dist-browser/zustand.js +1 -0
  2438. package/package.json +194 -0
  2439. package/rapier/LICENSE +201 -0
  2440. package/rapier/NOTICE +23 -0
  2441. package/rapier/simd/coarena.js +1 -0
  2442. package/rapier/simd/control/character_controller.js +1 -0
  2443. package/rapier/simd/control/index.js +1 -0
  2444. package/rapier/simd/control/pid_controller.js +1 -0
  2445. package/rapier/simd/control/ray_cast_vehicle_controller.js +1 -0
  2446. package/rapier/simd/dynamics/ccd_solver.js +1 -0
  2447. package/rapier/simd/dynamics/coefficient_combine_rule.js +1 -0
  2448. package/rapier/simd/dynamics/impulse_joint.js +1 -0
  2449. package/rapier/simd/dynamics/impulse_joint_set.js +1 -0
  2450. package/rapier/simd/dynamics/index.js +1 -0
  2451. package/rapier/simd/dynamics/integration_parameters.js +1 -0
  2452. package/rapier/simd/dynamics/island_manager.js +1 -0
  2453. package/rapier/simd/dynamics/multibody_joint.js +1 -0
  2454. package/rapier/simd/dynamics/multibody_joint_set.js +1 -0
  2455. package/rapier/simd/dynamics/rigid_body.js +1 -0
  2456. package/rapier/simd/dynamics/rigid_body_set.js +1 -0
  2457. package/rapier/simd/exports.js +1 -0
  2458. package/rapier/simd/geometry/broad_phase.js +1 -0
  2459. package/rapier/simd/geometry/collider.js +1 -0
  2460. package/rapier/simd/geometry/collider_set.js +1 -0
  2461. package/rapier/simd/geometry/contact.js +1 -0
  2462. package/rapier/simd/geometry/feature.js +1 -0
  2463. package/rapier/simd/geometry/index.js +1 -0
  2464. package/rapier/simd/geometry/interaction_groups.js +0 -0
  2465. package/rapier/simd/geometry/narrow_phase.js +1 -0
  2466. package/rapier/simd/geometry/point.js +1 -0
  2467. package/rapier/simd/geometry/ray.js +1 -0
  2468. package/rapier/simd/geometry/shape.js +1 -0
  2469. package/rapier/simd/geometry/toi.js +1 -0
  2470. package/rapier/simd/init.js +0 -0
  2471. package/rapier/simd/math.js +1 -0
  2472. package/rapier/simd/pipeline/debug_render_pipeline.js +1 -0
  2473. package/rapier/simd/pipeline/event_queue.js +1 -0
  2474. package/rapier/simd/pipeline/index.js +1 -0
  2475. package/rapier/simd/pipeline/physics_hooks.js +1 -0
  2476. package/rapier/simd/pipeline/physics_pipeline.js +1 -0
  2477. package/rapier/simd/pipeline/query_pipeline.js +1 -0
  2478. package/rapier/simd/pipeline/serialization_pipeline.js +1 -0
  2479. package/rapier/simd/pipeline/world.js +1 -0
  2480. package/rapier/simd/rapier.js +1 -0
  2481. package/rapier/simd/rapier_wasm3d.js +1 -0
  2482. package/rapier/simd/rapier_wasm3d_bg.js +1 -0
  2483. package/rapier/simd/rapier_wasm3d_bg.wasm +0 -0
  2484. package/rapier/simd/raw.js +1 -0
  2485. package/rapier/simd-compat/rapier.mjs +1 -0
  2486. package/rapier/types/coarena.d.ts +15 -0
  2487. package/rapier/types/control/character_controller.d.ts +191 -0
  2488. package/rapier/types/control/index.d.ts +3 -0
  2489. package/rapier/types/control/pid_controller.d.ts +50 -0
  2490. package/rapier/types/control/ray_cast_vehicle_controller.d.ts +277 -0
  2491. package/rapier/types/dynamics/ccd_solver.d.ts +15 -0
  2492. package/rapier/types/dynamics/coefficient_combine_rule.d.ts +13 -0
  2493. package/rapier/types/dynamics/impulse_joint.d.ts +375 -0
  2494. package/rapier/types/dynamics/impulse_joint_set.d.ts +79 -0
  2495. package/rapier/types/dynamics/index.d.ts +10 -0
  2496. package/rapier/types/dynamics/integration_parameters.d.ts +57 -0
  2497. package/rapier/types/dynamics/island_manager.d.ts +24 -0
  2498. package/rapier/types/dynamics/multibody_joint.d.ts +42 -0
  2499. package/rapier/types/dynamics/multibody_joint_set.d.ts +76 -0
  2500. package/rapier/types/dynamics/rigid_body.d.ts +803 -0
  2501. package/rapier/types/dynamics/rigid_body_set.d.ts +78 -0
  2502. package/rapier/types/exports.d.ts +8 -0
  2503. package/rapier/types/geometry/broad_phase.d.ts +164 -0
  2504. package/rapier/types/geometry/collider.d.ts +996 -0
  2505. package/rapier/types/geometry/collider_set.d.ts +72 -0
  2506. package/rapier/types/geometry/contact.d.ts +36 -0
  2507. package/rapier/types/geometry/feature.d.ts +6 -0
  2508. package/rapier/types/geometry/index.d.ts +11 -0
  2509. package/rapier/types/geometry/interaction_groups.d.ts +18 -0
  2510. package/rapier/types/geometry/narrow_phase.d.ts +130 -0
  2511. package/rapier/types/geometry/point.d.ts +58 -0
  2512. package/rapier/types/geometry/ray.d.ts +108 -0
  2513. package/rapier/types/geometry/shape.d.ts +632 -0
  2514. package/rapier/types/geometry/toi.d.ts +44 -0
  2515. package/rapier/types/init.d.ts +5 -0
  2516. package/rapier/types/math.d.ts +98 -0
  2517. package/rapier/types/pipeline/debug_render_pipeline.d.ts +40 -0
  2518. package/rapier/types/pipeline/event_queue.d.ts +101 -0
  2519. package/rapier/types/pipeline/index.d.ts +7 -0
  2520. package/rapier/types/pipeline/physics_hooks.d.ts +39 -0
  2521. package/rapier/types/pipeline/physics_pipeline.d.ts +12 -0
  2522. package/rapier/types/pipeline/query_pipeline.d.ts +38 -0
  2523. package/rapier/types/pipeline/serialization_pipeline.d.ts +37 -0
  2524. package/rapier/types/pipeline/world.d.ts +602 -0
  2525. package/rapier/types/rapier.d.ts +3 -0
  2526. package/rapier/types/rapier_wasm3d.d.ts +2204 -0
  2527. package/rapier/types/rapier_wasm3d_bg.wasm.d.ts +582 -0
  2528. package/rapier/types/raw.d.ts +1 -0
  2529. package/readable/rounds/LevelBanner.tsx +44 -0
  2530. package/readable/rounds/Round.tsx +228 -0
  2531. package/readable/rounds/RoundScreen.tsx +89 -0
  2532. package/readable/rounds/dist/LevelBanner.d.ts +13 -0
  2533. package/readable/rounds/dist/LevelBanner.d.ts.map +1 -0
  2534. package/readable/rounds/dist/LevelBanner.js +20 -0
  2535. package/readable/rounds/dist/LevelBanner.js.map +1 -0
  2536. package/readable/rounds/dist/Round.d.ts +74 -0
  2537. package/readable/rounds/dist/Round.d.ts.map +1 -0
  2538. package/readable/rounds/dist/Round.js +137 -0
  2539. package/readable/rounds/dist/Round.js.map +1 -0
  2540. package/readable/rounds/dist/RoundScreen.d.ts +39 -0
  2541. package/readable/rounds/dist/RoundScreen.d.ts.map +1 -0
  2542. package/readable/rounds/dist/RoundScreen.js +23 -0
  2543. package/readable/rounds/dist/RoundScreen.js.map +1 -0
  2544. package/readable/rounds/dist/index.d.ts +7 -0
  2545. package/readable/rounds/dist/index.d.ts.map +1 -0
  2546. package/readable/rounds/dist/index.js +11 -0
  2547. package/readable/rounds/dist/index.js.map +1 -0
  2548. package/readable/rounds/dist/rounds.d.ts +16 -0
  2549. package/readable/rounds/dist/rounds.d.ts.map +1 -0
  2550. package/readable/rounds/dist/rounds.js +82 -0
  2551. package/readable/rounds/dist/rounds.js.map +1 -0
  2552. package/readable/rounds/dist/rules.d.ts +65 -0
  2553. package/readable/rounds/dist/rules.d.ts.map +1 -0
  2554. package/readable/rounds/dist/rules.js +150 -0
  2555. package/readable/rounds/dist/rules.js.map +1 -0
  2556. package/readable/rounds/dist/traits.d.ts +103 -0
  2557. package/readable/rounds/dist/traits.d.ts.map +1 -0
  2558. package/readable/rounds/dist/traits.js +79 -0
  2559. package/readable/rounds/dist/traits.js.map +1 -0
  2560. package/readable/rounds/index.ts +11 -0
  2561. package/readable/rounds/rounds.ts +117 -0
  2562. package/readable/rounds/rules.ts +182 -0
  2563. package/readable/rounds/traits.ts +82 -0
@@ -0,0 +1,934 @@
1
+ import{$r as e,B as t,D as n,Dr as r,Ds as i,Fi as a,Ls as o,Mo as s,Po as c,Qr as l,Qt as u,Rn as d,Rs as f,Sr as p,To as m,V as h,Wr as ee,Xn as te,Xr as g,Yr as _,Zn as v,br as ne,da as y,et as b,jn as x,qr as S,sn as re,xn as C}from"./BoJD7UsQ.js";import{i as w}from"./Bzy44bV2.js";var T=(e,t,n)=>new Promise((r,i)=>{var a=e=>{try{s(n.next(e))}catch(e){i(e)}},o=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(a,o);s((n=n.apply(e,t)).next())}),E=(e,t,n)=>new Promise((r,i)=>{var a=e=>{try{s(n.next(e))}catch(e){i(e)}},o=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(a,o);s((n=n.apply(e,t)).next())}),D=class extends a{constructor(e){super(),this.weight=0,this.isBinary=!1,this.overrideBlink=`none`,this.overrideLookAt=`none`,this.overrideMouth=`none`,this._binds=[],this.name=`VRMExpression_${e}`,this.expressionName=e,this.type=`VRMExpression`,this.visible=!1}get binds(){return this._binds}get overrideBlinkAmount(){return this.overrideBlink===`block`?+(0<this.outputWeight):this.overrideBlink===`blend`?this.outputWeight:0}get overrideLookAtAmount(){return this.overrideLookAt===`block`?+(0<this.outputWeight):this.overrideLookAt===`blend`?this.outputWeight:0}get overrideMouthAmount(){return this.overrideMouth===`block`?+(0<this.outputWeight):this.overrideMouth===`blend`?this.outputWeight:0}get outputWeight(){return this.isBinary?+(this.weight>.5):this.weight}addBind(e){this._binds.push(e)}deleteBind(e){let t=this._binds.indexOf(e);t>=0&&this._binds.splice(t,1)}applyWeight(e){let t=this.outputWeight;t*=e?.multiplier??1,this.isBinary&&t<1&&(t=0),this._binds.forEach(e=>e.applyWeight(t))}clearAppliedWeight(){this._binds.forEach(e=>e.clearAppliedWeight())}};function ie(e,t,n){let r=e.parser.json,i=r.nodes?.[t];if(i==null)return console.warn(`extractPrimitivesInternal: Attempt to use nodes[${t}] of glTF but the node doesn't exist`),null;let a=i.mesh;if(a==null)return null;let o=r.meshes?.[a];if(o==null)return console.warn(`extractPrimitivesInternal: Attempt to use meshes[${a}] of glTF but the mesh doesn't exist`),null;let s=o.primitives.length,c=[];return n.traverse(e=>{c.length<s&&e.isMesh&&c.push(e)}),c}function ae(e,t){return E(this,null,function*(){return ie(e,t,yield e.parser.getDependency(`node`,t))})}function oe(e){return E(this,null,function*(){let t=yield e.parser.getDependencies(`node`),n=new Map;return t.forEach((t,r)=>{let i=ie(e,r,t);i!=null&&n.set(r,i)}),n})}var O={Aa:`aa`,Ih:`ih`,Ou:`ou`,Ee:`ee`,Oh:`oh`,Blink:`blink`,Happy:`happy`,Angry:`angry`,Sad:`sad`,Relaxed:`relaxed`,LookUp:`lookUp`,Surprised:`surprised`,LookDown:`lookDown`,LookLeft:`lookLeft`,LookRight:`lookRight`,BlinkLeft:`blinkLeft`,BlinkRight:`blinkRight`,Neutral:`neutral`};function se(e){return Math.max(Math.min(e,1),0)}var k=class e{constructor(){this.blinkExpressionNames=[`blink`,`blinkLeft`,`blinkRight`],this.lookAtExpressionNames=[`lookLeft`,`lookRight`,`lookUp`,`lookDown`],this.mouthExpressionNames=[`aa`,`ee`,`ih`,`oh`,`ou`],this._expressions=[],this._expressionMap={}}get expressions(){return this._expressions.concat()}get expressionMap(){return Object.assign({},this._expressionMap)}get presetExpressionMap(){let e={},t=new Set(Object.values(O));return Object.entries(this._expressionMap).forEach(([n,r])=>{t.has(n)&&(e[n]=r)}),e}get customExpressionMap(){let e={},t=new Set(Object.values(O));return Object.entries(this._expressionMap).forEach(([n,r])=>{t.has(n)||(e[n]=r)}),e}copy(e){return this._expressions.concat().forEach(e=>{this.unregisterExpression(e)}),e._expressions.forEach(e=>{this.registerExpression(e)}),this.blinkExpressionNames=e.blinkExpressionNames.concat(),this.lookAtExpressionNames=e.lookAtExpressionNames.concat(),this.mouthExpressionNames=e.mouthExpressionNames.concat(),this}clone(){return new e().copy(this)}getExpression(e){return this._expressionMap[e]??null}registerExpression(e){this._expressions.push(e),this._expressionMap[e.expressionName]=e}unregisterExpression(e){let t=this._expressions.indexOf(e);t===-1&&console.warn(`VRMExpressionManager: The specified expressions is not registered`),this._expressions.splice(t,1),delete this._expressionMap[e.expressionName]}getValue(e){return this.getExpression(e)?.weight??null}setValue(e,t){let n=this.getExpression(e);n&&(n.weight=se(t))}resetValues(){this._expressions.forEach(e=>{e.weight=0})}getExpressionTrackName(e){let t=this.getExpression(e);return t?`${t.name}.weight`:null}update(){let e=this._calculateWeightMultipliers();this._expressions.forEach(e=>{e.clearAppliedWeight()}),this._expressions.forEach(t=>{let n=1,r=t.expressionName;this.blinkExpressionNames.indexOf(r)!==-1&&(n*=e.blink),this.lookAtExpressionNames.indexOf(r)!==-1&&(n*=e.lookAt),this.mouthExpressionNames.indexOf(r)!==-1&&(n*=e.mouth),t.applyWeight({multiplier:n})})}_calculateWeightMultipliers(){let e=1,t=1,n=1;return this._expressions.forEach(r=>{e-=r.overrideBlinkAmount,t-=r.overrideLookAtAmount,n-=r.overrideMouthAmount}),e=Math.max(0,e),t=Math.max(0,t),n=Math.max(0,n),{blink:e,lookAt:t,mouth:n}}},A={Color:`color`,EmissionColor:`emissionColor`,ShadeColor:`shadeColor`,MatcapColor:`matcapColor`,RimColor:`rimColor`,OutlineColor:`outlineColor`},ce={_Color:A.Color,_EmissionColor:A.EmissionColor,_ShadeColor:A.ShadeColor,_RimColor:A.RimColor,_OutlineColor:A.OutlineColor},le=new b,ue=class e{constructor({material:e,type:t,targetValue:n,targetAlpha:r}){this.material=e,this.type=t,this.targetValue=n,this.targetAlpha=r??1;let i=this._initColorBindState(),a=this._initAlphaBindState();this._state={color:i,alpha:a}}applyWeight(e){let{color:t,alpha:n}=this._state;if(t!=null){let{propertyName:n,deltaValue:r}=t;this.material[n]?.add(le.copy(r).multiplyScalar(e))}if(n!=null){let{propertyName:t,deltaValue:r}=n;this.material[t]!=null&&(this.material[t]+=r*e)}}clearAppliedWeight(){let{color:e,alpha:t}=this._state;if(e!=null){let{propertyName:t,initialValue:n}=e;this.material[t]?.copy(n)}if(t!=null){let{propertyName:e,initialValue:n}=t;this.material[e]!=null&&(this.material[e]=n)}}_initColorBindState(){let{material:e,type:t,targetValue:n}=this,r=this._getPropertyNameMap()?.[t]?.[0]??null;if(r==null)return console.warn(`Tried to add a material color bind to the material ${e.name??`(no name)`}, the type ${t} but the material or the type is not supported.`),null;let i=e[r].clone();return{propertyName:r,initialValue:i,deltaValue:new b(n.r-i.r,n.g-i.g,n.b-i.b)}}_initAlphaBindState(){let{material:e,type:t,targetAlpha:n}=this,r=this._getPropertyNameMap()?.[t]?.[1]??null;if(r==null&&n!==1)return console.warn(`Tried to add a material alpha bind to the material ${e.name??`(no name)`}, the type ${t} but the material or the type does not support alpha.`),null;if(r==null)return null;let i=e[r];return{propertyName:r,initialValue:i,deltaValue:n-i}}_getPropertyNameMap(){return Object.entries(e._propertyNameMapMap).find(([e])=>this.material[e]===!0)?.[1]??null}};ue._propertyNameMapMap={isMeshStandardMaterial:{color:[`color`,`opacity`],emissionColor:[`emissive`,null]},isMeshBasicMaterial:{color:[`color`,`opacity`]},isMToonMaterial:{color:[`color`,`opacity`],emissionColor:[`emissive`,null],outlineColor:[`outlineColorFactor`,null],matcapColor:[`matcapFactor`,null],rimColor:[`parametricRimColorFactor`,null],shadeColor:[`shadeColorFactor`,null]}};var j=ue,M=class{constructor({primitives:e,index:t,weight:n}){this.primitives=e,this.index=t,this.weight=n}applyWeight(e){this.primitives.forEach(t=>{t.morphTargetInfluences?.[this.index]!=null&&(t.morphTargetInfluences[this.index]+=this.weight*e)})}clearAppliedWeight(){this.primitives.forEach(e=>{e.morphTargetInfluences?.[this.index]!=null&&(e.morphTargetInfluences[this.index]=0)})}},de=new o,N=class e{constructor({material:t,scale:n,offset:r}){this.material=t,this.scale=n,this.offset=r;let i=Object.entries(e._propertyNamesMap).find(([e])=>t[e]===!0)?.[1];i==null?(console.warn(`Tried to add a texture transform bind to the material ${t.name??`(no name)`} but the material is not supported.`),this._properties=[]):(this._properties=[],i.forEach(e=>{let i=t[e]?.clone();if(!i)return null;t[e]=i;let a=i.offset.clone(),o=i.repeat.clone(),s=r.clone().sub(a),c=n.clone().sub(o);this._properties.push({name:e,initialOffset:a,deltaOffset:s,initialScale:o,deltaScale:c})}))}applyWeight(e){this._properties.forEach(t=>{let n=this.material[t.name];n!==void 0&&(n.offset.add(de.copy(t.deltaOffset).multiplyScalar(e)),n.repeat.add(de.copy(t.deltaScale).multiplyScalar(e)))})}clearAppliedWeight(){this._properties.forEach(e=>{let t=this.material[e.name];t!==void 0&&(t.offset.copy(e.initialOffset),t.repeat.copy(e.initialScale))})}};N._propertyNamesMap={isMeshStandardMaterial:[`map`,`emissiveMap`,`bumpMap`,`normalMap`,`displacementMap`,`roughnessMap`,`metalnessMap`,`alphaMap`],isMeshBasicMaterial:[`map`,`specularMap`,`alphaMap`],isMToonMaterial:[`map`,`normalMap`,`emissiveMap`,`shadeMultiplyTexture`,`rimMultiplyTexture`,`outlineWidthMultiplyTexture`,`uvAnimationMaskTexture`]};var P=N,fe=new Set([`1.0`,`1.0-beta`]),pe=class e{get name(){return`VRMExpressionLoaderPlugin`}constructor(e){this.parser=e}afterRoot(e){return E(this,null,function*(){e.userData.vrmExpressionManager=yield this._import(e)})}_import(e){return E(this,null,function*(){return(yield this._v1Import(e))||(yield this._v0Import(e))||null})}_v1Import(e){return E(this,null,function*(){let t=this.parser.json;if(t.extensionsUsed?.indexOf(`VRMC_vrm`)===-1)return null;let n=t.extensions?.VRMC_vrm;if(!n)return null;let r=n.specVersion;if(!fe.has(r))return console.warn(`VRMExpressionLoaderPlugin: Unknown VRMC_vrm specVersion "${r}"`),null;let i=n.expressions;if(!i)return null;let a=new Set(Object.values(O)),s=new Map;i.preset!=null&&Object.entries(i.preset).forEach(([e,t])=>{if(t!=null){if(!a.has(e)){console.warn(`VRMExpressionLoaderPlugin: Unknown preset name "${e}" detected. Ignoring the expression`);return}s.set(e,t)}}),i.custom!=null&&Object.entries(i.custom).forEach(([e,t])=>{if(a.has(e)){console.warn(`VRMExpressionLoaderPlugin: Custom expression cannot have preset name "${e}". Ignoring the expression`);return}s.set(e,t)});let c=new k;return yield Promise.all(Array.from(s.entries()).map(t=>E(this,[t],function*([t,n]){var r,i,a;let s=new D(t);if(e.scene.add(s),s.isBinary=n.isBinary??!1,s.overrideBlink=n.overrideBlink??`none`,s.overrideLookAt=n.overrideLookAt??`none`,s.overrideMouth=n.overrideMouth??`none`,(r=n.morphTargetBinds)==null||r.forEach(t=>E(this,null,function*(){if(t.node===void 0||t.index===void 0)return;let r=yield ae(e,t.node),i=t.index;if(!r.every(e=>Array.isArray(e.morphTargetInfluences)&&i<e.morphTargetInfluences.length)){console.warn(`VRMExpressionLoaderPlugin: ${n.name} attempts to index morph #${i} but not found.`);return}s.addBind(new M({primitives:r,index:i,weight:t.weight??1}))})),n.materialColorBinds||n.textureTransformBinds){let t=[];e.scene.traverse(e=>{let n=e.material;n&&(Array.isArray(n)?t.push(...n):t.push(n))}),(i=n.materialColorBinds)==null||i.forEach(e=>E(this,null,function*(){t.filter(t=>{let n=this.parser.associations.get(t)?.materials;return e.material===n}).forEach(t=>{s.addBind(new j({material:t,type:e.type,targetValue:new b().fromArray(e.targetValue),targetAlpha:e.targetValue[3]}))})})),(a=n.textureTransformBinds)==null||a.forEach(e=>E(this,null,function*(){t.filter(t=>{let n=this.parser.associations.get(t)?.materials;return e.material===n}).forEach(t=>{s.addBind(new P({material:t,offset:new o().fromArray(e.offset??[0,0]),scale:new o().fromArray(e.scale??[1,1])}))})}))}c.registerExpression(s)}))),c})}_v0Import(t){return E(this,null,function*(){let n=this.parser.json,r=n.extensions?.VRM;if(!r)return null;let i=r.blendShapeMaster;if(!i)return null;let a=new k,s=i.blendShapeGroups;if(!s)return a;let c=new Set;return yield Promise.all(s.map(r=>E(this,null,function*(){let i=r.presetName,s=(i!=null&&e.v0v1PresetNameMap[i]||null)??r.name;if(s==null){console.warn(`VRMExpressionLoaderPlugin: One of custom expressions has no name. Ignoring the expression`);return}if(c.has(s)){console.warn(`VRMExpressionLoaderPlugin: An expression preset ${i} has duplicated entries. Ignoring the expression`);return}c.add(s);let l=new D(s);t.scene.add(l),l.isBinary=r.isBinary??!1,r.binds&&r.binds.forEach(e=>E(this,null,function*(){var i;if(e.mesh===void 0||e.index===void 0)return;let a=[];if((i=n.nodes)==null||i.forEach((t,n)=>{t.mesh===e.mesh&&a.push(n)}),a.length===0){console.warn(`VRMExpressionLoaderPlugin: ${r.name} attempts to bind a morph target to the mesh #${e.mesh} but the mesh is not found or not used in the scene. Ignoring the bind.`);return}let o=e.index;yield Promise.all(a.map(n=>E(this,null,function*(){let i=yield ae(t,n);if(!i.every(e=>Array.isArray(e.morphTargetInfluences)&&o<e.morphTargetInfluences.length)){console.warn(`VRMExpressionLoaderPlugin: ${r.name} attempts to index ${o}th morph but not found.`);return}l.addBind(new M({primitives:i,index:o,weight:.01*(e.weight??100)}))})))}));let u=r.materialValues;u&&u.length!==0&&u.forEach(e=>{if(e.materialName===void 0||e.propertyName===void 0||e.targetValue===void 0)return;let n=[];t.scene.traverse(t=>{if(t.material){let r=t.material;Array.isArray(r)?n.push(...r.filter(t=>(t.name===e.materialName||t.name===e.materialName+` (Outline)`)&&n.indexOf(t)===-1)):r.name===e.materialName&&n.indexOf(r)===-1&&n.push(r)}});let r=e.propertyName;n.forEach(t=>{if(r===`_MainTex_ST`){let n=new o(e.targetValue[0],e.targetValue[1]),r=new o(e.targetValue[2],e.targetValue[3]);r.y=1-r.y-n.y,l.addBind(new P({material:t,scale:n,offset:r}));return}let n=ce[r];if(n){l.addBind(new j({material:t,type:n,targetValue:new b().fromArray(e.targetValue),targetAlpha:e.targetValue[3]}));return}console.warn(r+` is not supported`)})}),a.registerExpression(l)}))),a})}};pe.v0v1PresetNameMap={a:`aa`,e:`ee`,i:`ih`,o:`oh`,u:`ou`,blink:`blink`,joy:`happy`,angry:`angry`,sorrow:`sad`,fun:`relaxed`,lookup:`lookUp`,lookdown:`lookDown`,lookleft:`lookLeft`,lookright:`lookRight`,blink_l:`blinkLeft`,blink_r:`blinkRight`,neutral:`neutral`};var me=pe,he={None:`none`,Block:`block`,Blend:`blend`},ge=class e{constructor(t,n){this._firstPersonOnlyLayer=e.DEFAULT_FIRSTPERSON_ONLY_LAYER,this._thirdPersonOnlyLayer=e.DEFAULT_THIRDPERSON_ONLY_LAYER,this._initializedLayers=!1,this.humanoid=t,this.meshAnnotations=n}copy(e){if(this.humanoid!==e.humanoid)throw Error(`VRMFirstPerson: humanoid must be same in order to copy`);return this.meshAnnotations=e.meshAnnotations.map(e=>({meshes:e.meshes.concat(),type:e.type})),this}clone(){return new e(this.humanoid,this.meshAnnotations).copy(this)}get firstPersonOnlyLayer(){return this._firstPersonOnlyLayer}get thirdPersonOnlyLayer(){return this._thirdPersonOnlyLayer}setup({firstPersonOnlyLayer:t=e.DEFAULT_FIRSTPERSON_ONLY_LAYER,thirdPersonOnlyLayer:n=e.DEFAULT_THIRDPERSON_ONLY_LAYER}={}){this._initializedLayers||=(this._firstPersonOnlyLayer=t,this._thirdPersonOnlyLayer=n,this.meshAnnotations.forEach(e=>{e.meshes.forEach(t=>{e.type===`firstPersonOnly`?(t.layers.set(this._firstPersonOnlyLayer),t.traverse(e=>e.layers.set(this._firstPersonOnlyLayer))):e.type===`thirdPersonOnly`?(t.layers.set(this._thirdPersonOnlyLayer),t.traverse(e=>e.layers.set(this._thirdPersonOnlyLayer))):e.type===`auto`&&this._createHeadlessModel(t)})}),!0)}_excludeTriangles(e,t,n,r){let i=0;if(t!=null&&t.length>0)for(let a=0;a<e.length;a+=3){let o=e[a],s=e[a+1],c=e[a+2],l=t[o],u=n[o];if(l[0]>0&&r.includes(u[0])||l[1]>0&&r.includes(u[1])||l[2]>0&&r.includes(u[2])||l[3]>0&&r.includes(u[3]))continue;let d=t[s],f=n[s];if(d[0]>0&&r.includes(f[0])||d[1]>0&&r.includes(f[1])||d[2]>0&&r.includes(f[2])||d[3]>0&&r.includes(f[3]))continue;let p=t[c],m=n[c];p[0]>0&&r.includes(m[0])||p[1]>0&&r.includes(m[1])||p[2]>0&&r.includes(m[2])||p[3]>0&&r.includes(m[3])||(e[i++]=o,e[i++]=s,e[i++]=c)}return i}_createErasedMesh(e,t){let n=new c(e.geometry.clone(),e.material);n.name=`${e.name}(erase)`,n.frustumCulled=e.frustumCulled,n.layers.set(this._firstPersonOnlyLayer);let r=n.geometry,i=r.getAttribute(`skinIndex`),a=i instanceof C?[]:i.array,o=[];for(let e=0;e<a.length;e+=4)o.push([a[e],a[e+1],a[e+2],a[e+3]]);let l=r.getAttribute(`skinWeight`),u=l instanceof C?[]:l.array,d=[];for(let e=0;e<u.length;e+=4)d.push([u[e],u[e+1],u[e+2],u[e+3]]);let f=r.getIndex();if(!f)throw Error(`The geometry doesn't have an index buffer`);let p=Array.from(f.array),m=this._excludeTriangles(p,d,o,t),h=[];for(let e=0;e<m;e++)h[e]=p[e];return r.setIndex(h),e.onBeforeRender&&(n.onBeforeRender=e.onBeforeRender),n.bind(new s(e.skeleton.bones,e.skeleton.boneInverses),new g),n}_createHeadlessModelForSkinnedMesh(e,t){let n=[];if(t.skeleton.bones.forEach((e,t)=>{this._isEraseTarget(e)&&n.push(t)}),!n.length){t.layers.enable(this._thirdPersonOnlyLayer),t.layers.enable(this._firstPersonOnlyLayer);return}t.layers.set(this._thirdPersonOnlyLayer);let r=this._createErasedMesh(t,n);e.add(r)}_createHeadlessModel(e){if(e.type===`Group`){if(e.layers.set(this._thirdPersonOnlyLayer),this._isEraseTarget(e))e.traverse(e=>e.layers.set(this._thirdPersonOnlyLayer));else{let t=new x;t.name=`_headless_${e.name}`,t.layers.set(this._firstPersonOnlyLayer),e.parent.add(t),e.children.filter(e=>e.type===`SkinnedMesh`).forEach(e=>{let n=e;this._createHeadlessModelForSkinnedMesh(t,n)})}}else if(e.type===`SkinnedMesh`){let t=e;this._createHeadlessModelForSkinnedMesh(e.parent,t)}else this._isEraseTarget(e)&&(e.layers.set(this._thirdPersonOnlyLayer),e.traverse(e=>e.layers.set(this._thirdPersonOnlyLayer)))}_isEraseTarget(e){return e===this.humanoid.getRawBoneNode(`head`)?!0:e.parent?this._isEraseTarget(e.parent):!1}};ge.DEFAULT_FIRSTPERSON_ONLY_LAYER=9,ge.DEFAULT_THIRDPERSON_ONLY_LAYER=10;var _e=ge,ve=new Set([`1.0`,`1.0-beta`]),ye=class{get name(){return`VRMFirstPersonLoaderPlugin`}constructor(e){this.parser=e}afterRoot(e){return E(this,null,function*(){let t=e.userData.vrmHumanoid;if(t!==null){if(t===void 0)throw Error(`VRMFirstPersonLoaderPlugin: vrmHumanoid is undefined. VRMHumanoidLoaderPlugin have to be used first`);e.userData.vrmFirstPerson=yield this._import(e,t)}})}_import(e,t){return E(this,null,function*(){return t==null?null:(yield this._v1Import(e,t))||(yield this._v0Import(e,t))||null})}_v1Import(e,t){return E(this,null,function*(){let n=this.parser.json;if(n.extensionsUsed?.indexOf(`VRMC_vrm`)===-1)return null;let r=n.extensions?.VRMC_vrm;if(!r)return null;let i=r.specVersion;if(!ve.has(i))return console.warn(`VRMFirstPersonLoaderPlugin: Unknown VRMC_vrm specVersion "${i}"`),null;let a=r.firstPerson,o=[],s=yield oe(e);return Array.from(s.entries()).forEach(([e,t])=>{let n=(a?.meshAnnotations)?.find(t=>t.node===e);o.push({meshes:t,type:n?.type??`auto`})}),new _e(t,o)})}_v0Import(e,t){return E(this,null,function*(){let n=this.parser.json,r=n.extensions?.VRM;if(!r)return null;let i=r.firstPerson;if(!i)return null;let a=[],o=yield oe(e);return Array.from(o.entries()).forEach(([e,t])=>{let r=n.nodes[e],o=i.meshAnnotations?i.meshAnnotations.find(e=>e.mesh===r.mesh):void 0;a.push({meshes:t,type:this._convertV0FlagToV1Type(o?.firstPersonFlag)})}),new _e(t,a)})}_convertV0FlagToV1Type(e){return e===`FirstPersonOnly`?`firstPersonOnly`:e===`ThirdPersonOnly`?`thirdPersonOnly`:e===`Both`?`both`:`auto`}},be={Auto:`auto`,Both:`both`,ThirdPersonOnly:`thirdPersonOnly`,FirstPersonOnly:`firstPersonOnly`},xe=new f,Se=new f,Ce=new y,we=class extends x{constructor(e){super(),this.vrmHumanoid=e,this._boneAxesMap=new Map,Object.values(e.humanBones).forEach(e=>{let t=new n(1);t.matrixAutoUpdate=!1,t.material.depthTest=!1,t.material.depthWrite=!1,this.add(t),this._boneAxesMap.set(e,t)})}dispose(){Array.from(this._boneAxesMap.values()).forEach(e=>{e.geometry.dispose(),e.material.dispose()})}updateMatrixWorld(e){Array.from(this._boneAxesMap.entries()).forEach(([e,t])=>{e.node.updateWorldMatrix(!0,!1),e.node.matrixWorld.decompose(xe,Ce,Se);let n=xe.set(.1,.1,.1).divide(Se);t.matrix.copy(e.node.matrixWorld).scale(n)}),super.updateMatrixWorld(e)}},F=`hips.spine.chest.upperChest.neck.head.leftEye.rightEye.jaw.leftUpperLeg.leftLowerLeg.leftFoot.leftToes.rightUpperLeg.rightLowerLeg.rightFoot.rightToes.leftShoulder.leftUpperArm.leftLowerArm.leftHand.rightShoulder.rightUpperArm.rightLowerArm.rightHand.leftThumbMetacarpal.leftThumbProximal.leftThumbDistal.leftIndexProximal.leftIndexIntermediate.leftIndexDistal.leftMiddleProximal.leftMiddleIntermediate.leftMiddleDistal.leftRingProximal.leftRingIntermediate.leftRingDistal.leftLittleProximal.leftLittleIntermediate.leftLittleDistal.rightThumbMetacarpal.rightThumbProximal.rightThumbDistal.rightIndexProximal.rightIndexIntermediate.rightIndexDistal.rightMiddleProximal.rightMiddleIntermediate.rightMiddleDistal.rightRingProximal.rightRingIntermediate.rightRingDistal.rightLittleProximal.rightLittleIntermediate.rightLittleDistal`.split(`.`),Te={Hips:`hips`,Spine:`spine`,Chest:`chest`,UpperChest:`upperChest`,Neck:`neck`,Head:`head`,LeftEye:`leftEye`,RightEye:`rightEye`,Jaw:`jaw`,LeftUpperLeg:`leftUpperLeg`,LeftLowerLeg:`leftLowerLeg`,LeftFoot:`leftFoot`,LeftToes:`leftToes`,RightUpperLeg:`rightUpperLeg`,RightLowerLeg:`rightLowerLeg`,RightFoot:`rightFoot`,RightToes:`rightToes`,LeftShoulder:`leftShoulder`,LeftUpperArm:`leftUpperArm`,LeftLowerArm:`leftLowerArm`,LeftHand:`leftHand`,RightShoulder:`rightShoulder`,RightUpperArm:`rightUpperArm`,RightLowerArm:`rightLowerArm`,RightHand:`rightHand`,LeftThumbMetacarpal:`leftThumbMetacarpal`,LeftThumbProximal:`leftThumbProximal`,LeftThumbDistal:`leftThumbDistal`,LeftIndexProximal:`leftIndexProximal`,LeftIndexIntermediate:`leftIndexIntermediate`,LeftIndexDistal:`leftIndexDistal`,LeftMiddleProximal:`leftMiddleProximal`,LeftMiddleIntermediate:`leftMiddleIntermediate`,LeftMiddleDistal:`leftMiddleDistal`,LeftRingProximal:`leftRingProximal`,LeftRingIntermediate:`leftRingIntermediate`,LeftRingDistal:`leftRingDistal`,LeftLittleProximal:`leftLittleProximal`,LeftLittleIntermediate:`leftLittleIntermediate`,LeftLittleDistal:`leftLittleDistal`,RightThumbMetacarpal:`rightThumbMetacarpal`,RightThumbProximal:`rightThumbProximal`,RightThumbDistal:`rightThumbDistal`,RightIndexProximal:`rightIndexProximal`,RightIndexIntermediate:`rightIndexIntermediate`,RightIndexDistal:`rightIndexDistal`,RightMiddleProximal:`rightMiddleProximal`,RightMiddleIntermediate:`rightMiddleIntermediate`,RightMiddleDistal:`rightMiddleDistal`,RightRingProximal:`rightRingProximal`,RightRingIntermediate:`rightRingIntermediate`,RightRingDistal:`rightRingDistal`,RightLittleProximal:`rightLittleProximal`,RightLittleIntermediate:`rightLittleIntermediate`,RightLittleDistal:`rightLittleDistal`},Ee={hips:null,spine:`hips`,chest:`spine`,upperChest:`chest`,neck:`upperChest`,head:`neck`,leftEye:`head`,rightEye:`head`,jaw:`head`,leftUpperLeg:`hips`,leftLowerLeg:`leftUpperLeg`,leftFoot:`leftLowerLeg`,leftToes:`leftFoot`,rightUpperLeg:`hips`,rightLowerLeg:`rightUpperLeg`,rightFoot:`rightLowerLeg`,rightToes:`rightFoot`,leftShoulder:`upperChest`,leftUpperArm:`leftShoulder`,leftLowerArm:`leftUpperArm`,leftHand:`leftLowerArm`,rightShoulder:`upperChest`,rightUpperArm:`rightShoulder`,rightLowerArm:`rightUpperArm`,rightHand:`rightLowerArm`,leftThumbMetacarpal:`leftHand`,leftThumbProximal:`leftThumbMetacarpal`,leftThumbDistal:`leftThumbProximal`,leftIndexProximal:`leftHand`,leftIndexIntermediate:`leftIndexProximal`,leftIndexDistal:`leftIndexIntermediate`,leftMiddleProximal:`leftHand`,leftMiddleIntermediate:`leftMiddleProximal`,leftMiddleDistal:`leftMiddleIntermediate`,leftRingProximal:`leftHand`,leftRingIntermediate:`leftRingProximal`,leftRingDistal:`leftRingIntermediate`,leftLittleProximal:`leftHand`,leftLittleIntermediate:`leftLittleProximal`,leftLittleDistal:`leftLittleIntermediate`,rightThumbMetacarpal:`rightHand`,rightThumbProximal:`rightThumbMetacarpal`,rightThumbDistal:`rightThumbProximal`,rightIndexProximal:`rightHand`,rightIndexIntermediate:`rightIndexProximal`,rightIndexDistal:`rightIndexIntermediate`,rightMiddleProximal:`rightHand`,rightMiddleIntermediate:`rightMiddleProximal`,rightMiddleDistal:`rightMiddleIntermediate`,rightRingProximal:`rightHand`,rightRingIntermediate:`rightRingProximal`,rightRingDistal:`rightRingIntermediate`,rightLittleProximal:`rightHand`,rightLittleIntermediate:`rightLittleProximal`,rightLittleDistal:`rightLittleIntermediate`};function De(e){return e.invert?e.invert():e.inverse(),e}var I=new f,L=new y,Oe=class{constructor(e){this.humanBones=e,this.restPose=this.getAbsolutePose()}getAbsolutePose(){let e={};return Object.keys(this.humanBones).forEach(t=>{let n=t,r=this.getBoneNode(n);r&&(I.copy(r.position),L.copy(r.quaternion),e[n]={position:I.toArray(),rotation:L.toArray()})}),e}getPose(){let e={};return Object.keys(this.humanBones).forEach(t=>{let n=t,r=this.getBoneNode(n);if(!r)return;I.set(0,0,0),L.identity();let i=this.restPose[n];i?.position&&I.fromArray(i.position).negate(),i?.rotation&&De(L.fromArray(i.rotation)),I.add(r.position),L.premultiply(r.quaternion),e[n]={position:I.toArray(),rotation:L.toArray()}}),e}setPose(e){Object.entries(e).forEach(([e,t])=>{let n=e,r=this.getBoneNode(n);if(!r)return;let i=this.restPose[n];i&&(t?.position&&(r.position.fromArray(t.position),i.position&&r.position.add(I.fromArray(i.position))),t?.rotation&&(r.quaternion.fromArray(t.rotation),i.rotation&&r.quaternion.multiply(L.fromArray(i.rotation))))})}resetPose(){Object.entries(this.restPose).forEach(([e,t])=>{let n=this.getBoneNode(e);n&&(t?.position&&n.position.fromArray(t.position),t?.rotation&&n.quaternion.fromArray(t.rotation))})}getBone(e){return this.humanBones[e]??void 0}getBoneNode(e){return this.humanBones[e]?.node??null}},ke=new f,Ae=new y,je=new f,Me=class e extends Oe{static _setupTransforms(e){let t=new a;t.name=`VRMHumanoidRig`;let n={},r={},i={},o={};F.forEach(t=>{var a;let s=e.getBoneNode(t);if(s){let e=new f,c=new y;s.updateWorldMatrix(!0,!1),s.matrixWorld.decompose(e,c,ke),n[t]=e,r[t]=c,i[t]=s.quaternion.clone();let l=new y;(a=s.parent)==null||a.matrixWorld.decompose(ke,l,ke),o[t]=l}});let s={};return F.forEach(r=>{let i=e.getBoneNode(r);if(i){let e=n[r],o=r,c;for(;c==null&&(o=Ee[o],o!=null);)c=n[o];let l=new a;l.name=`Normalized_`+i.name,(o?s[o]?.node:t).add(l),l.position.copy(e),c&&l.position.sub(c),s[r]={node:l}}}),{rigBones:s,root:t,parentWorldRotations:o,boneRotations:i}}constructor(t){let{rigBones:n,root:r,parentWorldRotations:i,boneRotations:a}=e._setupTransforms(t);super(n),this.original=t,this.root=r,this._parentWorldRotations=i,this._boneRotations=a}update(){F.forEach(e=>{let t=this.original.getBoneNode(e);if(t!=null){let n=this.getBoneNode(e),r=this._parentWorldRotations[e],i=Ae.copy(r).invert(),a=this._boneRotations[e];if(t.quaternion.copy(n.quaternion).multiply(r).premultiply(i).multiply(a),e===`hips`){let e=n.getWorldPosition(je);t.parent.updateWorldMatrix(!0,!1);let r=t.parent.matrixWorld,i=e.applyMatrix4(r.invert());t.position.copy(i)}}})}},Ne=class e{get restPose(){return console.warn(`VRMHumanoid: restPose is deprecated. Use either rawRestPose or normalizedRestPose instead.`),this.rawRestPose}get rawRestPose(){return this._rawHumanBones.restPose}get normalizedRestPose(){return this._normalizedHumanBones.restPose}get humanBones(){return this._rawHumanBones.humanBones}get rawHumanBones(){return this._rawHumanBones.humanBones}get normalizedHumanBones(){return this._normalizedHumanBones.humanBones}get normalizedHumanBonesRoot(){return this._normalizedHumanBones.root}constructor(e,t){this.autoUpdateHumanBones=t?.autoUpdateHumanBones??!0,this._rawHumanBones=new Oe(e),this._normalizedHumanBones=new Me(this._rawHumanBones)}copy(e){return this.autoUpdateHumanBones=e.autoUpdateHumanBones,this._rawHumanBones=new Oe(e.humanBones),this._normalizedHumanBones=new Me(this._rawHumanBones),this}clone(){return new e(this.humanBones,{autoUpdateHumanBones:this.autoUpdateHumanBones}).copy(this)}getAbsolutePose(){return console.warn(`VRMHumanoid: getAbsolutePose() is deprecated. Use either getRawAbsolutePose() or getNormalizedAbsolutePose() instead.`),this.getRawAbsolutePose()}getRawAbsolutePose(){return this._rawHumanBones.getAbsolutePose()}getNormalizedAbsolutePose(){return this._normalizedHumanBones.getAbsolutePose()}getPose(){return console.warn(`VRMHumanoid: getPose() is deprecated. Use either getRawPose() or getNormalizedPose() instead.`),this.getRawPose()}getRawPose(){return this._rawHumanBones.getPose()}getNormalizedPose(){return this._normalizedHumanBones.getPose()}setPose(e){return console.warn(`VRMHumanoid: setPose() is deprecated. Use either setRawPose() or setNormalizedPose() instead.`),this.setRawPose(e)}setRawPose(e){return this._rawHumanBones.setPose(e)}setNormalizedPose(e){return this._normalizedHumanBones.setPose(e)}resetPose(){return console.warn(`VRMHumanoid: resetPose() is deprecated. Use either resetRawPose() or resetNormalizedPose() instead.`),this.resetRawPose()}resetRawPose(){return this._rawHumanBones.resetPose()}resetNormalizedPose(){return this._normalizedHumanBones.resetPose()}getBone(e){return console.warn(`VRMHumanoid: getBone() is deprecated. Use either getRawBone() or getNormalizedBone() instead.`),this.getRawBone(e)}getRawBone(e){return this._rawHumanBones.getBone(e)}getNormalizedBone(e){return this._normalizedHumanBones.getBone(e)}getBoneNode(e){return console.warn(`VRMHumanoid: getBoneNode() is deprecated. Use either getRawBoneNode() or getNormalizedBoneNode() instead.`),this.getRawBoneNode(e)}getRawBoneNode(e){return this._rawHumanBones.getBoneNode(e)}getNormalizedBoneNode(e){return this._normalizedHumanBones.getBoneNode(e)}update(){this.autoUpdateHumanBones&&this._normalizedHumanBones.update()}},Pe={Hips:`hips`,Spine:`spine`,Head:`head`,LeftUpperLeg:`leftUpperLeg`,LeftLowerLeg:`leftLowerLeg`,LeftFoot:`leftFoot`,RightUpperLeg:`rightUpperLeg`,RightLowerLeg:`rightLowerLeg`,RightFoot:`rightFoot`,LeftUpperArm:`leftUpperArm`,LeftLowerArm:`leftLowerArm`,LeftHand:`leftHand`,RightUpperArm:`rightUpperArm`,RightLowerArm:`rightLowerArm`,RightHand:`rightHand`},Fe=new Set([`1.0`,`1.0-beta`]),Ie={leftThumbProximal:`leftThumbMetacarpal`,leftThumbIntermediate:`leftThumbProximal`,rightThumbProximal:`rightThumbMetacarpal`,rightThumbIntermediate:`rightThumbProximal`},Le=class{get name(){return`VRMHumanoidLoaderPlugin`}constructor(e,t){this.parser=e,this.helperRoot=t?.helperRoot,this.autoUpdateHumanBones=t?.autoUpdateHumanBones}afterRoot(e){return E(this,null,function*(){e.userData.vrmHumanoid=yield this._import(e)})}_import(e){return E(this,null,function*(){return(yield this._v1Import(e))||(yield this._v0Import(e))||null})}_v1Import(e){return E(this,null,function*(){let t=this.parser.json;if(t.extensionsUsed?.indexOf(`VRMC_vrm`)===-1)return null;let n=t.extensions?.VRMC_vrm;if(!n)return null;let r=n.specVersion;if(!Fe.has(r))return console.warn(`VRMHumanoidLoaderPlugin: Unknown VRMC_vrm specVersion "${r}"`),null;let i=n.humanoid;if(!i)return null;let a=i.humanBones.leftThumbIntermediate!=null||i.humanBones.rightThumbIntermediate!=null,o={};i.humanBones!=null&&(yield Promise.all(Object.entries(i.humanBones).map(e=>E(this,[e],function*([e,t]){let n=e,r=t.node;if(a){let e=Ie[n];e!=null&&(n=e)}let i=yield this.parser.getDependency(`node`,r);if(i==null){console.warn(`A glTF node bound to the humanoid bone ${n} (index = ${r}) does not exist`);return}o[n]={node:i}}))));let s=new Ne(this._ensureRequiredBonesExist(o),{autoUpdateHumanBones:this.autoUpdateHumanBones});if(e.scene.add(s.normalizedHumanBonesRoot),this.helperRoot){let e=new we(s);this.helperRoot.add(e),e.renderOrder=this.helperRoot.renderOrder}return s})}_v0Import(e){return E(this,null,function*(){let t=this.parser.json.extensions?.VRM;if(!t)return null;let n=t.humanoid;if(!n)return null;let r={};n.humanBones!=null&&(yield Promise.all(n.humanBones.map(e=>E(this,null,function*(){let t=e.bone,n=e.node;if(t==null||n==null)return;if(n<0){console.warn(`A glTF node index for the humanoid bone ${t} is negative (${n}), ignoring this bone.`);return}let i=yield this.parser.getDependency(`node`,n);if(i==null){console.warn(`A glTF node bound to the humanoid bone ${t} (index = ${n}) does not exist`);return}let a=Ie[t]??t;if(r[a]!=null){console.warn(`Multiple bone entries for ${a} detected (index = ${n}), ignoring duplicated entries.`);return}r[a]={node:i}}))));let i=new Ne(this._ensureRequiredBonesExist(r),{autoUpdateHumanBones:this.autoUpdateHumanBones});if(e.scene.add(i.normalizedHumanBonesRoot),this.helperRoot){let e=new we(i);this.helperRoot.add(e),e.renderOrder=this.helperRoot.renderOrder}return i})}_ensureRequiredBonesExist(e){let t=Object.values(Pe).filter(t=>e[t]==null);if(t.length>0)throw Error(`VRMHumanoidLoaderPlugin: These humanoid bones are required but not exist: ${t.join(`, `)}`);return e}},Re=class extends h{constructor(){super(),this._currentTheta=0,this._currentRadius=0,this.theta=0,this.radius=0,this._currentTheta=0,this._currentRadius=0,this._attrPos=new t(new Float32Array(195),3),this.setAttribute(`position`,this._attrPos),this._attrIndex=new t(new Uint16Array(189),1),this.setIndex(this._attrIndex),this._buildIndex(),this.update()}update(){let e=!1;this._currentTheta!==this.theta&&(this._currentTheta=this.theta,e=!0),this._currentRadius!==this.radius&&(this._currentRadius=this.radius,e=!0),e&&this._buildPosition()}_buildPosition(){this._attrPos.setXYZ(0,0,0,0);for(let e=0;e<64;e++){let t=e/63*this._currentTheta;this._attrPos.setXYZ(e+1,this._currentRadius*Math.sin(t),0,this._currentRadius*Math.cos(t))}this._attrPos.needsUpdate=!0}_buildIndex(){for(let e=0;e<63;e++)this._attrIndex.setXYZ(e*3,0,e+1,e+2);this._attrIndex.needsUpdate=!0}},ze=class extends h{constructor(){super(),this.radius=0,this._currentRadius=0,this.tail=new f,this._currentTail=new f,this._attrPos=new t(new Float32Array(294),3),this.setAttribute(`position`,this._attrPos),this._attrIndex=new t(new Uint16Array(194),1),this.setIndex(this._attrIndex),this._buildIndex(),this.update()}update(){let e=!1;this._currentRadius!==this.radius&&(this._currentRadius=this.radius,e=!0),this._currentTail.equals(this.tail)||(this._currentTail.copy(this.tail),e=!0),e&&this._buildPosition()}_buildPosition(){for(let e=0;e<32;e++){let t=e/16*Math.PI;this._attrPos.setXYZ(e,Math.cos(t),Math.sin(t),0),this._attrPos.setXYZ(32+e,0,Math.cos(t),Math.sin(t)),this._attrPos.setXYZ(64+e,Math.sin(t),0,Math.cos(t))}this.scale(this._currentRadius,this._currentRadius,this._currentRadius),this.translate(this._currentTail.x,this._currentTail.y,this._currentTail.z),this._attrPos.setXYZ(96,0,0,0),this._attrPos.setXYZ(97,this._currentTail.x,this._currentTail.y,this._currentTail.z),this._attrPos.needsUpdate=!0}_buildIndex(){for(let e=0;e<32;e++){let t=(e+1)%32;this._attrIndex.setXY(e*2,e,t),this._attrIndex.setXY(64+e*2,32+e,32+t),this._attrIndex.setXY(128+e*2,64+e,64+t)}this._attrIndex.setXY(192,96,97),this._attrIndex.needsUpdate=!0}},Be=new y,Ve=new y,R=new f,He=new f,Ue=Math.sqrt(2)/2,We=new y(0,0,-Ue,Ue),Ge=new f(0,1,0),Ke=class extends x{constructor(t){super(),this.matrixAutoUpdate=!1,this.vrmLookAt=t;{let t=new Re;t.radius=.5;let n=new e({color:65280,transparent:!0,opacity:.5,side:2,depthTest:!1,depthWrite:!1});this._meshPitch=new l(t,n),this.add(this._meshPitch)}{let t=new Re;t.radius=.5;let n=new e({color:16711680,transparent:!0,opacity:.5,side:2,depthTest:!1,depthWrite:!1});this._meshYaw=new l(t,n),this.add(this._meshYaw)}{let e=new ze;e.radius=.1;let t=new p({color:16777215,depthTest:!1,depthWrite:!1});this._lineTarget=new r(e,t),this._lineTarget.frustumCulled=!1,this.add(this._lineTarget)}}dispose(){this._meshYaw.geometry.dispose(),this._meshYaw.material.dispose(),this._meshPitch.geometry.dispose(),this._meshPitch.material.dispose(),this._lineTarget.geometry.dispose(),this._lineTarget.material.dispose()}updateMatrixWorld(e){let t=S.DEG2RAD*this.vrmLookAt.yaw;this._meshYaw.geometry.theta=t,this._meshYaw.geometry.update();let n=S.DEG2RAD*this.vrmLookAt.pitch;this._meshPitch.geometry.theta=n,this._meshPitch.geometry.update(),this.vrmLookAt.getLookAtWorldPosition(R),this.vrmLookAt.getLookAtWorldQuaternion(Be),Be.multiply(this.vrmLookAt.getFaceFrontQuaternion(Ve)),this._meshYaw.position.copy(R),this._meshYaw.quaternion.copy(Be),this._meshPitch.position.copy(R),this._meshPitch.quaternion.copy(Be),this._meshPitch.quaternion.multiply(Ve.setFromAxisAngle(Ge,t)),this._meshPitch.quaternion.multiply(We);let{target:r,autoUpdate:i}=this.vrmLookAt;r!=null&&i&&(r.getWorldPosition(He).sub(R),this._lineTarget.geometry.tail.copy(He),this._lineTarget.geometry.update(),this._lineTarget.position.copy(R)),super.updateMatrixWorld(e)}},qe=new f,Je=new f;function Ye(e,t){return e.matrixWorld.decompose(qe,t,Je),t}function Xe(e){return[Math.atan2(-e.z,e.x),Math.atan2(e.y,Math.sqrt(e.x*e.x+e.z*e.z))]}function Ze(e){let t=Math.round(e/2/Math.PI);return e-2*Math.PI*t}var Qe=new f(0,0,1),$e=new f,et=new f,tt=new f,nt=new y,rt=new y,it=new y,at=new y,ot=new re,st=class e{constructor(e,t){this.offsetFromHeadBone=new f,this.autoUpdate=!0,this.faceFront=new f(0,0,1),this.humanoid=e,this.applier=t,this._yaw=0,this._pitch=0,this._needsUpdate=!0,this._restHeadWorldQuaternion=this.getLookAtWorldQuaternion(new y)}get yaw(){return this._yaw}set yaw(e){this._yaw=e,this._needsUpdate=!0}get pitch(){return this._pitch}set pitch(e){this._pitch=e,this._needsUpdate=!0}get euler(){return console.warn(`VRMLookAt: euler is deprecated. use getEuler() instead.`),this.getEuler(new re)}getEuler(e){return e.set(S.DEG2RAD*this._pitch,S.DEG2RAD*this._yaw,0,`YXZ`)}copy(e){if(this.humanoid!==e.humanoid)throw Error(`VRMLookAt: humanoid must be same in order to copy`);return this.offsetFromHeadBone.copy(e.offsetFromHeadBone),this.applier=e.applier,this.autoUpdate=e.autoUpdate,this.target=e.target,this.faceFront.copy(e.faceFront),this}clone(){return new e(this.humanoid,this.applier).copy(this)}reset(){this._yaw=0,this._pitch=0,this._needsUpdate=!0}getLookAtWorldPosition(e){let t=this.humanoid.getRawBoneNode(`head`);return e.copy(this.offsetFromHeadBone).applyMatrix4(t.matrixWorld)}getLookAtWorldQuaternion(e){return Ye(this.humanoid.getRawBoneNode(`head`),e)}getFaceFrontQuaternion(e){if(this.faceFront.distanceToSquared(Qe)<.01)return e.copy(this._restHeadWorldQuaternion).invert();let[t,n]=Xe(this.faceFront);return ot.set(0,.5*Math.PI+t,n,`YZX`),e.setFromEuler(ot).premultiply(at.copy(this._restHeadWorldQuaternion).invert())}getLookAtWorldDirection(e){return this.getLookAtWorldQuaternion(rt),this.getFaceFrontQuaternion(it),e.copy(Qe).applyQuaternion(rt).applyQuaternion(it).applyEuler(this.getEuler(ot))}lookAt(e){let t=nt.copy(this._restHeadWorldQuaternion).multiply(De(this.getLookAtWorldQuaternion(rt))),n=this.getLookAtWorldPosition(et),r=tt.copy(e).sub(n).applyQuaternion(t).normalize(),[i,a]=Xe(this.faceFront),[o,s]=Xe(r),c=Ze(o-i),l=Ze(a-s);this._yaw=S.RAD2DEG*c,this._pitch=S.RAD2DEG*l,this._needsUpdate=!0}update(e){this.target!=null&&this.autoUpdate&&this.lookAt(this.target.getWorldPosition($e)),this._needsUpdate&&(this._needsUpdate=!1,this.applier.applyYawPitch(this._yaw,this._pitch))}};st.EULER_ORDER=`YXZ`;var ct=st,lt=new f(0,0,1),z=new y,B=new y,V=new re(0,0,0,`YXZ`),H=class{constructor(e,t,n,r,i){this.humanoid=e,this.rangeMapHorizontalInner=t,this.rangeMapHorizontalOuter=n,this.rangeMapVerticalDown=r,this.rangeMapVerticalUp=i,this.faceFront=new f(0,0,1),this._restQuatLeftEye=new y,this._restQuatRightEye=new y,this._restLeftEyeParentWorldQuat=new y,this._restRightEyeParentWorldQuat=new y;let a=this.humanoid.getRawBoneNode(`leftEye`),o=this.humanoid.getRawBoneNode(`rightEye`);a&&(this._restQuatLeftEye.copy(a.quaternion),Ye(a.parent,this._restLeftEyeParentWorldQuat)),o&&(this._restQuatRightEye.copy(o.quaternion),Ye(o.parent,this._restRightEyeParentWorldQuat))}applyYawPitch(e,t){let n=this.humanoid.getRawBoneNode(`leftEye`),r=this.humanoid.getRawBoneNode(`rightEye`),i=this.humanoid.getNormalizedBoneNode(`leftEye`),a=this.humanoid.getNormalizedBoneNode(`rightEye`);n&&(V.x=t<0?-S.DEG2RAD*this.rangeMapVerticalDown.map(-t):S.DEG2RAD*this.rangeMapVerticalUp.map(t),V.y=e<0?-S.DEG2RAD*this.rangeMapHorizontalInner.map(-e):S.DEG2RAD*this.rangeMapHorizontalOuter.map(e),z.setFromEuler(V),this._getWorldFaceFrontQuat(B),i.quaternion.copy(B).multiply(z).multiply(B.invert()),z.copy(this._restLeftEyeParentWorldQuat),n.quaternion.copy(i.quaternion).multiply(z).premultiply(z.invert()).multiply(this._restQuatLeftEye)),r&&(V.x=t<0?-S.DEG2RAD*this.rangeMapVerticalDown.map(-t):S.DEG2RAD*this.rangeMapVerticalUp.map(t),V.y=e<0?-S.DEG2RAD*this.rangeMapHorizontalOuter.map(-e):S.DEG2RAD*this.rangeMapHorizontalInner.map(e),z.setFromEuler(V),this._getWorldFaceFrontQuat(B),a.quaternion.copy(B).multiply(z).multiply(B.invert()),z.copy(this._restRightEyeParentWorldQuat),r.quaternion.copy(a.quaternion).multiply(z).premultiply(z.invert()).multiply(this._restQuatRightEye))}lookAt(e){console.warn(`VRMLookAtBoneApplier: lookAt() is deprecated. use apply() instead.`);let t=S.RAD2DEG*e.y,n=S.RAD2DEG*e.x;this.applyYawPitch(t,n)}_getWorldFaceFrontQuat(e){if(this.faceFront.distanceToSquared(lt)<.01)return e.identity();let[t,n]=Xe(this.faceFront);return V.set(0,.5*Math.PI+t,n,`YZX`),e.setFromEuler(V)}};H.type=`bone`;var ut=class{constructor(e,t,n,r,i){this.expressions=e,this.rangeMapHorizontalInner=t,this.rangeMapHorizontalOuter=n,this.rangeMapVerticalDown=r,this.rangeMapVerticalUp=i}applyYawPitch(e,t){t<0?(this.expressions.setValue(`lookDown`,0),this.expressions.setValue(`lookUp`,this.rangeMapVerticalUp.map(-t))):(this.expressions.setValue(`lookUp`,0),this.expressions.setValue(`lookDown`,this.rangeMapVerticalDown.map(t))),e<0?(this.expressions.setValue(`lookLeft`,0),this.expressions.setValue(`lookRight`,this.rangeMapHorizontalOuter.map(-e))):(this.expressions.setValue(`lookRight`,0),this.expressions.setValue(`lookLeft`,this.rangeMapHorizontalOuter.map(e)))}lookAt(e){console.warn(`VRMLookAtBoneApplier: lookAt() is deprecated. use apply() instead.`);let t=S.RAD2DEG*e.y,n=S.RAD2DEG*e.x;this.applyYawPitch(t,n)}};ut.type=`expression`;var dt=class{constructor(e,t){this.inputMaxValue=e,this.outputScale=t}map(e){return this.outputScale*se(e/this.inputMaxValue)}},ft=new Set([`1.0`,`1.0-beta`]),pt=.01,mt=class{get name(){return`VRMLookAtLoaderPlugin`}constructor(e,t){this.parser=e,this.helperRoot=t?.helperRoot}afterRoot(e){return E(this,null,function*(){let t=e.userData.vrmHumanoid;if(t===null)return;if(t===void 0)throw Error(`VRMLookAtLoaderPlugin: vrmHumanoid is undefined. VRMHumanoidLoaderPlugin have to be used first`);let n=e.userData.vrmExpressionManager;if(n!==null){if(n===void 0)throw Error(`VRMLookAtLoaderPlugin: vrmExpressionManager is undefined. VRMExpressionLoaderPlugin have to be used first`);e.userData.vrmLookAt=yield this._import(e,t,n)}})}_import(e,t,n){return E(this,null,function*(){return t==null||n==null?null:(yield this._v1Import(e,t,n))||(yield this._v0Import(e,t,n))||null})}_v1Import(e,t,n){return E(this,null,function*(){let e=this.parser.json;if(e.extensionsUsed?.indexOf(`VRMC_vrm`)===-1)return null;let r=e.extensions?.VRMC_vrm;if(!r)return null;let i=r.specVersion;if(!ft.has(i))return console.warn(`VRMLookAtLoaderPlugin: Unknown VRMC_vrm specVersion "${i}"`),null;let a=r.lookAt;if(!a)return null;let o=a.type===`expression`?1:10,s=this._v1ImportRangeMap(a.rangeMapHorizontalInner,o),c=this._v1ImportRangeMap(a.rangeMapHorizontalOuter,o),l=this._v1ImportRangeMap(a.rangeMapVerticalDown,o),u=this._v1ImportRangeMap(a.rangeMapVerticalUp,o),d;d=a.type===`expression`?new ut(n,s,c,l,u):new H(t,s,c,l,u);let f=this._importLookAt(t,d);return f.offsetFromHeadBone.fromArray(a.offsetFromHeadBone??[0,.06,0]),f})}_v1ImportRangeMap(e,t){let n=e?.inputMaxValue??90,r=e?.outputScale??t;return n<pt&&(console.warn(`VRMLookAtLoaderPlugin: inputMaxValue of a range map is too small. Consider reviewing the range map!`),n=pt),new dt(n,r)}_v0Import(e,t,n){return E(this,null,function*(){let e=this.parser.json.extensions?.VRM;if(!e)return null;let r=e.firstPerson;if(!r)return null;let i=r.lookAtTypeName===`BlendShape`?1:10,a=this._v0ImportDegreeMap(r.lookAtHorizontalInner,i),o=this._v0ImportDegreeMap(r.lookAtHorizontalOuter,i),s=this._v0ImportDegreeMap(r.lookAtVerticalDown,i),c=this._v0ImportDegreeMap(r.lookAtVerticalUp,i),l;l=r.lookAtTypeName===`BlendShape`?new ut(n,a,o,s,c):new H(t,a,o,s,c);let u=this._importLookAt(t,l);return r.firstPersonBoneOffset?u.offsetFromHeadBone.set(r.firstPersonBoneOffset.x??0,r.firstPersonBoneOffset.y??.06,-(r.firstPersonBoneOffset.z??0)):u.offsetFromHeadBone.set(0,.06,0),u.faceFront.set(0,0,-1),l instanceof H&&l.faceFront.set(0,0,-1),u})}_v0ImportDegreeMap(e,t){let n=e?.curve;JSON.stringify(n)!==`[0,0,0,1,1,1,1,0]`&&console.warn(`Curves of LookAtDegreeMap defined in VRM 0.0 are not supported`);let r=e?.xRange??90,i=e?.yRange??t;return r<pt&&(console.warn(`VRMLookAtLoaderPlugin: xRange of a degree map is too small. Consider reviewing the degree map!`),r=pt),new dt(r,i)}_importLookAt(e,t){let n=new ct(e,t);if(this.helperRoot){let e=new Ke(n);this.helperRoot.add(e),e.renderOrder=this.helperRoot.renderOrder}return n}},ht={Bone:`bone`,Expression:`expression`};function gt(e,t){return typeof e!=`string`||e===``?``:(/^https?:\/\//i.test(t)&&/^\//.test(e)&&(t=t.replace(/(^https?:\/\/[^/]+).*/i,`$1`)),/^(https?:)?\/\//i.test(e)||/^data:.*,.*$/i.test(e)||/^blob:.*$/i.test(e)?e:t+e)}var _t=new Set([`1.0`,`1.0-beta`]),vt=class{get name(){return`VRMMetaLoaderPlugin`}constructor(e,t){this.parser=e,this.needThumbnailImage=t?.needThumbnailImage??!1,this.acceptLicenseUrls=t?.acceptLicenseUrls??[`https://vrm.dev/licenses/1.0/`],this.acceptV0Meta=t?.acceptV0Meta??!0}afterRoot(e){return E(this,null,function*(){e.userData.vrmMeta=yield this._import(e)})}_import(e){return E(this,null,function*(){return(yield this._v1Import(e))??(yield this._v0Import(e))??null})}_v1Import(e){return E(this,null,function*(){let e=this.parser.json;if(e.extensionsUsed?.indexOf(`VRMC_vrm`)===-1)return null;let t=e.extensions?.VRMC_vrm;if(t==null)return null;let n=t.specVersion;if(!_t.has(n))return console.warn(`VRMMetaLoaderPlugin: Unknown VRMC_vrm specVersion "${n}"`),null;let r=t.meta;if(!r)return null;let i=r.licenseUrl;if(!new Set(this.acceptLicenseUrls).has(i))throw Error(`VRMMetaLoaderPlugin: The license url "${i}" is not accepted`);let a;return this.needThumbnailImage&&r.thumbnailImage!=null&&(a=(yield this._extractGLTFImage(r.thumbnailImage))??void 0),{metaVersion:`1`,name:r.name,version:r.version,authors:r.authors,copyrightInformation:r.copyrightInformation,contactInformation:r.contactInformation,references:r.references,thirdPartyLicenses:r.thirdPartyLicenses,thumbnailImage:a,licenseUrl:r.licenseUrl,avatarPermission:r.avatarPermission,allowExcessivelyViolentUsage:r.allowExcessivelyViolentUsage,allowExcessivelySexualUsage:r.allowExcessivelySexualUsage,commercialUsage:r.commercialUsage,allowPoliticalOrReligiousUsage:r.allowPoliticalOrReligiousUsage,allowAntisocialOrHateUsage:r.allowAntisocialOrHateUsage,creditNotation:r.creditNotation,allowRedistribution:r.allowRedistribution,modification:r.modification,otherLicenseUrl:r.otherLicenseUrl}})}_v0Import(e){return E(this,null,function*(){let e=this.parser.json.extensions?.VRM;if(!e)return null;let t=e.meta;if(!t)return null;if(!this.acceptV0Meta)throw Error(`VRMMetaLoaderPlugin: Attempted to load VRM0.0 meta but acceptV0Meta is false`);let n;return this.needThumbnailImage&&t.texture!=null&&t.texture!==-1&&(n=yield this.parser.getDependency(`texture`,t.texture)),{metaVersion:`0`,allowedUserName:t.allowedUserName,author:t.author,commercialUssageName:t.commercialUssageName,contactInformation:t.contactInformation,licenseName:t.licenseName,otherLicenseUrl:t.otherLicenseUrl,otherPermissionUrl:t.otherPermissionUrl,reference:t.reference,sexualUssageName:t.sexualUssageName,texture:n??void 0,title:t.title,version:t.version,violentUssageName:t.violentUssageName}})}_extractGLTFImage(e){return E(this,null,function*(){let t=this.parser.json.images?.[e];if(t==null)return console.warn(`VRMMetaLoaderPlugin: Attempt to use images[${e}] of glTF as a thumbnail but the image doesn't exist`),null;let n=t.uri;if(t.bufferView!=null){let e=yield this.parser.getDependency(`bufferView`,t.bufferView),r=new Blob([e],{type:t.mimeType});n=URL.createObjectURL(r)}return n==null?(console.warn(`VRMMetaLoaderPlugin: Attempt to use images[${e}] of glTF as a thumbnail but the image couldn't load properly`),null):yield new d().loadAsync(gt(n,this.parser.options.path)).catch(e=>(console.error(e),console.warn(`VRMMetaLoaderPlugin: Failed to load a thumbnail image`),null))})}},yt=class{constructor(e){this.scene=e.scene,this.meta=e.meta,this.humanoid=e.humanoid,this.expressionManager=e.expressionManager,this.firstPerson=e.firstPerson,this.lookAt=e.lookAt}update(e){this.humanoid.update(),this.lookAt&&this.lookAt.update(e),this.expressionManager&&this.expressionManager.update()}},bt=class{get name(){return`VRMC_vrm`}constructor(e,t){this.parser=e;let n=t?.helperRoot,r=t?.autoUpdateHumanBones;this.expressionPlugin=t?.expressionPlugin??new me(e),this.firstPersonPlugin=t?.firstPersonPlugin??new ye(e),this.humanoidPlugin=t?.humanoidPlugin??new Le(e,{helperRoot:n,autoUpdateHumanBones:r}),this.lookAtPlugin=t?.lookAtPlugin??new mt(e,{helperRoot:n}),this.metaPlugin=t?.metaPlugin??new vt(e)}afterRoot(e){return E(this,null,function*(){yield this.metaPlugin.afterRoot(e),yield this.humanoidPlugin.afterRoot(e),yield this.expressionPlugin.afterRoot(e),yield this.lookAtPlugin.afterRoot(e),yield this.firstPersonPlugin.afterRoot(e);let t=e.userData.vrmMeta,n=e.userData.vrmHumanoid;if(t&&n){let r=new yt({scene:e.scene,expressionManager:e.userData.vrmExpressionManager,firstPerson:e.userData.vrmFirstPerson,humanoid:n,lookAt:e.userData.vrmLookAt,meta:t});e.userData.vrmCore=r}})}},xt=class extends yt{constructor(e){super(e),this.materials=e.materials,this.springBoneManager=e.springBoneManager,this.nodeConstraintManager=e.nodeConstraintManager}update(e){super.update(e),this.nodeConstraintManager&&this.nodeConstraintManager.update(),this.springBoneManager&&this.springBoneManager.update(e),this.materials&&this.materials.forEach(t=>{t.update&&t.update(e)})}},St=Object.defineProperty,Ct=Object.getOwnPropertySymbols,wt=Object.prototype.hasOwnProperty,Tt=Object.prototype.propertyIsEnumerable,Et=(e,t,n)=>t in e?St(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Dt=(e,t)=>{for(var n in t||={})wt.call(t,n)&&Et(e,n,t[n]);if(Ct)for(var n of Ct(t))Tt.call(t,n)&&Et(e,n,t[n]);return e},U=(e,t,n)=>new Promise((r,i)=>{var a=e=>{try{s(n.next(e))}catch(e){i(e)}},o=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(a,o);s((n=n.apply(e,t)).next())});function Ot(e,t){e.colorSpace=t}var kt=class{get pending(){return Promise.all(this._pendings)}constructor(e,t){this._parser=e,this._materialParams=t,this._pendings=[]}assignPrimitive(e,t){t!=null&&(this._materialParams[e]=t)}assignColor(e,t,n){if(t!=null){let r=new b().fromArray(t);n&&r.convertSRGBToLinear(),this._materialParams[e]=r}}assignTexture(e,t,n){return U(this,null,function*(){let r=U(this,null,function*(){if(t!=null){let r=yield this._parser.assignTexture(this._materialParams,e,t);if(r==null){console.warn(`GLTFMToonMaterialParamsAssignHelper: Failed to load texture. The rendering result may be wrong`);return}n&&Ot(r,`srgb`)}});return this._pendings.push(r),r})}assignTextureByIndex(e,t,n){return U(this,null,function*(){return this.assignTexture(e,t==null?void 0:{index:t},n)})}},At=`// #define PHONG
2
+
3
+ varying vec3 vViewPosition;
4
+
5
+ #ifndef FLAT_SHADED
6
+ varying vec3 vNormal;
7
+ #endif
8
+
9
+ #include <common>
10
+
11
+ // #include <uv_pars_vertex>
12
+ #ifdef MTOON_USE_UV
13
+ varying vec2 vUv;
14
+
15
+ // COMPAT: pre-r151 uses a common uvTransform
16
+ #if THREE_VRM_THREE_REVISION < 151
17
+ uniform mat3 uvTransform;
18
+ #endif
19
+ #endif
20
+
21
+ // #include <uv2_pars_vertex>
22
+ // COMAPT: pre-r151 uses uv2 for lightMap and aoMap
23
+ #if THREE_VRM_THREE_REVISION < 151
24
+ #if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )
25
+ attribute vec2 uv2;
26
+ varying vec2 vUv2;
27
+ uniform mat3 uv2Transform;
28
+ #endif
29
+ #endif
30
+
31
+ // #include <displacementmap_pars_vertex>
32
+ // #include <envmap_pars_vertex>
33
+ #include <color_pars_vertex>
34
+ #include <fog_pars_vertex>
35
+ #include <morphtarget_pars_vertex>
36
+ #include <skinning_pars_vertex>
37
+ #include <shadowmap_pars_vertex>
38
+ #include <logdepthbuf_pars_vertex>
39
+ #include <clipping_planes_pars_vertex>
40
+
41
+ #ifdef USE_OUTLINEWIDTHMULTIPLYTEXTURE
42
+ uniform sampler2D outlineWidthMultiplyTexture;
43
+ uniform mat3 outlineWidthMultiplyTextureUvTransform;
44
+ #endif
45
+
46
+ uniform float outlineWidthFactor;
47
+
48
+ void main() {
49
+
50
+ // #include <uv_vertex>
51
+ #ifdef MTOON_USE_UV
52
+ // COMPAT: pre-r151 uses a common uvTransform
53
+ #if THREE_VRM_THREE_REVISION >= 151
54
+ vUv = uv;
55
+ #else
56
+ vUv = ( uvTransform * vec3( uv, 1 ) ).xy;
57
+ #endif
58
+ #endif
59
+
60
+ // #include <uv2_vertex>
61
+ // COMAPT: pre-r151 uses uv2 for lightMap and aoMap
62
+ #if THREE_VRM_THREE_REVISION < 151
63
+ #if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )
64
+ vUv2 = ( uv2Transform * vec3( uv2, 1 ) ).xy;
65
+ #endif
66
+ #endif
67
+
68
+ #include <color_vertex>
69
+
70
+ #include <beginnormal_vertex>
71
+ #include <morphnormal_vertex>
72
+ #include <skinbase_vertex>
73
+ #include <skinnormal_vertex>
74
+
75
+ // we need this to compute the outline properly
76
+ objectNormal = normalize( objectNormal );
77
+
78
+ #include <defaultnormal_vertex>
79
+
80
+ #ifndef FLAT_SHADED // Normal computed with derivatives when FLAT_SHADED
81
+ vNormal = normalize( transformedNormal );
82
+ #endif
83
+
84
+ #include <begin_vertex>
85
+
86
+ #include <morphtarget_vertex>
87
+ #include <skinning_vertex>
88
+ // #include <displacementmap_vertex>
89
+ #include <project_vertex>
90
+ #include <logdepthbuf_vertex>
91
+ #include <clipping_planes_vertex>
92
+
93
+ vViewPosition = - mvPosition.xyz;
94
+
95
+ #ifdef OUTLINE
96
+ float worldNormalLength = length( transformedNormal );
97
+ vec3 outlineOffset = outlineWidthFactor * worldNormalLength * objectNormal;
98
+
99
+ #ifdef USE_OUTLINEWIDTHMULTIPLYTEXTURE
100
+ vec2 outlineWidthMultiplyTextureUv = ( outlineWidthMultiplyTextureUvTransform * vec3( vUv, 1 ) ).xy;
101
+ float outlineTex = texture2D( outlineWidthMultiplyTexture, outlineWidthMultiplyTextureUv ).g;
102
+ outlineOffset *= outlineTex;
103
+ #endif
104
+
105
+ #ifdef OUTLINE_WIDTH_SCREEN
106
+ outlineOffset *= vViewPosition.z / projectionMatrix[ 1 ].y;
107
+ #endif
108
+
109
+ gl_Position = projectionMatrix * modelViewMatrix * vec4( outlineOffset + transformed, 1.0 );
110
+
111
+ gl_Position.z += 1E-6 * gl_Position.w; // anti-artifact magic
112
+ #endif
113
+
114
+ #include <worldpos_vertex>
115
+ // #include <envmap_vertex>
116
+ #include <shadowmap_vertex>
117
+ #include <fog_vertex>
118
+
119
+ }`,jt=`// #define PHONG
120
+
121
+ uniform vec3 litFactor;
122
+
123
+ uniform float opacity;
124
+
125
+ uniform vec3 shadeColorFactor;
126
+ #ifdef USE_SHADEMULTIPLYTEXTURE
127
+ uniform sampler2D shadeMultiplyTexture;
128
+ uniform mat3 shadeMultiplyTextureUvTransform;
129
+ #endif
130
+
131
+ uniform float shadingShiftFactor;
132
+ uniform float shadingToonyFactor;
133
+
134
+ #ifdef USE_SHADINGSHIFTTEXTURE
135
+ uniform sampler2D shadingShiftTexture;
136
+ uniform mat3 shadingShiftTextureUvTransform;
137
+ uniform float shadingShiftTextureScale;
138
+ #endif
139
+
140
+ uniform float giEqualizationFactor;
141
+
142
+ uniform vec3 parametricRimColorFactor;
143
+ #ifdef USE_RIMMULTIPLYTEXTURE
144
+ uniform sampler2D rimMultiplyTexture;
145
+ uniform mat3 rimMultiplyTextureUvTransform;
146
+ #endif
147
+ uniform float rimLightingMixFactor;
148
+ uniform float parametricRimFresnelPowerFactor;
149
+ uniform float parametricRimLiftFactor;
150
+
151
+ #ifdef USE_MATCAPTEXTURE
152
+ uniform vec3 matcapFactor;
153
+ uniform sampler2D matcapTexture;
154
+ uniform mat3 matcapTextureUvTransform;
155
+ #endif
156
+
157
+ uniform vec3 emissive;
158
+ uniform float emissiveIntensity;
159
+
160
+ uniform vec3 outlineColorFactor;
161
+ uniform float outlineLightingMixFactor;
162
+
163
+ #ifdef USE_UVANIMATIONMASKTEXTURE
164
+ uniform sampler2D uvAnimationMaskTexture;
165
+ uniform mat3 uvAnimationMaskTextureUvTransform;
166
+ #endif
167
+
168
+ uniform float uvAnimationScrollXOffset;
169
+ uniform float uvAnimationScrollYOffset;
170
+ uniform float uvAnimationRotationPhase;
171
+
172
+ #include <common>
173
+ #include <packing>
174
+ #include <dithering_pars_fragment>
175
+ #include <color_pars_fragment>
176
+
177
+ // #include <uv_pars_fragment>
178
+ #if ( defined( MTOON_USE_UV ) && !defined( MTOON_UVS_VERTEX_ONLY ) )
179
+ varying vec2 vUv;
180
+ #endif
181
+
182
+ // #include <uv2_pars_fragment>
183
+ // COMAPT: pre-r151 uses uv2 for lightMap and aoMap
184
+ #if THREE_VRM_THREE_REVISION < 151
185
+ #if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )
186
+ varying vec2 vUv2;
187
+ #endif
188
+ #endif
189
+
190
+ #include <map_pars_fragment>
191
+
192
+ #ifdef USE_MAP
193
+ uniform mat3 mapUvTransform;
194
+ #endif
195
+
196
+ // #include <alphamap_pars_fragment>
197
+
198
+ #include <alphatest_pars_fragment>
199
+
200
+ #include <aomap_pars_fragment>
201
+ // #include <lightmap_pars_fragment>
202
+ #include <emissivemap_pars_fragment>
203
+
204
+ #ifdef USE_EMISSIVEMAP
205
+ uniform mat3 emissiveMapUvTransform;
206
+ #endif
207
+
208
+ // #include <envmap_common_pars_fragment>
209
+ // #include <envmap_pars_fragment>
210
+ // #include <cube_uv_reflection_fragment>
211
+ #include <fog_pars_fragment>
212
+
213
+ // #include <bsdfs>
214
+ // COMPAT: pre-r151 doesn't have BRDF_Lambert in <common>
215
+ #if THREE_VRM_THREE_REVISION < 151
216
+ vec3 BRDF_Lambert( const in vec3 diffuseColor ) {
217
+ return RECIPROCAL_PI * diffuseColor;
218
+ }
219
+ #endif
220
+
221
+ #include <lights_pars_begin>
222
+
223
+ #include <normal_pars_fragment>
224
+
225
+ // #include <lights_phong_pars_fragment>
226
+ varying vec3 vViewPosition;
227
+
228
+ struct MToonMaterial {
229
+ vec3 diffuseColor;
230
+ vec3 shadeColor;
231
+ float shadingShift;
232
+ };
233
+
234
+ float linearstep( float a, float b, float t ) {
235
+ return clamp( ( t - a ) / ( b - a ), 0.0, 1.0 );
236
+ }
237
+
238
+ /**
239
+ * Convert NdotL into toon shading factor using shadingShift and shadingToony
240
+ */
241
+ float getShading(
242
+ const in float dotNL,
243
+ const in float shadow,
244
+ const in float shadingShift
245
+ ) {
246
+ float shading = dotNL;
247
+ shading = shading + shadingShift;
248
+ shading = linearstep( -1.0 + shadingToonyFactor, 1.0 - shadingToonyFactor, shading );
249
+ shading *= shadow;
250
+ return shading;
251
+ }
252
+
253
+ /**
254
+ * Mix diffuseColor and shadeColor using shading factor and light color
255
+ */
256
+ vec3 getDiffuse(
257
+ const in MToonMaterial material,
258
+ const in float shading,
259
+ in vec3 lightColor
260
+ ) {
261
+ #ifdef DEBUG_LITSHADERATE
262
+ return vec3( BRDF_Lambert( shading * lightColor ) );
263
+ #endif
264
+
265
+ vec3 col = lightColor * BRDF_Lambert( mix( material.shadeColor, material.diffuseColor, shading ) );
266
+
267
+ // The "comment out if you want to PBR absolutely" line
268
+ #ifdef V0_COMPAT_SHADE
269
+ col = min( col, material.diffuseColor );
270
+ #endif
271
+
272
+ return col;
273
+ }
274
+
275
+ // COMPAT: pre-r156 uses a struct GeometricContext
276
+ #if THREE_VRM_THREE_REVISION >= 157
277
+ void RE_Direct_MToon( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in MToonMaterial material, const in float shadow, inout ReflectedLight reflectedLight ) {
278
+ float dotNL = clamp( dot( geometryNormal, directLight.direction ), -1.0, 1.0 );
279
+ vec3 irradiance = directLight.color;
280
+
281
+ // directSpecular will be used for rim lighting, not an actual specular
282
+ reflectedLight.directSpecular += irradiance;
283
+
284
+ irradiance *= dotNL;
285
+
286
+ float shading = getShading( dotNL, shadow, material.shadingShift );
287
+
288
+ // toon shaded diffuse
289
+ reflectedLight.directDiffuse += getDiffuse( material, shading, directLight.color );
290
+ }
291
+
292
+ void RE_IndirectDiffuse_MToon( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in MToonMaterial material, inout ReflectedLight reflectedLight ) {
293
+ // indirect diffuse will use diffuseColor, no shadeColor involved
294
+ reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );
295
+
296
+ // directSpecular will be used for rim lighting, not an actual specular
297
+ reflectedLight.directSpecular += irradiance;
298
+ }
299
+ #else
300
+ void RE_Direct_MToon( const in IncidentLight directLight, const in GeometricContext geometry, const in MToonMaterial material, const in float shadow, inout ReflectedLight reflectedLight ) {
301
+ float dotNL = clamp( dot( geometry.normal, directLight.direction ), -1.0, 1.0 );
302
+ vec3 irradiance = directLight.color;
303
+
304
+ // directSpecular will be used for rim lighting, not an actual specular
305
+ reflectedLight.directSpecular += irradiance;
306
+
307
+ irradiance *= dotNL;
308
+
309
+ float shading = getShading( dotNL, shadow, material.shadingShift );
310
+
311
+ // toon shaded diffuse
312
+ reflectedLight.directDiffuse += getDiffuse( material, shading, directLight.color );
313
+ }
314
+
315
+ void RE_IndirectDiffuse_MToon( const in vec3 irradiance, const in GeometricContext geometry, const in MToonMaterial material, inout ReflectedLight reflectedLight ) {
316
+ // indirect diffuse will use diffuseColor, no shadeColor involved
317
+ reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );
318
+
319
+ // directSpecular will be used for rim lighting, not an actual specular
320
+ reflectedLight.directSpecular += irradiance;
321
+ }
322
+ #endif
323
+
324
+ #define RE_Direct RE_Direct_MToon
325
+ #define RE_IndirectDiffuse RE_IndirectDiffuse_MToon
326
+ #define Material_LightProbeLOD( material ) (0)
327
+
328
+ #include <shadowmap_pars_fragment>
329
+ // #include <bumpmap_pars_fragment>
330
+
331
+ // #include <normalmap_pars_fragment>
332
+ #ifdef USE_NORMALMAP
333
+
334
+ uniform sampler2D normalMap;
335
+ uniform mat3 normalMapUvTransform;
336
+ uniform vec2 normalScale;
337
+
338
+ #endif
339
+
340
+ // COMPAT: pre-r151
341
+ // USE_NORMALMAP_OBJECTSPACE used to be OBJECTSPACE_NORMALMAP in pre-r151
342
+ #if defined( USE_NORMALMAP_OBJECTSPACE ) || defined( OBJECTSPACE_NORMALMAP )
343
+
344
+ uniform mat3 normalMatrix;
345
+
346
+ #endif
347
+
348
+ // COMPAT: pre-r151
349
+ // USE_NORMALMAP_TANGENTSPACE used to be TANGENTSPACE_NORMALMAP in pre-r151
350
+ #if ! defined ( USE_TANGENT ) && ( defined ( USE_NORMALMAP_TANGENTSPACE ) || defined ( TANGENTSPACE_NORMALMAP ) )
351
+
352
+ // Per-Pixel Tangent Space Normal Mapping
353
+ // http://hacksoflife.blogspot.ch/2009/11/per-pixel-tangent-space-normal-mapping.html
354
+
355
+ // three-vrm specific change: it requires \`uv\` as an input in order to support uv scrolls
356
+
357
+ // Temporary compat against shader change @ Three.js r126, r151
358
+ #if THREE_VRM_THREE_REVISION >= 151
359
+
360
+ mat3 getTangentFrame( vec3 eye_pos, vec3 surf_norm, vec2 uv ) {
361
+
362
+ vec3 q0 = dFdx( eye_pos.xyz );
363
+ vec3 q1 = dFdy( eye_pos.xyz );
364
+ vec2 st0 = dFdx( uv.st );
365
+ vec2 st1 = dFdy( uv.st );
366
+
367
+ vec3 N = surf_norm;
368
+
369
+ vec3 q1perp = cross( q1, N );
370
+ vec3 q0perp = cross( N, q0 );
371
+
372
+ vec3 T = q1perp * st0.x + q0perp * st1.x;
373
+ vec3 B = q1perp * st0.y + q0perp * st1.y;
374
+
375
+ float det = max( dot( T, T ), dot( B, B ) );
376
+ float scale = ( det == 0.0 ) ? 0.0 : inversesqrt( det );
377
+
378
+ return mat3( T * scale, B * scale, N );
379
+
380
+ }
381
+
382
+ #else
383
+
384
+ vec3 perturbNormal2Arb( vec2 uv, vec3 eye_pos, vec3 surf_norm, vec3 mapN, float faceDirection ) {
385
+
386
+ vec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) );
387
+ vec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) );
388
+ vec2 st0 = dFdx( uv.st );
389
+ vec2 st1 = dFdy( uv.st );
390
+
391
+ vec3 N = normalize( surf_norm );
392
+
393
+ vec3 q1perp = cross( q1, N );
394
+ vec3 q0perp = cross( N, q0 );
395
+
396
+ vec3 T = q1perp * st0.x + q0perp * st1.x;
397
+ vec3 B = q1perp * st0.y + q0perp * st1.y;
398
+
399
+ // three-vrm specific change: Workaround for the issue that happens when delta of uv = 0.0
400
+ // TODO: Is this still required? Or shall I make a PR about it?
401
+ if ( length( T ) == 0.0 || length( B ) == 0.0 ) {
402
+ return surf_norm;
403
+ }
404
+
405
+ float det = max( dot( T, T ), dot( B, B ) );
406
+ float scale = ( det == 0.0 ) ? 0.0 : faceDirection * inversesqrt( det );
407
+
408
+ return normalize( T * ( mapN.x * scale ) + B * ( mapN.y * scale ) + N * mapN.z );
409
+
410
+ }
411
+
412
+ #endif
413
+
414
+ #endif
415
+
416
+ // #include <specularmap_pars_fragment>
417
+ #include <logdepthbuf_pars_fragment>
418
+ #include <clipping_planes_pars_fragment>
419
+
420
+ // == post correction ==========================================================
421
+ void postCorrection() {
422
+ #include <tonemapping_fragment>
423
+ #include <colorspace_fragment>
424
+ #include <fog_fragment>
425
+ #include <premultiplied_alpha_fragment>
426
+ #include <dithering_fragment>
427
+ }
428
+
429
+ // == main procedure ===========================================================
430
+ void main() {
431
+ #include <clipping_planes_fragment>
432
+
433
+ vec2 uv = vec2(0.5, 0.5);
434
+
435
+ #if ( defined( MTOON_USE_UV ) && !defined( MTOON_UVS_VERTEX_ONLY ) )
436
+ uv = vUv;
437
+
438
+ float uvAnimMask = 1.0;
439
+ #ifdef USE_UVANIMATIONMASKTEXTURE
440
+ vec2 uvAnimationMaskTextureUv = ( uvAnimationMaskTextureUvTransform * vec3( uv, 1 ) ).xy;
441
+ uvAnimMask = texture2D( uvAnimationMaskTexture, uvAnimationMaskTextureUv ).b;
442
+ #endif
443
+
444
+ float uvRotCos = cos( uvAnimationRotationPhase * uvAnimMask );
445
+ float uvRotSin = sin( uvAnimationRotationPhase * uvAnimMask );
446
+ uv = mat2( uvRotCos, -uvRotSin, uvRotSin, uvRotCos ) * ( uv - 0.5 ) + 0.5;
447
+ uv = uv + vec2( uvAnimationScrollXOffset, uvAnimationScrollYOffset ) * uvAnimMask;
448
+ #endif
449
+
450
+ #ifdef DEBUG_UV
451
+ gl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );
452
+ #if ( defined( MTOON_USE_UV ) && !defined( MTOON_UVS_VERTEX_ONLY ) )
453
+ gl_FragColor = vec4( uv, 0.0, 1.0 );
454
+ #endif
455
+ return;
456
+ #endif
457
+
458
+ vec4 diffuseColor = vec4( litFactor, opacity );
459
+ ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );
460
+ vec3 totalEmissiveRadiance = emissive * emissiveIntensity;
461
+
462
+ #include <logdepthbuf_fragment>
463
+
464
+ // #include <map_fragment>
465
+ #ifdef USE_MAP
466
+ vec2 mapUv = ( mapUvTransform * vec3( uv, 1 ) ).xy;
467
+ vec4 sampledDiffuseColor = texture2D( map, mapUv );
468
+ #ifdef DECODE_VIDEO_TEXTURE
469
+ sampledDiffuseColor = vec4( mix( pow( sampledDiffuseColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), sampledDiffuseColor.rgb * 0.0773993808, vec3( lessThanEqual( sampledDiffuseColor.rgb, vec3( 0.04045 ) ) ) ), sampledDiffuseColor.w );
470
+ #endif
471
+ diffuseColor *= sampledDiffuseColor;
472
+ #endif
473
+
474
+ // #include <color_fragment>
475
+ #if ( defined( USE_COLOR ) && !defined( IGNORE_VERTEX_COLOR ) )
476
+ diffuseColor.rgb *= vColor;
477
+ #endif
478
+
479
+ // #include <alphamap_fragment>
480
+
481
+ #include <alphatest_fragment>
482
+
483
+ // #include <specularmap_fragment>
484
+
485
+ // #include <normal_fragment_begin>
486
+ float faceDirection = gl_FrontFacing ? 1.0 : -1.0;
487
+
488
+ #ifdef FLAT_SHADED
489
+
490
+ vec3 fdx = dFdx( vViewPosition );
491
+ vec3 fdy = dFdy( vViewPosition );
492
+ vec3 normal = normalize( cross( fdx, fdy ) );
493
+
494
+ #else
495
+
496
+ vec3 normal = normalize( vNormal );
497
+
498
+ #ifdef DOUBLE_SIDED
499
+
500
+ normal *= faceDirection;
501
+
502
+ #endif
503
+
504
+ #endif
505
+
506
+ #ifdef USE_NORMALMAP
507
+
508
+ vec2 normalMapUv = ( normalMapUvTransform * vec3( uv, 1 ) ).xy;
509
+
510
+ #endif
511
+
512
+ #ifdef USE_NORMALMAP_TANGENTSPACE
513
+
514
+ #ifdef USE_TANGENT
515
+
516
+ mat3 tbn = mat3( normalize( vTangent ), normalize( vBitangent ), normal );
517
+
518
+ #else
519
+
520
+ mat3 tbn = getTangentFrame( - vViewPosition, normal, normalMapUv );
521
+
522
+ #endif
523
+
524
+ #if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )
525
+
526
+ tbn[0] *= faceDirection;
527
+ tbn[1] *= faceDirection;
528
+
529
+ #endif
530
+
531
+ #endif
532
+
533
+ #ifdef USE_CLEARCOAT_NORMALMAP
534
+
535
+ #ifdef USE_TANGENT
536
+
537
+ mat3 tbn2 = mat3( normalize( vTangent ), normalize( vBitangent ), normal );
538
+
539
+ #else
540
+
541
+ mat3 tbn2 = getTangentFrame( - vViewPosition, normal, vClearcoatNormalMapUv );
542
+
543
+ #endif
544
+
545
+ #if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )
546
+
547
+ tbn2[0] *= faceDirection;
548
+ tbn2[1] *= faceDirection;
549
+
550
+ #endif
551
+
552
+ #endif
553
+
554
+ // non perturbed normal for clearcoat among others
555
+
556
+ vec3 nonPerturbedNormal = normal;
557
+
558
+ #ifdef OUTLINE
559
+ normal *= -1.0;
560
+ #endif
561
+
562
+ // #include <normal_fragment_maps>
563
+
564
+ // COMPAT: pre-r151
565
+ // USE_NORMALMAP_OBJECTSPACE used to be OBJECTSPACE_NORMALMAP in pre-r151
566
+ #if defined( USE_NORMALMAP_OBJECTSPACE ) || defined( OBJECTSPACE_NORMALMAP )
567
+
568
+ normal = texture2D( normalMap, normalMapUv ).xyz * 2.0 - 1.0; // overrides both flatShading and attribute normals
569
+
570
+ #ifdef FLIP_SIDED
571
+
572
+ normal = - normal;
573
+
574
+ #endif
575
+
576
+ #ifdef DOUBLE_SIDED
577
+
578
+ normal = normal * faceDirection;
579
+
580
+ #endif
581
+
582
+ normal = normalize( normalMatrix * normal );
583
+
584
+ // COMPAT: pre-r151
585
+ // USE_NORMALMAP_TANGENTSPACE used to be TANGENTSPACE_NORMALMAP in pre-r151
586
+ #elif defined( USE_NORMALMAP_TANGENTSPACE ) || defined( TANGENTSPACE_NORMALMAP )
587
+
588
+ vec3 mapN = texture2D( normalMap, normalMapUv ).xyz * 2.0 - 1.0;
589
+ mapN.xy *= normalScale;
590
+
591
+ // COMPAT: pre-r151
592
+ #if THREE_VRM_THREE_REVISION >= 151 || defined( USE_TANGENT )
593
+
594
+ normal = normalize( tbn * mapN );
595
+
596
+ #else
597
+
598
+ normal = perturbNormal2Arb( uv, -vViewPosition, normal, mapN, faceDirection );
599
+
600
+ #endif
601
+
602
+ #endif
603
+
604
+ // #include <emissivemap_fragment>
605
+ #ifdef USE_EMISSIVEMAP
606
+ vec2 emissiveMapUv = ( emissiveMapUvTransform * vec3( uv, 1 ) ).xy;
607
+ totalEmissiveRadiance *= texture2D( emissiveMap, emissiveMapUv ).rgb;
608
+ #endif
609
+
610
+ #ifdef DEBUG_NORMAL
611
+ gl_FragColor = vec4( 0.5 + 0.5 * normal, 1.0 );
612
+ return;
613
+ #endif
614
+
615
+ // -- MToon: lighting --------------------------------------------------------
616
+ // accumulation
617
+ // #include <lights_phong_fragment>
618
+ MToonMaterial material;
619
+
620
+ material.diffuseColor = diffuseColor.rgb;
621
+
622
+ material.shadeColor = shadeColorFactor;
623
+ #ifdef USE_SHADEMULTIPLYTEXTURE
624
+ vec2 shadeMultiplyTextureUv = ( shadeMultiplyTextureUvTransform * vec3( uv, 1 ) ).xy;
625
+ material.shadeColor *= texture2D( shadeMultiplyTexture, shadeMultiplyTextureUv ).rgb;
626
+ #endif
627
+
628
+ #if ( defined( USE_COLOR ) && !defined( IGNORE_VERTEX_COLOR ) )
629
+ material.shadeColor.rgb *= vColor;
630
+ #endif
631
+
632
+ material.shadingShift = shadingShiftFactor;
633
+ #ifdef USE_SHADINGSHIFTTEXTURE
634
+ vec2 shadingShiftTextureUv = ( shadingShiftTextureUvTransform * vec3( uv, 1 ) ).xy;
635
+ material.shadingShift += texture2D( shadingShiftTexture, shadingShiftTextureUv ).r * shadingShiftTextureScale;
636
+ #endif
637
+
638
+ // #include <lights_fragment_begin>
639
+
640
+ // MToon Specific changes:
641
+ // Since we want to take shadows into account of shading instead of irradiance,
642
+ // we had to modify the codes that multiplies the results of shadowmap into color of direct lights.
643
+
644
+ // COMPAT: pre-r156 uses a struct GeometricContext
645
+ #if THREE_VRM_THREE_REVISION >= 157
646
+ vec3 geometryPosition = - vViewPosition;
647
+ vec3 geometryNormal = normal;
648
+ vec3 geometryViewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );
649
+
650
+ vec3 geometryClearcoatNormal;
651
+
652
+ #ifdef USE_CLEARCOAT
653
+
654
+ geometryClearcoatNormal = clearcoatNormal;
655
+
656
+ #endif
657
+ #else
658
+ GeometricContext geometry;
659
+
660
+ geometry.position = - vViewPosition;
661
+ geometry.normal = normal;
662
+ geometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );
663
+
664
+ #ifdef USE_CLEARCOAT
665
+
666
+ geometry.clearcoatNormal = clearcoatNormal;
667
+
668
+ #endif
669
+ #endif
670
+
671
+ IncidentLight directLight;
672
+
673
+ // since these variables will be used in unrolled loop, we have to define in prior
674
+ float shadow;
675
+
676
+ #if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )
677
+
678
+ PointLight pointLight;
679
+ #if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0
680
+ PointLightShadow pointLightShadow;
681
+ #endif
682
+
683
+ #pragma unroll_loop_start
684
+ for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {
685
+
686
+ pointLight = pointLights[ i ];
687
+
688
+ // COMPAT: pre-r156 uses a struct GeometricContext
689
+ #if THREE_VRM_THREE_REVISION >= 157
690
+ getPointLightInfo( pointLight, geometryPosition, directLight );
691
+ #else
692
+ getPointLightInfo( pointLight, geometry, directLight );
693
+ #endif
694
+
695
+ shadow = 1.0;
696
+ #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )
697
+ pointLightShadow = pointLightShadows[ i ];
698
+ // COMPAT: pre-r166
699
+ // r166 introduced shadowIntensity
700
+ #if THREE_VRM_THREE_REVISION >= 166
701
+ shadow = all( bvec2( directLight.visible, receiveShadow ) ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowIntensity, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;
702
+ #else
703
+ shadow = all( bvec2( directLight.visible, receiveShadow ) ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;
704
+ #endif
705
+ #endif
706
+
707
+ // COMPAT: pre-r156 uses a struct GeometricContext
708
+ #if THREE_VRM_THREE_REVISION >= 157
709
+ RE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, shadow, reflectedLight );
710
+ #else
711
+ RE_Direct( directLight, geometry, material, shadow, reflectedLight );
712
+ #endif
713
+
714
+ }
715
+ #pragma unroll_loop_end
716
+
717
+ #endif
718
+
719
+ #if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )
720
+
721
+ SpotLight spotLight;
722
+ // COMPAT: pre-r144 uses NUM_SPOT_LIGHT_SHADOWS, r144+ uses NUM_SPOT_LIGHT_COORDS
723
+ #if THREE_VRM_THREE_REVISION >= 144
724
+ #if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_COORDS > 0
725
+ SpotLightShadow spotLightShadow;
726
+ #endif
727
+ #elif defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0
728
+ SpotLightShadow spotLightShadow;
729
+ #endif
730
+
731
+ #pragma unroll_loop_start
732
+ for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {
733
+
734
+ spotLight = spotLights[ i ];
735
+
736
+ // COMPAT: pre-r156 uses a struct GeometricContext
737
+ #if THREE_VRM_THREE_REVISION >= 157
738
+ getSpotLightInfo( spotLight, geometryPosition, directLight );
739
+ #else
740
+ getSpotLightInfo( spotLight, geometry, directLight );
741
+ #endif
742
+
743
+ shadow = 1.0;
744
+ // COMPAT: pre-r144 uses NUM_SPOT_LIGHT_SHADOWS and vSpotShadowCoord, r144+ uses NUM_SPOT_LIGHT_COORDS and vSpotLightCoord
745
+ // COMPAT: pre-r166 does not have shadowIntensity, r166+ has shadowIntensity
746
+ #if THREE_VRM_THREE_REVISION >= 166
747
+ #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_COORDS )
748
+ spotLightShadow = spotLightShadows[ i ];
749
+ shadow = all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowIntensity, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;
750
+ #endif
751
+ #elif THREE_VRM_THREE_REVISION >= 144
752
+ #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_COORDS )
753
+ spotLightShadow = spotLightShadows[ i ];
754
+ shadow = all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;
755
+ #endif
756
+ #elif defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )
757
+ spotLightShadow = spotLightShadows[ i ];
758
+ shadow = all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;
759
+ #endif
760
+
761
+ // COMPAT: pre-r156 uses a struct GeometricContext
762
+ #if THREE_VRM_THREE_REVISION >= 157
763
+ RE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, shadow, reflectedLight );
764
+ #else
765
+ RE_Direct( directLight, geometry, material, shadow, reflectedLight );
766
+ #endif
767
+
768
+ }
769
+ #pragma unroll_loop_end
770
+
771
+ #endif
772
+
773
+ #if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )
774
+
775
+ DirectionalLight directionalLight;
776
+ #if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0
777
+ DirectionalLightShadow directionalLightShadow;
778
+ #endif
779
+
780
+ #pragma unroll_loop_start
781
+ for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {
782
+
783
+ directionalLight = directionalLights[ i ];
784
+
785
+ // COMPAT: pre-r156 uses a struct GeometricContext
786
+ #if THREE_VRM_THREE_REVISION >= 157
787
+ getDirectionalLightInfo( directionalLight, directLight );
788
+ #else
789
+ getDirectionalLightInfo( directionalLight, geometry, directLight );
790
+ #endif
791
+
792
+ shadow = 1.0;
793
+ #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )
794
+ directionalLightShadow = directionalLightShadows[ i ];
795
+ // COMPAT: pre-r166
796
+ // r166 introduced shadowIntensity
797
+ #if THREE_VRM_THREE_REVISION >= 166
798
+ shadow = all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowIntensity, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;
799
+ #else
800
+ shadow = all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;
801
+ #endif
802
+ #endif
803
+
804
+ // COMPAT: pre-r156 uses a struct GeometricContext
805
+ #if THREE_VRM_THREE_REVISION >= 157
806
+ RE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, shadow, reflectedLight );
807
+ #else
808
+ RE_Direct( directLight, geometry, material, shadow, reflectedLight );
809
+ #endif
810
+
811
+ }
812
+ #pragma unroll_loop_end
813
+
814
+ #endif
815
+
816
+ // #if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )
817
+
818
+ // RectAreaLight rectAreaLight;
819
+
820
+ // #pragma unroll_loop_start
821
+ // for ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {
822
+
823
+ // rectAreaLight = rectAreaLights[ i ];
824
+ // RE_Direct_RectArea( rectAreaLight, geometry, material, reflectedLight );
825
+
826
+ // }
827
+ // #pragma unroll_loop_end
828
+
829
+ // #endif
830
+
831
+ #if defined( RE_IndirectDiffuse )
832
+
833
+ vec3 iblIrradiance = vec3( 0.0 );
834
+
835
+ vec3 irradiance = getAmbientLightIrradiance( ambientLightColor );
836
+
837
+ // COMPAT: pre-r156 uses a struct GeometricContext
838
+ // COMPAT: pre-r156 doesn't have a define USE_LIGHT_PROBES
839
+ #if THREE_VRM_THREE_REVISION >= 157
840
+ #if defined( USE_LIGHT_PROBES )
841
+ irradiance += getLightProbeIrradiance( lightProbe, geometryNormal );
842
+ #endif
843
+ #else
844
+ irradiance += getLightProbeIrradiance( lightProbe, geometry.normal );
845
+ #endif
846
+
847
+ #if ( NUM_HEMI_LIGHTS > 0 )
848
+
849
+ #pragma unroll_loop_start
850
+ for ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {
851
+
852
+ // COMPAT: pre-r156 uses a struct GeometricContext
853
+ #if THREE_VRM_THREE_REVISION >= 157
854
+ irradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometryNormal );
855
+ #else
856
+ irradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal );
857
+ #endif
858
+
859
+ }
860
+ #pragma unroll_loop_end
861
+
862
+ #endif
863
+
864
+ #endif
865
+
866
+ // #if defined( RE_IndirectSpecular )
867
+
868
+ // vec3 radiance = vec3( 0.0 );
869
+ // vec3 clearcoatRadiance = vec3( 0.0 );
870
+
871
+ // #endif
872
+
873
+ #include <lights_fragment_maps>
874
+ #include <lights_fragment_end>
875
+
876
+ // modulation
877
+ #include <aomap_fragment>
878
+
879
+ vec3 col = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;
880
+
881
+ #ifdef DEBUG_LITSHADERATE
882
+ gl_FragColor = vec4( col, diffuseColor.a );
883
+ postCorrection();
884
+ return;
885
+ #endif
886
+
887
+ // -- MToon: rim lighting -----------------------------------------
888
+ vec3 viewDir = normalize( vViewPosition );
889
+
890
+ #ifndef PHYSICALLY_CORRECT_LIGHTS
891
+ reflectedLight.directSpecular /= PI;
892
+ #endif
893
+ vec3 rimMix = mix( vec3( 1.0 ), reflectedLight.directSpecular, rimLightingMixFactor );
894
+
895
+ vec3 rim = parametricRimColorFactor * pow( saturate( 1.0 - dot( viewDir, normal ) + parametricRimLiftFactor ), parametricRimFresnelPowerFactor );
896
+
897
+ #ifdef USE_MATCAPTEXTURE
898
+ {
899
+ vec3 x = normalize( vec3( viewDir.z, 0.0, -viewDir.x ) );
900
+ vec3 y = cross( viewDir, x ); // guaranteed to be normalized
901
+ vec2 sphereUv = 0.5 + 0.5 * vec2( dot( x, normal ), -dot( y, normal ) );
902
+ sphereUv = ( matcapTextureUvTransform * vec3( sphereUv, 1 ) ).xy;
903
+ vec3 matcap = texture2D( matcapTexture, sphereUv ).rgb;
904
+ rim += matcapFactor * matcap;
905
+ }
906
+ #endif
907
+
908
+ #ifdef USE_RIMMULTIPLYTEXTURE
909
+ vec2 rimMultiplyTextureUv = ( rimMultiplyTextureUvTransform * vec3( uv, 1 ) ).xy;
910
+ rim *= texture2D( rimMultiplyTexture, rimMultiplyTextureUv ).rgb;
911
+ #endif
912
+
913
+ col += rimMix * rim;
914
+
915
+ // -- MToon: Emission --------------------------------------------------------
916
+ col += totalEmissiveRadiance;
917
+
918
+ // #include <envmap_fragment>
919
+
920
+ // -- Almost done! -----------------------------------------------------------
921
+ #if defined( OUTLINE )
922
+ col = outlineColorFactor.rgb * mix( vec3( 1.0 ), col, outlineLightingMixFactor );
923
+ #endif
924
+
925
+ #ifdef OPAQUE
926
+ diffuseColor.a = 1.0;
927
+ #endif
928
+
929
+ gl_FragColor = vec4( col, diffuseColor.a );
930
+ postCorrection();
931
+ }
932
+ `,Mt={None:`none`,Normal:`normal`,LitShadeRate:`litShadeRate`,UV:`uv`},Nt={None:`none`,WorldCoordinates:`worldCoordinates`,ScreenCoordinates:`screenCoordinates`};function Pt(e){return e.colorSpace}var Ft=class extends m{constructor(e={}){super({vertexShader:At,fragmentShader:jt}),this.uvAnimationScrollXSpeedFactor=0,this.uvAnimationScrollYSpeedFactor=0,this.uvAnimationRotationSpeedFactor=0,this.fog=!0,this.normalMapType=0,this._ignoreVertexColor=!0,this._v0CompatShade=!1,this._debugMode=Mt.None,this._outlineWidthMode=Nt.None,this._isOutline=!1,e.transparentWithZWrite&&(e.depthWrite=!0),delete e.transparentWithZWrite,e.fog=!0,e.lights=!0,e.clipping=!0,this.uniforms=i.merge([w.common,w.normalmap,w.emissivemap,w.fog,w.lights,{litFactor:{value:new b(1,1,1)},mapUvTransform:{value:new _},colorAlpha:{value:1},normalMapUvTransform:{value:new _},shadeColorFactor:{value:new b(0,0,0)},shadeMultiplyTexture:{value:null},shadeMultiplyTextureUvTransform:{value:new _},shadingShiftFactor:{value:0},shadingShiftTexture:{value:null},shadingShiftTextureUvTransform:{value:new _},shadingShiftTextureScale:{value:1},shadingToonyFactor:{value:.9},giEqualizationFactor:{value:.9},matcapFactor:{value:new b(1,1,1)},matcapTexture:{value:null},matcapTextureUvTransform:{value:new _},parametricRimColorFactor:{value:new b(0,0,0)},rimMultiplyTexture:{value:null},rimMultiplyTextureUvTransform:{value:new _},rimLightingMixFactor:{value:1},parametricRimFresnelPowerFactor:{value:5},parametricRimLiftFactor:{value:0},emissive:{value:new b(0,0,0)},emissiveIntensity:{value:1},emissiveMapUvTransform:{value:new _},outlineWidthMultiplyTexture:{value:null},outlineWidthMultiplyTextureUvTransform:{value:new _},outlineWidthFactor:{value:0},outlineColorFactor:{value:new b(0,0,0)},outlineLightingMixFactor:{value:1},uvAnimationMaskTexture:{value:null},uvAnimationMaskTextureUvTransform:{value:new _},uvAnimationScrollXOffset:{value:0},uvAnimationScrollYOffset:{value:0},uvAnimationRotationPhase:{value:0}},e.uniforms??{}]),this.setValues(e),this._uploadUniformsWorkaround(),this.customProgramCacheKey=()=>[...Object.entries(this._generateDefines()).map(([e,t])=>`${e}:${t}`),this.matcapTexture?`matcapTextureColorSpace:${Pt(this.matcapTexture)}`:``,this.shadeMultiplyTexture?`shadeMultiplyTextureColorSpace:${Pt(this.shadeMultiplyTexture)}`:``,this.rimMultiplyTexture?`rimMultiplyTextureColorSpace:${Pt(this.rimMultiplyTexture)}`:``].join(`,`),this.onBeforeCompile=e=>{let t=Object.entries(Dt(Dt({},this._generateDefines()),this.defines)).filter(([e,t])=>!!t).map(([e,t])=>`#define ${e} ${t}`).join(`
933
+ `)+`
934
+ `;e.vertexShader=t+e.vertexShader,e.fragmentShader=t+e.fragmentShader}}get color(){return this.uniforms.litFactor.value}set color(e){this.uniforms.litFactor.value=e}get map(){return this.uniforms.map.value}set map(e){this.uniforms.map.value=e}get normalMap(){return this.uniforms.normalMap.value}set normalMap(e){this.uniforms.normalMap.value=e}get normalScale(){return this.uniforms.normalScale.value}set normalScale(e){this.uniforms.normalScale.value=e}get emissive(){return this.uniforms.emissive.value}set emissive(e){this.uniforms.emissive.value=e}get emissiveIntensity(){return this.uniforms.emissiveIntensity.value}set emissiveIntensity(e){this.uniforms.emissiveIntensity.value=e}get emissiveMap(){return this.uniforms.emissiveMap.value}set emissiveMap(e){this.uniforms.emissiveMap.value=e}get shadeColorFactor(){return this.uniforms.shadeColorFactor.value}set shadeColorFactor(e){this.uniforms.shadeColorFactor.value=e}get shadeMultiplyTexture(){return this.uniforms.shadeMultiplyTexture.value}set shadeMultiplyTexture(e){this.uniforms.shadeMultiplyTexture.value=e}get shadingShiftFactor(){return this.uniforms.shadingShiftFactor.value}set shadingShiftFactor(e){this.uniforms.shadingShiftFactor.value=e}get shadingShiftTexture(){return this.uniforms.shadingShiftTexture.value}set shadingShiftTexture(e){this.uniforms.shadingShiftTexture.value=e}get shadingShiftTextureScale(){return this.uniforms.shadingShiftTextureScale.value}set shadingShiftTextureScale(e){this.uniforms.shadingShiftTextureScale.value=e}get shadingToonyFactor(){return this.uniforms.shadingToonyFactor.value}set shadingToonyFactor(e){this.uniforms.shadingToonyFactor.value=e}get giEqualizationFactor(){return this.uniforms.giEqualizationFactor.value}set giEqualizationFactor(e){this.uniforms.giEqualizationFactor.value=e}get matcapFactor(){return this.uniforms.matcapFactor.value}set matcapFactor(e){this.uniforms.matcapFactor.value=e}get matcapTexture(){return this.uniforms.matcapTexture.value}set matcapTexture(e){this.uniforms.matcapTexture.value=e}get parametricRimColorFactor(){return this.uniforms.parametricRimColorFactor.value}set parametricRimColorFactor(e){this.uniforms.parametricRimColorFactor.value=e}get rimMultiplyTexture(){return this.uniforms.rimMultiplyTexture.value}set rimMultiplyTexture(e){this.uniforms.rimMultiplyTexture.value=e}get rimLightingMixFactor(){return this.uniforms.rimLightingMixFactor.value}set rimLightingMixFactor(e){this.uniforms.rimLightingMixFactor.value=e}get parametricRimFresnelPowerFactor(){return this.uniforms.parametricRimFresnelPowerFactor.value}set parametricRimFresnelPowerFactor(e){this.uniforms.parametricRimFresnelPowerFactor.value=e}get parametricRimLiftFactor(){return this.uniforms.parametricRimLiftFactor.value}set parametricRimLiftFactor(e){this.uniforms.parametricRimLiftFactor.value=e}get outlineWidthMultiplyTexture(){return this.uniforms.outlineWidthMultiplyTexture.value}set outlineWidthMultiplyTexture(e){this.uniforms.outlineWidthMultiplyTexture.value=e}get outlineWidthFactor(){return this.uniforms.outlineWidthFactor.value}set outlineWidthFactor(e){this.uniforms.outlineWidthFactor.value=e}get outlineColorFactor(){return this.uniforms.outlineColorFactor.value}set outlineColorFactor(e){this.uniforms.outlineColorFactor.value=e}get outlineLightingMixFactor(){return this.uniforms.outlineLightingMixFactor.value}set outlineLightingMixFactor(e){this.uniforms.outlineLightingMixFactor.value=e}get uvAnimationMaskTexture(){return this.uniforms.uvAnimationMaskTexture.value}set uvAnimationMaskTexture(e){this.uniforms.uvAnimationMaskTexture.value=e}get uvAnimationScrollXOffset(){return this.uniforms.uvAnimationScrollXOffset.value}set uvAnimationScrollXOffset(e){this.uniforms.uvAnimationScrollXOffset.value=e}get uvAnimationScrollYOffset(){return this.uniforms.uvAnimationScrollYOffset.value}set uvAnimationScrollYOffset(e){this.uniforms.uvAnimationScrollYOffset.value=e}get uvAnimationRotationPhase(){return this.uniforms.uvAnimationRotationPhase.value}set uvAnimationRotationPhase(e){this.uniforms.uvAnimationRotationPhase.value=e}get ignoreVertexColor(){return this._ignoreVertexColor}set ignoreVertexColor(e){this._ignoreVertexColor=e,this.needsUpdate=!0}get v0CompatShade(){return this._v0CompatShade}set v0CompatShade(e){this._v0CompatShade=e,this.needsUpdate=!0}get debugMode(){return this._debugMode}set debugMode(e){this._debugMode=e,this.needsUpdate=!0}get outlineWidthMode(){return this._outlineWidthMode}set outlineWidthMode(e){this._outlineWidthMode=e,this.needsUpdate=!0}get isOutline(){return this._isOutline}set isOutline(e){this._isOutline=e,this.needsUpdate=!0}get isMToonMaterial(){return!0}update(e){this._uploadUniformsWorkaround(),this._updateUVAnimation(e)}copy(e){return super.copy(e),this.map=e.map,this.normalMap=e.normalMap,this.emissiveMap=e.emissiveMap,this.shadeMultiplyTexture=e.shadeMultiplyTexture,this.shadingShiftTexture=e.shadingShiftTexture,this.matcapTexture=e.matcapTexture,this.rimMultiplyTexture=e.rimMultiplyTexture,this.outlineWidthMultiplyTexture=e.outlineWidthMultiplyTexture,this.uvAnimationMaskTexture=e.uvAnimationMaskTexture,this.normalMapType=e.normalMapType,this.uvAnimationScrollXSpeedFactor=e.uvAnimationScrollXSpeedFactor,this.uvAnimationScrollYSpeedFactor=e.uvAnimationScrollYSpeedFactor,this.uvAnimationRotationSpeedFactor=e.uvAnimationRotationSpeedFactor,this.ignoreVertexColor=e.ignoreVertexColor,this.v0CompatShade=e.v0CompatShade,this.debugMode=e.debugMode,this.outlineWidthMode=e.outlineWidthMode,this.isOutline=e.isOutline,this.needsUpdate=!0,this}_updateUVAnimation(e){this.uniforms.uvAnimationScrollXOffset.value+=e*this.uvAnimationScrollXSpeedFactor,this.uniforms.uvAnimationScrollYOffset.value+=e*this.uvAnimationScrollYSpeedFactor,this.uniforms.uvAnimationRotationPhase.value+=e*this.uvAnimationRotationSpeedFactor,this.uniforms.alphaTest.value=this.alphaTest,this.uniformsNeedUpdate=!0}_uploadUniformsWorkaround(){this.uniforms.opacity.value=this.opacity,this._updateTextureMatrix(this.uniforms.map,this.uniforms.mapUvTransform),this._updateTextureMatrix(this.uniforms.normalMap,this.uniforms.normalMapUvTransform),this._updateTextureMatrix(this.uniforms.emissiveMap,this.uniforms.emissiveMapUvTransform),this._updateTextureMatrix(this.uniforms.shadeMultiplyTexture,this.uniforms.shadeMultiplyTextureUvTransform),this._updateTextureMatrix(this.uniforms.shadingShiftTexture,this.uniforms.shadingShiftTextureUvTransform),this._updateTextureMatrix(this.uniforms.matcapTexture,this.uniforms.matcapTextureUvTransform),this._updateTextureMatrix(this.uniforms.rimMultiplyTexture,this.uniforms.rimMultiplyTextureUvTransform),this._updateTextureMatrix(this.uniforms.outlineWidthMultiplyTexture,this.uniforms.outlineWidthMultiplyTextureUvTransform),this._updateTextureMatrix(this.uniforms.uvAnimationMaskTexture,this.uniforms.uvAnimationMaskTextureUvTransform),this.uniformsNeedUpdate=!0}_generateDefines(){let e=this.outlineWidthMultiplyTexture!==null,t=this.map!==null||this.normalMap!==null||this.emissiveMap!==null||this.shadeMultiplyTexture!==null||this.shadingShiftTexture!==null||this.rimMultiplyTexture!==null||this.uvAnimationMaskTexture!==null;return{THREE_VRM_THREE_REVISION:186,OUTLINE:this._isOutline,MTOON_USE_UV:e||t,MTOON_UVS_VERTEX_ONLY:e&&!t,V0_COMPAT_SHADE:this._v0CompatShade,USE_SHADEMULTIPLYTEXTURE:this.shadeMultiplyTexture!==null,USE_SHADINGSHIFTTEXTURE:this.shadingShiftTexture!==null,USE_MATCAPTEXTURE:this.matcapTexture!==null,USE_RIMMULTIPLYTEXTURE:this.rimMultiplyTexture!==null,USE_OUTLINEWIDTHMULTIPLYTEXTURE:this._isOutline&&this.outlineWidthMultiplyTexture!==null,USE_UVANIMATIONMASKTEXTURE:this.uvAnimationMaskTexture!==null,IGNORE_VERTEX_COLOR:this._ignoreVertexColor===!0,DEBUG_NORMAL:this._debugMode===`normal`,DEBUG_LITSHADERATE:this._debugMode===`litShadeRate`,DEBUG_UV:this._debugMode===`uv`,OUTLINE_WIDTH_SCREEN:this._isOutline&&this._outlineWidthMode===Nt.ScreenCoordinates}}_updateTextureMatrix(e,t){e.value&&(e.value.matrixAutoUpdate&&e.value.updateMatrix(),t.value.copy(e.value.matrix))}},It=new Set([`1.0`,`1.0-beta`]),Lt=class e{get name(){return e.EXTENSION_NAME}constructor(e,t={}){this.parser=e,this.materialType=t.materialType??Ft,this.renderOrderOffset=t.renderOrderOffset??0,this.v0CompatShade=t.v0CompatShade??!1,this.debugMode=t.debugMode??`none`,this._mToonMaterialSet=new Set}beforeRoot(){return U(this,null,function*(){this._removeUnlitExtensionIfMToonExists()})}afterRoot(e){return U(this,null,function*(){e.userData.vrmMToonMaterials=Array.from(this._mToonMaterialSet)})}getMaterialType(e){return this._getMToonExtension(e)?this.materialType:null}extendMaterialParams(e,t){let n=this._getMToonExtension(e);return n?this._extendMaterialParams(n,t):null}loadMesh(e){return U(this,null,function*(){let t=this.parser,n=t.json.meshes?.[e];if(n==null)throw Error(`MToonMaterialLoaderPlugin: Attempt to use meshes[${e}] of glTF but the mesh doesn't exist`);let r=n.primitives,i=yield t.loadMesh(e);if(r.length===1){let e=i,t=r[0].material;t!=null&&this._setupPrimitive(e,t)}else{let e=i;for(let t=0;t<r.length;t++){let n=e.children[t],i=r[t].material;i!=null&&this._setupPrimitive(n,i)}}return i})}_removeUnlitExtensionIfMToonExists(){this.parser.json.materials?.map((e,t)=>{this._getMToonExtension(t)&&e.extensions?.KHR_materials_unlit&&delete e.extensions.KHR_materials_unlit})}_getMToonExtension(t){let n=this.parser.json.materials?.[t];if(n==null){console.warn(`MToonMaterialLoaderPlugin: Attempt to use materials[${t}] of glTF but the material doesn't exist`);return}let r=n.extensions?.[e.EXTENSION_NAME];if(r==null)return;let i=r.specVersion;if(!It.has(i)){console.warn(`MToonMaterialLoaderPlugin: Unknown ${e.EXTENSION_NAME} specVersion "${i}"`);return}return r}_extendMaterialParams(e,t){return U(this,null,function*(){delete t.metalness,delete t.roughness;let n=new kt(this.parser,t);n.assignPrimitive(`transparentWithZWrite`,e.transparentWithZWrite),n.assignColor(`shadeColorFactor`,e.shadeColorFactor),n.assignTexture(`shadeMultiplyTexture`,e.shadeMultiplyTexture,!0),n.assignPrimitive(`shadingShiftFactor`,e.shadingShiftFactor),n.assignTexture(`shadingShiftTexture`,e.shadingShiftTexture,!0),n.assignPrimitive(`shadingShiftTextureScale`,e.shadingShiftTexture?.scale),n.assignPrimitive(`shadingToonyFactor`,e.shadingToonyFactor),n.assignPrimitive(`giEqualizationFactor`,e.giEqualizationFactor),n.assignColor(`matcapFactor`,e.matcapFactor),n.assignTexture(`matcapTexture`,e.matcapTexture,!0),n.assignColor(`parametricRimColorFactor`,e.parametricRimColorFactor),n.assignTexture(`rimMultiplyTexture`,e.rimMultiplyTexture,!0),n.assignPrimitive(`rimLightingMixFactor`,e.rimLightingMixFactor),n.assignPrimitive(`parametricRimFresnelPowerFactor`,e.parametricRimFresnelPowerFactor),n.assignPrimitive(`parametricRimLiftFactor`,e.parametricRimLiftFactor),n.assignPrimitive(`outlineWidthMode`,e.outlineWidthMode),n.assignPrimitive(`outlineWidthFactor`,e.outlineWidthFactor),n.assignTexture(`outlineWidthMultiplyTexture`,e.outlineWidthMultiplyTexture,!1),n.assignColor(`outlineColorFactor`,e.outlineColorFactor),n.assignPrimitive(`outlineLightingMixFactor`,e.outlineLightingMixFactor),n.assignTexture(`uvAnimationMaskTexture`,e.uvAnimationMaskTexture,!1),n.assignPrimitive(`uvAnimationScrollXSpeedFactor`,e.uvAnimationScrollXSpeedFactor),n.assignPrimitive(`uvAnimationScrollYSpeedFactor`,e.uvAnimationScrollYSpeedFactor),n.assignPrimitive(`uvAnimationRotationSpeedFactor`,e.uvAnimationRotationSpeedFactor),n.assignPrimitive(`v0CompatShade`,this.v0CompatShade),n.assignPrimitive(`debugMode`,this.debugMode),yield n.pending})}_setupPrimitive(e,t){let n=this._getMToonExtension(t);if(n){e.renderOrder=this._parseRenderOrder(n)+this.renderOrderOffset,this._generateOutline(e),this._addToMaterialSet(e);return}}_shouldGenerateOutline(e){return typeof e.outlineWidthMode==`string`&&e.outlineWidthMode!==`none`&&typeof e.outlineWidthFactor==`number`&&e.outlineWidthFactor>0}_generateOutline(e){let t=e.material;if(!(t instanceof ee)||!this._shouldGenerateOutline(t))return;e.material=[t];let n=t.clone();n.name+=` (Outline)`,n.isOutline=!0,n.side=1,e.material.push(n);let r=e.geometry,i=r.index?r.index.count:r.attributes.position.count/3;r.addGroup(0,i,0),r.addGroup(0,i,1)}_addToMaterialSet(e){let t=e.material,n=new Set;Array.isArray(t)?t.forEach(e=>n.add(e)):n.add(t);for(let e of n)this._mToonMaterialSet.add(e)}_parseRenderOrder(e){return(e.transparentWithZWrite?0:19)+(e.renderQueueOffsetNumber??0)}};Lt.EXTENSION_NAME=`VRMC_materials_mtoon`;var Rt=Lt,zt=(e,t,n)=>new Promise((r,i)=>{var a=e=>{try{s(n.next(e))}catch(e){i(e)}},o=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(a,o);s((n=n.apply(e,t)).next())}),Bt=class e{get name(){return e.EXTENSION_NAME}constructor(e){this.parser=e}extendMaterialParams(e,t){return zt(this,null,function*(){let n=this._getHDREmissiveMultiplierExtension(e);n!=null&&(console.warn("VRMMaterialsHDREmissiveMultiplierLoaderPlugin: `VRMC_materials_hdr_emissiveMultiplier` is archived. Use `KHR_materials_emissive_strength` instead."),t.emissiveIntensity=n.emissiveMultiplier)})}_getHDREmissiveMultiplierExtension(t){let n=this.parser.json.materials?.[t];if(n==null){console.warn(`VRMMaterialsHDREmissiveMultiplierLoaderPlugin: Attempt to use materials[${t}] of glTF but the material doesn't exist`);return}let r=n.extensions?.[e.EXTENSION_NAME];if(r!=null)return r}};Bt.EXTENSION_NAME=`VRMC_materials_hdr_emissiveMultiplier`;var Vt=Bt,Ht=Object.defineProperty,Ut=Object.defineProperties,Wt=Object.getOwnPropertyDescriptors,Gt=Object.getOwnPropertySymbols,Kt=Object.prototype.hasOwnProperty,qt=Object.prototype.propertyIsEnumerable,Jt=(e,t,n)=>t in e?Ht(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,W=(e,t)=>{for(var n in t||={})Kt.call(t,n)&&Jt(e,n,t[n]);if(Gt)for(var n of Gt(t))qt.call(t,n)&&Jt(e,n,t[n]);return e},Yt=(e,t)=>Ut(e,Wt(t)),Xt=(e,t,n)=>new Promise((r,i)=>{var a=e=>{try{s(n.next(e))}catch(e){i(e)}},o=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(a,o);s((n=n.apply(e,t)).next())});function G(e){return e**2.2}var Zt=class{get name(){return`VRMMaterialsV0CompatPlugin`}constructor(e){this.parser=e,this._renderQueueMapTransparent=new Map,this._renderQueueMapTransparentZWrite=new Map;let t=this.parser.json;t.extensionsUsed=t.extensionsUsed??[],t.extensionsUsed.indexOf(`KHR_texture_transform`)===-1&&t.extensionsUsed.push(`KHR_texture_transform`)}beforeRoot(){return Xt(this,null,function*(){let e=this.parser.json,t=e.extensions?.VRM?.materialProperties;t&&(this._populateRenderQueueMap(t),t.forEach((t,n)=>{let r=e.materials?.[n];if(r==null){console.warn(`VRMMaterialsV0CompatPlugin: Attempt to use materials[${n}] of glTF but the material doesn't exist`);return}if(t.shader===`VRM/MToon`){let i=this._parseV0MToonProperties(t,r);e.materials[n]=i}else if(t.shader?.startsWith(`VRM/Unlit`)){let i=this._parseV0UnlitProperties(t,r);e.materials[n]=i}else t.shader===`VRM_USE_GLTFSHADER`||console.warn(`VRMMaterialsV0CompatPlugin: Unknown shader: ${t.shader}`)}))})}_parseV0MToonProperties(e,t){let n=e.keywordMap?._ALPHABLEND_ON??!1,r=e.floatProperties?._ZWrite===1&&n,i=this._v0ParseRenderQueue(e),a=e.keywordMap?._ALPHATEST_ON??!1,o=n?`BLEND`:a?`MASK`:`OPAQUE`,s=a?e.floatProperties?._Cutoff??.5:void 0,c=(e.floatProperties?._CullMode??2)===0,l=this._portTextureTransform(e),u=(e.vectorProperties?._Color??[1,1,1,1]).map((e,t)=>t===3?e:G(e)),d=e.textureProperties?._MainTex,f=d==null?void 0:{index:d,extensions:W({},l)},p=e.floatProperties?._BumpScale??1,m=e.textureProperties?._BumpMap,h=m==null?void 0:{index:m,scale:p,extensions:W({},l)},ee=(e.vectorProperties?._EmissionColor??[0,0,0,1]).map(G),te=e.textureProperties?._EmissionMap,g=te==null?void 0:{index:te,extensions:W({},l)},_=(e.vectorProperties?._ShadeColor??[.97,.81,.86,1]).map(G),v=e.textureProperties?._ShadeTexture,ne=v==null?void 0:{index:v,extensions:W({},l)},y=e.floatProperties?._ShadeShift??0,b=e.floatProperties?._ShadeToony??.9;b=S.lerp(b,1,.5+.5*y),y=-y-(1-b);let x=e.floatProperties?._IndirectLightIntensity??.1,re=x?1-x:void 0,C=e.textureProperties?._SphereAdd,w=C==null?void 0:[1,1,1],T=C==null?void 0:{index:C},E=e.floatProperties?._RimLightingMix??0,D=e.textureProperties?._RimTexture,ie=D==null?void 0:{index:D,extensions:W({},l)},ae=(e.vectorProperties?._RimColor??[0,0,0,1]).map(G),oe=e.floatProperties?._RimFresnelPower??1,O=e.floatProperties?._RimLift??0,se=[`none`,`worldCoordinates`,`screenCoordinates`][e.floatProperties?._OutlineWidthMode??0],k=e.floatProperties?._OutlineWidth??0;k=.01*k;let A=e.textureProperties?._OutlineWidthTexture,ce=A==null?void 0:{index:A,extensions:W({},l)},le=(e.vectorProperties?._OutlineColor??[0,0,0]).map(G),ue=(e.floatProperties?._OutlineColorMode??0)===1?e.floatProperties?._OutlineLightingMix??1:0,j=e.textureProperties?._UvAnimMaskTexture,M=j==null?void 0:{index:j,extensions:W({},l)},de=e.floatProperties?._UvAnimScrollX??0,N=e.floatProperties?._UvAnimScrollY??0;N!=null&&(N=-N);let P=e.floatProperties?._UvAnimRotation??0,fe={specVersion:`1.0`,transparentWithZWrite:r,renderQueueOffsetNumber:i,shadeColorFactor:_,shadeMultiplyTexture:ne,shadingShiftFactor:y,shadingToonyFactor:b,giEqualizationFactor:re,matcapFactor:w,matcapTexture:T,rimLightingMixFactor:E,rimMultiplyTexture:ie,parametricRimColorFactor:ae,parametricRimFresnelPowerFactor:oe,parametricRimLiftFactor:O,outlineWidthMode:se,outlineWidthFactor:k,outlineWidthMultiplyTexture:ce,outlineColorFactor:le,outlineLightingMixFactor:ue,uvAnimationMaskTexture:M,uvAnimationScrollXSpeedFactor:de,uvAnimationScrollYSpeedFactor:N,uvAnimationRotationSpeedFactor:P};return Yt(W({},t),{pbrMetallicRoughness:{baseColorFactor:u,baseColorTexture:f},normalTexture:h,emissiveTexture:g,emissiveFactor:ee,alphaMode:o,alphaCutoff:s,doubleSided:c,extensions:{VRMC_materials_mtoon:fe}})}_parseV0UnlitProperties(e,t){let n=e.shader===`VRM/UnlitTransparentZWrite`,r=e.shader===`VRM/UnlitTransparent`||n,i=this._v0ParseRenderQueue(e),a=e.shader===`VRM/UnlitCutout`,o=r?`BLEND`:a?`MASK`:`OPAQUE`,s=a?e.floatProperties?._Cutoff??.5:void 0,c=this._portTextureTransform(e),l=(e.vectorProperties?._Color??[1,1,1,1]).map(G),u=e.textureProperties?._MainTex,d=u==null?void 0:{index:u,extensions:W({},c)},f={specVersion:`1.0`,transparentWithZWrite:n,renderQueueOffsetNumber:i,shadeColorFactor:l,shadeMultiplyTexture:d};return Yt(W({},t),{pbrMetallicRoughness:{baseColorFactor:l,baseColorTexture:d},alphaMode:o,alphaCutoff:s,extensions:{VRMC_materials_mtoon:f}})}_portTextureTransform(e){let t=e.vectorProperties?._MainTex;if(t==null)return{};let n=[t?.[0]??0,t?.[1]??0],r=[t?.[2]??1,t?.[3]??1];return n[1]=1-r[1]-n[1],{KHR_texture_transform:{offset:n,scale:r}}}_v0ParseRenderQueue(e){let t=e.shader===`VRM/UnlitTransparentZWrite`,n=e.keywordMap?._ALPHABLEND_ON!=null||e.shader===`VRM/UnlitTransparent`||t,r=e.floatProperties?._ZWrite===1||t,i=0;if(n){let t=e.renderQueue;t!=null&&(i=r?this._renderQueueMapTransparentZWrite.get(t):this._renderQueueMapTransparent.get(t))}return i}_populateRenderQueueMap(e){let t=new Set,n=new Set;e.forEach(e=>{let r=e.shader===`VRM/UnlitTransparentZWrite`,i=e.keywordMap?._ALPHABLEND_ON!=null||e.shader===`VRM/UnlitTransparent`||r,a=e.floatProperties?._ZWrite===1||r;if(i){let r=e.renderQueue;r!=null&&(a?n.add(r):t.add(r))}}),t.size>10&&console.warn(`VRMMaterialsV0CompatPlugin: This VRM uses ${t.size} render queues for Transparent materials while VRM 1.0 only supports up to 10 render queues. The model might not be rendered correctly.`),n.size>10&&console.warn(`VRMMaterialsV0CompatPlugin: This VRM uses ${n.size} render queues for TransparentZWrite materials while VRM 1.0 only supports up to 10 render queues. The model might not be rendered correctly.`),Array.from(t).sort().forEach((e,n)=>{let r=Math.min(Math.max(n-t.size+1,-9),0);this._renderQueueMapTransparent.set(e,r)}),Array.from(n).sort().forEach((e,t)=>{let n=Math.min(Math.max(t,0),9);this._renderQueueMapTransparentZWrite.set(e,n)})}},Qt=(e,t,n)=>new Promise((r,i)=>{var a=e=>{try{s(n.next(e))}catch(e){i(e)}},o=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(a,o);s((n=n.apply(e,t)).next())}),K=new f,$t=class extends x{constructor(e){super(),this._attrPosition=new t(new Float32Array([0,0,0,0,0,0]),3),this._attrPosition.setUsage(u);let n=new h;n.setAttribute(`position`,this._attrPosition);let r=new p({color:16711935,depthTest:!1,depthWrite:!1});this._line=new ne(n,r),this.add(this._line),this.constraint=e}updateMatrixWorld(e){K.setFromMatrixPosition(this.constraint.destination.matrixWorld),this._attrPosition.setXYZ(0,K.x,K.y,K.z),this.constraint.source&&K.setFromMatrixPosition(this.constraint.source.matrixWorld),this._attrPosition.setXYZ(1,K.x,K.y,K.z),this._attrPosition.needsUpdate=!0,super.updateMatrixWorld(e)}};function en(e,t){return t.set(e.elements[12],e.elements[13],e.elements[14])}var tn=new f,nn=new f;function rn(e,t){return e.decompose(tn,t,nn),t}function an(e){return e.invert?e.invert():e.inverse(),e}var on=class{constructor(e,t){this.destination=e,this.source=t,this.weight=1}},sn=new f,cn=new f,ln=new f,un=new y,dn=new y,fn=new y,pn=class extends on{get aimAxis(){return this._aimAxis}set aimAxis(e){this._aimAxis=e,this._v3AimAxis.set(e===`PositiveX`?1:e===`NegativeX`?-1:0,e===`PositiveY`?1:e===`NegativeY`?-1:0,e===`PositiveZ`?1:e===`NegativeZ`?-1:0)}get dependencies(){let e=new Set([this.source]);return this.destination.parent&&e.add(this.destination.parent),e}constructor(e,t){super(e,t),this._aimAxis=`PositiveX`,this._v3AimAxis=new f(1,0,0),this._dstRestQuat=new y}setInitState(){this._dstRestQuat.copy(this.destination.quaternion)}update(){this.destination.updateWorldMatrix(!0,!1),this.source.updateWorldMatrix(!0,!1);let e=un.identity(),t=dn.identity();this.destination.parent&&(rn(this.destination.parent.matrixWorld,e),an(t.copy(e)));let n=sn.copy(this._v3AimAxis).applyQuaternion(this._dstRestQuat).applyQuaternion(e),r=en(this.source.matrixWorld,cn).sub(en(this.destination.matrixWorld,ln)).normalize(),i=fn.setFromUnitVectors(n,r).premultiply(t).multiply(e).multiply(this._dstRestQuat);this.destination.quaternion.copy(this._dstRestQuat).slerp(i,this.weight)}};function mn(e,t){let n=[e],r=e.parent;for(;r!==null;)n.unshift(r),r=r.parent;n.forEach(e=>{t(e)})}var hn=class{constructor(){this._constraints=new Set,this._objectConstraintsMap=new Map}get constraints(){return this._constraints}addConstraint(e){this._constraints.add(e);let t=this._objectConstraintsMap.get(e.destination);t??(t=new Set,this._objectConstraintsMap.set(e.destination,t)),t.add(e)}deleteConstraint(e){this._constraints.delete(e),this._objectConstraintsMap.get(e.destination).delete(e)}setInitState(){let e=new Set,t=new Set;for(let n of this._constraints)this._processConstraint(n,e,t,e=>e.setInitState())}update(){let e=new Set,t=new Set;for(let n of this._constraints)this._processConstraint(n,e,t,e=>e.update())}_processConstraint(e,t,n,r){if(n.has(e))return;if(t.has(e))throw Error(`VRMNodeConstraintManager: Circular dependency detected while updating constraints`);t.add(e);let i=e.dependencies;for(let e of i)mn(e,e=>{let i=this._objectConstraintsMap.get(e);if(i)for(let e of i)this._processConstraint(e,t,n,r)});r(e),n.add(e)}},gn=new y,_n=new y,vn=class extends on{get dependencies(){return new Set([this.source])}constructor(e,t){super(e,t),this._dstRestQuat=new y,this._invSrcRestQuat=new y}setInitState(){this._dstRestQuat.copy(this.destination.quaternion),an(this._invSrcRestQuat.copy(this.source.quaternion))}update(){let e=gn.copy(this._invSrcRestQuat).multiply(this.source.quaternion),t=_n.copy(this._dstRestQuat).multiply(e);this.destination.quaternion.copy(this._dstRestQuat).slerp(t,this.weight)}},yn=new f,bn=new y,xn=new y,Sn=class extends on{get rollAxis(){return this._rollAxis}set rollAxis(e){this._rollAxis=e,this._v3RollAxis.set(+(e===`X`),+(e===`Y`),+(e===`Z`))}get dependencies(){return new Set([this.source])}constructor(e,t){super(e,t),this._rollAxis=`X`,this._v3RollAxis=new f(1,0,0),this._dstRestQuat=new y,this._invDstRestQuat=new y,this._invSrcRestQuatMulDstRestQuat=new y}setInitState(){this._dstRestQuat.copy(this.destination.quaternion),an(this._invDstRestQuat.copy(this._dstRestQuat)),an(this._invSrcRestQuatMulDstRestQuat.copy(this.source.quaternion)).multiply(this._dstRestQuat)}update(){let e=bn.copy(this._invDstRestQuat).multiply(this.source.quaternion).multiply(this._invSrcRestQuatMulDstRestQuat),t=yn.copy(this._v3RollAxis).applyQuaternion(e),n=xn.setFromUnitVectors(t,this._v3RollAxis).premultiply(this._dstRestQuat).multiply(e);this.destination.quaternion.copy(this._dstRestQuat).slerp(n,this.weight)}},Cn=new Set([`1.0`,`1.0-beta`]),wn=class e{get name(){return e.EXTENSION_NAME}constructor(e,t){this.parser=e,this.helperRoot=t?.helperRoot}afterRoot(e){return Qt(this,null,function*(){e.userData.vrmNodeConstraintManager=yield this._import(e)})}_import(t){return Qt(this,null,function*(){let n=this.parser.json;if(n.extensionsUsed?.indexOf(e.EXTENSION_NAME)===-1)return null;let r=new hn,i=yield this.parser.getDependencies(`node`);return i.forEach((t,a)=>{let o=n.nodes[a]?.extensions?.[e.EXTENSION_NAME];if(o==null)return;let s=o.specVersion;if(!Cn.has(s)){console.warn(`VRMNodeConstraintLoaderPlugin: Unknown ${e.EXTENSION_NAME} specVersion "${s}"`);return}let c=o.constraint;if(c.roll!=null){let e=this._importRollConstraint(t,i,c.roll);r.addConstraint(e)}else if(c.aim!=null){let e=this._importAimConstraint(t,i,c.aim);r.addConstraint(e)}else if(c.rotation!=null){let e=this._importRotationConstraint(t,i,c.rotation);r.addConstraint(e)}}),t.scene.updateMatrixWorld(),r.setInitState(),r})}_importRollConstraint(e,t,n){let{source:r,rollAxis:i,weight:a}=n,o=t[r],s=new Sn(e,o);if(i!=null&&(s.rollAxis=i),a!=null&&(s.weight=a),this.helperRoot){let e=new $t(s);this.helperRoot.add(e)}return s}_importAimConstraint(e,t,n){let{source:r,aimAxis:i,weight:a}=n,o=t[r],s=new pn(e,o);if(i!=null&&(s.aimAxis=i),a!=null&&(s.weight=a),this.helperRoot){let e=new $t(s);this.helperRoot.add(e)}return s}_importRotationConstraint(e,t,n){let{source:r,weight:i}=n,a=t[r],o=new vn(e,a);if(i!=null&&(o.weight=i),this.helperRoot){let e=new $t(o);this.helperRoot.add(e)}return o}};wn.EXTENSION_NAME=`VRMC_node_constraint`;var Tn=wn,En=(e,t,n)=>new Promise((r,i)=>{var a=e=>{try{s(n.next(e))}catch(e){i(e)}},o=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(a,o);s((n=n.apply(e,t)).next())}),Dn=class{},On=new f,q=new f,kn=class extends Dn{get type(){return`capsule`}constructor(e){super(),this.offset=e?.offset??new f(0,0,0),this.tail=e?.tail??new f(0,0,0),this.radius=e?.radius??0,this.inside=e?.inside??!1}calculateCollision(e,t,n,r){On.setFromMatrixPosition(e),q.subVectors(this.tail,this.offset).applyMatrix4(e),q.sub(On);let i=q.lengthSq();r.copy(t).sub(On);let a=q.dot(r);a<=0||(i<=a||q.multiplyScalar(a/i),r.sub(q));let o=r.length(),s=this.inside?this.radius-n-o:o-n-this.radius;return s<0&&(r.multiplyScalar(1/o),this.inside&&r.negate()),s}},An=new f,jn=new _,Mn=class extends Dn{get type(){return`plane`}constructor(e){super(),this.offset=e?.offset??new f(0,0,0),this.normal=e?.normal??new f(0,0,1)}calculateCollision(e,t,n,r){r.setFromMatrixPosition(e),r.negate().add(t),jn.getNormalMatrix(e),An.copy(this.normal).applyNormalMatrix(jn).normalize();let i=r.dot(An)-n;return r.copy(An),i}},Nn=new f,Pn=class extends Dn{get type(){return`sphere`}constructor(e){super(),this.offset=e?.offset??new f(0,0,0),this.radius=e?.radius??0,this.inside=e?.inside??!1}calculateCollision(e,t,n,r){r.subVectors(t,Nn.setFromMatrixPosition(e));let i=r.length(),a=this.inside?this.radius-n-i:i-n-this.radius;return a<0&&(r.multiplyScalar(1/i),this.inside&&r.negate()),a}},J=new f,Fn=class extends h{constructor(e){super(),this.worldScale=1,this._currentRadius=0,this._currentOffset=new f,this._currentTail=new f,this._shape=e,this._attrPos=new t(new Float32Array(396),3),this.setAttribute(`position`,this._attrPos),this._attrIndex=new t(new Uint16Array(264),1),this.setIndex(this._attrIndex),this._buildIndex(),this.update()}update(){let e=!1,t=this._shape.radius/this.worldScale;this._currentRadius!==t&&(this._currentRadius=t,e=!0),this._currentOffset.equals(this._shape.offset)||(this._currentOffset.copy(this._shape.offset),e=!0);let n=J.copy(this._shape.tail).divideScalar(this.worldScale);this._currentTail.distanceToSquared(n)>1e-10&&(this._currentTail.copy(n),e=!0),e&&this._buildPosition()}_buildPosition(){J.copy(this._currentTail).sub(this._currentOffset);let e=J.length()/this._currentRadius;for(let t=0;t<=16;t++){let n=t/16*Math.PI;this._attrPos.setXYZ(t,-Math.sin(n),-Math.cos(n),0),this._attrPos.setXYZ(17+t,e+Math.sin(n),Math.cos(n),0),this._attrPos.setXYZ(34+t,-Math.sin(n),0,-Math.cos(n)),this._attrPos.setXYZ(51+t,e+Math.sin(n),0,Math.cos(n))}for(let t=0;t<32;t++){let n=t/16*Math.PI;this._attrPos.setXYZ(68+t,0,Math.sin(n),Math.cos(n)),this._attrPos.setXYZ(100+t,e,Math.sin(n),Math.cos(n))}let t=Math.atan2(J.y,Math.sqrt(J.x*J.x+J.z*J.z)),n=-Math.atan2(J.z,J.x);this.rotateZ(t),this.rotateY(n),this.scale(this._currentRadius,this._currentRadius,this._currentRadius),this.translate(this._currentOffset.x,this._currentOffset.y,this._currentOffset.z),this._attrPos.needsUpdate=!0}_buildIndex(){for(let e=0;e<34;e++){let t=(e+1)%34;this._attrIndex.setXY(e*2,e,t),this._attrIndex.setXY(68+e*2,34+e,34+t)}for(let e=0;e<32;e++){let t=(e+1)%32;this._attrIndex.setXY(136+e*2,68+e,68+t),this._attrIndex.setXY(200+e*2,100+e,100+t)}this._attrIndex.needsUpdate=!0}},In=class extends h{constructor(e){super(),this.worldScale=1,this._currentOffset=new f,this._currentNormal=new f,this._shape=e,this._attrPos=new t(new Float32Array(18),3),this.setAttribute(`position`,this._attrPos),this._attrIndex=new t(new Uint16Array(10),1),this.setIndex(this._attrIndex),this._buildIndex(),this.update()}update(){let e=!1;this._currentOffset.equals(this._shape.offset)||(this._currentOffset.copy(this._shape.offset),e=!0),this._currentNormal.equals(this._shape.normal)||(this._currentNormal.copy(this._shape.normal),e=!0),e&&this._buildPosition()}_buildPosition(){this._attrPos.setXYZ(0,-.5,-.5,0),this._attrPos.setXYZ(1,.5,-.5,0),this._attrPos.setXYZ(2,.5,.5,0),this._attrPos.setXYZ(3,-.5,.5,0),this._attrPos.setXYZ(4,0,0,0),this._attrPos.setXYZ(5,0,0,.25),this.translate(this._currentOffset.x,this._currentOffset.y,this._currentOffset.z),this.lookAt(this._currentNormal),this._attrPos.needsUpdate=!0}_buildIndex(){this._attrIndex.setXY(0,0,1),this._attrIndex.setXY(2,1,2),this._attrIndex.setXY(4,2,3),this._attrIndex.setXY(6,3,0),this._attrIndex.setXY(8,4,5),this._attrIndex.needsUpdate=!0}},Ln=class extends h{constructor(e){super(),this.worldScale=1,this._currentRadius=0,this._currentOffset=new f,this._shape=e,this._attrPos=new t(new Float32Array(288),3),this.setAttribute(`position`,this._attrPos),this._attrIndex=new t(new Uint16Array(192),1),this.setIndex(this._attrIndex),this._buildIndex(),this.update()}update(){let e=!1,t=this._shape.radius/this.worldScale;this._currentRadius!==t&&(this._currentRadius=t,e=!0),this._currentOffset.equals(this._shape.offset)||(this._currentOffset.copy(this._shape.offset),e=!0),e&&this._buildPosition()}_buildPosition(){for(let e=0;e<32;e++){let t=e/16*Math.PI;this._attrPos.setXYZ(e,Math.cos(t),Math.sin(t),0),this._attrPos.setXYZ(32+e,0,Math.cos(t),Math.sin(t)),this._attrPos.setXYZ(64+e,Math.sin(t),0,Math.cos(t))}this.scale(this._currentRadius,this._currentRadius,this._currentRadius),this.translate(this._currentOffset.x,this._currentOffset.y,this._currentOffset.z),this._attrPos.needsUpdate=!0}_buildIndex(){for(let e=0;e<32;e++){let t=(e+1)%32;this._attrIndex.setXY(e*2,e,t),this._attrIndex.setXY(64+e*2,32+e,32+t),this._attrIndex.setXY(128+e*2,64+e,64+t)}this._attrIndex.needsUpdate=!0}},Rn=new f,zn=class extends x{constructor(e){if(super(),this.matrixAutoUpdate=!1,this.collider=e,this.collider.shape instanceof Pn)this._geometry=new Ln(this.collider.shape);else if(this.collider.shape instanceof kn)this._geometry=new Fn(this.collider.shape);else if(this.collider.shape instanceof Mn)this._geometry=new In(this.collider.shape);else throw Error(`VRMSpringBoneColliderHelper: Unknown collider shape type detected`);let t=new p({color:16711935,depthTest:!1,depthWrite:!1});this._line=new r(this._geometry,t),this.add(this._line)}dispose(){this._geometry.dispose()}updateMatrixWorld(e){this.collider.updateWorldMatrix(!0,!1),this.matrix.copy(this.collider.matrixWorld);let t=this.matrix.elements;this._geometry.worldScale=Rn.set(t[0],t[1],t[2]).length(),this._geometry.update(),super.updateMatrixWorld(e)}},Bn=class extends h{constructor(e){super(),this.worldScale=1,this._currentRadius=0,this._currentTail=new f,this._springBone=e,this._attrPos=new t(new Float32Array(294),3),this.setAttribute(`position`,this._attrPos),this._attrIndex=new t(new Uint16Array(194),1),this.setIndex(this._attrIndex),this._buildIndex(),this.update()}update(){let e=!1,t=this._springBone.settings.hitRadius/this.worldScale;this._currentRadius!==t&&(this._currentRadius=t,e=!0),this._currentTail.equals(this._springBone.initialLocalChildPosition)||(this._currentTail.copy(this._springBone.initialLocalChildPosition),e=!0),e&&this._buildPosition()}_buildPosition(){for(let e=0;e<32;e++){let t=e/16*Math.PI;this._attrPos.setXYZ(e,Math.cos(t),Math.sin(t),0),this._attrPos.setXYZ(32+e,0,Math.cos(t),Math.sin(t)),this._attrPos.setXYZ(64+e,Math.sin(t),0,Math.cos(t))}this.scale(this._currentRadius,this._currentRadius,this._currentRadius),this.translate(this._currentTail.x,this._currentTail.y,this._currentTail.z),this._attrPos.setXYZ(96,0,0,0),this._attrPos.setXYZ(97,this._currentTail.x,this._currentTail.y,this._currentTail.z),this._attrPos.needsUpdate=!0}_buildIndex(){for(let e=0;e<32;e++){let t=(e+1)%32;this._attrIndex.setXY(e*2,e,t),this._attrIndex.setXY(64+e*2,32+e,32+t),this._attrIndex.setXY(128+e*2,64+e,64+t)}this._attrIndex.setXY(192,96,97),this._attrIndex.needsUpdate=!0}},Vn=new f,Hn=class extends x{constructor(e){super(),this.matrixAutoUpdate=!1,this.springBone=e,this._geometry=new Bn(this.springBone);let t=new p({color:16776960,depthTest:!1,depthWrite:!1});this._line=new r(this._geometry,t),this.add(this._line)}dispose(){this._geometry.dispose()}updateMatrixWorld(e){this.springBone.bone.updateWorldMatrix(!0,!1),this.matrix.copy(this.springBone.bone.matrixWorld);let t=this.matrix.elements;this._geometry.worldScale=Vn.set(t[0],t[1],t[2]).length(),this._geometry.update(),super.updateMatrixWorld(e)}},Un=class extends a{constructor(e){super(),this.colliderMatrix=new g,this.shape=e}updateWorldMatrix(e,t){super.updateWorldMatrix(e,t),Wn(this.colliderMatrix,this.matrixWorld,this.shape.offset)}};function Wn(e,t,n){let r=t.elements;e.copy(t),n&&(e.elements[12]=r[0]*n.x+r[4]*n.y+r[8]*n.z+r[12],e.elements[13]=r[1]*n.x+r[5]*n.y+r[9]*n.z+r[13],e.elements[14]=r[2]*n.x+r[6]*n.y+r[10]*n.z+r[14])}var Gn=new g;function Kn(e){return e.invert?e.invert():e.getInverse(Gn.copy(e)),e}var qn=class{constructor(e){this._inverseCache=new g,this._shouldUpdateInverse=!0,this.matrix=e;let t={set:(e,t,n)=>(this._shouldUpdateInverse=!0,e[t]=n,!0)};this._originalElements=e.elements,e.elements=new Proxy(e.elements,t)}get inverse(){return this._shouldUpdateInverse&&=(Kn(this._inverseCache.copy(this.matrix)),!1),this._inverseCache}revert(){this.matrix.elements=this._originalElements}},Jn=new g,Y=new f,X=new f,Z=new f,Q=new f,Yn=new g,Xn=class{constructor(e,t,n={},r=[]){this._currentTail=new f,this._prevTail=new f,this._boneAxis=new f,this._worldSpaceBoneLength=0,this._center=null,this._initialLocalMatrix=new g,this._initialLocalRotation=new y,this._initialLocalChildPosition=new f,this.bone=e,this.bone.matrixAutoUpdate=!1,this.child=t,this.settings={hitRadius:n.hitRadius??0,stiffness:n.stiffness??1,gravityPower:n.gravityPower??0,gravityDir:n.gravityDir?.clone()??new f(0,-1,0),dragForce:n.dragForce??.4},this.colliderGroups=r}get dependencies(){let e=new Set,t=this.bone.parent;t&&e.add(t);for(let t=0;t<this.colliderGroups.length;t++)for(let n=0;n<this.colliderGroups[t].colliders.length;n++)e.add(this.colliderGroups[t].colliders[n]);return e}get center(){return this._center}set center(e){this._center?.userData.inverseCacheProxy&&(this._center.userData.inverseCacheProxy.revert(),delete this._center.userData.inverseCacheProxy),this._center=e,this._center&&(this._center.userData.inverseCacheProxy||(this._center.userData.inverseCacheProxy=new qn(this._center.matrixWorld)))}get initialLocalChildPosition(){return this._initialLocalChildPosition}get _parentMatrixWorld(){return this.bone.parent?this.bone.parent.matrixWorld:Jn}setInitState(){this._initialLocalMatrix.copy(this.bone.matrix),this._initialLocalRotation.copy(this.bone.quaternion),this.child?this._initialLocalChildPosition.copy(this.child.position):this._initialLocalChildPosition.copy(this.bone.position).normalize().multiplyScalar(.07);let e=this._getMatrixWorldToCenter();this.bone.localToWorld(this._currentTail.copy(this._initialLocalChildPosition)).applyMatrix4(e),this._prevTail.copy(this._currentTail),this._boneAxis.copy(this._initialLocalChildPosition).normalize()}reset(){this.bone.quaternion.copy(this._initialLocalRotation),this.bone.updateMatrix(),this.bone.matrixWorld.multiplyMatrices(this._parentMatrixWorld,this.bone.matrix);let e=this._getMatrixWorldToCenter();this.bone.localToWorld(this._currentTail.copy(this._initialLocalChildPosition)).applyMatrix4(e),this._prevTail.copy(this._currentTail)}update(e){if(e<=0)return;this._calcWorldSpaceBoneLength();let t=X.copy(this._boneAxis).transformDirection(this._initialLocalMatrix).transformDirection(this._parentMatrixWorld);Q.copy(this._currentTail).add(Y.subVectors(this._currentTail,this._prevTail).multiplyScalar(1-this.settings.dragForce)).applyMatrix4(this._getMatrixCenterToWorld()).addScaledVector(t,this.settings.stiffness*e).addScaledVector(this.settings.gravityDir,this.settings.gravityPower*e),Z.setFromMatrixPosition(this.bone.matrixWorld),Q.sub(Z).normalize().multiplyScalar(this._worldSpaceBoneLength).add(Z),this._collision(Q),this._prevTail.copy(this._currentTail),this._currentTail.copy(Q).applyMatrix4(this._getMatrixWorldToCenter());let n=Yn.multiplyMatrices(this._parentMatrixWorld,this._initialLocalMatrix).invert();this.bone.quaternion.setFromUnitVectors(this._boneAxis,Y.copy(Q).applyMatrix4(n).normalize()).premultiply(this._initialLocalRotation),this.bone.updateMatrix(),this.bone.matrixWorld.multiplyMatrices(this._parentMatrixWorld,this.bone.matrix)}_collision(e){for(let t=0;t<this.colliderGroups.length;t++)for(let n=0;n<this.colliderGroups[t].colliders.length;n++){let r=this.colliderGroups[t].colliders[n],i=r.shape.calculateCollision(r.colliderMatrix,e,this.settings.hitRadius,Y);if(i<0){e.addScaledVector(Y,-i),e.sub(Z);let t=e.length();e.multiplyScalar(this._worldSpaceBoneLength/t).add(Z)}}}_calcWorldSpaceBoneLength(){Y.setFromMatrixPosition(this.bone.matrixWorld),this.child?X.setFromMatrixPosition(this.child.matrixWorld):(X.copy(this._initialLocalChildPosition),X.applyMatrix4(this.bone.matrixWorld)),this._worldSpaceBoneLength=Y.sub(X).length()}_getMatrixCenterToWorld(){return this._center?this._center.matrixWorld:Jn}_getMatrixWorldToCenter(){return this._center?this._center.userData.inverseCacheProxy.inverse:Jn}};function Zn(e,t){let n=[],r=e;for(;r!==null;)n.unshift(r),r=r.parent;n.forEach(e=>{t(e)})}function Qn(e,t){e.children.forEach(e=>{t(e)||Qn(e,t)})}function $n(e){let t=new Map;for(let n of e){let r=n;do{let n=(t.get(r)??0)+1;if(n===e.size)return r;t.set(r,n),r=r.parent}while(r!==null)}return null}var er=class{constructor(){this._joints=new Set,this._sortedJoints=[],this._hasWarnedCircularDependency=!1,this._ancestors=[],this._objectSpringBonesMap=new Map,this._isSortedJointsDirty=!1,this._relevantChildrenUpdated=this._relevantChildrenUpdated.bind(this)}get joints(){return this._joints}get springBones(){return console.warn(`VRMSpringBoneManager: springBones is deprecated. use joints instead.`),this._joints}get colliderGroups(){let e=new Set;return this._joints.forEach(t=>{t.colliderGroups.forEach(t=>{e.add(t)})}),Array.from(e)}get colliders(){let e=new Set;return this.colliderGroups.forEach(t=>{t.colliders.forEach(t=>{e.add(t)})}),Array.from(e)}addJoint(e){this._joints.add(e);let t=this._objectSpringBonesMap.get(e.bone);t??(t=new Set,this._objectSpringBonesMap.set(e.bone,t)),t.add(e),this._isSortedJointsDirty=!0}addSpringBone(e){console.warn(`VRMSpringBoneManager: addSpringBone() is deprecated. use addJoint() instead.`),this.addJoint(e)}deleteJoint(e){this._joints.delete(e),this._objectSpringBonesMap.get(e.bone).delete(e),this._isSortedJointsDirty=!0}deleteSpringBone(e){console.warn(`VRMSpringBoneManager: deleteSpringBone() is deprecated. use deleteJoint() instead.`),this.deleteJoint(e)}setInitState(){this._sortJoints();for(let e=0;e<this._sortedJoints.length;e++){let t=this._sortedJoints[e];t.bone.updateMatrix(),t.bone.updateWorldMatrix(!1,!1),t.setInitState()}}reset(){this._sortJoints();for(let e=0;e<this._sortedJoints.length;e++){let t=this._sortedJoints[e];t.bone.updateMatrix(),t.bone.updateWorldMatrix(!1,!1),t.reset()}}update(e){this._sortJoints();for(let e=0;e<this._ancestors.length;e++)this._ancestors[e].updateWorldMatrix(e===0,!1);for(let t=0;t<this._sortedJoints.length;t++){let n=this._sortedJoints[t];n.bone.updateMatrix(),n.bone.updateWorldMatrix(!1,!1),n.update(e),Qn(n.bone,this._relevantChildrenUpdated)}}_sortJoints(){if(!this._isSortedJointsDirty)return;let e=[],t=new Set,n=new Set,r=new Set;for(let i of this._joints)this._insertJointSort(i,t,n,e,r);this._sortedJoints=e;let i=$n(r);this._ancestors=[],i&&(this._ancestors.push(i),Qn(i,e=>(this._objectSpringBonesMap.get(e)?.size??0)>0||(this._ancestors.push(e),!1))),this._isSortedJointsDirty=!1}_insertJointSort(e,t,n,r,i){if(n.has(e))return;if(t.has(e)){this._hasWarnedCircularDependency||=(console.warn(`VRMSpringBoneManager: Circular dependency detected`),!0);return}t.add(e);let a=e.dependencies;for(let e of a){let a=!1,o=null;Zn(e,e=>{let s=this._objectSpringBonesMap.get(e);if(s)for(let e of s)a=!0,this._insertJointSort(e,t,n,r,i);else a||(o=e)}),o&&i.add(o)}r.push(e),n.add(e)}_relevantChildrenUpdated(e){return(this._objectSpringBonesMap.get(e)?.size??0)>0||(e.updateWorldMatrix(!1,!1),!1)}},tr=`VRMC_springBone_extended_collider`,nr=new Set([`1.0`,`1.0-beta`]),rr=new Set([`1.0`]),ir=class e{get name(){return e.EXTENSION_NAME}constructor(e,t){this.parser=e,this.jointHelperRoot=t?.jointHelperRoot,this.colliderHelperRoot=t?.colliderHelperRoot,this.useExtendedColliders=t?.useExtendedColliders??!0}afterRoot(e){return En(this,null,function*(){e.userData.vrmSpringBoneManager=yield this._import(e)})}_import(e){return En(this,null,function*(){return(yield this._v1Import(e))??(yield this._v0Import(e))??null})}_v1Import(t){return En(this,null,function*(){var n;let r=t.parser.json;if(r.extensionsUsed?.indexOf(e.EXTENSION_NAME)===-1)return null;let i=new er,a=yield t.parser.getDependencies(`node`),o=r.extensions?.[e.EXTENSION_NAME];if(!o)return null;let s=o.specVersion;if(!nr.has(s))return console.warn(`VRMSpringBoneLoaderPlugin: Unknown ${e.EXTENSION_NAME} specVersion "${s}"`),null;let c=o.colliders?.map((t,n)=>{let r=a[t.node];if(r==null)return console.warn(`VRMSpringBoneLoaderPlugin: The collider #${n} attempted to reference a node #${t.node} but not found. Skipping the collider`),null;let i=t.shape,o=t.extensions?.[tr];if(this.useExtendedColliders&&o!=null){let t=o.specVersion;if(!rr.has(t))console.warn(`VRMSpringBoneLoaderPlugin: Unknown ${tr} specVersion "${t}". Fallbacking to the ${e.EXTENSION_NAME} definition`);else{let e=o.shape;if(e.sphere)return this._importSphereCollider(r,{offset:new f().fromArray(e.sphere.offset??[0,0,0]),radius:e.sphere.radius??0,inside:e.sphere.inside??!1});if(e.capsule)return this._importCapsuleCollider(r,{offset:new f().fromArray(e.capsule.offset??[0,0,0]),radius:e.capsule.radius??0,tail:new f().fromArray(e.capsule.tail??[0,0,0]),inside:e.capsule.inside??!1});if(e.plane)return this._importPlaneCollider(r,{offset:new f().fromArray(e.plane.offset??[0,0,0]),normal:new f().fromArray(e.plane.normal??[0,0,1])})}}if(i.sphere)return this._importSphereCollider(r,{offset:new f().fromArray(i.sphere.offset??[0,0,0]),radius:i.sphere.radius??0,inside:!1});if(i.capsule)return this._importCapsuleCollider(r,{offset:new f().fromArray(i.capsule.offset??[0,0,0]),radius:i.capsule.radius??0,tail:new f().fromArray(i.capsule.tail??[0,0,0]),inside:!1});console.warn(`VRMSpringBoneLoaderPlugin: The collider #${n} has no valid shape. Skipping the collider`)}),l=o.colliderGroups?.map((e,t)=>({colliders:(e.colliders??[]).map(e=>c?.[e]??(console.warn(`VRMSpringBoneLoaderPlugin: The collider group #${t} attempted to reference a collider #${e} but not found. Skipping the collider`),null)).filter(e=>e!=null),name:e.name}));return(n=o.springs)==null||n.forEach((e,t)=>{let n=e.joints,r=e.colliderGroups?.map(e=>l?.[e]??(console.warn(`VRMSpringBoneLoaderPlugin: The spring #${t} attempted to reference a collider group #${e} but not found. Skipping the collider group`),null)).filter(e=>e!=null),o=e.center==null?void 0:a[e.center],s;n.forEach(e=>{if(s){let t=s.node,n=a[t],c=e.node,l=a[c],u={hitRadius:s.hitRadius,dragForce:s.dragForce,gravityPower:s.gravityPower,stiffness:s.stiffness,gravityDir:s.gravityDir==null?void 0:new f().fromArray(s.gravityDir)},d=this._importJoint(n,l,u,r);o&&(d.center=o),i.addJoint(d)}s=e})}),i.setInitState(),i})}_v0Import(e){return En(this,null,function*(){let t=e.parser.json;if(t.extensionsUsed?.indexOf(`VRM`)===-1)return null;let n=t.extensions?.VRM?.secondaryAnimation;if(!n)return null;let r=n?.boneGroups;if(!r)return null;let i=new er,a=yield e.parser.getDependencies(`node`),o=n.colliderGroups?.map((e,t)=>{let n=a[e.node];return n==null?(console.warn(`VRMSpringBoneLoaderPlugin: The collider group #${t} attempted to reference a node #${e.node} but not found. Skipping the collider group`),null):{colliders:(e.colliders??[]).map((e,t)=>{let r=new f(0,0,0);return e.offset&&r.set(e.offset.x??0,e.offset.y??0,e.offset.z?-e.offset.z:0),this._importSphereCollider(n,{offset:r,radius:e.radius??0,inside:!1})})}});return r?.forEach((e,t)=>{let n=e.bones;n&&n.forEach(n=>{let r=a[n];if(r==null){console.warn(`VRMSpringBoneLoaderPlugin: The spring bone group #${t} attempted to reference a node #${n} but not found. Skipping the node`);return}let s=new f;e.gravityDir?s.set(e.gravityDir.x??0,e.gravityDir.y??0,e.gravityDir.z??0):s.set(0,-1,0);let c=e.center==null?void 0:a[e.center],l={hitRadius:e.hitRadius,dragForce:e.dragForce,gravityPower:e.gravityPower,stiffness:e.stiffiness,gravityDir:s},u=e.colliderGroups?.map(e=>o?.[e]??(console.warn(`VRMSpringBoneLoaderPlugin: The spring #${t} attempted to reference a collider group #${e} but not found. Skipping the collider group`),null)).filter(e=>e!=null);r.traverse(e=>{let t=e.children[0]??null,n=this._importJoint(e,t,l,u);c&&(n.center=c),i.addJoint(n)})})}),e.scene.updateMatrixWorld(),i.setInitState(),i})}_importJoint(e,t,n,r){let i=new Xn(e,t,n,r);if(this.jointHelperRoot){let e=new Hn(i);this.jointHelperRoot.add(e),e.renderOrder=this.jointHelperRoot.renderOrder}return i}_importSphereCollider(e,t){let n=new Un(new Pn(t));if(e.add(n),this.colliderHelperRoot){let e=new zn(n);this.colliderHelperRoot.add(e),e.renderOrder=this.colliderHelperRoot.renderOrder}return n}_importCapsuleCollider(e,t){let n=new Un(new kn(t));if(e.add(n),this.colliderHelperRoot){let e=new zn(n);this.colliderHelperRoot.add(e),e.renderOrder=this.colliderHelperRoot.renderOrder}return n}_importPlaneCollider(e,t){let n=new Un(new Mn(t));if(e.add(n),this.colliderHelperRoot){let e=new zn(n);this.colliderHelperRoot.add(e),e.renderOrder=this.colliderHelperRoot.renderOrder}return n}};ir.EXTENSION_NAME=`VRMC_springBone`;var ar=ir,or=class{get name(){return`VRMLoaderPlugin`}constructor(e,t){this.parser=e;let n=t?.helperRoot,r=t?.autoUpdateHumanBones;this.expressionPlugin=t?.expressionPlugin??new me(e),this.firstPersonPlugin=t?.firstPersonPlugin??new ye(e),this.humanoidPlugin=t?.humanoidPlugin??new Le(e,{helperRoot:n,autoUpdateHumanBones:r}),this.lookAtPlugin=t?.lookAtPlugin??new mt(e,{helperRoot:n}),this.metaPlugin=t?.metaPlugin??new vt(e),this.mtoonMaterialPlugin=t?.mtoonMaterialPlugin??new Rt(e),this.materialsHDREmissiveMultiplierPlugin=t?.materialsHDREmissiveMultiplierPlugin??new Vt(e),this.materialsV0CompatPlugin=t?.materialsV0CompatPlugin??new Zt(e),this.springBonePlugin=t?.springBonePlugin??new ar(e,{colliderHelperRoot:n,jointHelperRoot:n}),this.nodeConstraintPlugin=t?.nodeConstraintPlugin??new Tn(e,{helperRoot:n})}beforeRoot(){return T(this,null,function*(){yield this.materialsV0CompatPlugin.beforeRoot(),yield this.mtoonMaterialPlugin.beforeRoot()})}loadMesh(e){return T(this,null,function*(){return yield this.mtoonMaterialPlugin.loadMesh(e)})}getMaterialType(e){return this.mtoonMaterialPlugin.getMaterialType(e)??null}extendMaterialParams(e,t){return T(this,null,function*(){yield this.materialsHDREmissiveMultiplierPlugin.extendMaterialParams(e,t),yield this.mtoonMaterialPlugin.extendMaterialParams(e,t)})}afterRoot(e){return T(this,null,function*(){yield this.metaPlugin.afterRoot(e),yield this.humanoidPlugin.afterRoot(e),yield this.expressionPlugin.afterRoot(e),yield this.lookAtPlugin.afterRoot(e),yield this.firstPersonPlugin.afterRoot(e),yield this.springBonePlugin.afterRoot(e),yield this.nodeConstraintPlugin.afterRoot(e),yield this.mtoonMaterialPlugin.afterRoot(e);let t=e.userData.vrmMeta,n=e.userData.vrmHumanoid;if(t&&n){let r=new xt({scene:e.scene,expressionManager:e.userData.vrmExpressionManager,firstPerson:e.userData.vrmFirstPerson,humanoid:n,lookAt:e.userData.vrmLookAt,meta:t,materials:e.userData.vrmMToonMaterials,springBoneManager:e.userData.vrmSpringBoneManager,nodeConstraintManager:e.userData.vrmNodeConstraintManager});e.userData.vrm=r}})}};function sr(e){let t=new Set;return e.traverse(e=>{if(!e.isMesh)return;let n=e;t.add(n)}),t}function cr(e,n,r){if(n.size===1){let t=n.values().next().value;if(t.weight===1)return e[t.index]}let i=new Float32Array(e[0].count*3),a=0;if(r)a=1;else for(let e of n)a+=e.weight;for(let t of n){let n=e[t.index],r=t.weight/a;for(let e=0;e<n.count;e++)i[e*3+0]+=n.getX(e)*r,i[e*3+1]+=n.getY(e)*r,i[e*3+2]+=n.getZ(e)*r}return new t(i,3)}function lr(e){let t=sr(e.scene),n=new Map,r=e.expressionManager?.expressionMap;if(r!=null)for(let[e,t]of Object.entries(r)){let r=new Set;for(let i of t.binds)if(i instanceof M){if(i.weight!==0)for(let t of i.primitives){let r=n.get(t);r??(r=new Map,n.set(t,r));let a=r.get(e);a??(a=new Set,r.set(e,a)),a.add(i)}r.add(i)}for(let e of r)t.deleteBind(e)}for(let e of t){let t=n.get(e);if(t==null)continue;let i=e.geometry.morphAttributes;e.geometry.morphAttributes={};let a=e.geometry.clone();e.geometry=a;let o=a.morphTargetsRelative,s=i.position!=null,c=i.normal!=null,l={},u={},d=[];if(s||c){s&&(l.position=[]),c&&(l.normal=[]);let n=0;for(let[a,f]of t)s&&(l.position[n]=cr(i.position,f,o)),c&&(l.normal[n]=cr(i.normal,f,o)),r?.[a].addBind(new M({index:n,weight:1,primitives:[e]})),u[a]=n,d.push(0),n++}a.morphAttributes=l,e.morphTargetDictionary=u,e.morphTargetInfluences=d}}function ur(e,t,n){if(e.getComponent)return e.getComponent(t,n);{let r=e.array[t*e.itemSize+n];return e.normalized&&(r=S.denormalize(r,e.array)),r}}function dr(e,t,n,r){e.setComponent?e.setComponent(t,n,r):(e.normalized&&(r=S.normalize(r,e.array)),e.array[t*e.itemSize+n]=r)}function fr(e){let t=pr(e),n=new Set;for(let e of t)n.has(e.geometry)&&(e.geometry=br(e.geometry)),n.add(e.geometry);let r=new Map;for(let e of n){let t=e.getAttribute(`skinIndex`),n=r.get(t)??new Map;r.set(t,n);let i=e.getAttribute(`skinWeight`),a=mr(t,i);n.set(i,a)}let i=new Map;for(let e of t){let t=hr(e,r);i.set(e,t)}let a=[];for(let[e,t]of i){let n=!1;for(let r of a)if(gr(t,r.boneInverseMap)){n=!0,r.meshes.add(e);for(let[e,n]of t)r.boneInverseMap.set(e,n);break}n||a.push({boneInverseMap:t,meshes:new Set([e])})}let o=new Map,c=new yr,l=new yr,u=new yr;for(let e of a){let{boneInverseMap:t,meshes:n}=e,r=Array.from(t.keys()),i=Array.from(t.values()),a=new s(r,i),d=l.getOrCreate(a);for(let e of n){let t=e.geometry.getAttribute(`skinIndex`),n=c.getOrCreate(t),i=e.skeleton.bones,a=`${n};${d};${i.map(e=>u.getOrCreate(e)).join(`,`)}`,s=o.get(a);s??(s=t.clone(),_r(s,i,r),o.set(a,s)),e.geometry.setAttribute(`skinIndex`,s)}for(let e of n)e.bind(a,new g)}}function pr(e){let t=new Set;return e.traverse(e=>{if(!e.isSkinnedMesh)return;let n=e;t.add(n)}),t}function mr(e,t){let n=new Set;for(let r=0;r<e.count;r++)for(let i=0;i<e.itemSize;i++){let a=ur(e,r,i);ur(t,r,i)!==0&&n.add(a)}return n}function hr(e,t){let n=new Map,r=e.skeleton,i=e.geometry,a=i.getAttribute(`skinIndex`),o=i.getAttribute(`skinWeight`),s=t.get(a)?.get(o);if(!s)throw Error(`Unreachable. attributeUsedIndexSetMap does not know the skin index attribute or the skin weight attribute.`);for(let e of s)n.set(r.bones[e],r.boneInverses[e]);return n}function gr(e,t){for(let[n,r]of e.entries()){let e=t.get(n);if(e!=null&&!vr(r,e))return!1}return!0}function _r(e,t,n){let r=new Map;for(let e of t)r.set(e,r.size);let i=new Map;for(let[e,t]of n.entries()){let n=r.get(t);i.set(n,e)}for(let t=0;t<e.count;t++)for(let n=0;n<e.itemSize;n++){let r=ur(e,t,n),a=i.get(r);dr(e,t,n,a)}e.needsUpdate=!0}function vr(e,t,n){if(n||=1e-4,e.elements.length!=t.elements.length)return!1;for(let r=0,i=e.elements.length;r<i;r++)if(Math.abs(e.elements[r]-t.elements[r])>n)return!1;return!0}var yr=class{constructor(){this._objectIndexMap=new Map,this._index=0}get(e){return this._objectIndexMap.get(e)}getOrCreate(e){let t=this._objectIndexMap.get(e);return t??(t=this._index,this._objectIndexMap.set(e,t),this._index++),t}};function br(e){let t=new h;t.name=e.name,t.setIndex(e.index);for(let[n,r]of Object.entries(e.attributes))t.setAttribute(n,r);for(let[n,r]of Object.entries(e.morphAttributes)){let e=n;t.morphAttributes[e]=r.concat()}t.morphTargetsRelative=e.morphTargetsRelative,t.groups=[];for(let n of e.groups)t.addGroup(n.start,n.count,n.materialIndex);return t.boundingSphere=e.boundingSphere?.clone()??null,t.boundingBox=e.boundingBox?.clone()??null,t.drawRange.start=e.drawRange.start,t.drawRange.count=e.drawRange.count,t.userData=e.userData,t}function xr(e){if(Object.values(e).forEach(e=>{e?.isTexture&&e.dispose()}),e.isShaderMaterial){let t=e.uniforms;t&&Object.values(t).forEach(e=>{let t=e.value;t?.isTexture&&t.dispose()})}e.dispose()}function Sr(e){let t=e.geometry;t&&t.dispose();let n=e.skeleton;n&&n.dispose();let r=e.material;r&&(Array.isArray(r)?r.forEach(e=>xr(e)):r&&xr(r))}function Cr(e){e.traverse(Sr)}function wr(e,t){console.warn(`VRMUtils.removeUnnecessaryJoints: removeUnnecessaryJoints is deprecated. Use combineSkeletons instead. combineSkeletons contributes more to the performance improvement. This function will be removed in the next major version.`);let n=t?.experimentalSameBoneCounts??!1,r=[];e.traverse(e=>{e.type===`SkinnedMesh`&&r.push(e)});let i=new Map,a=0;for(let e of r){let t=e.geometry.getAttribute(`skinIndex`);if(i.has(t))continue;let n=new Map,r=new Map;for(let e=0;e<t.count;e++)for(let i=0;i<t.itemSize;i++){let a=ur(t,e,i),o=n.get(a);o??(o=n.size,n.set(a,o),r.set(o,a)),dr(t,e,i,o)}t.needsUpdate=!0,i.set(t,r),a=Math.max(a,n.size)}for(let e of r){let t=e.geometry.getAttribute(`skinIndex`),r=i.get(t),o=[],c=[],l=n?a:r.size;for(let t=0;t<l;t++){let n=r.get(t)??0;o.push(e.skeleton.bones[n]),c.push(e.skeleton.boneInverses[n])}let u=new s(o,c);e.bind(u,new g)}}function Tr(e,t){let n=e.position.count,r=Array(n),i=0,a=t.array;for(let e=0;e<a.length;e++){let t=a[e];r[t]||(r[t]=!0,i++)}return{isVertexUsed:r,vertexCount:n,verticesUsed:i}}function Er(e){let t=[],n=[],r=0;for(let i=0;i<e.length;i++)if(e[i]){let e=r++;t[i]=e,n[e]=i}return{originalIndexNewIndexMap:t,newIndexOriginalIndexMap:n}}function Dr(e,t){t.name=e.name,t.morphTargetsRelative=e.morphTargetsRelative,e.groups.forEach(e=>{t.addGroup(e.start,e.count,e.materialIndex)}),t.boundingBox=e.boundingBox?.clone()??null,t.boundingSphere=e.boundingSphere?.clone()??null,t.setDrawRange(e.drawRange.start,e.drawRange.count),t.userData=e.userData}function Or(e,n,r){let i=n.array,a=new i.constructor(i.length);for(let e=0;e<i.length;e++){let t=i[e];a[e]=r[t]}e.setIndex(new t(a,n.itemSize,n.normalized))}function kr(e,t,n){let r=e.constructor,i=new r(t.length*n),a=!0;for(let r=0;r<t.length;r++){let o=t[r]*n,s=r*n;for(let t=0;t<n;t++){let n=e[o+t];i[s+t]=n,a&&=n===0}}return[i,a]}function Ar(e){let t=new Map,n=[];for(let[r,i]of Object.entries(e))if(i.isInterleavedBufferAttribute){let e=i,n=e.data,a=t.get(n)??[];t.set(n,a),a.push([r,e])}else{let e=i;n.push([r,e])}return[t,n]}function jr(e,n,r){let[i,a]=Ar(n);for(let[t,n]of i){let i=t.array,{stride:a}=t,[o,s]=kr(i,r,a),c=new te(o,a);c.setUsage(t.usage);for(let[t,r]of n){let{itemSize:n,offset:i,normalized:a}=r,o=new v(c,n,i,a);e.setAttribute(t,o)}}for(let[n,i]of a){let a=i.array,{itemSize:o,normalized:s}=i,[c,l]=kr(a,r,o);e.setAttribute(n,new t(c,o,s))}}function Mr(e){let t=new Map,n=[];for(let[r,i]of Object.entries(e)){let e=r;for(let r=0;r<i.length;r++){let a=i[r];if(a.isInterleavedBufferAttribute){let n=a,i=n.data,o=t.get(i)??[];t.set(i,o),o.push([e,r,n])}else{let t=a;n.push([e,r,t])}}}return[t,n]}function Nr(e,n,r){let i=!0,[a,o]=Mr(n),s={};for(let[e,t]of a){let n=e.array,{stride:a}=e,[o,c]=kr(n,r,a);i&&=c;let l=new te(o,a);l.setUsage(e.usage);for(let[e,n,r]of t){let{itemSize:t,offset:i,normalized:a}=r,o=new v(l,t,i,a);s[e]??(s[e]=[]),s[e][n]=o}}for(let[e,n,a]of o){let o=a,c=o.array,{itemSize:l,normalized:u}=o,[d,f]=kr(c,r,l);i&&=f,s[e]??(s[e]=[]),s[e][n]=new t(d,l,u)}e.morphAttributes=i?{}:s}function Pr(e){let t=new Map;e.traverse(e=>{if(!e.isMesh)return;let n=e,r=n.geometry,i=r.index;if(i==null)return;let a=t.get(r);if(a!=null){n.geometry=a;return}let{isVertexUsed:o,vertexCount:s,verticesUsed:c}=Tr(r.attributes,i);if(c===s)return;let{originalIndexNewIndexMap:l,newIndexOriginalIndexMap:u}=Er(o),d=new h;Dr(r,d),t.set(r,d),Or(d,i,l),jr(d,r.attributes,u),Nr(d,r.morphAttributes,u),n.geometry=d}),Array.from(t.keys()).forEach(e=>{e.dispose()})}function Fr(e){e.meta?.metaVersion===`0`&&(e.scene.rotation.y=Math.PI)}var $=class{constructor(){}};$.combineMorphs=lr,$.combineSkeletons=fr,$.deepDispose=Cr,$.removeUnnecessaryJoints=wr,$.removeUnnecessaryVertices=Pr,$.rotateVRM0=Fr;export{$,ut as A,Pe as B,Ee as C,or as D,Le as E,vt as F,Dn as G,vn as H,on as I,Pn as J,kn as K,$t as L,mt as M,dt as N,ct as O,ht as P,er as Q,Tn as R,Te as S,we as T,Un as U,Sn as V,zn as W,Hn as X,Xn as Y,ar as Z,P as _,xt as a,be as b,bt as c,k as d,j as f,O as g,he as h,Nt as i,Ke as j,H as k,D as l,M as m,Mt as n,pn as o,A as p,Mn as q,Rt as r,yt as s,Ft as t,me as u,_e as v,Ne as w,F as x,ye as y,hn as z};