@playdrop/playdrop-cli 0.3.1-build.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1315) hide show
  1. package/README.md +24 -0
  2. package/bin/playdrop +3 -0
  3. package/bin/playdrop-cli +2 -0
  4. package/config/client-meta.json +45 -0
  5. package/dist/apiClient.d.ts +9 -0
  6. package/dist/apiClient.js +21 -0
  7. package/dist/apps/build.d.ts +24 -0
  8. package/dist/apps/build.js +561 -0
  9. package/dist/apps/index.d.ts +15 -0
  10. package/dist/apps/index.js +23 -0
  11. package/dist/apps/upload.d.ts +19 -0
  12. package/dist/apps/upload.js +114 -0
  13. package/dist/apps/validate.d.ts +3 -0
  14. package/dist/apps/validate.js +75 -0
  15. package/dist/catalogue-utils.d.ts +24 -0
  16. package/dist/catalogue-utils.js +121 -0
  17. package/dist/catalogue.d.ts +262 -0
  18. package/dist/catalogue.js +1289 -0
  19. package/dist/clientInfo.d.ts +6 -0
  20. package/dist/clientInfo.js +51 -0
  21. package/dist/commandContext.d.ts +15 -0
  22. package/dist/commandContext.js +40 -0
  23. package/dist/commands/asset-packs.d.ts +27 -0
  24. package/dist/commands/asset-packs.js +508 -0
  25. package/dist/commands/assets.d.ts +35 -0
  26. package/dist/commands/assets.js +668 -0
  27. package/dist/commands/build.d.ts +1 -0
  28. package/dist/commands/build.js +56 -0
  29. package/dist/commands/capture.d.ts +11 -0
  30. package/dist/commands/capture.js +681 -0
  31. package/dist/commands/create.d.ts +6 -0
  32. package/dist/commands/create.js +1174 -0
  33. package/dist/commands/detail.d.ts +5 -0
  34. package/dist/commands/detail.js +320 -0
  35. package/dist/commands/dev.d.ts +1 -0
  36. package/dist/commands/dev.js +281 -0
  37. package/dist/commands/devServer.d.ts +18 -0
  38. package/dist/commands/devServer.js +122 -0
  39. package/dist/commands/devShared.d.ts +24 -0
  40. package/dist/commands/devShared.js +213 -0
  41. package/dist/commands/documentation.d.ts +1 -0
  42. package/dist/commands/documentation.js +152 -0
  43. package/dist/commands/feedback.d.ts +16 -0
  44. package/dist/commands/feedback.js +323 -0
  45. package/dist/commands/format.d.ts +1 -0
  46. package/dist/commands/format.js +65 -0
  47. package/dist/commands/generation.d.ts +33 -0
  48. package/dist/commands/generation.js +509 -0
  49. package/dist/commands/init.d.ts +13 -0
  50. package/dist/commands/init.js +300 -0
  51. package/dist/commands/list.d.ts +7 -0
  52. package/dist/commands/list.js +347 -0
  53. package/dist/commands/login.d.ts +10 -0
  54. package/dist/commands/login.js +117 -0
  55. package/dist/commands/logout.d.ts +1 -0
  56. package/dist/commands/logout.js +8 -0
  57. package/dist/commands/migrateCatalogueV2.d.ts +1 -0
  58. package/dist/commands/migrateCatalogueV2.js +142 -0
  59. package/dist/commands/upgrade.d.ts +1 -0
  60. package/dist/commands/upgrade.js +28 -0
  61. package/dist/commands/upload.d.ts +4 -0
  62. package/dist/commands/upload.js +651 -0
  63. package/dist/commands/validate.d.ts +1 -0
  64. package/dist/commands/validate.js +53 -0
  65. package/dist/commands/versions.d.ts +17 -0
  66. package/dist/commands/versions.js +384 -0
  67. package/dist/commands/whoami.d.ts +1 -0
  68. package/dist/commands/whoami.js +72 -0
  69. package/dist/config.d.ts +10 -0
  70. package/dist/config.js +41 -0
  71. package/dist/environment.d.ts +11 -0
  72. package/dist/environment.js +66 -0
  73. package/dist/http.d.ts +6 -0
  74. package/dist/http.js +49 -0
  75. package/dist/index.d.ts +2 -0
  76. package/dist/index.js +700 -0
  77. package/dist/messages.d.ts +12 -0
  78. package/dist/messages.js +65 -0
  79. package/dist/playwright.d.ts +10 -0
  80. package/dist/playwright.js +100 -0
  81. package/dist/proxyFetch.d.ts +14 -0
  82. package/dist/proxyFetch.js +203 -0
  83. package/dist/taskSelection.d.ts +16 -0
  84. package/dist/taskSelection.js +205 -0
  85. package/dist/taskUtils.d.ts +4 -0
  86. package/dist/taskUtils.js +35 -0
  87. package/dist/uploadLog.d.ts +15 -0
  88. package/dist/uploadLog.js +118 -0
  89. package/node_modules/@playdrop/ai-client/dist/index.d.ts +377 -0
  90. package/node_modules/@playdrop/ai-client/dist/index.d.ts.map +1 -0
  91. package/node_modules/@playdrop/ai-client/dist/index.js +318 -0
  92. package/node_modules/@playdrop/ai-client/package.json +21 -0
  93. package/node_modules/@playdrop/api-client/dist/client.d.ts +299 -0
  94. package/node_modules/@playdrop/api-client/dist/client.d.ts.map +1 -0
  95. package/node_modules/@playdrop/api-client/dist/client.js +1908 -0
  96. package/node_modules/@playdrop/api-client/dist/index.d.ts +177 -0
  97. package/node_modules/@playdrop/api-client/dist/index.d.ts.map +1 -0
  98. package/node_modules/@playdrop/api-client/dist/index.js +329 -0
  99. package/node_modules/@playdrop/api-client/package.json +32 -0
  100. package/node_modules/@playdrop/config/client-meta.json +45 -0
  101. package/node_modules/@playdrop/config/dist/src/constants.d.ts +9 -0
  102. package/node_modules/@playdrop/config/dist/src/constants.d.ts.map +1 -0
  103. package/node_modules/@playdrop/config/dist/src/constants.js +10 -0
  104. package/node_modules/@playdrop/config/dist/src/index.d.ts +13 -0
  105. package/node_modules/@playdrop/config/dist/src/index.d.ts.map +1 -0
  106. package/node_modules/@playdrop/config/dist/src/index.js +197 -0
  107. package/node_modules/@playdrop/config/dist/src/server/fastify.d.ts +12 -0
  108. package/node_modules/@playdrop/config/dist/src/server/fastify.d.ts.map +1 -0
  109. package/node_modules/@playdrop/config/dist/src/server/fastify.js +103 -0
  110. package/node_modules/@playdrop/config/dist/src/types.d.ts +59 -0
  111. package/node_modules/@playdrop/config/dist/src/types.d.ts.map +1 -0
  112. package/node_modules/@playdrop/config/dist/src/types.js +2 -0
  113. package/node_modules/@playdrop/config/dist/test/validateClientEnvironment.test.d.ts +2 -0
  114. package/node_modules/@playdrop/config/dist/test/validateClientEnvironment.test.d.ts.map +1 -0
  115. package/node_modules/@playdrop/config/dist/test/validateClientEnvironment.test.js +63 -0
  116. package/node_modules/@playdrop/config/dist/tsconfig.tsbuildinfo +1 -0
  117. package/node_modules/@playdrop/config/package.json +19 -0
  118. package/node_modules/@playdrop/entity-core/dist/src/entity-cleaner.d.ts +13 -0
  119. package/node_modules/@playdrop/entity-core/dist/src/entity-cleaner.js +146 -0
  120. package/node_modules/@playdrop/entity-core/dist/src/entity-cleaner.js.map +1 -0
  121. package/node_modules/@playdrop/entity-core/dist/src/entity-utils.d.ts +47 -0
  122. package/node_modules/@playdrop/entity-core/dist/src/entity-utils.js +328 -0
  123. package/node_modules/@playdrop/entity-core/dist/src/entity-utils.js.map +1 -0
  124. package/node_modules/@playdrop/entity-core/dist/src/format-utils.d.ts +3 -0
  125. package/node_modules/@playdrop/entity-core/dist/src/format-utils.js +38 -0
  126. package/node_modules/@playdrop/entity-core/dist/src/format-utils.js.map +1 -0
  127. package/node_modules/@playdrop/entity-core/dist/src/humanoid/geometry.d.ts +23 -0
  128. package/node_modules/@playdrop/entity-core/dist/src/humanoid/geometry.js +11 -0
  129. package/node_modules/@playdrop/entity-core/dist/src/humanoid/geometry.js.map +1 -0
  130. package/node_modules/@playdrop/entity-core/dist/src/humanoid/index.d.ts +4 -0
  131. package/node_modules/@playdrop/entity-core/dist/src/humanoid/index.js +21 -0
  132. package/node_modules/@playdrop/entity-core/dist/src/humanoid/index.js.map +1 -0
  133. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/common.d.ts +4 -0
  134. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/common.js +24 -0
  135. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/common.js.map +1 -0
  136. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/index.d.ts +3 -0
  137. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/index.js +20 -0
  138. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/index.js.map +1 -0
  139. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/textured-builder.d.ts +3 -0
  140. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/textured-builder.js +431 -0
  141. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/textured-builder.js.map +1 -0
  142. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/types.d.ts +6 -0
  143. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/types.js +3 -0
  144. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/types.js.map +1 -0
  145. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/voxel-builder.d.ts +3 -0
  146. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/voxel-builder.js +396 -0
  147. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r15/voxel-builder.js.map +1 -0
  148. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/builder.d.ts +12 -0
  149. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/builder.js +199 -0
  150. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/builder.js.map +1 -0
  151. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/index.d.ts +4 -0
  152. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/index.js +18 -0
  153. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/index.js.map +1 -0
  154. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/scanner.d.ts +43 -0
  155. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/scanner.js +142 -0
  156. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/scanner.js.map +1 -0
  157. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/textures/artifacts.d.ts +26 -0
  158. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/textures/artifacts.js +65 -0
  159. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/textures/artifacts.js.map +1 -0
  160. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/textures/face-map.d.ts +33 -0
  161. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/textures/face-map.js +175 -0
  162. package/node_modules/@playdrop/entity-core/dist/src/humanoid/r6/textures/face-map.js.map +1 -0
  163. package/node_modules/@playdrop/entity-core/dist/src/humanoid/templates/humanoid_r15.json +1517 -0
  164. package/node_modules/@playdrop/entity-core/dist/src/humanoid/templates/humanoid_r6.json +61 -0
  165. package/node_modules/@playdrop/entity-core/dist/src/humanoid/templates/index.d.ts +10 -0
  166. package/node_modules/@playdrop/entity-core/dist/src/humanoid/templates/index.js +23 -0
  167. package/node_modules/@playdrop/entity-core/dist/src/humanoid/templates/index.js.map +1 -0
  168. package/node_modules/@playdrop/entity-core/dist/src/index.d.ts +19 -0
  169. package/node_modules/@playdrop/entity-core/dist/src/index.js +36 -0
  170. package/node_modules/@playdrop/entity-core/dist/src/index.js.map +1 -0
  171. package/node_modules/@playdrop/entity-core/dist/src/materials.d.ts +26 -0
  172. package/node_modules/@playdrop/entity-core/dist/src/materials.js +188 -0
  173. package/node_modules/@playdrop/entity-core/dist/src/materials.js.map +1 -0
  174. package/node_modules/@playdrop/entity-core/dist/src/palette_tools.d.ts +68 -0
  175. package/node_modules/@playdrop/entity-core/dist/src/palette_tools.js +491 -0
  176. package/node_modules/@playdrop/entity-core/dist/src/palette_tools.js.map +1 -0
  177. package/node_modules/@playdrop/entity-core/dist/src/serialization.d.ts +4 -0
  178. package/node_modules/@playdrop/entity-core/dist/src/serialization.js +382 -0
  179. package/node_modules/@playdrop/entity-core/dist/src/serialization.js.map +1 -0
  180. package/node_modules/@playdrop/entity-core/dist/src/textures.d.ts +29 -0
  181. package/node_modules/@playdrop/entity-core/dist/src/textures.js +214 -0
  182. package/node_modules/@playdrop/entity-core/dist/src/textures.js.map +1 -0
  183. package/node_modules/@playdrop/entity-core/dist/src/transforms/textured-boxes/infer-face.d.ts +9 -0
  184. package/node_modules/@playdrop/entity-core/dist/src/transforms/textured-boxes/infer-face.js +316 -0
  185. package/node_modules/@playdrop/entity-core/dist/src/transforms/textured-boxes/infer-face.js.map +1 -0
  186. package/node_modules/@playdrop/entity-core/dist/src/transforms/textured-boxes/layer-mode.d.ts +9 -0
  187. package/node_modules/@playdrop/entity-core/dist/src/transforms/textured-boxes/layer-mode.js +153 -0
  188. package/node_modules/@playdrop/entity-core/dist/src/transforms/textured-boxes/layer-mode.js.map +1 -0
  189. package/node_modules/@playdrop/entity-core/dist/src/transforms/textured-boxes/merge-overlay.d.ts +2 -0
  190. package/node_modules/@playdrop/entity-core/dist/src/transforms/textured-boxes/merge-overlay.js +121 -0
  191. package/node_modules/@playdrop/entity-core/dist/src/transforms/textured-boxes/merge-overlay.js.map +1 -0
  192. package/node_modules/@playdrop/entity-core/dist/src/transforms/textured-boxes/slice.d.ts +20 -0
  193. package/node_modules/@playdrop/entity-core/dist/src/transforms/textured-boxes/slice.js +398 -0
  194. package/node_modules/@playdrop/entity-core/dist/src/transforms/textured-boxes/slice.js.map +1 -0
  195. package/node_modules/@playdrop/entity-core/dist/src/transforms/upscale.d.ts +3 -0
  196. package/node_modules/@playdrop/entity-core/dist/src/transforms/upscale.js +210 -0
  197. package/node_modules/@playdrop/entity-core/dist/src/transforms/upscale.js.map +1 -0
  198. package/node_modules/@playdrop/entity-core/dist/src/transforms/voxels/slice.d.ts +12 -0
  199. package/node_modules/@playdrop/entity-core/dist/src/transforms/voxels/slice.js +81 -0
  200. package/node_modules/@playdrop/entity-core/dist/src/transforms/voxels/slice.js.map +1 -0
  201. package/node_modules/@playdrop/entity-core/dist/src/transforms/voxels/textured-to-voxel.d.ts +12 -0
  202. package/node_modules/@playdrop/entity-core/dist/src/transforms/voxels/textured-to-voxel.js +323 -0
  203. package/node_modules/@playdrop/entity-core/dist/src/transforms/voxels/textured-to-voxel.js.map +1 -0
  204. package/node_modules/@playdrop/entity-core/dist/src/types.d.ts +168 -0
  205. package/node_modules/@playdrop/entity-core/dist/src/types.js +3 -0
  206. package/node_modules/@playdrop/entity-core/dist/src/types.js.map +1 -0
  207. package/node_modules/@playdrop/entity-core/dist/src/validation.d.ts +24 -0
  208. package/node_modules/@playdrop/entity-core/dist/src/validation.js +641 -0
  209. package/node_modules/@playdrop/entity-core/dist/src/validation.js.map +1 -0
  210. package/node_modules/@playdrop/entity-core/dist/src/voxels/greedy-mesher.d.ts +11 -0
  211. package/node_modules/@playdrop/entity-core/dist/src/voxels/greedy-mesher.js +135 -0
  212. package/node_modules/@playdrop/entity-core/dist/src/voxels/greedy-mesher.js.map +1 -0
  213. package/node_modules/@playdrop/entity-core/dist/src/voxels.d.ts +23 -0
  214. package/node_modules/@playdrop/entity-core/dist/src/voxels.js +57 -0
  215. package/node_modules/@playdrop/entity-core/dist/src/voxels.js.map +1 -0
  216. package/node_modules/@playdrop/entity-core/dist/test/entity-utils.test.d.ts +1 -0
  217. package/node_modules/@playdrop/entity-core/dist/test/entity-utils.test.js +92 -0
  218. package/node_modules/@playdrop/entity-core/dist/test/entity-utils.test.js.map +1 -0
  219. package/node_modules/@playdrop/entity-core/dist/test/greedy-mesher.test.d.ts +1 -0
  220. package/node_modules/@playdrop/entity-core/dist/test/greedy-mesher.test.js +48 -0
  221. package/node_modules/@playdrop/entity-core/dist/test/greedy-mesher.test.js.map +1 -0
  222. package/node_modules/@playdrop/entity-core/dist/test/humanoid/humanoid-builders.test.d.ts +1 -0
  223. package/node_modules/@playdrop/entity-core/dist/test/humanoid/humanoid-builders.test.js +270 -0
  224. package/node_modules/@playdrop/entity-core/dist/test/humanoid/humanoid-builders.test.js.map +1 -0
  225. package/node_modules/@playdrop/entity-core/dist/test/index.test.d.ts +1 -0
  226. package/node_modules/@playdrop/entity-core/dist/test/index.test.js +48 -0
  227. package/node_modules/@playdrop/entity-core/dist/test/index.test.js.map +1 -0
  228. package/node_modules/@playdrop/entity-core/dist/test/layer-mode.test.d.ts +1 -0
  229. package/node_modules/@playdrop/entity-core/dist/test/layer-mode.test.js +67 -0
  230. package/node_modules/@playdrop/entity-core/dist/test/layer-mode.test.js.map +1 -0
  231. package/node_modules/@playdrop/entity-core/dist/test/materials.test.d.ts +1 -0
  232. package/node_modules/@playdrop/entity-core/dist/test/materials.test.js +55 -0
  233. package/node_modules/@playdrop/entity-core/dist/test/materials.test.js.map +1 -0
  234. package/node_modules/@playdrop/entity-core/dist/test/palette-tools.test.d.ts +1 -0
  235. package/node_modules/@playdrop/entity-core/dist/test/palette-tools.test.js +124 -0
  236. package/node_modules/@playdrop/entity-core/dist/test/palette-tools.test.js.map +1 -0
  237. package/node_modules/@playdrop/entity-core/dist/test/serialization.test.d.ts +1 -0
  238. package/node_modules/@playdrop/entity-core/dist/test/serialization.test.js +35 -0
  239. package/node_modules/@playdrop/entity-core/dist/test/serialization.test.js.map +1 -0
  240. package/node_modules/@playdrop/entity-core/dist/test/textures.test.d.ts +1 -0
  241. package/node_modules/@playdrop/entity-core/dist/test/textures.test.js +120 -0
  242. package/node_modules/@playdrop/entity-core/dist/test/textures.test.js.map +1 -0
  243. package/node_modules/@playdrop/entity-core/dist/test/types.test.d.ts +1 -0
  244. package/node_modules/@playdrop/entity-core/dist/test/types.test.js +32 -0
  245. package/node_modules/@playdrop/entity-core/dist/test/types.test.js.map +1 -0
  246. package/node_modules/@playdrop/entity-core/dist/test/upscale.test.d.ts +1 -0
  247. package/node_modules/@playdrop/entity-core/dist/test/upscale.test.js +100 -0
  248. package/node_modules/@playdrop/entity-core/dist/test/upscale.test.js.map +1 -0
  249. package/node_modules/@playdrop/entity-core/dist/test/validation.test.d.ts +1 -0
  250. package/node_modules/@playdrop/entity-core/dist/test/validation.test.js +61 -0
  251. package/node_modules/@playdrop/entity-core/dist/test/validation.test.js.map +1 -0
  252. package/node_modules/@playdrop/entity-core/dist/test/voxels.test.d.ts +1 -0
  253. package/node_modules/@playdrop/entity-core/dist/test/voxels.test.js +51 -0
  254. package/node_modules/@playdrop/entity-core/dist/test/voxels.test.js.map +1 -0
  255. package/node_modules/@playdrop/entity-core/package.json +20 -0
  256. package/node_modules/@playdrop/entity-three/dist/src/animations.d.ts +4 -0
  257. package/node_modules/@playdrop/entity-three/dist/src/animations.js +70 -0
  258. package/node_modules/@playdrop/entity-three/dist/src/builders.d.ts +8 -0
  259. package/node_modules/@playdrop/entity-three/dist/src/builders.js +330 -0
  260. package/node_modules/@playdrop/entity-three/dist/src/context.d.ts +24 -0
  261. package/node_modules/@playdrop/entity-three/dist/src/context.js +32 -0
  262. package/node_modules/@playdrop/entity-three/dist/src/exporters/glb.d.ts +100 -0
  263. package/node_modules/@playdrop/entity-three/dist/src/exporters/glb.js +926 -0
  264. package/node_modules/@playdrop/entity-three/dist/src/exporters/image.d.ts +18 -0
  265. package/node_modules/@playdrop/entity-three/dist/src/exporters/image.js +288 -0
  266. package/node_modules/@playdrop/entity-three/dist/src/index.d.ts +17 -0
  267. package/node_modules/@playdrop/entity-three/dist/src/index.js +15 -0
  268. package/node_modules/@playdrop/entity-three/dist/src/instantiate.d.ts +40 -0
  269. package/node_modules/@playdrop/entity-three/dist/src/instantiate.js +70 -0
  270. package/node_modules/@playdrop/entity-three/dist/src/nodes.d.ts +8 -0
  271. package/node_modules/@playdrop/entity-three/dist/src/nodes.js +63 -0
  272. package/node_modules/@playdrop/entity-three/dist/src/overlays.d.ts +7 -0
  273. package/node_modules/@playdrop/entity-three/dist/src/overlays.js +97 -0
  274. package/node_modules/@playdrop/entity-three/dist/src/primitives.d.ts +4 -0
  275. package/node_modules/@playdrop/entity-three/dist/src/primitives.js +20 -0
  276. package/node_modules/@playdrop/entity-three/dist/src/scene.d.ts +3 -0
  277. package/node_modules/@playdrop/entity-three/dist/src/scene.js +144 -0
  278. package/node_modules/@playdrop/entity-three/dist/src/skinned-mesh.d.ts +29 -0
  279. package/node_modules/@playdrop/entity-three/dist/src/skinned-mesh.js +625 -0
  280. package/node_modules/@playdrop/entity-three/dist/src/texture-atlas.d.ts +13 -0
  281. package/node_modules/@playdrop/entity-three/dist/src/texture-atlas.js +107 -0
  282. package/node_modules/@playdrop/entity-three/dist/src/textures.d.ts +17 -0
  283. package/node_modules/@playdrop/entity-three/dist/src/textures.js +191 -0
  284. package/node_modules/@playdrop/entity-three/dist/src/types.d.ts +112 -0
  285. package/node_modules/@playdrop/entity-three/dist/src/types.js +1 -0
  286. package/node_modules/@playdrop/entity-three/dist/src/voxels/faces.d.ts +28 -0
  287. package/node_modules/@playdrop/entity-three/dist/src/voxels/faces.js +442 -0
  288. package/node_modules/@playdrop/entity-three/dist/src/voxels/mesher.d.ts +24 -0
  289. package/node_modules/@playdrop/entity-three/dist/src/voxels/mesher.js +88 -0
  290. package/node_modules/@playdrop/entity-three/dist/test/export-image.playwright.test.d.ts +1 -0
  291. package/node_modules/@playdrop/entity-three/dist/test/export-image.playwright.test.js +116 -0
  292. package/node_modules/@playdrop/entity-three/dist/test/fixtures/render-worker.d.ts +20 -0
  293. package/node_modules/@playdrop/entity-three/dist/test/fixtures/render-worker.js +63 -0
  294. package/node_modules/@playdrop/entity-three/dist/test/glb-skinned.test.d.ts +1 -0
  295. package/node_modules/@playdrop/entity-three/dist/test/glb-skinned.test.js +86 -0
  296. package/node_modules/@playdrop/entity-three/dist/test/index.test.d.ts +1 -0
  297. package/node_modules/@playdrop/entity-three/dist/test/index.test.js +8 -0
  298. package/node_modules/@playdrop/entity-three/dist/test/instantiate.test.d.ts +1 -0
  299. package/node_modules/@playdrop/entity-three/dist/test/instantiate.test.js +68 -0
  300. package/node_modules/@playdrop/entity-three/dist/test/overlays.test.d.ts +1 -0
  301. package/node_modules/@playdrop/entity-three/dist/test/overlays.test.js +20 -0
  302. package/node_modules/@playdrop/entity-three/dist/test/scene-filter.test.d.ts +1 -0
  303. package/node_modules/@playdrop/entity-three/dist/test/scene-filter.test.js +51 -0
  304. package/node_modules/@playdrop/entity-three/dist/test/scene-smoke.test.d.ts +1 -0
  305. package/node_modules/@playdrop/entity-three/dist/test/scene-smoke.test.js +63 -0
  306. package/node_modules/@playdrop/entity-three/dist/test/skinned-mesh.test.d.ts +1 -0
  307. package/node_modules/@playdrop/entity-three/dist/test/skinned-mesh.test.js +51 -0
  308. package/node_modules/@playdrop/entity-three/dist/test/textured-overlay.test.d.ts +1 -0
  309. package/node_modules/@playdrop/entity-three/dist/test/textured-overlay.test.js +116 -0
  310. package/node_modules/@playdrop/entity-three/dist/test/voxels.test.d.ts +1 -0
  311. package/node_modules/@playdrop/entity-three/dist/test/voxels.test.js +20 -0
  312. package/node_modules/@playdrop/entity-three/package.json +27 -0
  313. package/node_modules/@playdrop/types/dist/api.d.ts +647 -0
  314. package/node_modules/@playdrop/types/dist/api.d.ts.map +1 -0
  315. package/node_modules/@playdrop/types/dist/api.js +39 -0
  316. package/node_modules/@playdrop/types/dist/app.d.ts +35 -0
  317. package/node_modules/@playdrop/types/dist/app.d.ts.map +1 -0
  318. package/node_modules/@playdrop/types/dist/app.js +64 -0
  319. package/node_modules/@playdrop/types/dist/asset-pack.d.ts +106 -0
  320. package/node_modules/@playdrop/types/dist/asset-pack.d.ts.map +1 -0
  321. package/node_modules/@playdrop/types/dist/asset-pack.js +4 -0
  322. package/node_modules/@playdrop/types/dist/asset.d.ts +188 -0
  323. package/node_modules/@playdrop/types/dist/asset.d.ts.map +1 -0
  324. package/node_modules/@playdrop/types/dist/asset.js +100 -0
  325. package/node_modules/@playdrop/types/dist/ecs.d.ts +39 -0
  326. package/node_modules/@playdrop/types/dist/ecs.d.ts.map +1 -0
  327. package/node_modules/@playdrop/types/dist/ecs.js +93 -0
  328. package/node_modules/@playdrop/types/dist/engine-builtins.d.ts +17 -0
  329. package/node_modules/@playdrop/types/dist/engine-builtins.d.ts.map +1 -0
  330. package/node_modules/@playdrop/types/dist/engine-builtins.js +577 -0
  331. package/node_modules/@playdrop/types/dist/entity.d.ts +36 -0
  332. package/node_modules/@playdrop/types/dist/entity.d.ts.map +1 -0
  333. package/node_modules/@playdrop/types/dist/entity.js +40 -0
  334. package/node_modules/@playdrop/types/dist/graph.d.ts +34 -0
  335. package/node_modules/@playdrop/types/dist/graph.d.ts.map +1 -0
  336. package/node_modules/@playdrop/types/dist/graph.js +8 -0
  337. package/node_modules/@playdrop/types/dist/index.d.ts +10 -0
  338. package/node_modules/@playdrop/types/dist/index.d.ts.map +1 -0
  339. package/node_modules/@playdrop/types/dist/index.js +14 -0
  340. package/node_modules/@playdrop/types/dist/profile-asset-semantics.d.ts +22 -0
  341. package/node_modules/@playdrop/types/dist/profile-asset-semantics.d.ts.map +1 -0
  342. package/node_modules/@playdrop/types/dist/profile-asset-semantics.js +105 -0
  343. package/node_modules/@playdrop/types/dist/realtime.d.ts +221 -0
  344. package/node_modules/@playdrop/types/dist/realtime.d.ts.map +1 -0
  345. package/node_modules/@playdrop/types/dist/realtime.js +7 -0
  346. package/node_modules/@playdrop/types/dist/version.d.ts +149 -0
  347. package/node_modules/@playdrop/types/dist/version.d.ts.map +1 -0
  348. package/node_modules/@playdrop/types/dist/version.js +76 -0
  349. package/node_modules/@playdrop/types/package.json +63 -0
  350. package/node_modules/three/LICENSE +21 -0
  351. package/node_modules/three/README.md +86 -0
  352. package/node_modules/three/build/three.cjs +53732 -0
  353. package/node_modules/three/build/three.module.js +53316 -0
  354. package/node_modules/three/build/three.module.min.js +6 -0
  355. package/node_modules/three/examples/fonts/LICENSE +13 -0
  356. package/node_modules/three/examples/fonts/README.md +11 -0
  357. package/node_modules/three/examples/fonts/droid/NOTICE +190 -0
  358. package/node_modules/three/examples/fonts/droid/README.txt +18 -0
  359. package/node_modules/three/examples/fonts/droid/droid_sans_bold.typeface.json +1 -0
  360. package/node_modules/three/examples/fonts/droid/droid_sans_mono_regular.typeface.json +1 -0
  361. package/node_modules/three/examples/fonts/droid/droid_sans_regular.typeface.json +1 -0
  362. package/node_modules/three/examples/fonts/droid/droid_serif_bold.typeface.json +1 -0
  363. package/node_modules/three/examples/fonts/droid/droid_serif_regular.typeface.json +1 -0
  364. package/node_modules/three/examples/fonts/gentilis_bold.typeface.json +1 -0
  365. package/node_modules/three/examples/fonts/gentilis_regular.typeface.json +1 -0
  366. package/node_modules/three/examples/fonts/helvetiker_bold.typeface.json +1 -0
  367. package/node_modules/three/examples/fonts/helvetiker_regular.typeface.json +1 -0
  368. package/node_modules/three/examples/fonts/optimer_bold.typeface.json +1 -0
  369. package/node_modules/three/examples/fonts/optimer_regular.typeface.json +1 -0
  370. package/node_modules/three/examples/fonts/ttf/README.md +9 -0
  371. package/node_modules/three/examples/fonts/ttf/kenpixel.ttf +0 -0
  372. package/node_modules/three/examples/jsm/Addons.js +295 -0
  373. package/node_modules/three/examples/jsm/animation/AnimationClipCreator.js +116 -0
  374. package/node_modules/three/examples/jsm/animation/CCDIKSolver.js +482 -0
  375. package/node_modules/three/examples/jsm/animation/MMDAnimationHelper.js +1207 -0
  376. package/node_modules/three/examples/jsm/animation/MMDPhysics.js +1406 -0
  377. package/node_modules/three/examples/jsm/cameras/CinematicCamera.js +208 -0
  378. package/node_modules/three/examples/jsm/capabilities/WebGL.js +108 -0
  379. package/node_modules/three/examples/jsm/capabilities/WebGPU.js +57 -0
  380. package/node_modules/three/examples/jsm/controls/ArcballControls.js +3224 -0
  381. package/node_modules/three/examples/jsm/controls/DragControls.js +221 -0
  382. package/node_modules/three/examples/jsm/controls/FirstPersonControls.js +325 -0
  383. package/node_modules/three/examples/jsm/controls/FlyControls.js +326 -0
  384. package/node_modules/three/examples/jsm/controls/MapControls.js +28 -0
  385. package/node_modules/three/examples/jsm/controls/OrbitControls.js +1506 -0
  386. package/node_modules/three/examples/jsm/controls/PointerLockControls.js +162 -0
  387. package/node_modules/three/examples/jsm/controls/TrackballControls.js +828 -0
  388. package/node_modules/three/examples/jsm/controls/TransformControls.js +1573 -0
  389. package/node_modules/three/examples/jsm/csm/CSM.js +384 -0
  390. package/node_modules/three/examples/jsm/csm/CSMFrustum.js +152 -0
  391. package/node_modules/three/examples/jsm/csm/CSMHelper.js +193 -0
  392. package/node_modules/three/examples/jsm/csm/CSMShader.js +295 -0
  393. package/node_modules/three/examples/jsm/curves/CurveExtras.js +422 -0
  394. package/node_modules/three/examples/jsm/curves/NURBSCurve.js +80 -0
  395. package/node_modules/three/examples/jsm/curves/NURBSSurface.js +52 -0
  396. package/node_modules/three/examples/jsm/curves/NURBSUtils.js +542 -0
  397. package/node_modules/three/examples/jsm/curves/NURBSVolume.js +62 -0
  398. package/node_modules/three/examples/jsm/effects/AnaglyphEffect.js +154 -0
  399. package/node_modules/three/examples/jsm/effects/AsciiEffect.js +263 -0
  400. package/node_modules/three/examples/jsm/effects/OutlineEffect.js +539 -0
  401. package/node_modules/three/examples/jsm/effects/ParallaxBarrierEffect.js +119 -0
  402. package/node_modules/three/examples/jsm/effects/PeppersGhostEffect.js +153 -0
  403. package/node_modules/three/examples/jsm/effects/StereoEffect.js +55 -0
  404. package/node_modules/three/examples/jsm/environments/DebugEnvironment.js +52 -0
  405. package/node_modules/three/examples/jsm/environments/RoomEnvironment.js +148 -0
  406. package/node_modules/three/examples/jsm/exporters/DRACOExporter.js +267 -0
  407. package/node_modules/three/examples/jsm/exporters/EXRExporter.js +579 -0
  408. package/node_modules/three/examples/jsm/exporters/GLTFExporter.js +3309 -0
  409. package/node_modules/three/examples/jsm/exporters/KTX2Exporter.js +292 -0
  410. package/node_modules/three/examples/jsm/exporters/MMDExporter.js +217 -0
  411. package/node_modules/three/examples/jsm/exporters/OBJExporter.js +284 -0
  412. package/node_modules/three/examples/jsm/exporters/PLYExporter.js +528 -0
  413. package/node_modules/three/examples/jsm/exporters/STLExporter.js +199 -0
  414. package/node_modules/three/examples/jsm/exporters/USDZExporter.js +720 -0
  415. package/node_modules/three/examples/jsm/geometries/BoxLineGeometry.js +69 -0
  416. package/node_modules/three/examples/jsm/geometries/ConvexGeometry.js +53 -0
  417. package/node_modules/three/examples/jsm/geometries/DecalGeometry.js +356 -0
  418. package/node_modules/three/examples/jsm/geometries/InstancedPointsGeometry.js +174 -0
  419. package/node_modules/three/examples/jsm/geometries/ParametricGeometries.js +254 -0
  420. package/node_modules/three/examples/jsm/geometries/ParametricGeometry.js +139 -0
  421. package/node_modules/three/examples/jsm/geometries/RoundedBoxGeometry.js +155 -0
  422. package/node_modules/three/examples/jsm/geometries/SDFGeometryGenerator.js +144 -0
  423. package/node_modules/three/examples/jsm/geometries/TeapotGeometry.js +704 -0
  424. package/node_modules/three/examples/jsm/geometries/TextGeometry.js +57 -0
  425. package/node_modules/three/examples/jsm/helpers/LightProbeHelper.js +130 -0
  426. package/node_modules/three/examples/jsm/helpers/OctreeHelper.js +73 -0
  427. package/node_modules/three/examples/jsm/helpers/PositionalAudioHelper.js +109 -0
  428. package/node_modules/three/examples/jsm/helpers/RectAreaLightHelper.js +85 -0
  429. package/node_modules/three/examples/jsm/helpers/TextureHelper.js +237 -0
  430. package/node_modules/three/examples/jsm/helpers/VertexNormalsHelper.js +96 -0
  431. package/node_modules/three/examples/jsm/helpers/VertexTangentsHelper.js +88 -0
  432. package/node_modules/three/examples/jsm/helpers/ViewHelper.js +333 -0
  433. package/node_modules/three/examples/jsm/interactive/HTMLMesh.js +572 -0
  434. package/node_modules/three/examples/jsm/interactive/InteractiveGroup.js +116 -0
  435. package/node_modules/three/examples/jsm/interactive/SelectionBox.js +227 -0
  436. package/node_modules/three/examples/jsm/interactive/SelectionHelper.js +104 -0
  437. package/node_modules/three/examples/jsm/libs/ammo.wasm.js +822 -0
  438. package/node_modules/three/examples/jsm/libs/ammo.wasm.wasm +0 -0
  439. package/node_modules/three/examples/jsm/libs/basis/README.md +46 -0
  440. package/node_modules/three/examples/jsm/libs/basis/basis_transcoder.js +21 -0
  441. package/node_modules/three/examples/jsm/libs/basis/basis_transcoder.wasm +0 -0
  442. package/node_modules/three/examples/jsm/libs/chevrotain.module.min.js +141 -0
  443. package/node_modules/three/examples/jsm/libs/draco/README.md +32 -0
  444. package/node_modules/three/examples/jsm/libs/draco/draco_decoder.js +34 -0
  445. package/node_modules/three/examples/jsm/libs/draco/draco_decoder.wasm +0 -0
  446. package/node_modules/three/examples/jsm/libs/draco/draco_encoder.js +33 -0
  447. package/node_modules/three/examples/jsm/libs/draco/draco_wasm_wrapper.js +117 -0
  448. package/node_modules/three/examples/jsm/libs/draco/gltf/draco_decoder.js +33 -0
  449. package/node_modules/three/examples/jsm/libs/draco/gltf/draco_decoder.wasm +0 -0
  450. package/node_modules/three/examples/jsm/libs/draco/gltf/draco_encoder.js +33 -0
  451. package/node_modules/three/examples/jsm/libs/draco/gltf/draco_wasm_wrapper.js +116 -0
  452. package/node_modules/three/examples/jsm/libs/ecsy.module.js +1792 -0
  453. package/node_modules/three/examples/jsm/libs/fflate.module.js +2474 -0
  454. package/node_modules/three/examples/jsm/libs/ktx-parse.module.js +1 -0
  455. package/node_modules/three/examples/jsm/libs/lil-gui.module.min.js +8 -0
  456. package/node_modules/three/examples/jsm/libs/lottie_canvas.module.js +14849 -0
  457. package/node_modules/three/examples/jsm/libs/meshopt_decoder.module.js +178 -0
  458. package/node_modules/three/examples/jsm/libs/mikktspace.module.js +128 -0
  459. package/node_modules/three/examples/jsm/libs/mmdparser.module.js +11530 -0
  460. package/node_modules/three/examples/jsm/libs/motion-controllers.module.js +397 -0
  461. package/node_modules/three/examples/jsm/libs/opentype.module.js +14506 -0
  462. package/node_modules/three/examples/jsm/libs/potpack.module.js +125 -0
  463. package/node_modules/three/examples/jsm/libs/rhino3dm/rhino3dm.js +8743 -0
  464. package/node_modules/three/examples/jsm/libs/rhino3dm/rhino3dm.module.js +8749 -0
  465. package/node_modules/three/examples/jsm/libs/rhino3dm/rhino3dm.wasm +0 -0
  466. package/node_modules/three/examples/jsm/libs/stats.module.js +167 -0
  467. package/node_modules/three/examples/jsm/libs/surfaceNet.js +201 -0
  468. package/node_modules/three/examples/jsm/libs/tween.module.js +858 -0
  469. package/node_modules/three/examples/jsm/libs/utif.module.js +1665 -0
  470. package/node_modules/three/examples/jsm/libs/zstddec.module.js +1 -0
  471. package/node_modules/three/examples/jsm/lights/IESSpotLight.js +25 -0
  472. package/node_modules/three/examples/jsm/lights/LightProbeGenerator.js +286 -0
  473. package/node_modules/three/examples/jsm/lights/RectAreaLightUniformsLib.js +79 -0
  474. package/node_modules/three/examples/jsm/lines/Line2.js +19 -0
  475. package/node_modules/three/examples/jsm/lines/LineGeometry.js +79 -0
  476. package/node_modules/three/examples/jsm/lines/LineMaterial.js +619 -0
  477. package/node_modules/three/examples/jsm/lines/LineSegments2.js +361 -0
  478. package/node_modules/three/examples/jsm/lines/LineSegmentsGeometry.js +241 -0
  479. package/node_modules/three/examples/jsm/lines/Wireframe.js +56 -0
  480. package/node_modules/three/examples/jsm/lines/WireframeGeometry2.js +24 -0
  481. package/node_modules/three/examples/jsm/loaders/3DMLoader.js +1772 -0
  482. package/node_modules/three/examples/jsm/loaders/3MFLoader.js +1478 -0
  483. package/node_modules/three/examples/jsm/loaders/AMFLoader.js +521 -0
  484. package/node_modules/three/examples/jsm/loaders/BVHLoader.js +437 -0
  485. package/node_modules/three/examples/jsm/loaders/ColladaLoader.js +4116 -0
  486. package/node_modules/three/examples/jsm/loaders/DDSLoader.js +318 -0
  487. package/node_modules/three/examples/jsm/loaders/DRACOLoader.js +613 -0
  488. package/node_modules/three/examples/jsm/loaders/EXRLoader.js +2309 -0
  489. package/node_modules/three/examples/jsm/loaders/FBXLoader.js +4314 -0
  490. package/node_modules/three/examples/jsm/loaders/FontLoader.js +183 -0
  491. package/node_modules/three/examples/jsm/loaders/GCodeLoader.js +261 -0
  492. package/node_modules/three/examples/jsm/loaders/GLTFLoader.js +4663 -0
  493. package/node_modules/three/examples/jsm/loaders/HDRCubeTextureLoader.js +115 -0
  494. package/node_modules/three/examples/jsm/loaders/IESLoader.js +337 -0
  495. package/node_modules/three/examples/jsm/loaders/KMZLoader.js +130 -0
  496. package/node_modules/three/examples/jsm/loaders/KTX2Loader.js +932 -0
  497. package/node_modules/three/examples/jsm/loaders/KTXLoader.js +176 -0
  498. package/node_modules/three/examples/jsm/loaders/LDrawLoader.js +2470 -0
  499. package/node_modules/three/examples/jsm/loaders/LUT3dlLoader.js +183 -0
  500. package/node_modules/three/examples/jsm/loaders/LUTCubeLoader.js +167 -0
  501. package/node_modules/three/examples/jsm/loaders/LUTImageLoader.js +163 -0
  502. package/node_modules/three/examples/jsm/loaders/LWOLoader.js +1052 -0
  503. package/node_modules/three/examples/jsm/loaders/LogLuvLoader.js +606 -0
  504. package/node_modules/three/examples/jsm/loaders/LottieLoader.js +77 -0
  505. package/node_modules/three/examples/jsm/loaders/MD2Loader.js +399 -0
  506. package/node_modules/three/examples/jsm/loaders/MDDLoader.js +102 -0
  507. package/node_modules/three/examples/jsm/loaders/MMDLoader.js +2276 -0
  508. package/node_modules/three/examples/jsm/loaders/MTLLoader.js +567 -0
  509. package/node_modules/three/examples/jsm/loaders/MaterialXLoader.js +852 -0
  510. package/node_modules/three/examples/jsm/loaders/NRRDLoader.js +686 -0
  511. package/node_modules/three/examples/jsm/loaders/OBJLoader.js +905 -0
  512. package/node_modules/three/examples/jsm/loaders/PCDLoader.js +467 -0
  513. package/node_modules/three/examples/jsm/loaders/PDBLoader.js +232 -0
  514. package/node_modules/three/examples/jsm/loaders/PLYLoader.js +771 -0
  515. package/node_modules/three/examples/jsm/loaders/PVRLoader.js +251 -0
  516. package/node_modules/three/examples/jsm/loaders/RGBELoader.js +450 -0
  517. package/node_modules/three/examples/jsm/loaders/RGBMLoader.js +1065 -0
  518. package/node_modules/three/examples/jsm/loaders/STLLoader.js +410 -0
  519. package/node_modules/three/examples/jsm/loaders/SVGLoader.js +3173 -0
  520. package/node_modules/three/examples/jsm/loaders/TDSLoader.js +1124 -0
  521. package/node_modules/three/examples/jsm/loaders/TGALoader.js +517 -0
  522. package/node_modules/three/examples/jsm/loaders/TIFFLoader.js +36 -0
  523. package/node_modules/three/examples/jsm/loaders/TTFLoader.js +214 -0
  524. package/node_modules/three/examples/jsm/loaders/TiltLoader.js +520 -0
  525. package/node_modules/three/examples/jsm/loaders/USDZLoader.js +822 -0
  526. package/node_modules/three/examples/jsm/loaders/VOXLoader.js +311 -0
  527. package/node_modules/three/examples/jsm/loaders/VRMLLoader.js +3533 -0
  528. package/node_modules/three/examples/jsm/loaders/VTKLoader.js +1163 -0
  529. package/node_modules/three/examples/jsm/loaders/XYZLoader.js +106 -0
  530. package/node_modules/three/examples/jsm/loaders/lwo/IFFParser.js +1214 -0
  531. package/node_modules/three/examples/jsm/loaders/lwo/LWO2Parser.js +414 -0
  532. package/node_modules/three/examples/jsm/loaders/lwo/LWO3Parser.js +373 -0
  533. package/node_modules/three/examples/jsm/materials/MeshGouraudMaterial.js +426 -0
  534. package/node_modules/three/examples/jsm/materials/MeshPostProcessingMaterial.js +144 -0
  535. package/node_modules/three/examples/jsm/math/Capsule.js +82 -0
  536. package/node_modules/three/examples/jsm/math/ColorConverter.js +36 -0
  537. package/node_modules/three/examples/jsm/math/ConvexHull.js +1271 -0
  538. package/node_modules/three/examples/jsm/math/ImprovedNoise.js +71 -0
  539. package/node_modules/three/examples/jsm/math/Lut.js +204 -0
  540. package/node_modules/three/examples/jsm/math/MeshSurfaceSampler.js +250 -0
  541. package/node_modules/three/examples/jsm/math/OBB.js +423 -0
  542. package/node_modules/three/examples/jsm/math/Octree.js +540 -0
  543. package/node_modules/three/examples/jsm/math/SimplexNoise.js +444 -0
  544. package/node_modules/three/examples/jsm/misc/ConvexObjectBreaker.js +519 -0
  545. package/node_modules/three/examples/jsm/misc/GPUComputationRenderer.js +446 -0
  546. package/node_modules/three/examples/jsm/misc/Gyroscope.js +66 -0
  547. package/node_modules/three/examples/jsm/misc/MD2Character.js +276 -0
  548. package/node_modules/three/examples/jsm/misc/MD2CharacterComplex.js +576 -0
  549. package/node_modules/three/examples/jsm/misc/MorphAnimMesh.js +75 -0
  550. package/node_modules/three/examples/jsm/misc/MorphBlendMesh.js +322 -0
  551. package/node_modules/three/examples/jsm/misc/ProgressiveLightMap.js +323 -0
  552. package/node_modules/three/examples/jsm/misc/RollerCoaster.js +566 -0
  553. package/node_modules/three/examples/jsm/misc/Timer.js +128 -0
  554. package/node_modules/three/examples/jsm/misc/TubePainter.js +202 -0
  555. package/node_modules/three/examples/jsm/misc/Volume.js +473 -0
  556. package/node_modules/three/examples/jsm/misc/VolumeSlice.js +229 -0
  557. package/node_modules/three/examples/jsm/modifiers/CurveModifier.js +344 -0
  558. package/node_modules/three/examples/jsm/modifiers/EdgeSplitModifier.js +279 -0
  559. package/node_modules/three/examples/jsm/modifiers/SimplifyModifier.js +617 -0
  560. package/node_modules/three/examples/jsm/modifiers/TessellateModifier.js +307 -0
  561. package/node_modules/three/examples/jsm/nodes/Nodes.js +193 -0
  562. package/node_modules/three/examples/jsm/nodes/accessors/BitangentNode.js +89 -0
  563. package/node_modules/three/examples/jsm/nodes/accessors/BufferAttributeNode.js +127 -0
  564. package/node_modules/three/examples/jsm/nodes/accessors/BufferNode.js +30 -0
  565. package/node_modules/three/examples/jsm/nodes/accessors/CameraNode.js +119 -0
  566. package/node_modules/three/examples/jsm/nodes/accessors/CubeTextureNode.js +61 -0
  567. package/node_modules/three/examples/jsm/nodes/accessors/InstanceNode.js +71 -0
  568. package/node_modules/three/examples/jsm/nodes/accessors/InstancedPointsMaterialNode.js +21 -0
  569. package/node_modules/three/examples/jsm/nodes/accessors/MaterialNode.js +314 -0
  570. package/node_modules/three/examples/jsm/nodes/accessors/MaterialReferenceNode.js +51 -0
  571. package/node_modules/three/examples/jsm/nodes/accessors/ModelNode.js +33 -0
  572. package/node_modules/three/examples/jsm/nodes/accessors/ModelViewProjectionNode.js +39 -0
  573. package/node_modules/three/examples/jsm/nodes/accessors/MorphNode.js +245 -0
  574. package/node_modules/three/examples/jsm/nodes/accessors/NormalNode.js +96 -0
  575. package/node_modules/three/examples/jsm/nodes/accessors/Object3DNode.js +150 -0
  576. package/node_modules/three/examples/jsm/nodes/accessors/PointUVNode.js +26 -0
  577. package/node_modules/three/examples/jsm/nodes/accessors/PositionNode.js +104 -0
  578. package/node_modules/three/examples/jsm/nodes/accessors/ReferenceNode.js +102 -0
  579. package/node_modules/three/examples/jsm/nodes/accessors/ReflectVectorNode.js +35 -0
  580. package/node_modules/three/examples/jsm/nodes/accessors/SceneNode.js +52 -0
  581. package/node_modules/three/examples/jsm/nodes/accessors/SkinningNode.js +103 -0
  582. package/node_modules/three/examples/jsm/nodes/accessors/StorageBufferNode.js +54 -0
  583. package/node_modules/three/examples/jsm/nodes/accessors/TangentNode.js +103 -0
  584. package/node_modules/three/examples/jsm/nodes/accessors/TextureBicubicNode.js +94 -0
  585. package/node_modules/three/examples/jsm/nodes/accessors/TextureNode.js +367 -0
  586. package/node_modules/three/examples/jsm/nodes/accessors/TextureSizeNode.js +35 -0
  587. package/node_modules/three/examples/jsm/nodes/accessors/TextureStoreNode.js +82 -0
  588. package/node_modules/three/examples/jsm/nodes/accessors/UVNode.js +47 -0
  589. package/node_modules/three/examples/jsm/nodes/accessors/UserDataNode.js +29 -0
  590. package/node_modules/three/examples/jsm/nodes/accessors/VertexColorNode.js +70 -0
  591. package/node_modules/three/examples/jsm/nodes/code/CodeNode.js +78 -0
  592. package/node_modules/three/examples/jsm/nodes/code/ExpressionNode.js +37 -0
  593. package/node_modules/three/examples/jsm/nodes/code/FunctionCallNode.js +96 -0
  594. package/node_modules/three/examples/jsm/nodes/code/FunctionNode.js +138 -0
  595. package/node_modules/three/examples/jsm/nodes/code/ScriptableNode.js +488 -0
  596. package/node_modules/three/examples/jsm/nodes/code/ScriptableValueNode.js +167 -0
  597. package/node_modules/three/examples/jsm/nodes/core/ArrayUniformNode.js +26 -0
  598. package/node_modules/three/examples/jsm/nodes/core/AssignNode.js +72 -0
  599. package/node_modules/three/examples/jsm/nodes/core/AttributeNode.js +108 -0
  600. package/node_modules/three/examples/jsm/nodes/core/BypassNode.js +45 -0
  601. package/node_modules/three/examples/jsm/nodes/core/CacheNode.js +49 -0
  602. package/node_modules/three/examples/jsm/nodes/core/ConstNode.js +32 -0
  603. package/node_modules/three/examples/jsm/nodes/core/ContextNode.js +61 -0
  604. package/node_modules/three/examples/jsm/nodes/core/IndexNode.js +66 -0
  605. package/node_modules/three/examples/jsm/nodes/core/InputNode.js +83 -0
  606. package/node_modules/three/examples/jsm/nodes/core/LightingModel.js +17 -0
  607. package/node_modules/three/examples/jsm/nodes/core/Node.js +483 -0
  608. package/node_modules/three/examples/jsm/nodes/core/NodeAttribute.js +15 -0
  609. package/node_modules/three/examples/jsm/nodes/core/NodeBuilder.js +1256 -0
  610. package/node_modules/three/examples/jsm/nodes/core/NodeCache.js +26 -0
  611. package/node_modules/three/examples/jsm/nodes/core/NodeCode.js +15 -0
  612. package/node_modules/three/examples/jsm/nodes/core/NodeFrame.js +143 -0
  613. package/node_modules/three/examples/jsm/nodes/core/NodeFunction.js +22 -0
  614. package/node_modules/three/examples/jsm/nodes/core/NodeFunctionInput.js +17 -0
  615. package/node_modules/three/examples/jsm/nodes/core/NodeKeywords.js +80 -0
  616. package/node_modules/three/examples/jsm/nodes/core/NodeParser.js +11 -0
  617. package/node_modules/three/examples/jsm/nodes/core/NodeUniform.js +40 -0
  618. package/node_modules/three/examples/jsm/nodes/core/NodeUtils.js +210 -0
  619. package/node_modules/three/examples/jsm/nodes/core/NodeVar.js +14 -0
  620. package/node_modules/three/examples/jsm/nodes/core/NodeVarying.js +17 -0
  621. package/node_modules/three/examples/jsm/nodes/core/OutputStructNode.js +62 -0
  622. package/node_modules/three/examples/jsm/nodes/core/ParameterNode.js +33 -0
  623. package/node_modules/three/examples/jsm/nodes/core/PropertyNode.js +72 -0
  624. package/node_modules/three/examples/jsm/nodes/core/StackNode.js +89 -0
  625. package/node_modules/three/examples/jsm/nodes/core/StructTypeNode.js +24 -0
  626. package/node_modules/three/examples/jsm/nodes/core/TempNode.js +58 -0
  627. package/node_modules/three/examples/jsm/nodes/core/UniformGroup.js +13 -0
  628. package/node_modules/three/examples/jsm/nodes/core/UniformGroupNode.js +36 -0
  629. package/node_modules/three/examples/jsm/nodes/core/UniformNode.js +80 -0
  630. package/node_modules/three/examples/jsm/nodes/core/VarNode.js +60 -0
  631. package/node_modules/three/examples/jsm/nodes/core/VaryingNode.js +65 -0
  632. package/node_modules/three/examples/jsm/nodes/core/constants.js +28 -0
  633. package/node_modules/three/examples/jsm/nodes/display/AfterImageNode.js +148 -0
  634. package/node_modules/three/examples/jsm/nodes/display/AnamorphicNode.js +148 -0
  635. package/node_modules/three/examples/jsm/nodes/display/BlendModeNode.js +99 -0
  636. package/node_modules/three/examples/jsm/nodes/display/BumpMapNode.js +99 -0
  637. package/node_modules/three/examples/jsm/nodes/display/ColorAdjustmentNode.js +99 -0
  638. package/node_modules/three/examples/jsm/nodes/display/ColorSpaceNode.js +108 -0
  639. package/node_modules/three/examples/jsm/nodes/display/FrontFacingNode.js +27 -0
  640. package/node_modules/three/examples/jsm/nodes/display/GaussianBlurNode.js +190 -0
  641. package/node_modules/three/examples/jsm/nodes/display/NormalMapNode.js +108 -0
  642. package/node_modules/three/examples/jsm/nodes/display/PassNode.js +183 -0
  643. package/node_modules/three/examples/jsm/nodes/display/PosterizeNode.js +32 -0
  644. package/node_modules/three/examples/jsm/nodes/display/ToneMappingNode.js +184 -0
  645. package/node_modules/three/examples/jsm/nodes/display/ViewportDepthNode.js +97 -0
  646. package/node_modules/three/examples/jsm/nodes/display/ViewportDepthTextureNode.js +31 -0
  647. package/node_modules/three/examples/jsm/nodes/display/ViewportNode.js +134 -0
  648. package/node_modules/three/examples/jsm/nodes/display/ViewportSharedTextureNode.js +31 -0
  649. package/node_modules/three/examples/jsm/nodes/display/ViewportTextureNode.js +75 -0
  650. package/node_modules/three/examples/jsm/nodes/fog/FogExp2Node.js +35 -0
  651. package/node_modules/three/examples/jsm/nodes/fog/FogNode.js +38 -0
  652. package/node_modules/three/examples/jsm/nodes/fog/FogRangeNode.js +34 -0
  653. package/node_modules/three/examples/jsm/nodes/functions/BSDF/BRDF_GGX.js +40 -0
  654. package/node_modules/three/examples/jsm/nodes/functions/BSDF/BRDF_Lambert.js +9 -0
  655. package/node_modules/three/examples/jsm/nodes/functions/BSDF/BRDF_Sheen.js +57 -0
  656. package/node_modules/three/examples/jsm/nodes/functions/BSDF/DFGApprox.js +30 -0
  657. package/node_modules/three/examples/jsm/nodes/functions/BSDF/D_GGX.js +23 -0
  658. package/node_modules/three/examples/jsm/nodes/functions/BSDF/EnvironmentBRDF.js +13 -0
  659. package/node_modules/three/examples/jsm/nodes/functions/BSDF/F_Schlick.js +16 -0
  660. package/node_modules/three/examples/jsm/nodes/functions/BSDF/Schlick_to_F0.js +21 -0
  661. package/node_modules/three/examples/jsm/nodes/functions/BSDF/V_GGX_SmithCorrelated.js +28 -0
  662. package/node_modules/three/examples/jsm/nodes/functions/PhongLightingModel.js +67 -0
  663. package/node_modules/three/examples/jsm/nodes/functions/PhysicalLightingModel.js +393 -0
  664. package/node_modules/three/examples/jsm/nodes/functions/material/getGeometryRoughness.js +13 -0
  665. package/node_modules/three/examples/jsm/nodes/functions/material/getRoughness.js +18 -0
  666. package/node_modules/three/examples/jsm/nodes/geometry/RangeNode.js +104 -0
  667. package/node_modules/three/examples/jsm/nodes/gpgpu/ComputeNode.js +85 -0
  668. package/node_modules/three/examples/jsm/nodes/lighting/AONode.js +27 -0
  669. package/node_modules/three/examples/jsm/nodes/lighting/AmbientLightNode.js +27 -0
  670. package/node_modules/three/examples/jsm/nodes/lighting/AnalyticLightNode.js +241 -0
  671. package/node_modules/three/examples/jsm/nodes/lighting/DirectionalLightNode.js +40 -0
  672. package/node_modules/three/examples/jsm/nodes/lighting/EnvironmentNode.js +181 -0
  673. package/node_modules/three/examples/jsm/nodes/lighting/HemisphereLightNode.js +55 -0
  674. package/node_modules/three/examples/jsm/nodes/lighting/IESSpotLightNode.js +39 -0
  675. package/node_modules/three/examples/jsm/nodes/lighting/LightNode.js +57 -0
  676. package/node_modules/three/examples/jsm/nodes/lighting/LightUtils.js +17 -0
  677. package/node_modules/three/examples/jsm/nodes/lighting/LightingContextNode.js +66 -0
  678. package/node_modules/three/examples/jsm/nodes/lighting/LightingNode.js +21 -0
  679. package/node_modules/three/examples/jsm/nodes/lighting/LightsNode.js +188 -0
  680. package/node_modules/three/examples/jsm/nodes/lighting/PointLightNode.js +68 -0
  681. package/node_modules/three/examples/jsm/nodes/lighting/SpotLightNode.js +89 -0
  682. package/node_modules/three/examples/jsm/nodes/loaders/NodeLoader.js +108 -0
  683. package/node_modules/three/examples/jsm/nodes/loaders/NodeMaterialLoader.js +59 -0
  684. package/node_modules/three/examples/jsm/nodes/loaders/NodeObjectLoader.js +70 -0
  685. package/node_modules/three/examples/jsm/nodes/materials/InstancedPointsNodeMaterial.js +162 -0
  686. package/node_modules/three/examples/jsm/nodes/materials/Line2NodeMaterial.js +436 -0
  687. package/node_modules/three/examples/jsm/nodes/materials/LineBasicNodeMaterial.js +28 -0
  688. package/node_modules/three/examples/jsm/nodes/materials/LineDashedNodeMaterial.js +54 -0
  689. package/node_modules/three/examples/jsm/nodes/materials/Materials.js +16 -0
  690. package/node_modules/three/examples/jsm/nodes/materials/MeshBasicNodeMaterial.js +28 -0
  691. package/node_modules/three/examples/jsm/nodes/materials/MeshLambertNodeMaterial.js +34 -0
  692. package/node_modules/three/examples/jsm/nodes/materials/MeshNormalNodeMaterial.js +40 -0
  693. package/node_modules/three/examples/jsm/nodes/materials/MeshPhongNodeMaterial.js +65 -0
  694. package/node_modules/three/examples/jsm/nodes/materials/MeshPhysicalNodeMaterial.js +155 -0
  695. package/node_modules/three/examples/jsm/nodes/materials/MeshSSSNodeMaterial.js +84 -0
  696. package/node_modules/three/examples/jsm/nodes/materials/MeshStandardNodeMaterial.js +80 -0
  697. package/node_modules/three/examples/jsm/nodes/materials/NodeMaterial.js +570 -0
  698. package/node_modules/three/examples/jsm/nodes/materials/PointsNodeMaterial.js +39 -0
  699. package/node_modules/three/examples/jsm/nodes/materials/SpriteNodeMaterial.js +90 -0
  700. package/node_modules/three/examples/jsm/nodes/materialx/DISCLAIMER.md +199 -0
  701. package/node_modules/three/examples/jsm/nodes/materialx/MaterialXNodes.js +68 -0
  702. package/node_modules/three/examples/jsm/nodes/materialx/lib/mx_hsv.js +130 -0
  703. package/node_modules/three/examples/jsm/nodes/materialx/lib/mx_noise.js +1430 -0
  704. package/node_modules/three/examples/jsm/nodes/materialx/lib/mx_transform_color.js +29 -0
  705. package/node_modules/three/examples/jsm/nodes/math/CondNode.js +86 -0
  706. package/node_modules/three/examples/jsm/nodes/math/HashNode.js +34 -0
  707. package/node_modules/three/examples/jsm/nodes/math/MathNode.js +371 -0
  708. package/node_modules/three/examples/jsm/nodes/math/MathUtils.js +15 -0
  709. package/node_modules/three/examples/jsm/nodes/math/OperatorNode.js +274 -0
  710. package/node_modules/three/examples/jsm/nodes/math/TriNoise3D.js +71 -0
  711. package/node_modules/three/examples/jsm/nodes/parsers/GLSLNodeFunction.js +152 -0
  712. package/node_modules/three/examples/jsm/nodes/parsers/GLSLNodeParser.js +14 -0
  713. package/node_modules/three/examples/jsm/nodes/procedural/CheckerNode.js +42 -0
  714. package/node_modules/three/examples/jsm/nodes/shadernode/ShaderNode.js +634 -0
  715. package/node_modules/three/examples/jsm/nodes/utils/ArrayElementNode.js +41 -0
  716. package/node_modules/three/examples/jsm/nodes/utils/ConvertNode.js +65 -0
  717. package/node_modules/three/examples/jsm/nodes/utils/DiscardNode.js +27 -0
  718. package/node_modules/three/examples/jsm/nodes/utils/EquirectUVNode.js +33 -0
  719. package/node_modules/three/examples/jsm/nodes/utils/FunctionOverloadingNode.js +95 -0
  720. package/node_modules/three/examples/jsm/nodes/utils/JoinNode.js +61 -0
  721. package/node_modules/three/examples/jsm/nodes/utils/LoopNode.js +198 -0
  722. package/node_modules/three/examples/jsm/nodes/utils/MatcapUVNode.js +30 -0
  723. package/node_modules/three/examples/jsm/nodes/utils/MaxMipLevelNode.js +46 -0
  724. package/node_modules/three/examples/jsm/nodes/utils/OscNode.js +81 -0
  725. package/node_modules/three/examples/jsm/nodes/utils/PackingNode.js +55 -0
  726. package/node_modules/three/examples/jsm/nodes/utils/ReflectorNode.js +227 -0
  727. package/node_modules/three/examples/jsm/nodes/utils/RemapNode.js +42 -0
  728. package/node_modules/three/examples/jsm/nodes/utils/RotateNode.js +68 -0
  729. package/node_modules/three/examples/jsm/nodes/utils/RotateUVNode.js +35 -0
  730. package/node_modules/three/examples/jsm/nodes/utils/SetNode.js +62 -0
  731. package/node_modules/three/examples/jsm/nodes/utils/SpecularMIPLevelNode.js +37 -0
  732. package/node_modules/three/examples/jsm/nodes/utils/SplitNode.js +112 -0
  733. package/node_modules/three/examples/jsm/nodes/utils/SpriteSheetUVNode.js +41 -0
  734. package/node_modules/three/examples/jsm/nodes/utils/TimerNode.js +94 -0
  735. package/node_modules/three/examples/jsm/nodes/utils/TriplanarTexturesNode.js +62 -0
  736. package/node_modules/three/examples/jsm/objects/GroundedSkybox.js +50 -0
  737. package/node_modules/three/examples/jsm/objects/InstancedPoints.js +21 -0
  738. package/node_modules/three/examples/jsm/objects/Lensflare.js +397 -0
  739. package/node_modules/three/examples/jsm/objects/MarchingCubes.js +1176 -0
  740. package/node_modules/three/examples/jsm/objects/QuadMesh.js +66 -0
  741. package/node_modules/three/examples/jsm/objects/Reflector.js +264 -0
  742. package/node_modules/three/examples/jsm/objects/ReflectorForSSRPass.js +352 -0
  743. package/node_modules/three/examples/jsm/objects/Refractor.js +327 -0
  744. package/node_modules/three/examples/jsm/objects/ShadowMesh.js +80 -0
  745. package/node_modules/three/examples/jsm/objects/Sky.js +219 -0
  746. package/node_modules/three/examples/jsm/objects/Water.js +333 -0
  747. package/node_modules/three/examples/jsm/objects/Water2.js +361 -0
  748. package/node_modules/three/examples/jsm/offscreen/jank.js +45 -0
  749. package/node_modules/three/examples/jsm/offscreen/offscreen.js +8 -0
  750. package/node_modules/three/examples/jsm/offscreen/scene.js +86 -0
  751. package/node_modules/three/examples/jsm/physics/AmmoPhysics.js +306 -0
  752. package/node_modules/three/examples/jsm/physics/RapierPhysics.js +220 -0
  753. package/node_modules/three/examples/jsm/postprocessing/AfterimagePass.js +104 -0
  754. package/node_modules/three/examples/jsm/postprocessing/BloomPass.js +172 -0
  755. package/node_modules/three/examples/jsm/postprocessing/BokehPass.js +141 -0
  756. package/node_modules/three/examples/jsm/postprocessing/ClearPass.js +46 -0
  757. package/node_modules/three/examples/jsm/postprocessing/CubeTexturePass.js +85 -0
  758. package/node_modules/three/examples/jsm/postprocessing/DotScreenPass.js +65 -0
  759. package/node_modules/three/examples/jsm/postprocessing/EffectComposer.js +231 -0
  760. package/node_modules/three/examples/jsm/postprocessing/FilmPass.js +64 -0
  761. package/node_modules/three/examples/jsm/postprocessing/GTAOPass.js +582 -0
  762. package/node_modules/three/examples/jsm/postprocessing/GlitchPass.js +128 -0
  763. package/node_modules/three/examples/jsm/postprocessing/HalftonePass.js +79 -0
  764. package/node_modules/three/examples/jsm/postprocessing/LUTPass.js +174 -0
  765. package/node_modules/three/examples/jsm/postprocessing/MaskPass.js +104 -0
  766. package/node_modules/three/examples/jsm/postprocessing/OutlinePass.js +654 -0
  767. package/node_modules/three/examples/jsm/postprocessing/OutputPass.js +95 -0
  768. package/node_modules/three/examples/jsm/postprocessing/Pass.js +95 -0
  769. package/node_modules/three/examples/jsm/postprocessing/RenderPass.js +99 -0
  770. package/node_modules/three/examples/jsm/postprocessing/RenderPixelatedPass.js +235 -0
  771. package/node_modules/three/examples/jsm/postprocessing/SAOPass.js +335 -0
  772. package/node_modules/three/examples/jsm/postprocessing/SMAAPass.js +199 -0
  773. package/node_modules/three/examples/jsm/postprocessing/SSAARenderPass.js +228 -0
  774. package/node_modules/three/examples/jsm/postprocessing/SSAOPass.js +420 -0
  775. package/node_modules/three/examples/jsm/postprocessing/SSRPass.js +641 -0
  776. package/node_modules/three/examples/jsm/postprocessing/SavePass.js +79 -0
  777. package/node_modules/three/examples/jsm/postprocessing/ShaderPass.js +77 -0
  778. package/node_modules/three/examples/jsm/postprocessing/TAARenderPass.js +188 -0
  779. package/node_modules/three/examples/jsm/postprocessing/TexturePass.js +67 -0
  780. package/node_modules/three/examples/jsm/postprocessing/UnrealBloomPass.js +415 -0
  781. package/node_modules/three/examples/jsm/renderers/CSS2DRenderer.js +215 -0
  782. package/node_modules/three/examples/jsm/renderers/CSS3DRenderer.js +329 -0
  783. package/node_modules/three/examples/jsm/renderers/Projector.js +918 -0
  784. package/node_modules/three/examples/jsm/renderers/SVGRenderer.js +556 -0
  785. package/node_modules/three/examples/jsm/renderers/common/Animation.js +47 -0
  786. package/node_modules/three/examples/jsm/renderers/common/Attributes.js +75 -0
  787. package/node_modules/three/examples/jsm/renderers/common/Backend.js +195 -0
  788. package/node_modules/three/examples/jsm/renderers/common/Background.js +134 -0
  789. package/node_modules/three/examples/jsm/renderers/common/Binding.js +25 -0
  790. package/node_modules/three/examples/jsm/renderers/common/Bindings.js +173 -0
  791. package/node_modules/three/examples/jsm/renderers/common/Buffer.js +38 -0
  792. package/node_modules/three/examples/jsm/renderers/common/BufferUtils.js +33 -0
  793. package/node_modules/three/examples/jsm/renderers/common/ChainMap.js +89 -0
  794. package/node_modules/three/examples/jsm/renderers/common/Color4.js +37 -0
  795. package/node_modules/three/examples/jsm/renderers/common/ComputePipeline.js +17 -0
  796. package/node_modules/three/examples/jsm/renderers/common/Constants.js +14 -0
  797. package/node_modules/three/examples/jsm/renderers/common/CubeRenderTarget.js +65 -0
  798. package/node_modules/three/examples/jsm/renderers/common/DataMap.js +54 -0
  799. package/node_modules/three/examples/jsm/renderers/common/Geometries.js +215 -0
  800. package/node_modules/three/examples/jsm/renderers/common/Info.js +107 -0
  801. package/node_modules/three/examples/jsm/renderers/common/Pipeline.js +13 -0
  802. package/node_modules/three/examples/jsm/renderers/common/Pipelines.js +322 -0
  803. package/node_modules/three/examples/jsm/renderers/common/PostProcessing.js +25 -0
  804. package/node_modules/three/examples/jsm/renderers/common/ProgrammableStage.js +20 -0
  805. package/node_modules/three/examples/jsm/renderers/common/RenderContext.js +41 -0
  806. package/node_modules/three/examples/jsm/renderers/common/RenderContexts.js +74 -0
  807. package/node_modules/three/examples/jsm/renderers/common/RenderList.js +186 -0
  808. package/node_modules/three/examples/jsm/renderers/common/RenderLists.js +38 -0
  809. package/node_modules/three/examples/jsm/renderers/common/RenderObject.js +178 -0
  810. package/node_modules/three/examples/jsm/renderers/common/RenderObjects.js +91 -0
  811. package/node_modules/three/examples/jsm/renderers/common/RenderPipeline.js +16 -0
  812. package/node_modules/three/examples/jsm/renderers/common/Renderer.js +1247 -0
  813. package/node_modules/three/examples/jsm/renderers/common/SampledTexture.js +83 -0
  814. package/node_modules/three/examples/jsm/renderers/common/Sampler.js +18 -0
  815. package/node_modules/three/examples/jsm/renderers/common/StorageBuffer.js +17 -0
  816. package/node_modules/three/examples/jsm/renderers/common/StorageBufferAttribute.js +17 -0
  817. package/node_modules/three/examples/jsm/renderers/common/StorageTexture.js +20 -0
  818. package/node_modules/three/examples/jsm/renderers/common/Textures.js +354 -0
  819. package/node_modules/three/examples/jsm/renderers/common/Uniform.js +140 -0
  820. package/node_modules/three/examples/jsm/renderers/common/UniformBuffer.js +15 -0
  821. package/node_modules/three/examples/jsm/renderers/common/UniformsGroup.js +299 -0
  822. package/node_modules/three/examples/jsm/renderers/common/nodes/NodeBuilderState.js +44 -0
  823. package/node_modules/three/examples/jsm/renderers/common/nodes/NodeSampledTexture.js +49 -0
  824. package/node_modules/three/examples/jsm/renderers/common/nodes/NodeSampler.js +15 -0
  825. package/node_modules/three/examples/jsm/renderers/common/nodes/NodeUniform.js +135 -0
  826. package/node_modules/three/examples/jsm/renderers/common/nodes/NodeUniformsGroup.js +44 -0
  827. package/node_modules/three/examples/jsm/renderers/common/nodes/Nodes.js +495 -0
  828. package/node_modules/three/examples/jsm/renderers/webgl/WebGLBackend.js +1362 -0
  829. package/node_modules/three/examples/jsm/renderers/webgl/nodes/GLSLNodeBuilder.js +679 -0
  830. package/node_modules/three/examples/jsm/renderers/webgl/utils/WebGLAttributeUtils.js +252 -0
  831. package/node_modules/three/examples/jsm/renderers/webgl/utils/WebGLCapabilities.js +36 -0
  832. package/node_modules/three/examples/jsm/renderers/webgl/utils/WebGLConstants.js +11 -0
  833. package/node_modules/three/examples/jsm/renderers/webgl/utils/WebGLExtensions.js +36 -0
  834. package/node_modules/three/examples/jsm/renderers/webgl/utils/WebGLState.js +738 -0
  835. package/node_modules/three/examples/jsm/renderers/webgl/utils/WebGLTextureUtils.js +647 -0
  836. package/node_modules/three/examples/jsm/renderers/webgl/utils/WebGLUtils.js +284 -0
  837. package/node_modules/three/examples/jsm/renderers/webgl-legacy/nodes/GLSL1NodeBuilder.js +320 -0
  838. package/node_modules/three/examples/jsm/renderers/webgl-legacy/nodes/SlotNode.js +26 -0
  839. package/node_modules/three/examples/jsm/renderers/webgl-legacy/nodes/WebGLNodeBuilder.js +794 -0
  840. package/node_modules/three/examples/jsm/renderers/webgl-legacy/nodes/WebGLNodes.js +51 -0
  841. package/node_modules/three/examples/jsm/renderers/webgpu/WebGPUBackend.js +1321 -0
  842. package/node_modules/three/examples/jsm/renderers/webgpu/WebGPURenderer.js +53 -0
  843. package/node_modules/three/examples/jsm/renderers/webgpu/nodes/WGSLNodeBuilder.js +1103 -0
  844. package/node_modules/three/examples/jsm/renderers/webgpu/nodes/WGSLNodeFunction.js +104 -0
  845. package/node_modules/three/examples/jsm/renderers/webgpu/nodes/WGSLNodeParser.js +14 -0
  846. package/node_modules/three/examples/jsm/renderers/webgpu/utils/WebGPUAttributeUtils.js +287 -0
  847. package/node_modules/three/examples/jsm/renderers/webgpu/utils/WebGPUBindingUtils.js +244 -0
  848. package/node_modules/three/examples/jsm/renderers/webgpu/utils/WebGPUConstants.js +324 -0
  849. package/node_modules/three/examples/jsm/renderers/webgpu/utils/WebGPUPipelineUtils.js +591 -0
  850. package/node_modules/three/examples/jsm/renderers/webgpu/utils/WebGPUTexturePassUtils.js +285 -0
  851. package/node_modules/three/examples/jsm/renderers/webgpu/utils/WebGPUTextureUtils.js +1040 -0
  852. package/node_modules/three/examples/jsm/renderers/webgpu/utils/WebGPUUtils.js +93 -0
  853. package/node_modules/three/examples/jsm/shaders/ACESFilmicToneMappingShader.js +89 -0
  854. package/node_modules/three/examples/jsm/shaders/AfterimageShader.js +58 -0
  855. package/node_modules/three/examples/jsm/shaders/BasicShader.js +29 -0
  856. package/node_modules/three/examples/jsm/shaders/BleachBypassShader.js +62 -0
  857. package/node_modules/three/examples/jsm/shaders/BlendShader.js +49 -0
  858. package/node_modules/three/examples/jsm/shaders/BokehShader.js +145 -0
  859. package/node_modules/three/examples/jsm/shaders/BokehShader2.js +397 -0
  860. package/node_modules/three/examples/jsm/shaders/BrightnessContrastShader.js +56 -0
  861. package/node_modules/three/examples/jsm/shaders/ColorCorrectionShader.js +52 -0
  862. package/node_modules/three/examples/jsm/shaders/ColorifyShader.js +51 -0
  863. package/node_modules/three/examples/jsm/shaders/ConvolutionShader.js +103 -0
  864. package/node_modules/three/examples/jsm/shaders/CopyShader.js +45 -0
  865. package/node_modules/three/examples/jsm/shaders/DOFMipMapShader.js +56 -0
  866. package/node_modules/three/examples/jsm/shaders/DepthLimitedBlurShader.js +171 -0
  867. package/node_modules/three/examples/jsm/shaders/DigitalGlitch.js +101 -0
  868. package/node_modules/three/examples/jsm/shaders/DotScreenShader.js +70 -0
  869. package/node_modules/three/examples/jsm/shaders/ExposureShader.js +44 -0
  870. package/node_modules/three/examples/jsm/shaders/FXAAShader.js +288 -0
  871. package/node_modules/three/examples/jsm/shaders/FilmShader.js +59 -0
  872. package/node_modules/three/examples/jsm/shaders/FocusShader.js +89 -0
  873. package/node_modules/three/examples/jsm/shaders/FreiChenShader.js +96 -0
  874. package/node_modules/three/examples/jsm/shaders/GTAOShader.js +424 -0
  875. package/node_modules/three/examples/jsm/shaders/GammaCorrectionShader.js +43 -0
  876. package/node_modules/three/examples/jsm/shaders/GodRaysShader.js +321 -0
  877. package/node_modules/three/examples/jsm/shaders/HalftoneShader.js +312 -0
  878. package/node_modules/three/examples/jsm/shaders/HorizontalBlurShader.js +59 -0
  879. package/node_modules/three/examples/jsm/shaders/HorizontalTiltShiftShader.js +63 -0
  880. package/node_modules/three/examples/jsm/shaders/HueSaturationShader.js +67 -0
  881. package/node_modules/three/examples/jsm/shaders/KaleidoShader.js +58 -0
  882. package/node_modules/three/examples/jsm/shaders/LuminosityHighPassShader.js +66 -0
  883. package/node_modules/three/examples/jsm/shaders/LuminosityShader.js +48 -0
  884. package/node_modules/three/examples/jsm/shaders/MMDToonShader.js +134 -0
  885. package/node_modules/three/examples/jsm/shaders/MirrorShader.js +56 -0
  886. package/node_modules/three/examples/jsm/shaders/NormalMapShader.js +55 -0
  887. package/node_modules/three/examples/jsm/shaders/OutputShader.js +81 -0
  888. package/node_modules/three/examples/jsm/shaders/PoissonDenoiseShader.js +226 -0
  889. package/node_modules/three/examples/jsm/shaders/RGBShiftShader.js +54 -0
  890. package/node_modules/three/examples/jsm/shaders/SAOShader.js +179 -0
  891. package/node_modules/three/examples/jsm/shaders/SMAAShader.js +466 -0
  892. package/node_modules/three/examples/jsm/shaders/SSAOShader.js +300 -0
  893. package/node_modules/three/examples/jsm/shaders/SSRShader.js +370 -0
  894. package/node_modules/three/examples/jsm/shaders/SepiaShader.js +52 -0
  895. package/node_modules/three/examples/jsm/shaders/SobelOperatorShader.js +92 -0
  896. package/node_modules/three/examples/jsm/shaders/SubsurfaceScatteringShader.js +90 -0
  897. package/node_modules/three/examples/jsm/shaders/TechnicolorShader.js +45 -0
  898. package/node_modules/three/examples/jsm/shaders/ToonShader.js +326 -0
  899. package/node_modules/three/examples/jsm/shaders/TriangleBlurShader.js +74 -0
  900. package/node_modules/three/examples/jsm/shaders/UnpackDepthRGBAShader.js +47 -0
  901. package/node_modules/three/examples/jsm/shaders/VelocityShader.js +130 -0
  902. package/node_modules/three/examples/jsm/shaders/VerticalBlurShader.js +59 -0
  903. package/node_modules/three/examples/jsm/shaders/VerticalTiltShiftShader.js +63 -0
  904. package/node_modules/three/examples/jsm/shaders/VignetteShader.js +51 -0
  905. package/node_modules/three/examples/jsm/shaders/VolumeShader.js +289 -0
  906. package/node_modules/three/examples/jsm/shaders/WaterRefractionShader.js +95 -0
  907. package/node_modules/three/examples/jsm/textures/FlakesTexture.js +40 -0
  908. package/node_modules/three/examples/jsm/transpiler/AST.js +270 -0
  909. package/node_modules/three/examples/jsm/transpiler/GLSLDecoder.js +941 -0
  910. package/node_modules/three/examples/jsm/transpiler/ShaderToyDecoder.js +49 -0
  911. package/node_modules/three/examples/jsm/transpiler/TSLEncoder.js +715 -0
  912. package/node_modules/three/examples/jsm/transpiler/Transpiler.js +18 -0
  913. package/node_modules/three/examples/jsm/utils/BufferGeometryUtils.js +1371 -0
  914. package/node_modules/three/examples/jsm/utils/CameraUtils.js +73 -0
  915. package/node_modules/three/examples/jsm/utils/GPUStatsPanel.js +128 -0
  916. package/node_modules/three/examples/jsm/utils/GeometryCompressionUtils.js +639 -0
  917. package/node_modules/three/examples/jsm/utils/GeometryUtils.js +221 -0
  918. package/node_modules/three/examples/jsm/utils/LDrawUtils.js +202 -0
  919. package/node_modules/three/examples/jsm/utils/PackedPhongMaterial.js +178 -0
  920. package/node_modules/three/examples/jsm/utils/SceneUtils.js +254 -0
  921. package/node_modules/three/examples/jsm/utils/ShadowMapViewer.js +210 -0
  922. package/node_modules/three/examples/jsm/utils/SkeletonUtils.js +413 -0
  923. package/node_modules/three/examples/jsm/utils/SortUtils.js +160 -0
  924. package/node_modules/three/examples/jsm/utils/TextureUtils.js +98 -0
  925. package/node_modules/three/examples/jsm/utils/UVsDebug.js +165 -0
  926. package/node_modules/three/examples/jsm/utils/WorkerPool.js +102 -0
  927. package/node_modules/three/examples/jsm/webxr/ARButton.js +232 -0
  928. package/node_modules/three/examples/jsm/webxr/OculusHandModel.js +109 -0
  929. package/node_modules/three/examples/jsm/webxr/OculusHandPointerModel.js +413 -0
  930. package/node_modules/three/examples/jsm/webxr/Text2D.js +38 -0
  931. package/node_modules/three/examples/jsm/webxr/VRButton.js +225 -0
  932. package/node_modules/three/examples/jsm/webxr/XRButton.js +224 -0
  933. package/node_modules/three/examples/jsm/webxr/XRControllerModelFactory.js +304 -0
  934. package/node_modules/three/examples/jsm/webxr/XREstimatedLight.js +223 -0
  935. package/node_modules/three/examples/jsm/webxr/XRHandMeshModel.js +114 -0
  936. package/node_modules/three/examples/jsm/webxr/XRHandModelFactory.js +105 -0
  937. package/node_modules/three/examples/jsm/webxr/XRHandPrimitiveModel.js +103 -0
  938. package/node_modules/three/examples/jsm/webxr/XRPlanes.js +100 -0
  939. package/node_modules/three/package.json +124 -0
  940. package/node_modules/three/src/Three.Legacy.js +1 -0
  941. package/node_modules/three/src/Three.js +184 -0
  942. package/node_modules/three/src/animation/AnimationAction.js +700 -0
  943. package/node_modules/three/src/animation/AnimationClip.js +473 -0
  944. package/node_modules/three/src/animation/AnimationMixer.js +770 -0
  945. package/node_modules/three/src/animation/AnimationObjectGroup.js +387 -0
  946. package/node_modules/three/src/animation/AnimationUtils.js +356 -0
  947. package/node_modules/three/src/animation/KeyframeTrack.js +462 -0
  948. package/node_modules/three/src/animation/PropertyBinding.js +719 -0
  949. package/node_modules/three/src/animation/PropertyMixer.js +318 -0
  950. package/node_modules/three/src/animation/tracks/BooleanKeyframeTrack.js +19 -0
  951. package/node_modules/three/src/animation/tracks/ColorKeyframeTrack.js +15 -0
  952. package/node_modules/three/src/animation/tracks/NumberKeyframeTrack.js +12 -0
  953. package/node_modules/three/src/animation/tracks/QuaternionKeyframeTrack.js +23 -0
  954. package/node_modules/three/src/animation/tracks/StringKeyframeTrack.js +15 -0
  955. package/node_modules/three/src/animation/tracks/VectorKeyframeTrack.js +12 -0
  956. package/node_modules/three/src/audio/Audio.js +400 -0
  957. package/node_modules/three/src/audio/AudioAnalyser.js +40 -0
  958. package/node_modules/three/src/audio/AudioContext.js +25 -0
  959. package/node_modules/three/src/audio/AudioListener.js +137 -0
  960. package/node_modules/three/src/audio/PositionalAudio.js +146 -0
  961. package/node_modules/three/src/cameras/ArrayCamera.js +17 -0
  962. package/node_modules/three/src/cameras/Camera.js +69 -0
  963. package/node_modules/three/src/cameras/CubeCamera.js +173 -0
  964. package/node_modules/three/src/cameras/OrthographicCamera.js +136 -0
  965. package/node_modules/three/src/cameras/PerspectiveCamera.js +268 -0
  966. package/node_modules/three/src/cameras/StereoCamera.js +100 -0
  967. package/node_modules/three/src/constants.js +216 -0
  968. package/node_modules/three/src/core/BufferAttribute.js +650 -0
  969. package/node_modules/three/src/core/BufferGeometry.js +1079 -0
  970. package/node_modules/three/src/core/Clock.js +74 -0
  971. package/node_modules/three/src/core/EventDispatcher.js +87 -0
  972. package/node_modules/three/src/core/GLBufferAttribute.js +60 -0
  973. package/node_modules/three/src/core/InstancedBufferAttribute.js +39 -0
  974. package/node_modules/three/src/core/InstancedBufferGeometry.js +40 -0
  975. package/node_modules/three/src/core/InstancedInterleavedBuffer.js +48 -0
  976. package/node_modules/three/src/core/InterleavedBuffer.js +166 -0
  977. package/node_modules/three/src/core/InterleavedBufferAttribute.js +351 -0
  978. package/node_modules/three/src/core/Layers.js +60 -0
  979. package/node_modules/three/src/core/Object3D.js +1008 -0
  980. package/node_modules/three/src/core/Raycaster.js +110 -0
  981. package/node_modules/three/src/core/RenderTarget.js +131 -0
  982. package/node_modules/three/src/core/Uniform.js +17 -0
  983. package/node_modules/three/src/core/UniformsGroup.js +98 -0
  984. package/node_modules/three/src/extras/DataUtils.js +176 -0
  985. package/node_modules/three/src/extras/Earcut.js +789 -0
  986. package/node_modules/three/src/extras/ImageUtils.js +129 -0
  987. package/node_modules/three/src/extras/PMREMGenerator.js +906 -0
  988. package/node_modules/three/src/extras/ShapeUtils.js +92 -0
  989. package/node_modules/three/src/extras/core/Curve.js +416 -0
  990. package/node_modules/three/src/extras/core/CurvePath.js +255 -0
  991. package/node_modules/three/src/extras/core/Interpolations.js +79 -0
  992. package/node_modules/three/src/extras/core/Path.js +196 -0
  993. package/node_modules/three/src/extras/core/Shape.js +102 -0
  994. package/node_modules/three/src/extras/core/ShapePath.js +291 -0
  995. package/node_modules/three/src/extras/curves/ArcCurve.js +17 -0
  996. package/node_modules/three/src/extras/curves/CatmullRomCurve3.js +255 -0
  997. package/node_modules/three/src/extras/curves/CubicBezierCurve.js +78 -0
  998. package/node_modules/three/src/extras/curves/CubicBezierCurve3.js +79 -0
  999. package/node_modules/three/src/extras/curves/Curves.js +10 -0
  1000. package/node_modules/three/src/extras/curves/EllipseCurve.js +156 -0
  1001. package/node_modules/three/src/extras/curves/LineCurve.js +92 -0
  1002. package/node_modules/three/src/extras/curves/LineCurve3.js +92 -0
  1003. package/node_modules/three/src/extras/curves/QuadraticBezierCurve.js +74 -0
  1004. package/node_modules/three/src/extras/curves/QuadraticBezierCurve3.js +75 -0
  1005. package/node_modules/three/src/extras/curves/SplineCurve.js +97 -0
  1006. package/node_modules/three/src/geometries/BoxGeometry.js +180 -0
  1007. package/node_modules/three/src/geometries/CapsuleGeometry.js +33 -0
  1008. package/node_modules/three/src/geometries/CircleGeometry.js +101 -0
  1009. package/node_modules/three/src/geometries/ConeGeometry.js +31 -0
  1010. package/node_modules/three/src/geometries/CylinderGeometry.js +286 -0
  1011. package/node_modules/three/src/geometries/DodecahedronGeometry.js +66 -0
  1012. package/node_modules/three/src/geometries/EdgesGeometry.js +152 -0
  1013. package/node_modules/three/src/geometries/ExtrudeGeometry.js +814 -0
  1014. package/node_modules/three/src/geometries/Geometries.js +21 -0
  1015. package/node_modules/three/src/geometries/IcosahedronGeometry.js +42 -0
  1016. package/node_modules/three/src/geometries/LatheGeometry.js +189 -0
  1017. package/node_modules/three/src/geometries/OctahedronGeometry.js +37 -0
  1018. package/node_modules/three/src/geometries/PlaneGeometry.js +98 -0
  1019. package/node_modules/three/src/geometries/PolyhedronGeometry.js +319 -0
  1020. package/node_modules/three/src/geometries/RingGeometry.js +128 -0
  1021. package/node_modules/three/src/geometries/ShapeGeometry.js +195 -0
  1022. package/node_modules/three/src/geometries/SphereGeometry.js +137 -0
  1023. package/node_modules/three/src/geometries/TetrahedronGeometry.js +34 -0
  1024. package/node_modules/three/src/geometries/TorusGeometry.js +120 -0
  1025. package/node_modules/three/src/geometries/TorusKnotGeometry.js +167 -0
  1026. package/node_modules/three/src/geometries/TubeGeometry.js +203 -0
  1027. package/node_modules/three/src/geometries/WireframeGeometry.js +147 -0
  1028. package/node_modules/three/src/helpers/ArrowHelper.js +114 -0
  1029. package/node_modules/three/src/helpers/AxesHelper.js +68 -0
  1030. package/node_modules/three/src/helpers/Box3Helper.js +55 -0
  1031. package/node_modules/three/src/helpers/BoxHelper.js +113 -0
  1032. package/node_modules/three/src/helpers/CameraHelper.js +269 -0
  1033. package/node_modules/three/src/helpers/DirectionalLightHelper.js +93 -0
  1034. package/node_modules/three/src/helpers/GridHelper.js +56 -0
  1035. package/node_modules/three/src/helpers/HemisphereLightHelper.js +88 -0
  1036. package/node_modules/three/src/helpers/PlaneHelper.js +63 -0
  1037. package/node_modules/three/src/helpers/PointLightHelper.js +92 -0
  1038. package/node_modules/three/src/helpers/PolarGridHelper.js +96 -0
  1039. package/node_modules/three/src/helpers/SkeletonHelper.js +128 -0
  1040. package/node_modules/three/src/helpers/SpotLightHelper.js +94 -0
  1041. package/node_modules/three/src/lights/AmbientLight.js +17 -0
  1042. package/node_modules/three/src/lights/DirectionalLight.js +43 -0
  1043. package/node_modules/three/src/lights/DirectionalLightShadow.js +16 -0
  1044. package/node_modules/three/src/lights/HemisphereLight.js +34 -0
  1045. package/node_modules/three/src/lights/Light.js +58 -0
  1046. package/node_modules/three/src/lights/LightProbe.js +47 -0
  1047. package/node_modules/three/src/lights/LightShadow.js +147 -0
  1048. package/node_modules/three/src/lights/PointLight.js +57 -0
  1049. package/node_modules/three/src/lights/PointLightShadow.js +96 -0
  1050. package/node_modules/three/src/lights/RectAreaLight.js +56 -0
  1051. package/node_modules/three/src/lights/SpotLight.js +71 -0
  1052. package/node_modules/three/src/lights/SpotLightShadow.js +50 -0
  1053. package/node_modules/three/src/loaders/AnimationLoader.js +66 -0
  1054. package/node_modules/three/src/loaders/AudioLoader.js +66 -0
  1055. package/node_modules/three/src/loaders/BufferGeometryLoader.js +217 -0
  1056. package/node_modules/three/src/loaders/Cache.js +42 -0
  1057. package/node_modules/three/src/loaders/CompressedTextureLoader.js +134 -0
  1058. package/node_modules/three/src/loaders/CubeTextureLoader.js +58 -0
  1059. package/node_modules/three/src/loaders/DataTextureLoader.js +135 -0
  1060. package/node_modules/three/src/loaders/FileLoader.js +284 -0
  1061. package/node_modules/three/src/loaders/ImageBitmapLoader.js +123 -0
  1062. package/node_modules/three/src/loaders/ImageLoader.js +91 -0
  1063. package/node_modules/three/src/loaders/Loader.js +72 -0
  1064. package/node_modules/three/src/loaders/LoaderUtils.js +75 -0
  1065. package/node_modules/three/src/loaders/LoadingManager.js +142 -0
  1066. package/node_modules/three/src/loaders/MaterialLoader.js +372 -0
  1067. package/node_modules/three/src/loaders/ObjectLoader.js +1148 -0
  1068. package/node_modules/three/src/loaders/TextureLoader.js +41 -0
  1069. package/node_modules/three/src/materials/LineBasicMaterial.js +49 -0
  1070. package/node_modules/three/src/materials/LineDashedMaterial.js +35 -0
  1071. package/node_modules/three/src/materials/Material.js +522 -0
  1072. package/node_modules/three/src/materials/Materials.js +39 -0
  1073. package/node_modules/three/src/materials/MeshBasicMaterial.js +81 -0
  1074. package/node_modules/three/src/materials/MeshDepthMaterial.js +54 -0
  1075. package/node_modules/three/src/materials/MeshDistanceMaterial.js +43 -0
  1076. package/node_modules/three/src/materials/MeshLambertMaterial.js +116 -0
  1077. package/node_modules/three/src/materials/MeshMatcapMaterial.js +81 -0
  1078. package/node_modules/three/src/materials/MeshNormalMaterial.js +61 -0
  1079. package/node_modules/three/src/materials/MeshPhongMaterial.js +120 -0
  1080. package/node_modules/three/src/materials/MeshPhysicalMaterial.js +224 -0
  1081. package/node_modules/three/src/materials/MeshStandardMaterial.js +124 -0
  1082. package/node_modules/three/src/materials/MeshToonMaterial.js +102 -0
  1083. package/node_modules/three/src/materials/PointsMaterial.js +50 -0
  1084. package/node_modules/three/src/materials/RawShaderMaterial.js +17 -0
  1085. package/node_modules/three/src/materials/ShaderMaterial.js +189 -0
  1086. package/node_modules/three/src/materials/ShadowMaterial.js +37 -0
  1087. package/node_modules/three/src/materials/SpriteMaterial.js +54 -0
  1088. package/node_modules/three/src/math/Box2.js +204 -0
  1089. package/node_modules/three/src/math/Box3.js +534 -0
  1090. package/node_modules/three/src/math/Color.js +623 -0
  1091. package/node_modules/three/src/math/ColorManagement.js +139 -0
  1092. package/node_modules/three/src/math/Cylindrical.js +61 -0
  1093. package/node_modules/three/src/math/Euler.js +315 -0
  1094. package/node_modules/three/src/math/Frustum.js +186 -0
  1095. package/node_modules/three/src/math/Interpolant.js +241 -0
  1096. package/node_modules/three/src/math/Line3.js +115 -0
  1097. package/node_modules/three/src/math/MathUtils.js +363 -0
  1098. package/node_modules/three/src/math/Matrix3.js +388 -0
  1099. package/node_modules/three/src/math/Matrix4.js +915 -0
  1100. package/node_modules/three/src/math/Plane.js +205 -0
  1101. package/node_modules/three/src/math/Quaternion.js +685 -0
  1102. package/node_modules/three/src/math/Ray.js +493 -0
  1103. package/node_modules/three/src/math/Sphere.js +245 -0
  1104. package/node_modules/three/src/math/Spherical.js +86 -0
  1105. package/node_modules/three/src/math/SphericalHarmonics3.js +243 -0
  1106. package/node_modules/three/src/math/Triangle.js +311 -0
  1107. package/node_modules/three/src/math/Vector2.js +480 -0
  1108. package/node_modules/three/src/math/Vector3.js +724 -0
  1109. package/node_modules/three/src/math/Vector4.js +644 -0
  1110. package/node_modules/three/src/math/interpolants/CubicInterpolant.js +150 -0
  1111. package/node_modules/three/src/math/interpolants/DiscreteInterpolant.js +26 -0
  1112. package/node_modules/three/src/math/interpolants/LinearInterpolant.js +38 -0
  1113. package/node_modules/three/src/math/interpolants/QuaternionLinearInterpolant.js +39 -0
  1114. package/node_modules/three/src/objects/BatchedMesh.js +1019 -0
  1115. package/node_modules/three/src/objects/Bone.js +17 -0
  1116. package/node_modules/three/src/objects/Group.js +17 -0
  1117. package/node_modules/three/src/objects/InstancedMesh.js +214 -0
  1118. package/node_modules/three/src/objects/LOD.js +214 -0
  1119. package/node_modules/three/src/objects/Line.js +222 -0
  1120. package/node_modules/three/src/objects/LineLoop.js +17 -0
  1121. package/node_modules/three/src/objects/LineSegments.js +55 -0
  1122. package/node_modules/three/src/objects/Mesh.js +429 -0
  1123. package/node_modules/three/src/objects/Points.js +166 -0
  1124. package/node_modules/three/src/objects/Skeleton.js +277 -0
  1125. package/node_modules/three/src/objects/SkinnedMesh.js +257 -0
  1126. package/node_modules/three/src/objects/Sprite.js +181 -0
  1127. package/node_modules/three/src/renderers/WebGL1Renderer.js +7 -0
  1128. package/node_modules/three/src/renderers/WebGL3DRenderTarget.js +22 -0
  1129. package/node_modules/three/src/renderers/WebGLArrayRenderTarget.js +22 -0
  1130. package/node_modules/three/src/renderers/WebGLCubeRenderTarget.js +155 -0
  1131. package/node_modules/three/src/renderers/WebGLMultipleRenderTargets.js +82 -0
  1132. package/node_modules/three/src/renderers/WebGLRenderTarget.js +15 -0
  1133. package/node_modules/three/src/renderers/WebGLRenderer.js +2610 -0
  1134. package/node_modules/three/src/renderers/shaders/ShaderChunk/alphahash_fragment.glsl.js +7 -0
  1135. package/node_modules/three/src/renderers/shaders/ShaderChunk/alphahash_pars_fragment.glsl.js +68 -0
  1136. package/node_modules/three/src/renderers/shaders/ShaderChunk/alphamap_fragment.glsl.js +7 -0
  1137. package/node_modules/three/src/renderers/shaders/ShaderChunk/alphamap_pars_fragment.glsl.js +7 -0
  1138. package/node_modules/three/src/renderers/shaders/ShaderChunk/alphatest_fragment.glsl.js +16 -0
  1139. package/node_modules/three/src/renderers/shaders/ShaderChunk/alphatest_pars_fragment.glsl.js +5 -0
  1140. package/node_modules/three/src/renderers/shaders/ShaderChunk/aomap_fragment.glsl.js +26 -0
  1141. package/node_modules/three/src/renderers/shaders/ShaderChunk/aomap_pars_fragment.glsl.js +8 -0
  1142. package/node_modules/three/src/renderers/shaders/ShaderChunk/batching_pars_vertex.glsl.js +19 -0
  1143. package/node_modules/three/src/renderers/shaders/ShaderChunk/batching_vertex.glsl.js +5 -0
  1144. package/node_modules/three/src/renderers/shaders/ShaderChunk/begin_vertex.glsl.js +9 -0
  1145. package/node_modules/three/src/renderers/shaders/ShaderChunk/beginnormal_vertex.glsl.js +9 -0
  1146. package/node_modules/three/src/renderers/shaders/ShaderChunk/bsdfs.glsl.js +33 -0
  1147. package/node_modules/three/src/renderers/shaders/ShaderChunk/bumpmap_pars_fragment.glsl.js +43 -0
  1148. package/node_modules/three/src/renderers/shaders/ShaderChunk/clearcoat_normal_fragment_begin.glsl.js +7 -0
  1149. package/node_modules/three/src/renderers/shaders/ShaderChunk/clearcoat_normal_fragment_maps.glsl.js +10 -0
  1150. package/node_modules/three/src/renderers/shaders/ShaderChunk/clearcoat_pars_fragment.glsl.js +21 -0
  1151. package/node_modules/three/src/renderers/shaders/ShaderChunk/clipping_planes_fragment.glsl.js +78 -0
  1152. package/node_modules/three/src/renderers/shaders/ShaderChunk/clipping_planes_pars_fragment.glsl.js +9 -0
  1153. package/node_modules/three/src/renderers/shaders/ShaderChunk/clipping_planes_pars_vertex.glsl.js +7 -0
  1154. package/node_modules/three/src/renderers/shaders/ShaderChunk/clipping_planes_vertex.glsl.js +7 -0
  1155. package/node_modules/three/src/renderers/shaders/ShaderChunk/color_fragment.glsl.js +11 -0
  1156. package/node_modules/three/src/renderers/shaders/ShaderChunk/color_pars_fragment.glsl.js +11 -0
  1157. package/node_modules/three/src/renderers/shaders/ShaderChunk/color_pars_vertex.glsl.js +11 -0
  1158. package/node_modules/three/src/renderers/shaders/ShaderChunk/color_vertex.glsl.js +23 -0
  1159. package/node_modules/three/src/renderers/shaders/ShaderChunk/colorspace_fragment.glsl.js +3 -0
  1160. package/node_modules/three/src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js +44 -0
  1161. package/node_modules/three/src/renderers/shaders/ShaderChunk/common.glsl.js +147 -0
  1162. package/node_modules/three/src/renderers/shaders/ShaderChunk/cube_uv_reflection_fragment.glsl.js +186 -0
  1163. package/node_modules/three/src/renderers/shaders/ShaderChunk/default_fragment.glsl.js +5 -0
  1164. package/node_modules/three/src/renderers/shaders/ShaderChunk/default_vertex.glsl.js +5 -0
  1165. package/node_modules/three/src/renderers/shaders/ShaderChunk/defaultnormal_vertex.glsl.js +63 -0
  1166. package/node_modules/three/src/renderers/shaders/ShaderChunk/displacementmap_pars_vertex.glsl.js +9 -0
  1167. package/node_modules/three/src/renderers/shaders/ShaderChunk/displacementmap_vertex.glsl.js +7 -0
  1168. package/node_modules/three/src/renderers/shaders/ShaderChunk/dithering_fragment.glsl.js +7 -0
  1169. package/node_modules/three/src/renderers/shaders/ShaderChunk/dithering_pars_fragment.glsl.js +20 -0
  1170. package/node_modules/three/src/renderers/shaders/ShaderChunk/emissivemap_fragment.glsl.js +9 -0
  1171. package/node_modules/three/src/renderers/shaders/ShaderChunk/emissivemap_pars_fragment.glsl.js +7 -0
  1172. package/node_modules/three/src/renderers/shaders/ShaderChunk/envmap_common_pars_fragment.glsl.js +14 -0
  1173. package/node_modules/three/src/renderers/shaders/ShaderChunk/envmap_fragment.glsl.js +62 -0
  1174. package/node_modules/three/src/renderers/shaders/ShaderChunk/envmap_pars_fragment.glsl.js +21 -0
  1175. package/node_modules/three/src/renderers/shaders/ShaderChunk/envmap_pars_vertex.glsl.js +22 -0
  1176. package/node_modules/three/src/renderers/shaders/ShaderChunk/envmap_physical_pars_fragment.glsl.js +69 -0
  1177. package/node_modules/three/src/renderers/shaders/ShaderChunk/envmap_vertex.glsl.js +37 -0
  1178. package/node_modules/three/src/renderers/shaders/ShaderChunk/fog_fragment.glsl.js +17 -0
  1179. package/node_modules/three/src/renderers/shaders/ShaderChunk/fog_pars_fragment.glsl.js +19 -0
  1180. package/node_modules/three/src/renderers/shaders/ShaderChunk/fog_pars_vertex.glsl.js +7 -0
  1181. package/node_modules/three/src/renderers/shaders/ShaderChunk/fog_vertex.glsl.js +7 -0
  1182. package/node_modules/three/src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js +27 -0
  1183. package/node_modules/three/src/renderers/shaders/ShaderChunk/iridescence_fragment.glsl.js +120 -0
  1184. package/node_modules/three/src/renderers/shaders/ShaderChunk/iridescence_pars_fragment.glsl.js +14 -0
  1185. package/node_modules/three/src/renderers/shaders/ShaderChunk/lightmap_fragment.glsl.js +10 -0
  1186. package/node_modules/three/src/renderers/shaders/ShaderChunk/lightmap_pars_fragment.glsl.js +8 -0
  1187. package/node_modules/three/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js +202 -0
  1188. package/node_modules/three/src/renderers/shaders/ShaderChunk/lights_fragment_end.glsl.js +13 -0
  1189. package/node_modules/three/src/renderers/shaders/ShaderChunk/lights_fragment_maps.glsl.js +40 -0
  1190. package/node_modules/three/src/renderers/shaders/ShaderChunk/lights_lambert_fragment.glsl.js +5 -0
  1191. package/node_modules/three/src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js +28 -0
  1192. package/node_modules/three/src/renderers/shaders/ShaderChunk/lights_pars_begin.glsl.js +228 -0
  1193. package/node_modules/three/src/renderers/shaders/ShaderChunk/lights_phong_fragment.glsl.js +7 -0
  1194. package/node_modules/three/src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js +32 -0
  1195. package/node_modules/three/src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js +151 -0
  1196. package/node_modules/three/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js +562 -0
  1197. package/node_modules/three/src/renderers/shaders/ShaderChunk/lights_toon_fragment.glsl.js +4 -0
  1198. package/node_modules/three/src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js +26 -0
  1199. package/node_modules/three/src/renderers/shaders/ShaderChunk/logdepthbuf_fragment.glsl.js +9 -0
  1200. package/node_modules/three/src/renderers/shaders/ShaderChunk/logdepthbuf_pars_fragment.glsl.js +9 -0
  1201. package/node_modules/three/src/renderers/shaders/ShaderChunk/logdepthbuf_pars_vertex.glsl.js +16 -0
  1202. package/node_modules/three/src/renderers/shaders/ShaderChunk/logdepthbuf_vertex.glsl.js +22 -0
  1203. package/node_modules/three/src/renderers/shaders/ShaderChunk/map_fragment.glsl.js +17 -0
  1204. package/node_modules/three/src/renderers/shaders/ShaderChunk/map_pars_fragment.glsl.js +7 -0
  1205. package/node_modules/three/src/renderers/shaders/ShaderChunk/map_particle_fragment.glsl.js +27 -0
  1206. package/node_modules/three/src/renderers/shaders/ShaderChunk/map_particle_pars_fragment.glsl.js +27 -0
  1207. package/node_modules/three/src/renderers/shaders/ShaderChunk/metalnessmap_fragment.glsl.js +12 -0
  1208. package/node_modules/three/src/renderers/shaders/ShaderChunk/metalnessmap_pars_fragment.glsl.js +7 -0
  1209. package/node_modules/three/src/renderers/shaders/ShaderChunk/morphcolor_vertex.glsl.js +24 -0
  1210. package/node_modules/three/src/renderers/shaders/ShaderChunk/morphnormal_vertex.glsl.js +27 -0
  1211. package/node_modules/three/src/renderers/shaders/ShaderChunk/morphtarget_pars_vertex.glsl.js +38 -0
  1212. package/node_modules/three/src/renderers/shaders/ShaderChunk/morphtarget_vertex.glsl.js +36 -0
  1213. package/node_modules/three/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js +76 -0
  1214. package/node_modules/three/src/renderers/shaders/ShaderChunk/normal_fragment_maps.glsl.js +33 -0
  1215. package/node_modules/three/src/renderers/shaders/ShaderChunk/normal_pars_fragment.glsl.js +14 -0
  1216. package/node_modules/three/src/renderers/shaders/ShaderChunk/normal_pars_vertex.glsl.js +14 -0
  1217. package/node_modules/three/src/renderers/shaders/ShaderChunk/normal_vertex.glsl.js +14 -0
  1218. package/node_modules/three/src/renderers/shaders/ShaderChunk/normalmap_pars_fragment.glsl.js +43 -0
  1219. package/node_modules/three/src/renderers/shaders/ShaderChunk/opaque_fragment.glsl.js +11 -0
  1220. package/node_modules/three/src/renderers/shaders/ShaderChunk/packing.glsl.js +68 -0
  1221. package/node_modules/three/src/renderers/shaders/ShaderChunk/premultiplied_alpha_fragment.glsl.js +8 -0
  1222. package/node_modules/three/src/renderers/shaders/ShaderChunk/project_vertex.glsl.js +19 -0
  1223. package/node_modules/three/src/renderers/shaders/ShaderChunk/roughnessmap_fragment.glsl.js +12 -0
  1224. package/node_modules/three/src/renderers/shaders/ShaderChunk/roughnessmap_pars_fragment.glsl.js +7 -0
  1225. package/node_modules/three/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js +314 -0
  1226. package/node_modules/three/src/renderers/shaders/ShaderChunk/shadowmap_pars_vertex.glsl.js +68 -0
  1227. package/node_modules/three/src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js +68 -0
  1228. package/node_modules/three/src/renderers/shaders/ShaderChunk/shadowmask_pars_fragment.glsl.js +66 -0
  1229. package/node_modules/three/src/renderers/shaders/ShaderChunk/skinbase_vertex.glsl.js +10 -0
  1230. package/node_modules/three/src/renderers/shaders/ShaderChunk/skinning_pars_vertex.glsl.js +25 -0
  1231. package/node_modules/three/src/renderers/shaders/ShaderChunk/skinning_vertex.glsl.js +15 -0
  1232. package/node_modules/three/src/renderers/shaders/ShaderChunk/skinnormal_vertex.glsl.js +20 -0
  1233. package/node_modules/three/src/renderers/shaders/ShaderChunk/specularmap_fragment.glsl.js +14 -0
  1234. package/node_modules/three/src/renderers/shaders/ShaderChunk/specularmap_pars_fragment.glsl.js +7 -0
  1235. package/node_modules/three/src/renderers/shaders/ShaderChunk/tonemapping_fragment.glsl.js +7 -0
  1236. package/node_modules/three/src/renderers/shaders/ShaderChunk/tonemapping_pars_fragment.glsl.js +169 -0
  1237. package/node_modules/three/src/renderers/shaders/ShaderChunk/transmission_fragment.glsl.js +36 -0
  1238. package/node_modules/three/src/renderers/shaders/ShaderChunk/transmission_pars_fragment.glsl.js +201 -0
  1239. package/node_modules/three/src/renderers/shaders/ShaderChunk/uv_pars_fragment.glsl.js +119 -0
  1240. package/node_modules/three/src/renderers/shaders/ShaderChunk/uv_pars_vertex.glsl.js +145 -0
  1241. package/node_modules/three/src/renderers/shaders/ShaderChunk/uv_vertex.glsl.js +122 -0
  1242. package/node_modules/three/src/renderers/shaders/ShaderChunk/worldpos_vertex.glsl.js +21 -0
  1243. package/node_modules/three/src/renderers/shaders/ShaderChunk.js +270 -0
  1244. package/node_modules/three/src/renderers/shaders/ShaderLib/background.glsl.js +40 -0
  1245. package/node_modules/three/src/renderers/shaders/ShaderLib/backgroundCube.glsl.js +62 -0
  1246. package/node_modules/three/src/renderers/shaders/ShaderLib/cube.glsl.js +36 -0
  1247. package/node_modules/three/src/renderers/shaders/ShaderLib/depth.glsl.js +95 -0
  1248. package/node_modules/three/src/renderers/shaders/ShaderLib/distanceRGBA.glsl.js +76 -0
  1249. package/node_modules/three/src/renderers/shaders/ShaderLib/equirect.glsl.js +35 -0
  1250. package/node_modules/three/src/renderers/shaders/ShaderLib/linedashed.glsl.js +75 -0
  1251. package/node_modules/three/src/renderers/shaders/ShaderLib/meshbasic.glsl.js +115 -0
  1252. package/node_modules/three/src/renderers/shaders/ShaderLib/meshlambert.glsl.js +124 -0
  1253. package/node_modules/three/src/renderers/shaders/ShaderLib/meshmatcap.glsl.js +111 -0
  1254. package/node_modules/three/src/renderers/shaders/ShaderLib/meshnormal.glsl.js +86 -0
  1255. package/node_modules/three/src/renderers/shaders/ShaderLib/meshphong.glsl.js +126 -0
  1256. package/node_modules/three/src/renderers/shaders/ShaderLib/meshphysical.glsl.js +224 -0
  1257. package/node_modules/three/src/renderers/shaders/ShaderLib/meshtoon.glsl.js +118 -0
  1258. package/node_modules/three/src/renderers/shaders/ShaderLib/points.glsl.js +86 -0
  1259. package/node_modules/three/src/renderers/shaders/ShaderLib/shadow.glsl.js +57 -0
  1260. package/node_modules/three/src/renderers/shaders/ShaderLib/sprite.glsl.js +81 -0
  1261. package/node_modules/three/src/renderers/shaders/ShaderLib/vsm.glsl.js +53 -0
  1262. package/node_modules/three/src/renderers/shaders/ShaderLib.js +359 -0
  1263. package/node_modules/three/src/renderers/shaders/UniformsLib.js +230 -0
  1264. package/node_modules/three/src/renderers/shaders/UniformsUtils.js +104 -0
  1265. package/node_modules/three/src/renderers/webgl/WebGLAnimation.js +53 -0
  1266. package/node_modules/three/src/renderers/webgl/WebGLAttributes.js +229 -0
  1267. package/node_modules/three/src/renderers/webgl/WebGLBackground.js +239 -0
  1268. package/node_modules/three/src/renderers/webgl/WebGLBindingStates.js +631 -0
  1269. package/node_modules/three/src/renderers/webgl/WebGLBufferRenderer.js +92 -0
  1270. package/node_modules/three/src/renderers/webgl/WebGLCapabilities.js +120 -0
  1271. package/node_modules/three/src/renderers/webgl/WebGLClipping.js +171 -0
  1272. package/node_modules/three/src/renderers/webgl/WebGLCubeMaps.js +99 -0
  1273. package/node_modules/three/src/renderers/webgl/WebGLCubeUVMaps.js +130 -0
  1274. package/node_modules/three/src/renderers/webgl/WebGLExtensions.js +97 -0
  1275. package/node_modules/three/src/renderers/webgl/WebGLGeometries.js +211 -0
  1276. package/node_modules/three/src/renderers/webgl/WebGLIndexedBufferRenderer.js +102 -0
  1277. package/node_modules/three/src/renderers/webgl/WebGLInfo.js +71 -0
  1278. package/node_modules/three/src/renderers/webgl/WebGLLights.js +590 -0
  1279. package/node_modules/three/src/renderers/webgl/WebGLMaterials.js +567 -0
  1280. package/node_modules/three/src/renderers/webgl/WebGLMorphtargets.js +300 -0
  1281. package/node_modules/three/src/renderers/webgl/WebGLObjects.js +92 -0
  1282. package/node_modules/three/src/renderers/webgl/WebGLProgram.js +1109 -0
  1283. package/node_modules/three/src/renderers/webgl/WebGLPrograms.js +661 -0
  1284. package/node_modules/three/src/renderers/webgl/WebGLProperties.js +48 -0
  1285. package/node_modules/three/src/renderers/webgl/WebGLRenderLists.js +238 -0
  1286. package/node_modules/three/src/renderers/webgl/WebGLRenderStates.js +107 -0
  1287. package/node_modules/three/src/renderers/webgl/WebGLShader.js +12 -0
  1288. package/node_modules/three/src/renderers/webgl/WebGLShaderCache.js +124 -0
  1289. package/node_modules/three/src/renderers/webgl/WebGLShadowMap.js +424 -0
  1290. package/node_modules/three/src/renderers/webgl/WebGLState.js +1328 -0
  1291. package/node_modules/three/src/renderers/webgl/WebGLTextures.js +2183 -0
  1292. package/node_modules/three/src/renderers/webgl/WebGLUniforms.js +1156 -0
  1293. package/node_modules/three/src/renderers/webgl/WebGLUniformsGroups.js +392 -0
  1294. package/node_modules/three/src/renderers/webgl/WebGLUtils.js +283 -0
  1295. package/node_modules/three/src/renderers/webxr/WebXRController.js +343 -0
  1296. package/node_modules/three/src/renderers/webxr/WebXRDepthSensing.js +105 -0
  1297. package/node_modules/three/src/renderers/webxr/WebXRManager.js +824 -0
  1298. package/node_modules/three/src/scenes/Fog.js +38 -0
  1299. package/node_modules/three/src/scenes/FogExp2.js +35 -0
  1300. package/node_modules/three/src/scenes/Scene.js +63 -0
  1301. package/node_modules/three/src/textures/CanvasTexture.js +17 -0
  1302. package/node_modules/three/src/textures/CompressedArrayTexture.js +18 -0
  1303. package/node_modules/three/src/textures/CompressedCubeTexture.js +19 -0
  1304. package/node_modules/three/src/textures/CompressedTexture.js +28 -0
  1305. package/node_modules/three/src/textures/CubeTexture.js +33 -0
  1306. package/node_modules/three/src/textures/Data3DTexture.js +35 -0
  1307. package/node_modules/three/src/textures/DataArrayTexture.js +27 -0
  1308. package/node_modules/three/src/textures/DataTexture.js +22 -0
  1309. package/node_modules/three/src/textures/DepthTexture.js +58 -0
  1310. package/node_modules/three/src/textures/FramebufferTexture.js +23 -0
  1311. package/node_modules/three/src/textures/Source.js +128 -0
  1312. package/node_modules/three/src/textures/Texture.js +338 -0
  1313. package/node_modules/three/src/textures/VideoTexture.js +55 -0
  1314. package/node_modules/three/src/utils.js +91 -0
  1315. package/package.json +63 -0
@@ -0,0 +1,1052 @@
1
+ /**
2
+ * @version 1.1.1
3
+ *
4
+ * @desc Load files in LWO3 and LWO2 format on Three.js
5
+ *
6
+ * LWO3 format specification:
7
+ * https://static.lightwave3d.com/sdk/2019/html/filefmts/lwo3.html
8
+ *
9
+ * LWO2 format specification:
10
+ * https://static.lightwave3d.com/sdk/2019/html/filefmts/lwo2.html
11
+ *
12
+ **/
13
+
14
+ import {
15
+ AddOperation,
16
+ BackSide,
17
+ BufferGeometry,
18
+ ClampToEdgeWrapping,
19
+ Color,
20
+ DoubleSide,
21
+ EquirectangularReflectionMapping,
22
+ EquirectangularRefractionMapping,
23
+ FileLoader,
24
+ Float32BufferAttribute,
25
+ FrontSide,
26
+ LineBasicMaterial,
27
+ LineSegments,
28
+ Loader,
29
+ Mesh,
30
+ MeshPhongMaterial,
31
+ MeshPhysicalMaterial,
32
+ MeshStandardMaterial,
33
+ MirroredRepeatWrapping,
34
+ Points,
35
+ PointsMaterial,
36
+ RepeatWrapping,
37
+ SRGBColorSpace,
38
+ TextureLoader,
39
+ Vector2
40
+ } from 'three';
41
+
42
+ import { IFFParser } from './lwo/IFFParser.js';
43
+
44
+ let _lwoTree;
45
+
46
+ class LWOLoader extends Loader {
47
+
48
+ constructor( manager, parameters = {} ) {
49
+
50
+ super( manager );
51
+
52
+ this.resourcePath = ( parameters.resourcePath !== undefined ) ? parameters.resourcePath : '';
53
+
54
+ }
55
+
56
+ load( url, onLoad, onProgress, onError ) {
57
+
58
+ const scope = this;
59
+
60
+ const path = ( scope.path === '' ) ? extractParentUrl( url, 'Objects' ) : scope.path;
61
+
62
+ // give the mesh a default name based on the filename
63
+ const modelName = url.split( path ).pop().split( '.' )[ 0 ];
64
+
65
+ const loader = new FileLoader( this.manager );
66
+ loader.setPath( scope.path );
67
+ loader.setResponseType( 'arraybuffer' );
68
+
69
+ loader.load( url, function ( buffer ) {
70
+
71
+ // console.time( 'Total parsing: ' );
72
+
73
+ try {
74
+
75
+ onLoad( scope.parse( buffer, path, modelName ) );
76
+
77
+ } catch ( e ) {
78
+
79
+ if ( onError ) {
80
+
81
+ onError( e );
82
+
83
+ } else {
84
+
85
+ console.error( e );
86
+
87
+ }
88
+
89
+ scope.manager.itemError( url );
90
+
91
+ }
92
+
93
+ // console.timeEnd( 'Total parsing: ' );
94
+
95
+ }, onProgress, onError );
96
+
97
+ }
98
+
99
+ parse( iffBuffer, path, modelName ) {
100
+
101
+ _lwoTree = new IFFParser().parse( iffBuffer );
102
+
103
+ // console.log( 'lwoTree', lwoTree );
104
+
105
+ const textureLoader = new TextureLoader( this.manager ).setPath( this.resourcePath || path ).setCrossOrigin( this.crossOrigin );
106
+
107
+ return new LWOTreeParser( textureLoader ).parse( modelName );
108
+
109
+ }
110
+
111
+ }
112
+
113
+ // Parse the lwoTree object
114
+ class LWOTreeParser {
115
+
116
+ constructor( textureLoader ) {
117
+
118
+ this.textureLoader = textureLoader;
119
+
120
+ }
121
+
122
+ parse( modelName ) {
123
+
124
+ this.materials = new MaterialParser( this.textureLoader ).parse();
125
+ this.defaultLayerName = modelName;
126
+
127
+ this.meshes = this.parseLayers();
128
+
129
+ return {
130
+ materials: this.materials,
131
+ meshes: this.meshes,
132
+ };
133
+
134
+ }
135
+
136
+ parseLayers() {
137
+
138
+ // array of all meshes for building hierarchy
139
+ const meshes = [];
140
+
141
+ // final array containing meshes with scene graph hierarchy set up
142
+ const finalMeshes = [];
143
+
144
+ const geometryParser = new GeometryParser();
145
+
146
+ const scope = this;
147
+ _lwoTree.layers.forEach( function ( layer ) {
148
+
149
+ const geometry = geometryParser.parse( layer.geometry, layer );
150
+
151
+ const mesh = scope.parseMesh( geometry, layer );
152
+
153
+ meshes[ layer.number ] = mesh;
154
+
155
+ if ( layer.parent === - 1 ) finalMeshes.push( mesh );
156
+ else meshes[ layer.parent ].add( mesh );
157
+
158
+
159
+ } );
160
+
161
+ this.applyPivots( finalMeshes );
162
+
163
+ return finalMeshes;
164
+
165
+ }
166
+
167
+ parseMesh( geometry, layer ) {
168
+
169
+ let mesh;
170
+
171
+ const materials = this.getMaterials( geometry.userData.matNames, layer.geometry.type );
172
+
173
+ if ( layer.geometry.type === 'points' ) mesh = new Points( geometry, materials );
174
+ else if ( layer.geometry.type === 'lines' ) mesh = new LineSegments( geometry, materials );
175
+ else mesh = new Mesh( geometry, materials );
176
+
177
+ if ( layer.name ) mesh.name = layer.name;
178
+ else mesh.name = this.defaultLayerName + '_layer_' + layer.number;
179
+
180
+ mesh.userData.pivot = layer.pivot;
181
+
182
+ return mesh;
183
+
184
+ }
185
+
186
+ // TODO: may need to be reversed in z to convert LWO to three.js coordinates
187
+ applyPivots( meshes ) {
188
+
189
+ meshes.forEach( function ( mesh ) {
190
+
191
+ mesh.traverse( function ( child ) {
192
+
193
+ const pivot = child.userData.pivot;
194
+
195
+ child.position.x += pivot[ 0 ];
196
+ child.position.y += pivot[ 1 ];
197
+ child.position.z += pivot[ 2 ];
198
+
199
+ if ( child.parent ) {
200
+
201
+ const parentPivot = child.parent.userData.pivot;
202
+
203
+ child.position.x -= parentPivot[ 0 ];
204
+ child.position.y -= parentPivot[ 1 ];
205
+ child.position.z -= parentPivot[ 2 ];
206
+
207
+ }
208
+
209
+ } );
210
+
211
+ } );
212
+
213
+ }
214
+
215
+ getMaterials( namesArray, type ) {
216
+
217
+ const materials = [];
218
+
219
+ const scope = this;
220
+
221
+ namesArray.forEach( function ( name, i ) {
222
+
223
+ materials[ i ] = scope.getMaterialByName( name );
224
+
225
+ } );
226
+
227
+ // convert materials to line or point mats if required
228
+ if ( type === 'points' || type === 'lines' ) {
229
+
230
+ materials.forEach( function ( mat, i ) {
231
+
232
+ const spec = {
233
+ color: mat.color,
234
+ };
235
+
236
+ if ( type === 'points' ) {
237
+
238
+ spec.size = 0.1;
239
+ spec.map = mat.map;
240
+ materials[ i ] = new PointsMaterial( spec );
241
+
242
+ } else if ( type === 'lines' ) {
243
+
244
+ materials[ i ] = new LineBasicMaterial( spec );
245
+
246
+ }
247
+
248
+ } );
249
+
250
+ }
251
+
252
+ // if there is only one material, return that directly instead of array
253
+ const filtered = materials.filter( Boolean );
254
+ if ( filtered.length === 1 ) return filtered[ 0 ];
255
+
256
+ return materials;
257
+
258
+ }
259
+
260
+ getMaterialByName( name ) {
261
+
262
+ return this.materials.filter( function ( m ) {
263
+
264
+ return m.name === name;
265
+
266
+ } )[ 0 ];
267
+
268
+ }
269
+
270
+ }
271
+
272
+ class MaterialParser {
273
+
274
+ constructor( textureLoader ) {
275
+
276
+ this.textureLoader = textureLoader;
277
+
278
+ }
279
+
280
+ parse() {
281
+
282
+ const materials = [];
283
+ this.textures = {};
284
+
285
+ for ( const name in _lwoTree.materials ) {
286
+
287
+ if ( _lwoTree.format === 'LWO3' ) {
288
+
289
+ materials.push( this.parseMaterial( _lwoTree.materials[ name ], name, _lwoTree.textures ) );
290
+
291
+ } else if ( _lwoTree.format === 'LWO2' ) {
292
+
293
+ materials.push( this.parseMaterialLwo2( _lwoTree.materials[ name ], name, _lwoTree.textures ) );
294
+
295
+ }
296
+
297
+ }
298
+
299
+ return materials;
300
+
301
+ }
302
+
303
+ parseMaterial( materialData, name, textures ) {
304
+
305
+ let params = {
306
+ name: name,
307
+ side: this.getSide( materialData.attributes ),
308
+ flatShading: this.getSmooth( materialData.attributes ),
309
+ };
310
+
311
+ const connections = this.parseConnections( materialData.connections, materialData.nodes );
312
+
313
+ const maps = this.parseTextureNodes( connections.maps );
314
+
315
+ this.parseAttributeImageMaps( connections.attributes, textures, maps, materialData.maps );
316
+
317
+ const attributes = this.parseAttributes( connections.attributes, maps );
318
+
319
+ this.parseEnvMap( connections, maps, attributes );
320
+
321
+ params = Object.assign( maps, params );
322
+ params = Object.assign( params, attributes );
323
+
324
+ const materialType = this.getMaterialType( connections.attributes );
325
+
326
+ if ( materialType !== MeshPhongMaterial ) delete params.refractionRatio; // PBR materials do not support "refractionRatio"
327
+
328
+ return new materialType( params );
329
+
330
+ }
331
+
332
+ parseMaterialLwo2( materialData, name/*, textures*/ ) {
333
+
334
+ let params = {
335
+ name: name,
336
+ side: this.getSide( materialData.attributes ),
337
+ flatShading: this.getSmooth( materialData.attributes ),
338
+ };
339
+
340
+ const attributes = this.parseAttributes( materialData.attributes, {} );
341
+ params = Object.assign( params, attributes );
342
+ return new MeshPhongMaterial( params );
343
+
344
+ }
345
+
346
+ // Note: converting from left to right handed coords by switching x -> -x in vertices, and
347
+ // then switching mat FrontSide -> BackSide
348
+ // NB: this means that FrontSide and BackSide have been switched!
349
+ getSide( attributes ) {
350
+
351
+ if ( ! attributes.side ) return BackSide;
352
+
353
+ switch ( attributes.side ) {
354
+
355
+ case 0:
356
+ case 1:
357
+ return BackSide;
358
+ case 2: return FrontSide;
359
+ case 3: return DoubleSide;
360
+
361
+ }
362
+
363
+ }
364
+
365
+ getSmooth( attributes ) {
366
+
367
+ if ( ! attributes.smooth ) return true;
368
+ return ! attributes.smooth;
369
+
370
+ }
371
+
372
+ parseConnections( connections, nodes ) {
373
+
374
+ const materialConnections = {
375
+ maps: {}
376
+ };
377
+
378
+ const inputName = connections.inputName;
379
+ const inputNodeName = connections.inputNodeName;
380
+ const nodeName = connections.nodeName;
381
+
382
+ const scope = this;
383
+ inputName.forEach( function ( name, index ) {
384
+
385
+ if ( name === 'Material' ) {
386
+
387
+ const matNode = scope.getNodeByRefName( inputNodeName[ index ], nodes );
388
+ materialConnections.attributes = matNode.attributes;
389
+ materialConnections.envMap = matNode.fileName;
390
+ materialConnections.name = inputNodeName[ index ];
391
+
392
+ }
393
+
394
+ } );
395
+
396
+ nodeName.forEach( function ( name, index ) {
397
+
398
+ if ( name === materialConnections.name ) {
399
+
400
+ materialConnections.maps[ inputName[ index ] ] = scope.getNodeByRefName( inputNodeName[ index ], nodes );
401
+
402
+ }
403
+
404
+ } );
405
+
406
+ return materialConnections;
407
+
408
+ }
409
+
410
+ getNodeByRefName( refName, nodes ) {
411
+
412
+ for ( const name in nodes ) {
413
+
414
+ if ( nodes[ name ].refName === refName ) return nodes[ name ];
415
+
416
+ }
417
+
418
+ }
419
+
420
+ parseTextureNodes( textureNodes ) {
421
+
422
+ const maps = {};
423
+
424
+ for ( const name in textureNodes ) {
425
+
426
+ const node = textureNodes[ name ];
427
+ const path = node.fileName;
428
+
429
+ if ( ! path ) return;
430
+
431
+ const texture = this.loadTexture( path );
432
+
433
+ if ( node.widthWrappingMode !== undefined ) texture.wrapS = this.getWrappingType( node.widthWrappingMode );
434
+ if ( node.heightWrappingMode !== undefined ) texture.wrapT = this.getWrappingType( node.heightWrappingMode );
435
+
436
+ switch ( name ) {
437
+
438
+ case 'Color':
439
+ maps.map = texture;
440
+ maps.map.colorSpace = SRGBColorSpace;
441
+ break;
442
+ case 'Roughness':
443
+ maps.roughnessMap = texture;
444
+ maps.roughness = 1;
445
+ break;
446
+ case 'Specular':
447
+ maps.specularMap = texture;
448
+ maps.specularMap.colorSpace = SRGBColorSpace;
449
+ maps.specular = 0xffffff;
450
+ break;
451
+ case 'Luminous':
452
+ maps.emissiveMap = texture;
453
+ maps.emissiveMap.colorSpace = SRGBColorSpace;
454
+ maps.emissive = 0x808080;
455
+ break;
456
+ case 'Luminous Color':
457
+ maps.emissive = 0x808080;
458
+ break;
459
+ case 'Metallic':
460
+ maps.metalnessMap = texture;
461
+ maps.metalness = 1;
462
+ break;
463
+ case 'Transparency':
464
+ case 'Alpha':
465
+ maps.alphaMap = texture;
466
+ maps.transparent = true;
467
+ break;
468
+ case 'Normal':
469
+ maps.normalMap = texture;
470
+ if ( node.amplitude !== undefined ) maps.normalScale = new Vector2( node.amplitude, node.amplitude );
471
+ break;
472
+ case 'Bump':
473
+ maps.bumpMap = texture;
474
+ break;
475
+
476
+ }
477
+
478
+ }
479
+
480
+ // LWO BSDF materials can have both spec and rough, but this is not valid in three
481
+ if ( maps.roughnessMap && maps.specularMap ) delete maps.specularMap;
482
+
483
+ return maps;
484
+
485
+ }
486
+
487
+ // maps can also be defined on individual material attributes, parse those here
488
+ // This occurs on Standard (Phong) surfaces
489
+ parseAttributeImageMaps( attributes, textures, maps ) {
490
+
491
+ for ( const name in attributes ) {
492
+
493
+ const attribute = attributes[ name ];
494
+
495
+ if ( attribute.maps ) {
496
+
497
+ const mapData = attribute.maps[ 0 ];
498
+
499
+ const path = this.getTexturePathByIndex( mapData.imageIndex, textures );
500
+ if ( ! path ) return;
501
+
502
+ const texture = this.loadTexture( path );
503
+
504
+ if ( mapData.wrap !== undefined ) texture.wrapS = this.getWrappingType( mapData.wrap.w );
505
+ if ( mapData.wrap !== undefined ) texture.wrapT = this.getWrappingType( mapData.wrap.h );
506
+
507
+ switch ( name ) {
508
+
509
+ case 'Color':
510
+ maps.map = texture;
511
+ maps.map.colorSpace = SRGBColorSpace;
512
+ break;
513
+ case 'Diffuse':
514
+ maps.aoMap = texture;
515
+ break;
516
+ case 'Roughness':
517
+ maps.roughnessMap = texture;
518
+ maps.roughness = 1;
519
+ break;
520
+ case 'Specular':
521
+ maps.specularMap = texture;
522
+ maps.specularMap.colorSpace = SRGBColorSpace;
523
+ maps.specular = 0xffffff;
524
+ break;
525
+ case 'Luminosity':
526
+ maps.emissiveMap = texture;
527
+ maps.emissiveMap.colorSpace = SRGBColorSpace;
528
+ maps.emissive = 0x808080;
529
+ break;
530
+ case 'Metallic':
531
+ maps.metalnessMap = texture;
532
+ maps.metalness = 1;
533
+ break;
534
+ case 'Transparency':
535
+ case 'Alpha':
536
+ maps.alphaMap = texture;
537
+ maps.transparent = true;
538
+ break;
539
+ case 'Normal':
540
+ maps.normalMap = texture;
541
+ break;
542
+ case 'Bump':
543
+ maps.bumpMap = texture;
544
+ break;
545
+
546
+ }
547
+
548
+ }
549
+
550
+ }
551
+
552
+ }
553
+
554
+ parseAttributes( attributes, maps ) {
555
+
556
+ const params = {};
557
+
558
+ // don't use color data if color map is present
559
+ if ( attributes.Color && ! maps.map ) {
560
+
561
+ params.color = new Color().fromArray( attributes.Color.value );
562
+
563
+ } else {
564
+
565
+ params.color = new Color();
566
+
567
+ }
568
+
569
+
570
+ if ( attributes.Transparency && attributes.Transparency.value !== 0 ) {
571
+
572
+ params.opacity = 1 - attributes.Transparency.value;
573
+ params.transparent = true;
574
+
575
+ }
576
+
577
+ if ( attributes[ 'Bump Height' ] ) params.bumpScale = attributes[ 'Bump Height' ].value * 0.1;
578
+
579
+ this.parsePhysicalAttributes( params, attributes, maps );
580
+ this.parseStandardAttributes( params, attributes, maps );
581
+ this.parsePhongAttributes( params, attributes, maps );
582
+
583
+ return params;
584
+
585
+ }
586
+
587
+ parsePhysicalAttributes( params, attributes/*, maps*/ ) {
588
+
589
+ if ( attributes.Clearcoat && attributes.Clearcoat.value > 0 ) {
590
+
591
+ params.clearcoat = attributes.Clearcoat.value;
592
+
593
+ if ( attributes[ 'Clearcoat Gloss' ] ) {
594
+
595
+ params.clearcoatRoughness = 0.5 * ( 1 - attributes[ 'Clearcoat Gloss' ].value );
596
+
597
+ }
598
+
599
+ }
600
+
601
+ }
602
+
603
+ parseStandardAttributes( params, attributes, maps ) {
604
+
605
+
606
+ if ( attributes.Luminous ) {
607
+
608
+ params.emissiveIntensity = attributes.Luminous.value;
609
+
610
+ if ( attributes[ 'Luminous Color' ] && ! maps.emissive ) {
611
+
612
+ params.emissive = new Color().fromArray( attributes[ 'Luminous Color' ].value );
613
+
614
+ } else {
615
+
616
+ params.emissive = new Color( 0x808080 );
617
+
618
+ }
619
+
620
+ }
621
+
622
+ if ( attributes.Roughness && ! maps.roughnessMap ) params.roughness = attributes.Roughness.value;
623
+ if ( attributes.Metallic && ! maps.metalnessMap ) params.metalness = attributes.Metallic.value;
624
+
625
+ }
626
+
627
+ parsePhongAttributes( params, attributes, maps ) {
628
+
629
+ if ( attributes[ 'Refraction Index' ] ) params.refractionRatio = 0.98 / attributes[ 'Refraction Index' ].value;
630
+
631
+ if ( attributes.Diffuse ) params.color.multiplyScalar( attributes.Diffuse.value );
632
+
633
+ if ( attributes.Reflection ) {
634
+
635
+ params.reflectivity = attributes.Reflection.value;
636
+ params.combine = AddOperation;
637
+
638
+ }
639
+
640
+ if ( attributes.Luminosity ) {
641
+
642
+ params.emissiveIntensity = attributes.Luminosity.value;
643
+
644
+ if ( ! maps.emissiveMap && ! maps.map ) {
645
+
646
+ params.emissive = params.color;
647
+
648
+ } else {
649
+
650
+ params.emissive = new Color( 0x808080 );
651
+
652
+ }
653
+
654
+ }
655
+
656
+ // parse specular if there is no roughness - we will interpret the material as 'Phong' in this case
657
+ if ( ! attributes.Roughness && attributes.Specular && ! maps.specularMap ) {
658
+
659
+ if ( attributes[ 'Color Highlight' ] ) {
660
+
661
+ params.specular = new Color().setScalar( attributes.Specular.value ).lerp( params.color.clone().multiplyScalar( attributes.Specular.value ), attributes[ 'Color Highlight' ].value );
662
+
663
+ } else {
664
+
665
+ params.specular = new Color().setScalar( attributes.Specular.value );
666
+
667
+ }
668
+
669
+ }
670
+
671
+ if ( params.specular && attributes.Glossiness ) params.shininess = 7 + Math.pow( 2, attributes.Glossiness.value * 12 + 2 );
672
+
673
+ }
674
+
675
+ parseEnvMap( connections, maps, attributes ) {
676
+
677
+ if ( connections.envMap ) {
678
+
679
+ const envMap = this.loadTexture( connections.envMap );
680
+
681
+ if ( attributes.transparent && attributes.opacity < 0.999 ) {
682
+
683
+ envMap.mapping = EquirectangularRefractionMapping;
684
+
685
+ // Reflectivity and refraction mapping don't work well together in Phong materials
686
+ if ( attributes.reflectivity !== undefined ) {
687
+
688
+ delete attributes.reflectivity;
689
+ delete attributes.combine;
690
+
691
+ }
692
+
693
+ if ( attributes.metalness !== undefined ) {
694
+
695
+ attributes.metalness = 1; // For most transparent materials metalness should be set to 1 if not otherwise defined. If set to 0 no refraction will be visible
696
+
697
+ }
698
+
699
+ attributes.opacity = 1; // transparency fades out refraction, forcing opacity to 1 ensures a closer visual match to the material in Lightwave.
700
+
701
+ } else envMap.mapping = EquirectangularReflectionMapping;
702
+
703
+ maps.envMap = envMap;
704
+
705
+ }
706
+
707
+ }
708
+
709
+ // get texture defined at top level by its index
710
+ getTexturePathByIndex( index ) {
711
+
712
+ let fileName = '';
713
+
714
+ if ( ! _lwoTree.textures ) return fileName;
715
+
716
+ _lwoTree.textures.forEach( function ( texture ) {
717
+
718
+ if ( texture.index === index ) fileName = texture.fileName;
719
+
720
+ } );
721
+
722
+ return fileName;
723
+
724
+ }
725
+
726
+ loadTexture( path ) {
727
+
728
+ if ( ! path ) return null;
729
+
730
+ const texture = this.textureLoader.load(
731
+ path,
732
+ undefined,
733
+ undefined,
734
+ function () {
735
+
736
+ console.warn( 'LWOLoader: non-standard resource hierarchy. Use \`resourcePath\` parameter to specify root content directory.' );
737
+
738
+ }
739
+ );
740
+
741
+ return texture;
742
+
743
+ }
744
+
745
+ // 0 = Reset, 1 = Repeat, 2 = Mirror, 3 = Edge
746
+ getWrappingType( num ) {
747
+
748
+ switch ( num ) {
749
+
750
+ case 0:
751
+ console.warn( 'LWOLoader: "Reset" texture wrapping type is not supported in three.js' );
752
+ return ClampToEdgeWrapping;
753
+ case 1: return RepeatWrapping;
754
+ case 2: return MirroredRepeatWrapping;
755
+ case 3: return ClampToEdgeWrapping;
756
+
757
+ }
758
+
759
+ }
760
+
761
+ getMaterialType( nodeData ) {
762
+
763
+ if ( nodeData.Clearcoat && nodeData.Clearcoat.value > 0 ) return MeshPhysicalMaterial;
764
+ if ( nodeData.Roughness ) return MeshStandardMaterial;
765
+ return MeshPhongMaterial;
766
+
767
+ }
768
+
769
+ }
770
+
771
+ class GeometryParser {
772
+
773
+ parse( geoData, layer ) {
774
+
775
+ const geometry = new BufferGeometry();
776
+
777
+ geometry.setAttribute( 'position', new Float32BufferAttribute( geoData.points, 3 ) );
778
+
779
+ const indices = this.splitIndices( geoData.vertexIndices, geoData.polygonDimensions );
780
+ geometry.setIndex( indices );
781
+
782
+ this.parseGroups( geometry, geoData );
783
+
784
+ geometry.computeVertexNormals();
785
+
786
+ this.parseUVs( geometry, layer, indices );
787
+ this.parseMorphTargets( geometry, layer, indices );
788
+
789
+ // TODO: z may need to be reversed to account for coordinate system change
790
+ geometry.translate( - layer.pivot[ 0 ], - layer.pivot[ 1 ], - layer.pivot[ 2 ] );
791
+
792
+ // let userData = geometry.userData;
793
+ // geometry = geometry.toNonIndexed()
794
+ // geometry.userData = userData;
795
+
796
+ return geometry;
797
+
798
+ }
799
+
800
+ // split quads into tris
801
+ splitIndices( indices, polygonDimensions ) {
802
+
803
+ const remappedIndices = [];
804
+
805
+ let i = 0;
806
+ polygonDimensions.forEach( function ( dim ) {
807
+
808
+ if ( dim < 4 ) {
809
+
810
+ for ( let k = 0; k < dim; k ++ ) remappedIndices.push( indices[ i + k ] );
811
+
812
+ } else if ( dim === 4 ) {
813
+
814
+ remappedIndices.push(
815
+ indices[ i ],
816
+ indices[ i + 1 ],
817
+ indices[ i + 2 ],
818
+
819
+ indices[ i ],
820
+ indices[ i + 2 ],
821
+ indices[ i + 3 ]
822
+
823
+ );
824
+
825
+ } else if ( dim > 4 ) {
826
+
827
+ for ( let k = 1; k < dim - 1; k ++ ) {
828
+
829
+ remappedIndices.push( indices[ i ], indices[ i + k ], indices[ i + k + 1 ] );
830
+
831
+ }
832
+
833
+ console.warn( 'LWOLoader: polygons with greater than 4 sides are not supported' );
834
+
835
+ }
836
+
837
+ i += dim;
838
+
839
+ } );
840
+
841
+ return remappedIndices;
842
+
843
+ }
844
+
845
+ // NOTE: currently ignoring poly indices and assuming that they are intelligently ordered
846
+ parseGroups( geometry, geoData ) {
847
+
848
+ const tags = _lwoTree.tags;
849
+ const matNames = [];
850
+
851
+ let elemSize = 3;
852
+ if ( geoData.type === 'lines' ) elemSize = 2;
853
+ if ( geoData.type === 'points' ) elemSize = 1;
854
+
855
+ const remappedIndices = this.splitMaterialIndices( geoData.polygonDimensions, geoData.materialIndices );
856
+
857
+ let indexNum = 0; // create new indices in numerical order
858
+ const indexPairs = {}; // original indices mapped to numerical indices
859
+
860
+ let prevMaterialIndex;
861
+ let materialIndex;
862
+
863
+ let prevStart = 0;
864
+ let currentCount = 0;
865
+
866
+ for ( let i = 0; i < remappedIndices.length; i += 2 ) {
867
+
868
+ materialIndex = remappedIndices[ i + 1 ];
869
+
870
+ if ( i === 0 ) matNames[ indexNum ] = tags[ materialIndex ];
871
+
872
+ if ( prevMaterialIndex === undefined ) prevMaterialIndex = materialIndex;
873
+
874
+ if ( materialIndex !== prevMaterialIndex ) {
875
+
876
+ let currentIndex;
877
+ if ( indexPairs[ tags[ prevMaterialIndex ] ] ) {
878
+
879
+ currentIndex = indexPairs[ tags[ prevMaterialIndex ] ];
880
+
881
+ } else {
882
+
883
+ currentIndex = indexNum;
884
+ indexPairs[ tags[ prevMaterialIndex ] ] = indexNum;
885
+ matNames[ indexNum ] = tags[ prevMaterialIndex ];
886
+ indexNum ++;
887
+
888
+ }
889
+
890
+ geometry.addGroup( prevStart, currentCount, currentIndex );
891
+
892
+ prevStart += currentCount;
893
+
894
+ prevMaterialIndex = materialIndex;
895
+ currentCount = 0;
896
+
897
+ }
898
+
899
+ currentCount += elemSize;
900
+
901
+ }
902
+
903
+ // the loop above doesn't add the last group, do that here.
904
+ if ( geometry.groups.length > 0 ) {
905
+
906
+ let currentIndex;
907
+ if ( indexPairs[ tags[ materialIndex ] ] ) {
908
+
909
+ currentIndex = indexPairs[ tags[ materialIndex ] ];
910
+
911
+ } else {
912
+
913
+ currentIndex = indexNum;
914
+ indexPairs[ tags[ materialIndex ] ] = indexNum;
915
+ matNames[ indexNum ] = tags[ materialIndex ];
916
+
917
+ }
918
+
919
+ geometry.addGroup( prevStart, currentCount, currentIndex );
920
+
921
+ }
922
+
923
+ // Mat names from TAGS chunk, used to build up an array of materials for this geometry
924
+ geometry.userData.matNames = matNames;
925
+
926
+ }
927
+
928
+ splitMaterialIndices( polygonDimensions, indices ) {
929
+
930
+ const remappedIndices = [];
931
+
932
+ polygonDimensions.forEach( function ( dim, i ) {
933
+
934
+ if ( dim <= 3 ) {
935
+
936
+ remappedIndices.push( indices[ i * 2 ], indices[ i * 2 + 1 ] );
937
+
938
+ } else if ( dim === 4 ) {
939
+
940
+ remappedIndices.push( indices[ i * 2 ], indices[ i * 2 + 1 ], indices[ i * 2 ], indices[ i * 2 + 1 ] );
941
+
942
+ } else {
943
+
944
+ // ignore > 4 for now
945
+ for ( let k = 0; k < dim - 2; k ++ ) {
946
+
947
+ remappedIndices.push( indices[ i * 2 ], indices[ i * 2 + 1 ] );
948
+
949
+ }
950
+
951
+ }
952
+
953
+ } );
954
+
955
+ return remappedIndices;
956
+
957
+ }
958
+
959
+ // UV maps:
960
+ // 1: are defined via index into an array of points, not into a geometry
961
+ // - the geometry is also defined by an index into this array, but the indexes may not match
962
+ // 2: there can be any number of UV maps for a single geometry. Here these are combined,
963
+ // with preference given to the first map encountered
964
+ // 3: UV maps can be partial - that is, defined for only a part of the geometry
965
+ // 4: UV maps can be VMAP or VMAD (discontinuous, to allow for seams). In practice, most
966
+ // UV maps are defined as partially VMAP and partially VMAD
967
+ // VMADs are currently not supported
968
+ parseUVs( geometry, layer ) {
969
+
970
+ // start by creating a UV map set to zero for the whole geometry
971
+ const remappedUVs = Array.from( Array( geometry.attributes.position.count * 2 ), function () {
972
+
973
+ return 0;
974
+
975
+ } );
976
+
977
+ for ( const name in layer.uvs ) {
978
+
979
+ const uvs = layer.uvs[ name ].uvs;
980
+ const uvIndices = layer.uvs[ name ].uvIndices;
981
+
982
+ uvIndices.forEach( function ( i, j ) {
983
+
984
+ remappedUVs[ i * 2 ] = uvs[ j * 2 ];
985
+ remappedUVs[ i * 2 + 1 ] = uvs[ j * 2 + 1 ];
986
+
987
+ } );
988
+
989
+ }
990
+
991
+ geometry.setAttribute( 'uv', new Float32BufferAttribute( remappedUVs, 2 ) );
992
+
993
+ }
994
+
995
+ parseMorphTargets( geometry, layer ) {
996
+
997
+ let num = 0;
998
+ for ( const name in layer.morphTargets ) {
999
+
1000
+ const remappedPoints = geometry.attributes.position.array.slice();
1001
+
1002
+ if ( ! geometry.morphAttributes.position ) geometry.morphAttributes.position = [];
1003
+
1004
+ const morphPoints = layer.morphTargets[ name ].points;
1005
+ const morphIndices = layer.morphTargets[ name ].indices;
1006
+ const type = layer.morphTargets[ name ].type;
1007
+
1008
+ morphIndices.forEach( function ( i, j ) {
1009
+
1010
+ if ( type === 'relative' ) {
1011
+
1012
+ remappedPoints[ i * 3 ] += morphPoints[ j * 3 ];
1013
+ remappedPoints[ i * 3 + 1 ] += morphPoints[ j * 3 + 1 ];
1014
+ remappedPoints[ i * 3 + 2 ] += morphPoints[ j * 3 + 2 ];
1015
+
1016
+ } else {
1017
+
1018
+ remappedPoints[ i * 3 ] = morphPoints[ j * 3 ];
1019
+ remappedPoints[ i * 3 + 1 ] = morphPoints[ j * 3 + 1 ];
1020
+ remappedPoints[ i * 3 + 2 ] = morphPoints[ j * 3 + 2 ];
1021
+
1022
+ }
1023
+
1024
+ } );
1025
+
1026
+ geometry.morphAttributes.position[ num ] = new Float32BufferAttribute( remappedPoints, 3 );
1027
+ geometry.morphAttributes.position[ num ].name = name;
1028
+
1029
+ num ++;
1030
+
1031
+ }
1032
+
1033
+ geometry.morphTargetsRelative = false;
1034
+
1035
+ }
1036
+
1037
+ }
1038
+
1039
+
1040
+ // ************** UTILITY FUNCTIONS **************
1041
+
1042
+ function extractParentUrl( url, dir ) {
1043
+
1044
+ const index = url.indexOf( dir );
1045
+
1046
+ if ( index === - 1 ) return './';
1047
+
1048
+ return url.slice( 0, index );
1049
+
1050
+ }
1051
+
1052
+ export { LWOLoader };