@woosh/meep-engine 2.106.1 → 2.108.0

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 (808) hide show
  1. package/build/bundle-worker-image-decoder.js +1 -1
  2. package/build/meep.cjs +1972 -2314
  3. package/build/meep.min.js +1 -1
  4. package/build/meep.module.js +1972 -2315
  5. package/editor/Editor.js +55 -60
  6. package/editor/SelectionVisualizer.js +111 -109
  7. package/editor/actions/concrete/ComponentAddAction.js +0 -3
  8. package/editor/actions/concrete/ComponentRemoveAction.js +0 -4
  9. package/editor/actions/concrete/EntityCreateAction.js +0 -3
  10. package/editor/actions/concrete/EntityRemoveAction.js +0 -4
  11. package/editor/actions/concrete/SelectionAddAction.js +0 -3
  12. package/editor/actions/concrete/SelectionClearAction.js +0 -3
  13. package/editor/actions/concrete/SelectionRemoveAction.js +0 -3
  14. package/editor/ecs/EditorEntity.js +8 -6
  15. package/editor/tools/SelectionTool.js +0 -5
  16. package/editor/tools/TopDownCameraControlTool.js +2 -5
  17. package/editor/tools/TransformTool.js +137 -136
  18. package/editor/tools/engine/Tool.js +1 -6
  19. package/editor/tools/engine/ToolEngine.js +145 -148
  20. package/editor/tools/v2/TransformControls.js +25 -24
  21. package/editor/view/EditorView.js +0 -5
  22. package/editor/view/ecs/ComponentControlFactory.js +37 -40
  23. package/editor/view/ecs/EntityEditor.js +0 -3
  24. package/editor/view/ecs/EntityList.js +6 -11
  25. package/editor/view/ecs/components/MeshController.js +4 -7
  26. package/editor/view/ecs/components/TransformController.js +3 -9
  27. package/editor/view/tools/ToolView.js +2 -8
  28. package/package.json +1 -1
  29. package/src/core/IdPool.d.ts.map +1 -1
  30. package/src/core/IdPool.js +0 -5
  31. package/src/core/UUID.d.ts.map +1 -1
  32. package/src/core/UUID.js +0 -4
  33. package/src/core/binary/BitSet.d.ts +17 -14
  34. package/src/core/binary/BitSet.d.ts.map +1 -1
  35. package/src/core/binary/BitSet.js +411 -412
  36. package/src/core/binary/int32_to_binary_string.d.ts +3 -2
  37. package/src/core/binary/int32_to_binary_string.d.ts.map +1 -1
  38. package/src/core/binary/int32_to_binary_string.js +18 -14
  39. package/src/core/binary/split_by_3.spec.d.ts +2 -0
  40. package/src/core/binary/split_by_3.spec.d.ts.map +1 -0
  41. package/src/core/binary/split_by_3.spec.js +22 -0
  42. package/src/core/binary/to_half_float_uint16.d.ts.map +1 -1
  43. package/src/core/binary/to_half_float_uint16.js +7 -5
  44. package/src/core/binary/type/Field.d.ts +0 -8
  45. package/src/core/binary/type/Field.d.ts.map +1 -1
  46. package/src/core/binary/type/Field.js +16 -19
  47. package/src/core/binary/type/MultiplicityType.js +0 -4
  48. package/src/core/binary/type/PrimitiveTypes.d.ts.map +1 -1
  49. package/src/core/binary/type/PrimitiveTypes.js +0 -4
  50. package/src/core/binary/type/Type.d.ts +0 -6
  51. package/src/core/binary/type/Type.d.ts.map +1 -1
  52. package/src/core/binary/type/Type.js +63 -64
  53. package/src/core/binary/type/TypeBuilder.d.ts +0 -1
  54. package/src/core/binary/type/TypeBuilder.d.ts.map +1 -1
  55. package/src/core/binary/type/TypeBuilder.js +15 -18
  56. package/src/core/binary/type/TypeRegistry.d.ts +6 -4
  57. package/src/core/binary/type/TypeRegistry.d.ts.map +1 -1
  58. package/src/core/binary/type/TypeRegistry.js +38 -42
  59. package/src/core/bvh2/visual/BVHGeometry.d.ts.map +1 -1
  60. package/src/core/bvh2/visual/BVHGeometry.js +0 -3
  61. package/src/core/codegen/LineBuilder.d.ts.map +1 -1
  62. package/src/core/codegen/LineBuilder.js +0 -5
  63. package/src/core/collection/array/isArrayEqualStrict.d.ts.map +1 -1
  64. package/src/core/collection/array/isArrayEqualStrict.js +2 -2
  65. package/src/core/collection/set/ArraySet.d.ts.map +1 -1
  66. package/src/core/collection/set/ArraySet.js +1 -5
  67. package/src/core/collection/table/RowFirstTable.d.ts.map +1 -1
  68. package/src/core/collection/table/RowFirstTable.js +0 -5
  69. package/src/core/color/Color.d.ts.map +1 -1
  70. package/src/core/color/Color.js +7 -2
  71. package/src/core/color/hsv/rgb2hsv.d.ts +3 -3
  72. package/src/core/color/hsv/rgb2hsv.d.ts.map +1 -1
  73. package/src/core/color/hsv/rgb2hsv.js +11 -18
  74. package/src/core/color/parse_color.d.ts.map +1 -1
  75. package/src/core/color/parse_color.js +1 -5
  76. package/src/core/color/rgb_to_luminance.d.ts +9 -0
  77. package/src/core/color/rgb_to_luminance.d.ts.map +1 -0
  78. package/src/core/color/rgb_to_luminance.js +10 -0
  79. package/src/core/geom/2d/Rectangle.d.ts.map +1 -1
  80. package/src/core/geom/2d/Rectangle.js +0 -4
  81. package/src/core/geom/2d/aabb/AABB2.d.ts.map +1 -1
  82. package/src/core/geom/2d/aabb/AABB2.js +0 -6
  83. package/src/core/geom/3d/aabb/AABB3.d.ts.map +1 -1
  84. package/src/core/geom/3d/aabb/AABB3.js +0 -5
  85. package/src/core/geom/3d/morton/Morton.d.ts.map +1 -1
  86. package/src/core/geom/3d/morton/Morton.js +0 -3
  87. package/src/core/geom/3d/sphere/harmonics/README.md +16 -2
  88. package/src/core/geom/3d/sphere/harmonics/SH3_COEFFICIENTS.d.ts +6 -0
  89. package/src/core/geom/3d/sphere/harmonics/SH3_COEFFICIENTS.d.ts.map +1 -0
  90. package/src/core/geom/3d/sphere/harmonics/SH3_COEFFICIENTS.js +15 -0
  91. package/src/core/geom/3d/sphere/harmonics/sh3_basis_at.d.ts.map +1 -1
  92. package/src/core/geom/3d/sphere/harmonics/sh3_basis_at.js +21 -9
  93. package/src/core/geom/3d/sphere/harmonics/sh3_dering_optimize_positive.d.ts +3 -3
  94. package/src/core/geom/3d/sphere/harmonics/sh3_dering_optimize_positive.d.ts.map +1 -1
  95. package/src/core/geom/3d/sphere/harmonics/sh3_dering_optimize_positive.js +45 -216
  96. package/src/core/geom/3d/sphere/harmonics/sh3_rotate.d.ts +8 -0
  97. package/src/core/geom/3d/sphere/harmonics/sh3_rotate.d.ts.map +1 -0
  98. package/src/core/geom/3d/sphere/harmonics/sh3_rotate.js +29 -0
  99. package/src/core/geom/3d/sphere/harmonics/sh3_sample_by_direction.js +10 -10
  100. package/src/core/geom/3d/sphere/harmonics/sh_index.d.ts +8 -0
  101. package/src/core/geom/3d/sphere/harmonics/sh_index.d.ts.map +1 -0
  102. package/src/core/geom/3d/sphere/harmonics/sh_index.js +9 -0
  103. package/src/core/geom/3d/sphere/harmonics/sh_rotate_band1.d.ts +8 -0
  104. package/src/core/geom/3d/sphere/harmonics/sh_rotate_band1.d.ts.map +1 -0
  105. package/src/core/geom/3d/sphere/harmonics/sh_rotate_band1.js +44 -0
  106. package/src/core/geom/3d/sphere/harmonics/sh_rotate_band2.d.ts +8 -0
  107. package/src/core/geom/3d/sphere/harmonics/sh_rotate_band2.d.ts.map +1 -0
  108. package/src/core/geom/3d/sphere/harmonics/sh_rotate_band2.js +86 -0
  109. package/src/core/geom/3d/sphere/in_sphere3d_robust.d.ts.map +1 -1
  110. package/src/core/geom/3d/sphere/in_sphere3d_robust.js +2 -1
  111. package/src/core/geom/3d/tetrahedra/TetrahedralMesh.d.ts +20 -1
  112. package/src/core/geom/3d/tetrahedra/TetrahedralMesh.d.ts.map +1 -1
  113. package/src/core/geom/3d/tetrahedra/TetrahedralMesh.js +53 -7
  114. package/src/core/geom/3d/tetrahedra/TetrahedralMesh.spec.js +2 -2
  115. package/src/core/geom/3d/tetrahedra/build_tetrahedral_mesh_buffer_geometry.d.ts +1 -1
  116. package/src/core/geom/3d/tetrahedra/build_tetrahedral_mesh_buffer_geometry.d.ts.map +1 -1
  117. package/src/core/geom/3d/tetrahedra/build_tetrahedral_mesh_buffer_geometry.js +12 -7
  118. package/src/core/geom/3d/tetrahedra/delaunay/tetrahedral_mesh_build_from_grid.d.ts +13 -0
  119. package/src/core/geom/3d/tetrahedra/delaunay/tetrahedral_mesh_build_from_grid.d.ts.map +1 -0
  120. package/src/core/geom/3d/tetrahedra/delaunay/tetrahedral_mesh_build_from_grid.js +135 -0
  121. package/src/core/geom/3d/tetrahedra/prototypeTetrahedraBuilder.js +38 -24
  122. package/src/core/geom/3d/tetrahedra/{compute_circumsphere.d.ts → tetrahedron_compute_circumsphere.d.ts} +3 -5
  123. package/src/core/geom/3d/tetrahedra/tetrahedron_compute_circumsphere.d.ts.map +1 -0
  124. package/src/core/geom/3d/tetrahedra/{compute_circumsphere.js → tetrahedron_compute_circumsphere.js} +2 -4
  125. package/src/core/geom/3d/tetrahedra/tetrahedron_compute_signed_volume.d.ts.map +1 -1
  126. package/src/core/geom/3d/tetrahedra/tetrahedron_compute_signed_volume.js +3 -1
  127. package/src/core/geom/Quaternion.d.ts.map +1 -1
  128. package/src/core/geom/Quaternion.js +0 -5
  129. package/src/core/geom/Vector3.d.ts.map +1 -1
  130. package/src/core/geom/Vector3.js +1 -0
  131. package/src/core/geom/Vector4.d.ts.map +1 -1
  132. package/src/core/geom/Vector4.js +0 -4
  133. package/src/core/geom/mat3/m3_multiply_vec3.d.ts +8 -0
  134. package/src/core/geom/mat3/m3_multiply_vec3.d.ts.map +1 -0
  135. package/src/core/geom/mat3/m3_multiply_vec3.js +21 -0
  136. package/src/core/geom/vec2/v2_cross_product.d.ts +15 -0
  137. package/src/core/geom/vec2/v2_cross_product.d.ts.map +1 -0
  138. package/src/core/geom/vec2/v2_cross_product.js +21 -0
  139. package/src/core/geom/vec3/v3_slerp.d.ts +1 -0
  140. package/src/core/geom/vec3/v3_slerp.d.ts.map +1 -1
  141. package/src/core/geom/vec3/v3_slerp.js +1 -0
  142. package/src/core/graph/Edge.d.ts.map +1 -1
  143. package/src/core/graph/Edge.js +0 -5
  144. package/src/core/graph/MultiNode.d.ts +1 -1
  145. package/src/core/graph/MultiNode.js +1 -1
  146. package/src/core/graph/WeightedEdge.d.ts +6 -4
  147. package/src/core/graph/WeightedEdge.d.ts.map +1 -1
  148. package/src/core/graph/WeightedEdge.js +3 -0
  149. package/src/core/graph/coloring/colorizeGraph.js +19 -19
  150. package/src/core/graph/convert_graph_to_dot_string.d.ts +1 -1
  151. package/src/core/graph/convert_graph_to_dot_string.d.ts.map +1 -1
  152. package/src/core/graph/convert_graph_to_dot_string.js +10 -6
  153. package/src/core/graph/graph_compute_adjacency_matrix.d.ts +9 -0
  154. package/src/core/graph/graph_compute_adjacency_matrix.d.ts.map +1 -0
  155. package/src/core/graph/{graph_adjacency_matrix.js → graph_compute_adjacency_matrix.js} +1 -2
  156. package/src/core/graph/graph_compute_degree_matrix.d.ts +10 -0
  157. package/src/core/graph/graph_compute_degree_matrix.d.ts.map +1 -0
  158. package/src/core/graph/graph_compute_degree_matrix.js +23 -0
  159. package/src/core/graph/graph_compute_distance_matrix.d.ts +13 -0
  160. package/src/core/graph/graph_compute_distance_matrix.d.ts.map +1 -0
  161. package/src/core/graph/graph_compute_distance_matrix.js +103 -0
  162. package/src/core/graph/{graph_laplacian_matrix.d.ts → graph_compute_laplacian_matrix.d.ts} +2 -2
  163. package/src/core/graph/graph_compute_laplacian_matrix.d.ts.map +1 -0
  164. package/src/core/graph/{graph_laplacian_matrix.js → graph_compute_laplacian_matrix.js} +6 -6
  165. package/src/core/graph/graph_k_means_cluster.d.ts.map +1 -1
  166. package/src/core/graph/graph_k_means_cluster.js +4 -119
  167. package/src/core/graph/{coarsen_graph.d.ts → mn_graph_coarsen.d.ts} +2 -2
  168. package/src/core/graph/mn_graph_coarsen.d.ts.map +1 -0
  169. package/src/core/graph/{coarsen_graph.js → mn_graph_coarsen.js} +1 -1
  170. package/src/core/graph/mn_graph_coarsen.spec.d.ts +2 -0
  171. package/src/core/graph/mn_graph_coarsen.spec.d.ts.map +1 -0
  172. package/src/core/graph/{coarsen_graph.spec.js → mn_graph_coarsen.spec.js} +4 -4
  173. package/src/core/graph/mn_graph_collapse_weighted_edge.d.ts +1 -0
  174. package/src/core/graph/mn_graph_collapse_weighted_edge.d.ts.map +1 -1
  175. package/src/core/graph/mn_graph_collapse_weighted_edge.js +7 -1
  176. package/src/core/json/JsonUtils.d.ts.map +1 -1
  177. package/src/core/json/JsonUtils.js +0 -4
  178. package/src/core/math/physics/brdf/brdf_burley.d.ts.map +1 -1
  179. package/src/core/math/physics/brdf/brdf_burley.js +9 -1
  180. package/src/core/math/physics/brdf/{D_GGX.d.ts → diffuse_GGX.d.ts} +2 -2
  181. package/src/core/math/physics/brdf/diffuse_GGX.d.ts.map +1 -0
  182. package/src/core/math/physics/brdf/{D_GGX.js → diffuse_GGX.js} +1 -1
  183. package/src/core/math/physics/brdf/fresnel_Schlick.d.ts +3 -0
  184. package/src/core/math/physics/brdf/fresnel_Schlick.d.ts.map +1 -0
  185. package/src/core/math/physics/brdf/fresnel_Schlick.js +3 -0
  186. package/src/core/math/physics/brdf/fresnel_Schlick_optimized.d.ts +9 -0
  187. package/src/core/math/physics/brdf/fresnel_Schlick_optimized.d.ts.map +1 -0
  188. package/src/core/math/physics/brdf/fresnel_Schlick_optimized.js +12 -0
  189. package/src/core/math/physics/brdf/fresnel_Schlick_original.d.ts +9 -0
  190. package/src/core/math/physics/brdf/fresnel_Schlick_original.d.ts.map +1 -0
  191. package/src/core/math/physics/brdf/fresnel_Schlick_original.js +10 -0
  192. package/src/core/math/physics/bsdf/bsdf_schlick.d.ts.map +1 -1
  193. package/src/core/math/physics/bsdf/bsdf_schlick.js +3 -11
  194. package/src/core/math/physics/ior_to_reflectivity.d.ts +7 -0
  195. package/src/core/math/physics/ior_to_reflectivity.d.ts.map +1 -0
  196. package/src/core/math/physics/ior_to_reflectivity.js +9 -0
  197. package/src/core/math/physics/pdf/README.md +1 -0
  198. package/src/core/math/physics/pdf/pdf_GGX.d.ts +16 -0
  199. package/src/core/math/physics/pdf/pdf_GGX.d.ts.map +1 -0
  200. package/src/core/math/physics/pdf/pdf_GGX.js +25 -0
  201. package/src/core/math/physics/reflectivity_to_ior.d.ts +7 -0
  202. package/src/core/math/physics/reflectivity_to_ior.d.ts.map +1 -0
  203. package/src/core/math/physics/reflectivity_to_ior.js +8 -0
  204. package/src/core/math/random/MersenneTwister.d.ts +1 -2
  205. package/src/core/math/random/MersenneTwister.d.ts.map +1 -1
  206. package/src/core/math/random/MersenneTwister.js +134 -133
  207. package/src/core/model/BooleanVector3.d.ts.map +1 -1
  208. package/src/core/model/BooleanVector3.js +108 -108
  209. package/src/core/model/BoundedValue.d.ts +116 -0
  210. package/src/core/model/BoundedValue.d.ts.map +1 -0
  211. package/src/core/model/BoundedValue.js +214 -217
  212. package/src/core/model/LinearValue.d.ts +84 -0
  213. package/src/core/model/LinearValue.d.ts.map +1 -0
  214. package/src/core/model/LinearValue.js +116 -117
  215. package/src/core/model/ObservedEnum.d.ts.map +1 -1
  216. package/src/core/model/ObservedEnum.js +82 -80
  217. package/src/core/model/ObservedValue.d.ts +10 -17
  218. package/src/core/model/ObservedValue.d.ts.map +1 -1
  219. package/src/core/model/ObservedValue.js +85 -88
  220. package/src/core/model/object/ObjectPoolFactory.d.ts +1 -9
  221. package/src/core/model/object/ObjectPoolFactory.d.ts.map +1 -1
  222. package/src/core/model/object/ObjectPoolFactory.js +73 -73
  223. package/src/core/model/scheme/Schema.d.ts +0 -6
  224. package/src/core/model/scheme/Schema.d.ts.map +1 -1
  225. package/src/core/model/scheme/Schema.js +50 -48
  226. package/src/core/model/scheme/SchemeRegistry.d.ts +6 -1
  227. package/src/core/model/scheme/SchemeRegistry.d.ts.map +1 -1
  228. package/src/core/model/scheme/SchemeRegistry.js +46 -44
  229. package/src/core/process/Future.d.ts +14 -9
  230. package/src/core/process/Future.d.ts.map +1 -1
  231. package/src/core/process/Future.js +96 -98
  232. package/src/core/process/executor/ConcurrentExecutor.d.ts.map +1 -1
  233. package/src/core/process/executor/ConcurrentExecutor.js +0 -3
  234. package/src/core/process/task/Task.d.ts.map +1 -1
  235. package/src/core/process/task/Task.js +0 -5
  236. package/src/core/process/task/TaskGroup.d.ts.map +1 -1
  237. package/src/core/process/task/TaskGroup.js +178 -180
  238. package/src/core/process/task/TaskSignal.d.ts.map +1 -1
  239. package/src/core/process/task/TaskSignal.js +0 -5
  240. package/src/core/process/task/TaskState.d.ts.map +1 -1
  241. package/src/core/process/task/TaskState.js +0 -4
  242. package/src/core/process/worker/WorkerBuilder.d.ts.map +1 -1
  243. package/src/core/process/worker/WorkerBuilder.js +0 -5
  244. package/src/core/process/worker/WorkerProxy.d.ts.map +1 -1
  245. package/src/core/process/worker/WorkerProxy.js +0 -5
  246. package/src/engine/Clock.d.ts.map +1 -1
  247. package/src/engine/Clock.js +0 -5
  248. package/src/engine/Engine.js +4 -4
  249. package/src/engine/EngineHarness.d.ts +10 -1
  250. package/src/engine/EngineHarness.d.ts.map +1 -1
  251. package/src/engine/EngineHarness.js +16 -11
  252. package/src/engine/EntityCreator.d.ts.map +1 -1
  253. package/src/engine/EntityCreator.js +7 -10
  254. package/src/engine/animation/AnimatedActions.d.ts.map +1 -1
  255. package/src/engine/animation/AnimatedActions.js +0 -5
  256. package/src/engine/animation/Animations.d.ts.map +1 -1
  257. package/src/engine/animation/Animations.js +1 -6
  258. package/src/engine/animation/EntityAnimation.js +1 -4
  259. package/src/engine/animation/Tween.js +1 -4
  260. package/src/engine/animation/keyed2/AnimationTrack.d.ts +0 -6
  261. package/src/engine/animation/keyed2/AnimationTrack.d.ts.map +1 -1
  262. package/src/engine/animation/keyed2/AnimationTrack.js +154 -152
  263. package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts +0 -10
  264. package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts.map +1 -1
  265. package/src/engine/animation/keyed2/AnimationTrackPlayback.js +173 -171
  266. package/src/engine/asset/AssetManager.d.ts.map +1 -1
  267. package/src/engine/asset/AssetManager.js +0 -5
  268. package/src/engine/asset/loaders/image/png/PNGReader.d.ts +25 -11
  269. package/src/engine/asset/loaders/image/png/PNGReader.d.ts.map +1 -1
  270. package/src/engine/asset/loaders/image/png/PNGReader.js +38 -24
  271. package/src/engine/asset/loaders/material/TextureAttachmensByMaterialType.js +2 -0
  272. package/src/engine/asset/preloader/AssetLevel.js +0 -3
  273. package/src/engine/ecs/EntityManager.d.ts.map +1 -1
  274. package/src/engine/ecs/EntityManager.js +0 -4
  275. package/src/engine/ecs/System.d.ts.map +1 -1
  276. package/src/engine/ecs/System.js +0 -5
  277. package/src/engine/ecs/animation/Animation.d.ts.map +1 -1
  278. package/src/engine/ecs/animation/Animation.js +1 -19
  279. package/src/engine/ecs/components/Motion.d.ts.map +1 -1
  280. package/src/engine/ecs/components/Motion.js +0 -5
  281. package/src/engine/ecs/components/PropertySet.d.ts +8 -1
  282. package/src/engine/ecs/components/PropertySet.d.ts.map +1 -1
  283. package/src/engine/ecs/components/PropertySet.js +87 -83
  284. package/src/engine/ecs/components/Script.d.ts +0 -16
  285. package/src/engine/ecs/components/Script.d.ts.map +1 -1
  286. package/src/engine/ecs/components/Script.js +14 -18
  287. package/src/engine/ecs/components/Tag.d.ts.map +1 -1
  288. package/src/engine/ecs/components/Tag.js +4 -5
  289. package/src/engine/ecs/components/Timer.d.ts +0 -5
  290. package/src/engine/ecs/components/Timer.d.ts.map +1 -1
  291. package/src/engine/ecs/components/Timer.js +0 -5
  292. package/src/engine/ecs/grid/HeightMap2NormalMap.d.ts.map +1 -1
  293. package/src/engine/ecs/grid/HeightMap2NormalMap.js +2 -6
  294. package/src/engine/ecs/grid/HeightSampler2NormalSamplerSoft.d.ts.map +1 -1
  295. package/src/engine/ecs/grid/HeightSampler2NormalSamplerSoft.js +0 -3
  296. package/src/engine/ecs/grid/NormalMap2AOMap.d.ts.map +1 -1
  297. package/src/engine/ecs/grid/NormalMap2AOMap.js +3 -8
  298. package/src/engine/ecs/gui/GUIElement.d.ts.map +1 -1
  299. package/src/engine/ecs/gui/GUIElement.js +0 -3
  300. package/src/engine/ecs/gui/GUIElementSystem.d.ts.map +1 -1
  301. package/src/engine/ecs/gui/GUIElementSystem.js +0 -4
  302. package/src/engine/ecs/gui/hud/HeadsUpDisplay.d.ts.map +1 -1
  303. package/src/engine/ecs/gui/hud/HeadsUpDisplay.js +0 -7
  304. package/src/engine/ecs/gui/hud/HeadsUpDisplaySystem.d.ts.map +1 -1
  305. package/src/engine/ecs/gui/hud/HeadsUpDisplaySystem.js +0 -5
  306. package/src/engine/ecs/gui/menu/radial/RadialContextMenu.d.ts.map +1 -1
  307. package/src/engine/ecs/gui/menu/radial/RadialContextMenu.js +5 -8
  308. package/src/engine/ecs/gui/position/ViewportPosition.d.ts.map +1 -1
  309. package/src/engine/ecs/gui/position/ViewportPosition.js +0 -4
  310. package/src/engine/ecs/gui/position/ViewportPositionSystem.d.ts +1 -2
  311. package/src/engine/ecs/gui/position/ViewportPositionSystem.d.ts.map +1 -1
  312. package/src/engine/ecs/gui/position/ViewportPositionSystem.js +6 -10
  313. package/src/engine/ecs/ik/IKProblem.d.ts +1 -2
  314. package/src/engine/ecs/ik/IKProblem.d.ts.map +1 -1
  315. package/src/engine/ecs/renderable/RenderSystem.d.ts.map +1 -1
  316. package/src/engine/ecs/renderable/RenderSystem.js +0 -3
  317. package/src/engine/ecs/renderable/Renderable.d.ts.map +1 -1
  318. package/src/engine/ecs/renderable/Renderable.js +0 -5
  319. package/src/engine/ecs/systems/AnimationSystem.d.ts.map +1 -1
  320. package/src/engine/ecs/systems/AnimationSystem.js +9 -17
  321. package/src/engine/ecs/systems/MotionSystem.d.ts.map +1 -1
  322. package/src/engine/ecs/systems/MotionSystem.js +1 -6
  323. package/src/engine/ecs/systems/ScriptSystem.d.ts.map +1 -1
  324. package/src/engine/ecs/systems/ScriptSystem.js +1 -6
  325. package/src/engine/ecs/systems/TimerSystem.d.ts.map +1 -1
  326. package/src/engine/ecs/systems/TimerSystem.js +1 -6
  327. package/src/engine/ecs/team/Team.d.ts.map +1 -1
  328. package/src/engine/ecs/team/Team.js +0 -3
  329. package/src/engine/ecs/terrain/BufferedGeometryArraysBuilder.d.ts.map +1 -1
  330. package/src/engine/ecs/terrain/BufferedGeometryArraysBuilder.js +0 -5
  331. package/src/engine/ecs/terrain/TerrainClouds.d.ts.map +1 -1
  332. package/src/engine/ecs/terrain/TerrainClouds.js +0 -5
  333. package/src/engine/ecs/terrain/ecs/Terrain.d.ts.map +1 -1
  334. package/src/engine/ecs/terrain/ecs/Terrain.js +0 -5
  335. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrain.d.ts.map +1 -1
  336. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrain.js +0 -3
  337. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSystem.d.ts.map +1 -1
  338. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSystem.js +11 -14
  339. package/src/engine/ecs/terrain/overlay/TerrainOverlay.d.ts.map +1 -1
  340. package/src/engine/ecs/terrain/overlay/TerrainOverlay.js +0 -5
  341. package/src/engine/ecs/terrain/tiles/TerrainTile.d.ts.map +1 -1
  342. package/src/engine/ecs/terrain/tiles/TerrainTile.js +0 -5
  343. package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts +1 -1
  344. package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts.map +1 -1
  345. package/src/engine/ecs/terrain/tiles/TerrainTileManager.js +0 -3
  346. package/src/engine/ecs/terrain/tiles/TileBuildWorker.js +0 -4
  347. package/src/engine/ecs/transform/Transform.d.ts.map +1 -1
  348. package/src/engine/ecs/transform/Transform.js +0 -4
  349. package/src/engine/google/gapi.js +0 -4
  350. package/src/engine/graphics/FrameThrottle.d.ts +0 -4
  351. package/src/engine/graphics/FrameThrottle.d.ts.map +1 -1
  352. package/src/engine/graphics/FrameThrottle.js +0 -5
  353. package/src/engine/graphics/GraphicsEngine.d.ts.map +1 -1
  354. package/src/engine/graphics/GraphicsEngine.js +2 -7
  355. package/src/engine/graphics/composit/LayerCompositer.d.ts.map +1 -1
  356. package/src/engine/graphics/composit/LayerCompositer.js +2 -5
  357. package/src/engine/graphics/ecs/animation/AnimationController.d.ts.map +1 -1
  358. package/src/engine/graphics/ecs/animation/AnimationController.js +0 -5
  359. package/src/engine/graphics/ecs/animation/AnimationControllerSystem.d.ts.map +1 -1
  360. package/src/engine/graphics/ecs/animation/AnimationControllerSystem.js +2 -7
  361. package/src/engine/graphics/ecs/animation/AnimationRule.d.ts +0 -1
  362. package/src/engine/graphics/ecs/animation/AnimationRule.d.ts.map +1 -1
  363. package/src/engine/graphics/ecs/animation/AnimationRule.js +70 -66
  364. package/src/engine/graphics/ecs/camera/Camera.d.ts.map +1 -1
  365. package/src/engine/graphics/ecs/camera/Camera.js +0 -5
  366. package/src/engine/graphics/ecs/camera/CameraSystem.d.ts.map +1 -1
  367. package/src/engine/graphics/ecs/camera/CameraSystem.js +0 -5
  368. package/src/engine/graphics/ecs/camera/FrustumProjector.d.ts.map +1 -1
  369. package/src/engine/graphics/ecs/camera/FrustumProjector.js +0 -5
  370. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraController.d.ts.map +1 -1
  371. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraController.js +4 -9
  372. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.d.ts.map +1 -1
  373. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.js +3 -8
  374. package/src/engine/graphics/ecs/highlight/Highlight.d.ts.map +1 -1
  375. package/src/engine/graphics/ecs/highlight/Highlight.js +0 -3
  376. package/src/engine/graphics/ecs/highlight/system/MeshHighlightSystem.d.ts.map +1 -1
  377. package/src/engine/graphics/ecs/highlight/system/MeshHighlightSystem.js +3 -8
  378. package/src/engine/graphics/ecs/light/Light.d.ts.map +1 -1
  379. package/src/engine/graphics/ecs/light/Light.js +2 -6
  380. package/src/engine/graphics/ecs/light/LightSystem.d.ts.map +1 -1
  381. package/src/engine/graphics/ecs/light/LightSystem.js +2 -8
  382. package/src/engine/graphics/ecs/light/binding/three/ThreeLightBinding.d.ts +6 -0
  383. package/src/engine/graphics/ecs/light/binding/three/ThreeLightBinding.d.ts.map +1 -1
  384. package/src/engine/graphics/ecs/light/binding/three/ThreeLightBinding.js +22 -11
  385. package/src/engine/graphics/ecs/mesh/Mesh.d.ts.map +1 -1
  386. package/src/engine/graphics/ecs/mesh/Mesh.js +0 -3
  387. package/src/engine/graphics/ecs/mesh/MeshSystem.d.ts.map +1 -1
  388. package/src/engine/graphics/ecs/mesh/MeshSystem.js +0 -5
  389. package/src/engine/graphics/ecs/trail2d/Trail2D.d.ts.map +1 -1
  390. package/src/engine/graphics/ecs/trail2d/Trail2D.js +0 -5
  391. package/src/engine/graphics/ecs/trail2d/Trail2DSystem.d.ts.map +1 -1
  392. package/src/engine/graphics/ecs/trail2d/Trail2DSystem.js +0 -5
  393. package/src/engine/graphics/ecs/water/Water.d.ts.map +1 -1
  394. package/src/engine/graphics/ecs/water/Water.js +0 -5
  395. package/src/engine/graphics/ecs/water/WaterSystem.d.ts.map +1 -1
  396. package/src/engine/graphics/ecs/water/WaterSystem.js +0 -3
  397. package/src/engine/graphics/filter/ImageFilter.d.ts.map +1 -1
  398. package/src/engine/graphics/filter/ImageFilter.js +0 -5
  399. package/src/engine/graphics/geometry/BufferGeometryWrap.js +1 -3
  400. package/src/engine/graphics/geometry/buffered/ComputeNormals.d.ts.map +1 -1
  401. package/src/engine/graphics/geometry/buffered/ComputeNormals.js +0 -5
  402. package/src/engine/graphics/geometry/ribbon/Ribbon.d.ts.map +1 -1
  403. package/src/engine/graphics/geometry/ribbon/Ribbon.js +1 -4
  404. package/src/engine/graphics/material/SplatMaterial.d.ts.map +1 -1
  405. package/src/engine/graphics/material/SplatMaterial.js +0 -3
  406. package/src/engine/graphics/material/WaterMaterial.d.ts.map +1 -1
  407. package/src/engine/graphics/material/WaterMaterial.js +0 -3
  408. package/src/engine/graphics/particles/particular/engine/MovingBoundingBox.d.ts +0 -5
  409. package/src/engine/graphics/particles/particular/engine/MovingBoundingBox.d.ts.map +1 -1
  410. package/src/engine/graphics/particles/particular/engine/MovingBoundingBox.js +114 -114
  411. package/src/engine/graphics/particles/particular/engine/emitter/ParticleLayer.d.ts +0 -1
  412. package/src/engine/graphics/particles/particular/engine/emitter/ParticleLayer.d.ts.map +1 -1
  413. package/src/engine/graphics/particles/particular/engine/emitter/ParticleLayer.js +347 -348
  414. package/src/engine/graphics/particles/particular/engine/emitter/ParticlePool.d.ts +1 -3
  415. package/src/engine/graphics/particles/particular/engine/emitter/ParticlePool.d.ts.map +1 -1
  416. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSet.d.ts +0 -1
  417. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSet.d.ts.map +1 -1
  418. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSet.js +110 -111
  419. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSheet.d.ts +0 -9
  420. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSheet.d.ts.map +1 -1
  421. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSheet.js +70 -66
  422. package/src/engine/graphics/particles/particular/engine/parameter/ParameterTrackSet.d.ts +0 -5
  423. package/src/engine/graphics/particles/particular/engine/parameter/ParameterTrackSet.d.ts.map +1 -1
  424. package/src/engine/graphics/particles/particular/engine/parameter/ParameterTrackSet.js +82 -82
  425. package/src/engine/graphics/particles/particular/group/Operation.d.ts +0 -7
  426. package/src/engine/graphics/particles/particular/group/Operation.d.ts.map +1 -1
  427. package/src/engine/graphics/particles/particular/group/Operation.js +16 -14
  428. package/src/engine/graphics/particles/particular/group/ParticleAttribute.d.ts +0 -9
  429. package/src/engine/graphics/particles/particular/group/ParticleAttribute.d.ts.map +1 -1
  430. package/src/engine/graphics/particles/particular/group/ParticleAttribute.js +23 -21
  431. package/src/engine/graphics/particles/particular/group/ParticleGroup.d.ts +2 -10
  432. package/src/engine/graphics/particles/particular/group/ParticleGroup.d.ts.map +1 -1
  433. package/src/engine/graphics/particles/particular/group/ParticleGroup.js +463 -464
  434. package/src/engine/graphics/particles/particular/group/ParticleSpecification.d.ts +0 -2
  435. package/src/engine/graphics/particles/particular/group/ParticleSpecification.d.ts.map +1 -1
  436. package/src/engine/graphics/particles/particular/group/ParticleSpecification.js +39 -33
  437. package/src/engine/graphics/render/buffer/FrameBufferManager.d.ts +6 -1
  438. package/src/engine/graphics/render/buffer/FrameBufferManager.d.ts.map +1 -1
  439. package/src/engine/graphics/render/buffer/FrameBufferManager.js +166 -163
  440. package/src/engine/graphics/render/forward_plus/model/DirectionalLight.d.ts.map +1 -1
  441. package/src/engine/graphics/render/forward_plus/model/DirectionalLight.js +25 -25
  442. package/src/engine/graphics/render/layers/RenderLayer.d.ts.map +1 -1
  443. package/src/engine/graphics/render/layers/RenderLayer.js +0 -5
  444. package/src/engine/graphics/sh3/fromCubeRenderTarget.d.ts +9 -0
  445. package/src/engine/graphics/sh3/fromCubeRenderTarget.d.ts.map +1 -0
  446. package/src/engine/graphics/sh3/fromCubeRenderTarget.js +145 -0
  447. package/src/engine/graphics/sh3/gi/tetrahedral_mesh_to_texture.d.ts +8 -0
  448. package/src/engine/graphics/sh3/gi/tetrahedral_mesh_to_texture.d.ts.map +1 -0
  449. package/src/engine/graphics/sh3/gi/tetrahedral_mesh_to_texture.js +51 -0
  450. package/src/engine/graphics/sh3/{LightProbeVolume.d.ts → lpv/LightProbeVolume.d.ts} +18 -7
  451. package/src/engine/graphics/sh3/lpv/LightProbeVolume.d.ts.map +1 -0
  452. package/src/engine/graphics/sh3/lpv/LightProbeVolume.js +340 -0
  453. package/src/engine/graphics/sh3/lpv/LightProbeVolumeSerializationAdapter.d.ts +18 -0
  454. package/src/engine/graphics/sh3/lpv/LightProbeVolumeSerializationAdapter.d.ts.map +1 -0
  455. package/src/engine/graphics/sh3/lpv/LightProbeVolumeSerializationAdapter.js +44 -0
  456. package/src/engine/graphics/sh3/lpv/PathTracerProbeRenderer.d.ts +12 -0
  457. package/src/engine/graphics/sh3/lpv/PathTracerProbeRenderer.d.ts.map +1 -0
  458. package/src/engine/graphics/sh3/lpv/PathTracerProbeRenderer.js +123 -0
  459. package/src/engine/graphics/sh3/lpv/ProbeRenderer.d.ts +29 -0
  460. package/src/engine/graphics/sh3/lpv/ProbeRenderer.d.ts.map +1 -0
  461. package/src/engine/graphics/sh3/lpv/ProbeRenderer.js +35 -0
  462. package/src/engine/graphics/sh3/lpv/WebGLCubeProbeRenderer.d.ts +27 -0
  463. package/src/engine/graphics/sh3/lpv/WebGLCubeProbeRenderer.d.ts.map +1 -0
  464. package/src/engine/graphics/sh3/lpv/WebGLCubeProbeRenderer.js +158 -0
  465. package/src/engine/graphics/sh3/lpv/build_probes_for_scene.d.ts +11 -0
  466. package/src/engine/graphics/sh3/lpv/build_probes_for_scene.d.ts.map +1 -0
  467. package/src/engine/graphics/sh3/lpv/build_probes_for_scene.js +127 -0
  468. package/src/engine/graphics/sh3/lpv/probe_volume_to_textures.d.ts +12 -0
  469. package/src/engine/graphics/sh3/lpv/probe_volume_to_textures.d.ts.map +1 -0
  470. package/src/engine/graphics/sh3/lpv/probe_volume_to_textures.js +89 -0
  471. package/src/engine/graphics/sh3/path_tracer/PathTracedScene.d.ts +90 -0
  472. package/src/engine/graphics/sh3/path_tracer/PathTracedScene.d.ts.map +1 -0
  473. package/src/engine/graphics/sh3/path_tracer/PathTracedScene.js +352 -0
  474. package/src/engine/graphics/sh3/path_tracer/PathTracer.d.ts +5 -91
  475. package/src/engine/graphics/sh3/path_tracer/PathTracer.d.ts.map +1 -1
  476. package/src/engine/graphics/sh3/path_tracer/PathTracer.js +41 -477
  477. package/src/engine/graphics/sh3/path_tracer/make_one_vector3.d.ts +1 -0
  478. package/src/engine/graphics/sh3/path_tracer/make_one_vector3.d.ts.map +1 -1
  479. package/src/engine/graphics/sh3/path_tracer/make_one_vector3.js +6 -3
  480. package/src/engine/graphics/sh3/path_tracer/prototypePathTracer.js +26 -58
  481. package/src/engine/graphics/sh3/path_tracer/random_in_hemisphere.d.ts.map +1 -1
  482. package/src/engine/graphics/sh3/path_tracer/random_in_hemisphere.js +7 -1
  483. package/src/engine/graphics/sh3/path_tracer/sample_triangle_attribute.d.ts +2 -2
  484. package/src/engine/graphics/sh3/path_tracer/sample_triangle_attribute.d.ts.map +1 -1
  485. package/src/engine/graphics/sh3/path_tracer/sample_triangle_attribute.js +1 -1
  486. package/src/engine/graphics/sh3/path_tracer/texture/SoftwareTextureCache.d.ts +3 -0
  487. package/src/engine/graphics/sh3/path_tracer/texture/SoftwareTextureCache.d.ts.map +1 -0
  488. package/src/engine/graphics/sh3/path_tracer/texture/SoftwareTextureCache.js +3 -0
  489. package/src/engine/graphics/sh3/path_tracer/texture/apply_texture_clamping_to_coordinate.d.ts.map +1 -0
  490. package/src/engine/graphics/sh3/path_tracer/{apply_texture_clamping_to_coordinate.js → texture/apply_texture_clamping_to_coordinate.js} +2 -2
  491. package/src/engine/graphics/sh3/path_tracer/texture/sample_material.d.ts +11 -0
  492. package/src/engine/graphics/sh3/path_tracer/texture/sample_material.d.ts.map +1 -0
  493. package/src/engine/graphics/sh3/path_tracer/texture/sample_material.js +86 -0
  494. package/src/engine/graphics/sh3/path_tracer/texture/sample_texture.d.ts +10 -0
  495. package/src/engine/graphics/sh3/path_tracer/texture/sample_texture.d.ts.map +1 -0
  496. package/src/engine/graphics/sh3/path_tracer/texture/sample_texture.js +56 -0
  497. package/src/engine/graphics/sh3/prototypeSH3Probe.js +87 -195
  498. package/src/engine/graphics/sh3/sky/hosek/sky_hosek_compute_irradiance_by_direction.d.ts +5 -5
  499. package/src/engine/graphics/sh3/sky/hosek/sky_hosek_compute_irradiance_by_direction.d.ts.map +1 -1
  500. package/src/engine/graphics/sh3/sky/hosek/sky_hosek_compute_irradiance_by_direction.js +8 -8
  501. package/src/engine/graphics/sh3/visualise_spherical_harmonic_sphere.d.ts +13 -0
  502. package/src/engine/graphics/sh3/visualise_spherical_harmonic_sphere.d.ts.map +1 -0
  503. package/src/engine/graphics/sh3/visualise_spherical_harmonic_sphere.js +54 -0
  504. package/src/engine/graphics/shaders/AlphaBlendShader.js +1 -3
  505. package/src/engine/graphics/shaders/AmbientOcclusionShader.d.ts.map +1 -1
  506. package/src/engine/graphics/shaders/AmbientOcclusionShader.js +0 -3
  507. package/src/engine/graphics/shaders/ClearShader.js +1 -3
  508. package/src/engine/graphics/shaders/CopyShader.d.ts +0 -3
  509. package/src/engine/graphics/shaders/CopyShader.d.ts.map +1 -1
  510. package/src/engine/graphics/shaders/CopyShader.js +1 -3
  511. package/src/engine/graphics/shaders/NormalMapShader2.d.ts.map +1 -1
  512. package/src/engine/graphics/shaders/NormalMapShader2.js +0 -5
  513. package/src/engine/graphics/shaders/TerrainShader.js +0 -4
  514. package/src/engine/graphics/shaders/WaterShader.js +0 -3
  515. package/src/engine/graphics/shaders/lib/ShaderChunks.js +1 -3
  516. package/src/engine/graphics/texture/AttributeDataTexture.d.ts +2 -2
  517. package/src/engine/graphics/texture/AttributeDataTexture.d.ts.map +1 -1
  518. package/src/engine/graphics/texture/AttributeDataTexture.js +11 -11
  519. package/src/engine/graphics/texture/Canvas2Sampler2D.d.ts.map +1 -1
  520. package/src/engine/graphics/texture/Canvas2Sampler2D.js +1 -4
  521. package/src/engine/graphics/texture/CheckersTexture.d.ts.map +1 -1
  522. package/src/engine/graphics/texture/CheckersTexture.js +0 -3
  523. package/src/engine/graphics/texture/CheckersTextureURI.js +1 -3
  524. package/src/engine/graphics/texture/sampler/Sampler2D.d.ts.map +1 -1
  525. package/src/engine/graphics/texture/sampler/Sampler2D.js +0 -5
  526. package/src/engine/graphics/texture/sampler/Sampler2D2Canvas.d.ts.map +1 -1
  527. package/src/engine/graphics/texture/sampler/Sampler2D2Canvas.js +0 -5
  528. package/src/engine/graphics/texture/sampler/Sampler2D2Texture.d.ts.map +1 -1
  529. package/src/engine/graphics/texture/sampler/Sampler2D2Texture.js +0 -3
  530. package/src/engine/graphics/three/ThreeFactory.d.ts.map +1 -1
  531. package/src/engine/graphics/three/ThreeFactory.js +0 -5
  532. package/src/engine/grid/grid2transform/GridPosition2Transform.d.ts.map +1 -1
  533. package/src/engine/grid/grid2transform/GridPosition2Transform.js +0 -4
  534. package/src/engine/grid/grid2transform/GridPosition2TransformSystem.d.ts.map +1 -1
  535. package/src/engine/grid/grid2transform/GridPosition2TransformSystem.js +4 -7
  536. package/src/engine/grid/obstacle/GridObstacle.d.ts.map +1 -1
  537. package/src/engine/grid/obstacle/GridObstacle.js +0 -5
  538. package/src/engine/grid/position/GridPosition.d.ts.map +1 -1
  539. package/src/engine/grid/position/GridPosition.js +0 -4
  540. package/src/engine/grid/position/GridPositionSystem.d.ts.map +1 -1
  541. package/src/engine/grid/position/GridPositionSystem.js +1 -4
  542. package/src/engine/input/devices/KeyCodes.d.ts.map +1 -1
  543. package/src/engine/input/devices/KeyCodes.js +3 -4
  544. package/src/engine/input/devices/KeyboardDevice.d.ts.map +1 -1
  545. package/src/engine/input/devices/KeyboardDevice.js +0 -4
  546. package/src/engine/input/devices/PointerDevice.d.ts.map +1 -1
  547. package/src/engine/input/devices/PointerDevice.js +0 -3
  548. package/src/engine/input/ecs/components/InputController.d.ts.map +1 -1
  549. package/src/engine/input/ecs/components/InputController.js +1 -5
  550. package/src/engine/input/ecs/controllers/KeyboardCameraController.d.ts.map +1 -1
  551. package/src/engine/input/ecs/controllers/KeyboardCameraController.js +5 -10
  552. package/src/engine/input/ecs/systems/InputControllerSystem.d.ts.map +1 -1
  553. package/src/engine/input/ecs/systems/InputControllerSystem.js +79 -79
  554. package/src/engine/input/ecs/util/TopDownCameraControllerHelper.d.ts.map +1 -1
  555. package/src/engine/input/ecs/util/TopDownCameraControllerHelper.js +3 -6
  556. package/src/engine/intelligence/mcts/MonteCarlo.spec.js +78 -76
  557. package/src/engine/navigation/ecs/components/Path.d.ts.map +1 -1
  558. package/src/engine/navigation/ecs/components/Path.js +0 -5
  559. package/src/engine/navigation/ecs/path_following/PathFollower.d.ts.map +1 -1
  560. package/src/engine/navigation/ecs/path_following/PathFollower.js +1 -6
  561. package/src/engine/navigation/ecs/path_following/PathFollowingSystem.d.ts.map +1 -1
  562. package/src/engine/navigation/ecs/path_following/PathFollowingSystem.js +5 -12
  563. package/src/engine/network/DataChannel.js +284 -284
  564. package/src/engine/network/xhr.d.ts +0 -3
  565. package/src/engine/network/xhr.d.ts.map +1 -1
  566. package/src/engine/network/xhr.js +0 -3
  567. package/src/engine/notify/Notification.d.ts +1 -1
  568. package/src/engine/notify/Notification.d.ts.map +1 -1
  569. package/src/engine/notify/Notification.js +1 -6
  570. package/src/engine/notify/NotificationLog.d.ts.map +1 -1
  571. package/src/engine/notify/NotificationLog.js +0 -5
  572. package/src/engine/options/OptionsView.d.ts.map +1 -1
  573. package/src/engine/options/OptionsView.js +1 -6
  574. package/src/engine/physics/ammo/Body.js +0 -3
  575. package/src/engine/physics/ammo/PhysicsWorker.d.ts.map +1 -1
  576. package/src/engine/physics/ammo/PhysicsWorker.js +1 -3
  577. package/src/engine/physics/ammo/World.d.ts +68 -0
  578. package/src/engine/physics/ammo/World.d.ts.map +1 -0
  579. package/src/engine/physics/ammo/World.js +277 -278
  580. package/src/engine/physics/ammo/shapes/BoxShape.js +0 -3
  581. package/src/engine/physics/ammo/shapes/CapsuleShape.js +0 -3
  582. package/src/engine/physics/ammo/shapes/MeshShape.js +0 -3
  583. package/src/engine/physics/ammo/shapes/PlaneShape.js +0 -3
  584. package/src/engine/physics/ammo/shapes/Shape.js +1 -3
  585. package/src/engine/physics/ammo/shapes/SphereShape.js +0 -3
  586. package/src/engine/physics/cannon/CannonJSPhysicsSystem.d.ts.map +1 -1
  587. package/src/engine/physics/cannon/CannonJSPhysicsSystem.js +3 -6
  588. package/src/engine/save/GameStateLoader.d.ts.map +1 -1
  589. package/src/engine/save/GameStateLoader.js +1 -5
  590. package/src/engine/save/Storage.d.ts.map +1 -1
  591. package/src/engine/save/Storage.js +0 -7
  592. package/src/engine/scene/Scene.d.ts.map +1 -1
  593. package/src/engine/scene/Scene.js +2 -7
  594. package/src/engine/scene/SceneManager.d.ts.map +1 -1
  595. package/src/engine/scene/SceneManager.js +1 -4
  596. package/src/engine/simulation/DormandPrince.d.ts +0 -1
  597. package/src/engine/simulation/DormandPrince.d.ts.map +1 -1
  598. package/src/engine/simulation/DormandPrince.js +5 -5
  599. package/src/engine/simulation/Ticker.d.ts.map +1 -1
  600. package/src/engine/simulation/Ticker.js +0 -3
  601. package/src/engine/sound/ecs/SoundController.d.ts +0 -7
  602. package/src/engine/sound/ecs/SoundController.d.ts.map +1 -1
  603. package/src/engine/sound/ecs/SoundController.js +118 -119
  604. package/src/engine/sound/ecs/SoundControllerSystem.d.ts.map +1 -1
  605. package/src/engine/sound/ecs/SoundControllerSystem.js +3 -8
  606. package/src/engine/sound/ecs/SoundListener.d.ts +0 -1
  607. package/src/engine/sound/ecs/SoundListener.d.ts.map +1 -1
  608. package/src/engine/sound/ecs/SoundListener.js +26 -29
  609. package/src/engine/sound/ecs/SoundListenerSystem.d.ts.map +1 -1
  610. package/src/engine/sound/ecs/SoundListenerSystem.js +0 -5
  611. package/src/engine/sound/ecs/emitter/SoundEmitter.d.ts.map +1 -1
  612. package/src/engine/sound/ecs/emitter/SoundEmitter.js +0 -5
  613. package/src/engine/sound/ecs/emitter/SoundEmitterSystem.d.ts.map +1 -1
  614. package/src/engine/sound/ecs/emitter/SoundEmitterSystem.js +0 -7
  615. package/src/engine/ui/GUIEngine.d.ts.map +1 -1
  616. package/src/engine/ui/GUIEngine.js +0 -5
  617. package/src/engine/ui/tiles2d/TileGrid.d.ts.map +1 -1
  618. package/src/engine/ui/tiles2d/TileGrid.js +1 -4
  619. package/src/generation/markers/debug/visualizeMarkers.js +10 -10
  620. package/src/view/DOM.js +1 -3
  621. package/src/view/SVG.d.ts +0 -3
  622. package/src/view/SVG.d.ts.map +1 -1
  623. package/src/view/SVG.js +0 -4
  624. package/src/view/asset/PreloaderView.d.ts.map +1 -1
  625. package/src/view/asset/PreloaderView.js +0 -3
  626. package/src/view/common/LabelView.d.ts +1 -6
  627. package/src/view/common/LabelView.d.ts.map +1 -1
  628. package/src/view/common/LabelView.js +24 -33
  629. package/src/view/common/ListView.d.ts.map +1 -1
  630. package/src/view/common/ListView.js +0 -6
  631. package/src/view/common/MeshView.js +3 -6
  632. package/src/view/common/VirtualListView.d.ts.map +1 -1
  633. package/src/view/common/VirtualListView.js +0 -5
  634. package/src/view/common/dnd/DragAndDropContext.d.ts +1 -2
  635. package/src/view/common/dnd/DragAndDropContext.d.ts.map +1 -1
  636. package/src/view/common/dnd/DragAndDropContext.js +107 -110
  637. package/src/view/controller/GuiController.d.ts.map +1 -1
  638. package/src/view/controller/GuiController.js +1 -6
  639. package/src/view/controller/controls/BooleanVector3Control.d.ts +1 -1
  640. package/src/view/controller/controls/BooleanVector3Control.d.ts.map +1 -1
  641. package/src/view/controller/controls/GuiControl.js +2 -7
  642. package/src/view/controller/controls/Vector1Control.d.ts +1 -1
  643. package/src/view/controller/controls/Vector1Control.d.ts.map +1 -1
  644. package/src/view/controller/controls/Vector1Control.js +2 -7
  645. package/src/view/controller/controls/Vector2Control.d.ts.map +1 -1
  646. package/src/view/controller/controls/Vector2Control.js +0 -4
  647. package/src/view/controller/controls/Vector3Control.d.ts.map +1 -1
  648. package/src/view/controller/controls/Vector3Control.js +0 -3
  649. package/src/view/elements/ColorPickerView.d.ts.map +1 -1
  650. package/src/view/elements/ColorPickerView.js +7 -7
  651. package/src/view/elements/ConfirmationDialogView.d.ts.map +1 -1
  652. package/src/view/elements/ConfirmationDialogView.js +1 -6
  653. package/src/view/elements/DropDownSelectionView.d.ts.map +1 -1
  654. package/src/view/elements/DropDownSelectionView.js +0 -5
  655. package/src/view/elements/EmptyView.d.ts.map +1 -1
  656. package/src/view/elements/EmptyView.js +0 -4
  657. package/src/view/elements/Group.d.ts.map +1 -1
  658. package/src/view/elements/Group.js +0 -3
  659. package/src/view/elements/MeshPreview.d.ts.map +1 -1
  660. package/src/view/elements/MeshPreview.js +5 -8
  661. package/src/view/elements/SimpleWindow.d.ts +1 -1
  662. package/src/view/elements/SimpleWindow.d.ts.map +1 -1
  663. package/src/view/elements/SimpleWindow.js +5 -11
  664. package/src/view/elements/button/ButtonView.d.ts.map +1 -1
  665. package/src/view/elements/button/ButtonView.js +1 -5
  666. package/src/view/elements/image/ImageView.d.ts.map +1 -1
  667. package/src/view/elements/image/ImageView.js +0 -4
  668. package/src/view/elements/image/SvgImageView.d.ts.map +1 -1
  669. package/src/view/elements/image/SvgImageView.js +2 -7
  670. package/src/view/elements/label/LabeledValueView.d.ts.map +1 -1
  671. package/src/view/elements/label/LabeledValueView.js +3 -8
  672. package/src/view/elements/navigation/ViewStack.d.ts +0 -7
  673. package/src/view/elements/navigation/ViewStack.d.ts.map +1 -1
  674. package/src/view/elements/navigation/ViewStack.js +17 -19
  675. package/src/view/elements/notify/NotificationView.js +1 -4
  676. package/src/view/elements/notify/ToastLogView.d.ts.map +1 -1
  677. package/src/view/elements/notify/ToastLogView.js +0 -3
  678. package/src/view/elements/progress/SmoothProgressBar.d.ts +72 -0
  679. package/src/view/elements/progress/SmoothProgressBar.d.ts.map +1 -0
  680. package/src/view/elements/radial/RadialMenu.d.ts.map +1 -1
  681. package/src/view/elements/radial/RadialMenu.js +1 -6
  682. package/src/view/elements/radial/RadialMenuElement.d.ts.map +1 -1
  683. package/src/view/elements/radial/RadialMenuElement.js +1 -4
  684. package/src/view/elements/radial/RadialProgressView.d.ts +1 -1
  685. package/src/view/elements/radial/RadialProgressView.d.ts.map +1 -1
  686. package/src/view/elements/radial/RadialProgressView.js +4 -9
  687. package/src/view/elements/tiles2d/Tile.d.ts.map +1 -1
  688. package/src/view/elements/tiles2d/Tile.js +3 -6
  689. package/src/view/elements/tiles2d/TileGrid.d.ts.map +1 -1
  690. package/src/view/elements/tiles2d/TileGrid.js +0 -5
  691. package/src/view/minimap/Minimap.d.ts.map +1 -1
  692. package/src/view/minimap/Minimap.js +11 -16
  693. package/src/view/minimap/dom/MinimapCameraView.d.ts +1 -2
  694. package/src/view/minimap/dom/MinimapCameraView.d.ts.map +1 -1
  695. package/src/view/minimap/dom/MinimapTerrainView.d.ts +1 -1
  696. package/src/view/minimap/dom/MinimapTerrainView.d.ts.map +1 -1
  697. package/src/view/minimap/gl/MarkerGL.d.ts +2 -12
  698. package/src/view/minimap/gl/MarkerGL.d.ts.map +1 -1
  699. package/src/view/minimap/gl/MarkerGL.js +60 -56
  700. package/src/view/minimap/gl/MinimapMarkersGL.d.ts +1 -1
  701. package/src/view/minimap/gl/MinimapMarkersGL.d.ts.map +1 -1
  702. package/src/view/minimap/gl/MinimapTerrainGL.d.ts +1 -2
  703. package/src/view/minimap/gl/MinimapTerrainGL.d.ts.map +1 -1
  704. package/src/view/renderModel.d.ts.map +1 -1
  705. package/src/view/renderModel.js +3 -7
  706. package/src/view/task/TaskProgressView.d.ts.map +1 -1
  707. package/src/view/task/TaskProgressView.js +0 -5
  708. package/src/core/geom/3d/tetrahedra/compute_circumsphere.d.ts.map +0 -1
  709. package/src/core/graph/coarsen_graph.d.ts.map +0 -1
  710. package/src/core/graph/coarsen_graph.spec.d.ts +0 -2
  711. package/src/core/graph/coarsen_graph.spec.d.ts.map +0 -1
  712. package/src/core/graph/graph_adjacency_matrix.d.ts +0 -9
  713. package/src/core/graph/graph_adjacency_matrix.d.ts.map +0 -1
  714. package/src/core/graph/graph_degree_matrix.d.ts +0 -9
  715. package/src/core/graph/graph_degree_matrix.d.ts.map +0 -1
  716. package/src/core/graph/graph_degree_matrix.js +0 -18
  717. package/src/core/graph/graph_laplacian_matrix.d.ts.map +0 -1
  718. package/src/core/math/physics/brdf/D_GGX.d.ts.map +0 -1
  719. package/src/engine/asset/loaders/LegacyThreeJSONAssetLoader.d.ts +0 -9
  720. package/src/engine/asset/loaders/LegacyThreeJSONAssetLoader.d.ts.map +0 -1
  721. package/src/engine/asset/loaders/LegacyThreeJSONAssetLoader.js +0 -105
  722. package/src/engine/graphics/geometry/decimation/SimplifyModifier.d.ts +0 -117
  723. package/src/engine/graphics/geometry/decimation/SimplifyModifier.d.ts.map +0 -1
  724. package/src/engine/graphics/geometry/decimation/SimplifyModifier.js +0 -971
  725. package/src/engine/graphics/loader/threejs/GLTFLoader.js +0 -3179
  726. package/src/engine/graphics/loader/threejs/LegacyJSONLoader.d.ts +0 -6
  727. package/src/engine/graphics/loader/threejs/LegacyJSONLoader.d.ts.map +0 -1
  728. package/src/engine/graphics/loader/threejs/LegacyJSONLoader.js +0 -845
  729. package/src/engine/graphics/postprocess/Postprocess.js +0 -284
  730. package/src/engine/graphics/postprocess/threejs/Mirror.js +0 -330
  731. package/src/engine/graphics/postprocess/threejs/WaterShader.js +0 -306
  732. package/src/engine/graphics/postprocess/threejs/postprocessing/AdaptiveToneMappingPass.js +0 -338
  733. package/src/engine/graphics/postprocess/threejs/postprocessing/BloomPass.js +0 -132
  734. package/src/engine/graphics/postprocess/threejs/postprocessing/BokehPass.js +0 -115
  735. package/src/engine/graphics/postprocess/threejs/postprocessing/ClearMaskPass.d.ts +0 -4
  736. package/src/engine/graphics/postprocess/threejs/postprocessing/ClearMaskPass.d.ts.map +0 -1
  737. package/src/engine/graphics/postprocess/threejs/postprocessing/ClearMaskPass.js +0 -23
  738. package/src/engine/graphics/postprocess/threejs/postprocessing/DotScreenPass.d.ts +0 -1
  739. package/src/engine/graphics/postprocess/threejs/postprocessing/DotScreenPass.d.ts.map +0 -1
  740. package/src/engine/graphics/postprocess/threejs/postprocessing/DotScreenPass.js +0 -60
  741. package/src/engine/graphics/postprocess/threejs/postprocessing/EffectComposer.js +0 -150
  742. package/src/engine/graphics/postprocess/threejs/postprocessing/FilmPass.d.ts +0 -1
  743. package/src/engine/graphics/postprocess/threejs/postprocessing/FilmPass.d.ts.map +0 -1
  744. package/src/engine/graphics/postprocess/threejs/postprocessing/FilmPass.js +0 -61
  745. package/src/engine/graphics/postprocess/threejs/postprocessing/GlitchPass.d.ts +0 -1
  746. package/src/engine/graphics/postprocess/threejs/postprocessing/GlitchPass.d.ts.map +0 -1
  747. package/src/engine/graphics/postprocess/threejs/postprocessing/GlitchPass.js +0 -117
  748. package/src/engine/graphics/postprocess/threejs/postprocessing/RenderPass.js +0 -63
  749. package/src/engine/graphics/postprocess/threejs/postprocessing/SMAAPass.js +0 -187
  750. package/src/engine/graphics/postprocess/threejs/postprocessing/SavePass.d.ts +0 -1
  751. package/src/engine/graphics/postprocess/threejs/postprocessing/SavePass.d.ts.map +0 -1
  752. package/src/engine/graphics/postprocess/threejs/postprocessing/SavePass.js +0 -67
  753. package/src/engine/graphics/postprocess/threejs/postprocessing/TexturePass.js +0 -50
  754. package/src/engine/graphics/postprocess/threejs/shaders/BokehShader.d.ts +0 -42
  755. package/src/engine/graphics/postprocess/threejs/shaders/BokehShader.d.ts.map +0 -1
  756. package/src/engine/graphics/postprocess/threejs/shaders/BokehShader.js +0 -117
  757. package/src/engine/graphics/postprocess/threejs/shaders/ConvolutionShader.d.ts +0 -30
  758. package/src/engine/graphics/postprocess/threejs/shaders/ConvolutionShader.d.ts.map +0 -1
  759. package/src/engine/graphics/postprocess/threejs/shaders/ConvolutionShader.js +0 -106
  760. package/src/engine/graphics/postprocess/threejs/shaders/FXAAShader.d.ts +0 -19
  761. package/src/engine/graphics/postprocess/threejs/shaders/FXAAShader.d.ts.map +0 -1
  762. package/src/engine/graphics/postprocess/threejs/shaders/FXAAShader.js +0 -90
  763. package/src/engine/graphics/postprocess/threejs/shaders/GammaCorrectionShader.d.ts +0 -12
  764. package/src/engine/graphics/postprocess/threejs/shaders/GammaCorrectionShader.d.ts.map +0 -1
  765. package/src/engine/graphics/postprocess/threejs/shaders/GammaCorrectionShader.js +0 -52
  766. package/src/engine/graphics/postprocess/threejs/shaders/LuminosityShader.d.ts +0 -12
  767. package/src/engine/graphics/postprocess/threejs/shaders/LuminosityShader.d.ts.map +0 -1
  768. package/src/engine/graphics/postprocess/threejs/shaders/LuminosityShader.js +0 -51
  769. package/src/engine/graphics/postprocess/threejs/shaders/SMAAShader.d.ts +0 -76
  770. package/src/engine/graphics/postprocess/threejs/shaders/SMAAShader.d.ts.map +0 -1
  771. package/src/engine/graphics/postprocess/threejs/shaders/SMAAShader.js +0 -468
  772. package/src/engine/graphics/postprocess/threejs/shaders/SSAOShader.d.ts +0 -61
  773. package/src/engine/graphics/postprocess/threejs/shaders/SSAOShader.d.ts.map +0 -1
  774. package/src/engine/graphics/postprocess/threejs/shaders/SSAOShader.js +0 -230
  775. package/src/engine/graphics/postprocess/threejs/shaders/ToneMapShader.d.ts +0 -36
  776. package/src/engine/graphics/postprocess/threejs/shaders/ToneMapShader.d.ts.map +0 -1
  777. package/src/engine/graphics/postprocess/threejs/shaders/ToneMapShader.js +0 -76
  778. package/src/engine/graphics/sh3/LightProbeVolume.d.ts.map +0 -1
  779. package/src/engine/graphics/sh3/LightProbeVolume.js +0 -609
  780. package/src/engine/graphics/sh3/path_tracer/apply_texture_clamping_to_coordinate.d.ts.map +0 -1
  781. package/src/engine/graphics/sh3/visualise_probe.d.ts +0 -12
  782. package/src/engine/graphics/sh3/visualise_probe.d.ts.map +0 -1
  783. package/src/engine/graphics/sh3/visualise_probe.js +0 -40
  784. package/src/engine/graphics/shaders/GaussianBlurShader.d.ts +0 -22
  785. package/src/engine/graphics/shaders/GaussianBlurShader.d.ts.map +0 -1
  786. package/src/engine/graphics/shaders/GaussianBlurShader.js +0 -79
  787. package/src/engine/graphics/shaders/GaussianGlowShader.d.ts +0 -26
  788. package/src/engine/graphics/shaders/GaussianGlowShader.d.ts.map +0 -1
  789. package/src/engine/graphics/shaders/GaussianGlowShader.js +0 -83
  790. package/src/engine/graphics/shaders/NormalMapShader.d.ts +0 -33
  791. package/src/engine/graphics/shaders/NormalMapShader.d.ts.map +0 -1
  792. package/src/engine/graphics/shaders/NormalMapShader.js +0 -62
  793. package/src/engine/graphics/shaders/SoftOutlineShader.d.ts +0 -3
  794. package/src/engine/graphics/shaders/SoftOutlineShader.d.ts.map +0 -1
  795. package/src/engine/graphics/shaders/SoftOutlineShader.js +0 -111
  796. package/src/engine/graphics/three/Reflector.d.ts +0 -12
  797. package/src/engine/graphics/three/Reflector.d.ts.map +0 -1
  798. package/src/engine/graphics/three/Reflector.js +0 -281
  799. package/src/engine/graphics/three/Refractor.d.ts +0 -11
  800. package/src/engine/graphics/three/Refractor.d.ts.map +0 -1
  801. package/src/engine/graphics/three/Refractor.js +0 -352
  802. package/src/engine/navigation/ecs/components/PathFinder.d.ts +0 -14
  803. package/src/engine/navigation/ecs/components/PathFinder.d.ts.map +0 -1
  804. package/src/engine/navigation/ecs/components/PathFinder.js +0 -11
  805. package/src/view/elements/navigation/NavigationMenu.d.ts +0 -13
  806. package/src/view/elements/navigation/NavigationMenu.d.ts.map +0 -1
  807. package/src/view/elements/navigation/NavigationMenu.js +0 -27
  808. /package/src/engine/graphics/sh3/path_tracer/{apply_texture_clamping_to_coordinate.d.ts → texture/apply_texture_clamping_to_coordinate.d.ts} +0 -0
@@ -86,12 +86,26 @@ export class TetrahedralMesh {
86
86
  * @private
87
87
  */
88
88
  private __free_pointer;
89
+ /**
90
+ * Only valid when the mesh is compacted
91
+ * @return {number}
92
+ */
93
+ get count(): number;
94
+ /**
95
+ *
96
+ * @return {boolean}
97
+ */
98
+ get isCompacted(): boolean;
89
99
  /**
90
100
  * Traverse tetrahedrons
91
101
  * @param {function(tet:number,mesh:TetrahedralMesh):*} visitor
92
102
  * @param {*} [thisArg]
93
103
  */
94
104
  forEach(visitor: any, thisArg?: any): void;
105
+ /**
106
+ * Clears all data from the mesh, making it contain 0 tetrahedrons
107
+ */
108
+ clear(): void;
95
109
  /**
96
110
  *
97
111
  * @param {number} capacity
@@ -112,6 +126,11 @@ export class TetrahedralMesh {
112
126
  * @param {number} capacity
113
127
  */
114
128
  growCapacity(capacity: number): void;
129
+ /**
130
+ *
131
+ * @param {number} capacity
132
+ */
133
+ ensureCapacity(capacity: number): void;
115
134
  /**
116
135
  * NOTE: this method can be quite slow in cases of sparse allocation, please prefer not to use it
117
136
  * @param {number} tet
@@ -128,7 +147,7 @@ export class TetrahedralMesh {
128
147
  /**
129
148
  * NOTE: the neighbour value must be encoded, see format specification for details
130
149
  * @param {number} tetra_index
131
- * @param {number} neighbour_index which neighbour to set (0..11)
150
+ * @param {number} neighbour_index which neighbour to set (00..11)
132
151
  * @param {number} neighbour index of the neighbour encoded with the opposite corner
133
152
  */
134
153
  setNeighbour(tetra_index: number, neighbour_index: number, neighbour: number): void;
@@ -1 +1 @@
1
- {"version":3,"file":"TetrahedralMesh.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/3d/tetrahedra/TetrahedralMesh.js"],"names":[],"mappings":"AAgBA;;;;GAIG;AACH,qCAFU,MAAM,CAEkD;AAElE;;;GAGG;AACH,gCAFU,MAAM,CAE4B;AAE5C;;;GAGG;AACH,4BAFU,MAAM,CAEwB;AAoBxC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH;IACI;;;OAGG;IACH,2BAFW,MAAM,EAqDhB;IAhDG;;;;OAIG;IACH,iBAAsE;IAEtE;;;;OAIG;IACH,sBAAmD;IAEnD;;;;OAIG;IACH,eAAyC;IAEzC;;;;OAIG;IACH,mBAA8B;IAE9B;;;;OAIG;IACH,mBAAmB;IAEnB;;;;OAIG;IACH,eAAgB;IAEhB;;;;OAIG;IACH,uBAAuB;IAG3B;;;;OAIG;IACH,2CAQC;IAED;;;OAGG;IACH,sBAFW,MAAM,QA8BhB;IAED;;;OAGG;IACH,eAFY,MAAM,CAIjB;IAED;;;OAGG;IACH,QAFY,MAAM,CAIjB;IAED;;;OAGG;IACH,uBAFW,MAAM,QAahB;IAED;;;;OAIG;IACH,YAHW,MAAM,GACL,OAAO,CAiBlB;IAED;;;;;OAKG;IACH,0BAJW,MAAM,mBACN,MAAM,GACJ,MAAM,CAYlB;IAED;;;;;OAKG;IACH,0BAJW,MAAM,mBACN,MAAM,aACN,MAAM,QAchB;IAGD;;;;;OAKG;IACH,0BAJW,MAAM,eACN,MAAM,GACJ,MAAM,CAYlB;IAED;;;;;OAKG;IACH,0BAJW,MAAM,eACN,MAAM,UACN,MAAM,QAiBhB;IAED;;;;;OAKG;IACH,uBAJW,MAAM,UACN,MAAM,GACL,OAAO,CAUlB;IAGD;;;;OAIG;IACH,YAFY,MAAM,CA4BjB;IAED;;;;;;;;OAQG;IACH,eAPW,MAAM,EAAE,GAAC,YAAY,KACrB,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,GACJ,MAAM,CAqBlB;IAED;;;;OAIG;IACH,wBAFW,MAAM,QAmBhB;IAED;;;;OAIG;IACH,oBAFW,MAAM,QAmBhB;IAED;;;;;OAKG;IACH,2CAHW,MAAM,aACN,MAAM,QAwBhB;IAED;;;;;OAKG;IACH,iCAJW,MAAM,EAAE,SACR,MAAM,GACJ,MAAM,CAsBlB;IAGD;;;;;OAKG;IACH,uBAHW,MAAM,qBACN,MAAM,QA6BhB;IAED;;;;OAIG;IACH,WAFa,MAAM,CA2ClB;IAED;;;OAGG;IACH,kBAFW,YAAY,QAUtB;IAED;;;OAGG;IACH,oBAFW,YAAY,QAiBtB;IAED;;;OAGG;IACH,oBAFY,MAAM,CAUjB;IAED;;;OAGG;IACH,wBAFW,MAAM,QAQhB;IAGL;;;OAGG;IACH,4BAFU,OAAO,CAE0B;CAN1C;6BAnoB4B,iCAAiC"}
1
+ {"version":3,"file":"TetrahedralMesh.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/3d/tetrahedra/TetrahedralMesh.js"],"names":[],"mappings":"AAgBA;;;;GAIG;AACH,qCAFU,MAAM,CAEkD;AAElE;;;GAGG;AACH,gCAFU,MAAM,CAE4B;AAE5C;;;GAGG;AACH,4BAFU,MAAM,CAEwB;AAoBxC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH;IACI;;;OAGG;IACH,2BAFW,MAAM,EAqDhB;IAhDG;;;;OAIG;IACH,iBAAsE;IAEtE;;;;OAIG;IACH,sBAAmD;IAEnD;;;;OAIG;IACH,eAAyC;IAEzC;;;;OAIG;IACH,mBAA8B;IAE9B;;;;OAIG;IACH,mBAAmB;IAEnB;;;;OAIG;IACH,eAAgB;IAEhB;;;;OAIG;IACH,uBAAuB;IAG3B;;;OAGG;IACH,oBAEC;IAED;;;OAGG;IACH,2BAEC;IAED;;;;OAIG;IACH,2CAQC;IAED;;OAEG;IACH,cAWC;IAED;;;OAGG;IACH,sBAFW,MAAM,QA8BhB;IAED;;;OAGG;IACH,eAFY,MAAM,CAIjB;IAED;;;OAGG;IACH,QAFY,MAAM,CAIjB;IAED;;;OAGG;IACH,uBAFW,MAAM,QAchB;IAED;;;OAGG;IACH,yBAFW,MAAM,QAShB;IAED;;;;OAIG;IACH,YAHW,MAAM,GACL,OAAO,CAiBlB;IAED;;;;;OAKG;IACH,0BAJW,MAAM,mBACN,MAAM,GACJ,MAAM,CAYlB;IAED;;;;;OAKG;IACH,0BAJW,MAAM,mBACN,MAAM,aACN,MAAM,QAchB;IAGD;;;;;OAKG;IACH,0BAJW,MAAM,eACN,MAAM,GACJ,MAAM,CAYlB;IAED;;;;;OAKG;IACH,0BAJW,MAAM,eACN,MAAM,UACN,MAAM,QAiBhB;IAED;;;;;OAKG;IACH,uBAJW,MAAM,UACN,MAAM,GACL,OAAO,CAUlB;IAGD;;;;OAIG;IACH,YAFY,MAAM,CA4BjB;IAED;;;;;;;;OAQG;IACH,eAPW,MAAM,EAAE,GAAC,YAAY,KACrB,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,GACJ,MAAM,CAqBlB;IAED;;;;OAIG;IACH,wBAFW,MAAM,QAmBhB;IAED;;;;OAIG;IACH,oBAFW,MAAM,QAmBhB;IAED;;;;;OAKG;IACH,2CAHW,MAAM,aACN,MAAM,QAwBhB;IAED;;;;;OAKG;IACH,iCAJW,MAAM,EAAE,SACR,MAAM,GACJ,MAAM,CAsBlB;IAGD;;;;;OAKG;IACH,uBAHW,MAAM,qBACN,MAAM,QA6BhB;IAED;;;;OAIG;IACH,WAFa,MAAM,CA2ClB;IAED;;;OAGG;IACH,kBAFW,YAAY,QAUtB;IAED;;;OAGG;IACH,oBAFW,YAAY,QAiBtB;IAED;;;OAGG;IACH,oBAFY,MAAM,CAUjB;IAED;;;OAGG;IACH,wBAFW,MAAM,QAQhB;IAGL;;;OAGG;IACH,4BAFU,OAAO,CAE0B;CAN1C;6BArrB4B,iCAAiC"}
@@ -1,12 +1,12 @@
1
- import { tetrahedron_contains_point } from "./tetrahedron_contains_point.js";
2
- import { typed_array_copy } from "../../../collection/array/typed/typed_array_copy.js";
3
- import { max3 } from "../../../math/max3.js";
4
1
  import { assert } from "../../../assert.js";
2
+ import { Base64 } from "../../../binary/Base64.js";
3
+ import { BinaryBuffer } from "../../../binary/BinaryBuffer.js";
5
4
  import { array_copy } from "../../../collection/array/array_copy.js";
6
5
  import { array_quick_sort_by_comparator } from "../../../collection/array/arrayQuickSort.js";
7
- import { BinaryBuffer } from "../../../binary/BinaryBuffer.js";
8
- import { Base64 } from "../../../binary/Base64.js";
6
+ import { typed_array_copy } from "../../../collection/array/typed/typed_array_copy.js";
7
+ import { max3 } from "../../../math/max3.js";
9
8
  import { number_compare_descending } from "../../../primitives/numbers/number_compare_descending.js";
9
+ import { tetrahedron_contains_point } from "./tetrahedron_contains_point.js";
10
10
 
11
11
  /**
12
12
  * @readonly
@@ -133,6 +133,22 @@ export class TetrahedralMesh {
133
133
  this.__free_pointer = 0;
134
134
  }
135
135
 
136
+ /**
137
+ * Only valid when the mesh is compacted
138
+ * @return {number}
139
+ */
140
+ get count() {
141
+ return this.__used_end;
142
+ }
143
+
144
+ /**
145
+ *
146
+ * @return {boolean}
147
+ */
148
+ get isCompacted() {
149
+ return this.__free_pointer === 0;
150
+ }
151
+
136
152
  /**
137
153
  * Traverse tetrahedrons
138
154
  * @param {function(tet:number,mesh:TetrahedralMesh):*} visitor
@@ -148,6 +164,22 @@ export class TetrahedralMesh {
148
164
  }
149
165
  }
150
166
 
167
+ /**
168
+ * Clears all data from the mesh, making it contain 0 tetrahedrons
169
+ */
170
+ clear() {
171
+
172
+ // clear data
173
+ this.__data_uint32.fill(0, 0, this.__used_end);
174
+
175
+ // reset metadata
176
+ this.__used_end = 0;
177
+ this.__free_pointer = 0;
178
+ this.__free.splice(0, this.__free.length);
179
+
180
+
181
+ }
182
+
151
183
  /**
152
184
  *
153
185
  * @param {number} capacity
@@ -203,6 +235,7 @@ export class TetrahedralMesh {
203
235
  * @param {number} capacity
204
236
  */
205
237
  growCapacity(capacity) {
238
+ assert.isNonNegativeInteger(capacity, 'capacity');
206
239
 
207
240
  const existing_capacity = this.__capacity;
208
241
 
@@ -215,6 +248,19 @@ export class TetrahedralMesh {
215
248
  this.setCapacity(new_capacity);
216
249
  }
217
250
 
251
+ /**
252
+ *
253
+ * @param {number} capacity
254
+ */
255
+ ensureCapacity(capacity) {
256
+ assert.isNonNegativeInteger(capacity, 'capacity');
257
+ if (this.__capacity >= capacity) {
258
+ return;
259
+ }
260
+
261
+ this.growCapacity(capacity);
262
+ }
263
+
218
264
  /**
219
265
  * NOTE: this method can be quite slow in cases of sparse allocation, please prefer not to use it
220
266
  * @param {number} tet
@@ -258,7 +304,7 @@ export class TetrahedralMesh {
258
304
  /**
259
305
  * NOTE: the neighbour value must be encoded, see format specification for details
260
306
  * @param {number} tetra_index
261
- * @param {number} neighbour_index which neighbour to set (0..11)
307
+ * @param {number} neighbour_index which neighbour to set (00..11)
262
308
  * @param {number} neighbour index of the neighbour encoded with the opposite corner
263
309
  */
264
310
  setNeighbour(tetra_index, neighbour_index, neighbour) {
@@ -617,7 +663,7 @@ export class TetrahedralMesh {
617
663
 
618
664
  this.growCapacity(this.__used_end);
619
665
 
620
- buffer.readUint32Array(this.__data_uint32, 0, this.__used_end);
666
+ buffer.readUint32Array(this.__data_uint32, 0, this.__used_end * LAYOUT_TETRA_WORD_COUNT);
621
667
 
622
668
  buffer.readUint32Array(this.__free, 0, this.__free_pointer);
623
669
  }
@@ -1,5 +1,5 @@
1
- import { TetrahedralMesh } from "./TetrahedralMesh.js";
2
1
  import { jest } from "@jest/globals";
2
+ import { TetrahedralMesh } from "./TetrahedralMesh.js";
3
3
 
4
4
  test("constructor does not throw", () => {
5
5
  expect(() => new TetrahedralMesh(1)).not.toThrow();
@@ -219,7 +219,7 @@ test('Compaction is non-destructive when moving resident data from the very end
219
219
  const b = mesh.allocate();
220
220
 
221
221
  // force move "a" to free set
222
- mesh.__free[mesh.__free_pointer++] = a;
222
+ mesh.delete(a);
223
223
 
224
224
  expect(mesh.exists(b)).toBe(true);
225
225
  expect(mesh.exists(a)).toBe(false);
@@ -1,5 +1,5 @@
1
1
  /**
2
- *
2
+ * Useful as a visualisation tool, to display tetrahedral mesh
3
3
  * @param {TetrahedralMesh} tetrahedra
4
4
  * @param {Float32Array|number[]} points
5
5
  * @return {BufferGeometry}
@@ -1 +1 @@
1
- {"version":3,"file":"build_tetrahedral_mesh_buffer_geometry.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/3d/tetrahedra/build_tetrahedral_mesh_buffer_geometry.js"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,4FAHW,YAAY,GAAC,MAAM,EAAE,GACpB,cAAc,CAkEzB;+BA1E6E,OAAO"}
1
+ {"version":3,"file":"build_tetrahedral_mesh_buffer_geometry.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/3d/tetrahedra/build_tetrahedral_mesh_buffer_geometry.js"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,4FAHW,YAAY,GAAC,MAAM,EAAE,GACpB,cAAc,CAwEzB;+BA/E6E,OAAO"}
@@ -1,20 +1,23 @@
1
1
  import { BufferGeometry, Float32BufferAttribute, Uint32BufferAttribute } from "three";
2
- import { BitSet } from "../../../binary/BitSet.js";
3
2
  import { assert } from "../../../assert.js";
4
3
 
5
4
  /**
6
- *
5
+ * Useful as a visualisation tool, to display tetrahedral mesh
7
6
  * @param {TetrahedralMesh} tetrahedra
8
7
  * @param {Float32Array|number[]} points
9
8
  * @return {BufferGeometry}
10
9
  */
11
- export function build_tetrahedral_mesh_buffer_geometry(tetrahedra, points) {
12
- const lines = [];
10
+ export function build_tetrahedral_mesh_buffer_geometry(
11
+ tetrahedra,
12
+ points
13
+ ) {
13
14
 
14
- const occupancy = new BitSet();
15
+ const lines = [];
15
16
 
16
17
  const point_count = points.length / 3;
17
18
 
19
+ const occupancy = {};
20
+
18
21
  assert.isNonNegativeInteger(point_count, 'point_count');
19
22
 
20
23
  /**
@@ -39,13 +42,15 @@ export function build_tetrahedral_mesh_buffer_geometry(tetrahedra, points) {
39
42
  v1 = a;
40
43
  }
41
44
 
42
- const index = v0 * point_count + v1;
45
+ const key = `${v0}_${v1}`;
43
46
 
44
- if (occupancy.getAndSet(index)) {
47
+ if (occupancy.hasOwnProperty(key)) {
45
48
  // already recorded
46
49
  return;
47
50
  }
48
51
 
52
+ occupancy[key] = true;
53
+
49
54
  // no line record yet, create it
50
55
  lines.push(v0, v1);
51
56
  }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Special case of tetrahedral mesh generation using a regular 3d grid, useful for generating light probe volumes
3
+ * This is a special case of tetrahedral tessellation, we can handle it much easier due to regular nature of the point distribution
4
+ * Note that if resolution in every dimension should be >= 2
5
+ * @param {TetrahedralMesh} mesh
6
+ * @param {number[]} points point data is written here
7
+ * @param {AABB3} bounds
8
+ * @param {number} resolution_x how many points to generate on the grid in X axis
9
+ * @param {number} resolution_y how many points to generate on the grid in Y axis
10
+ * @param {number} resolution_z how many points to generate on the grid in Y axis
11
+ */
12
+ export function tetrahedral_mesh_build_from_grid(mesh: TetrahedralMesh, points: number[], bounds: AABB3, resolution_x?: number, resolution_y?: number, resolution_z?: number): void;
13
+ //# sourceMappingURL=tetrahedral_mesh_build_from_grid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tetrahedral_mesh_build_from_grid.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/geom/3d/tetrahedra/delaunay/tetrahedral_mesh_build_from_grid.js"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,gFANW,MAAM,EAAE,gCAER,MAAM,iBACN,MAAM,iBACN,MAAM,QA6HhB"}
@@ -0,0 +1,135 @@
1
+ /**
2
+ * Special case of tetrahedral mesh generation using a regular 3d grid, useful for generating light probe volumes
3
+ * This is a special case of tetrahedral tessellation, we can handle it much easier due to regular nature of the point distribution
4
+ * Note that if resolution in every dimension should be >= 2
5
+ * @param {TetrahedralMesh} mesh
6
+ * @param {number[]} points point data is written here
7
+ * @param {AABB3} bounds
8
+ * @param {number} resolution_x how many points to generate on the grid in X axis
9
+ * @param {number} resolution_y how many points to generate on the grid in Y axis
10
+ * @param {number} resolution_z how many points to generate on the grid in Y axis
11
+ */
12
+ export function tetrahedral_mesh_build_from_grid(
13
+ mesh, points,
14
+ bounds,
15
+ resolution_x = 2, resolution_y = 2, resolution_z = 2,
16
+ ) {
17
+
18
+ console.error("Implementation is incomplete"); // FIXME
19
+
20
+ mesh.clear();
21
+
22
+ const tetrahedron_count = (resolution_x - 1) * (resolution_y - 1) * (resolution_z - 1) * 6;
23
+
24
+ // we know how many tetrahedrons will be created, so we can avoid some re-allocations by ensuring there's enough capacity
25
+ mesh.ensureCapacity(tetrahedron_count);
26
+
27
+ const bounds_extents_x = bounds.getExtentsX();
28
+ const bounds_extents_y = bounds.getExtentsY();
29
+ const bounds_extents_z = bounds.getExtentsZ();
30
+
31
+ /**
32
+ *
33
+ * @param {number} x
34
+ * @param {number} y
35
+ * @param {number} z
36
+ * @return {number}
37
+ */
38
+ function vertex_position_to_index(x, y, z) {
39
+
40
+ return z * resolution_y * resolution_x + y * resolution_x + x;
41
+ }
42
+
43
+ // generate points
44
+ for (let z = 0; z < resolution_z; z++) {
45
+ for (let y = 0; y < resolution_y; y++) {
46
+ for (let x = 0; x < resolution_x; x++) {
47
+
48
+ const index = vertex_position_to_index(x, y, z);
49
+
50
+ const index3 = index * 3;
51
+
52
+ const x_norm = x / (resolution_x - 1);
53
+ const y_norm = y / (resolution_y - 1);
54
+ const z_norm = z / (resolution_z - 1);
55
+
56
+ points[index3] = bounds.x0 + x_norm * bounds_extents_x;
57
+ points[index3 + 1] = bounds.y0 + y_norm * bounds_extents_y;
58
+ points[index3 + 2] = bounds.z0 + z_norm * bounds_extents_z;
59
+
60
+ }
61
+ }
62
+ }
63
+
64
+ /**
65
+ *
66
+ * @param {number} v0
67
+ * @param {number} v1
68
+ * @param {number} v2
69
+ * @param {number} v3
70
+ * @return {number}
71
+ */
72
+ function make_cell(v0, v1, v2, v3) {
73
+
74
+ const tet_0 = mesh.allocate();
75
+
76
+ mesh.setVertexIndex(tet_0, 0, v0);
77
+ mesh.setVertexIndex(tet_0, 1, v1);
78
+ mesh.setVertexIndex(tet_0, 2, v2);
79
+ mesh.setVertexIndex(tet_0, 3, v3);
80
+
81
+ return tet_0;
82
+ }
83
+
84
+ // NOTE: it's possible to tessellate each box into 5 tetrahedrons instead of 6, but orientation becomes inconsistent if we do that
85
+ // reference http://www.iue.tuwien.ac.at/phd/wessner/node32.html
86
+
87
+ for (let z = 1; z < resolution_z; z++) {
88
+ for (let y = 1; y < resolution_y; y++) {
89
+ for (let x = 1; x < resolution_x; x++) {
90
+ const p000 = vertex_position_to_index(x - 1, y - 1, z - 1);
91
+ const p001 = vertex_position_to_index(x - 1, y - 1, z);
92
+ const p010 = vertex_position_to_index(x - 1, y, z - 1);
93
+ const p011 = vertex_position_to_index(x - 1, y, z);
94
+ const p100 = vertex_position_to_index(x, y - 1, z - 1);
95
+ const p101 = vertex_position_to_index(x, y - 1, z);
96
+ const p110 = vertex_position_to_index(x, y, z - 1);
97
+ const p111 = vertex_position_to_index(x, y, z);
98
+
99
+
100
+ // Tessellate the grid volume into six tetrahedra per grid cell.
101
+
102
+ // prism 1
103
+ const tet_0 = make_cell(p111, p110, p010, p000);
104
+ const tet_1 = make_cell(p111, p101, p110, p000);
105
+ const tet_2 = make_cell(p110, p101, p100, p000);
106
+
107
+ // prism 2
108
+ const tet_3 = make_cell(p111, p011, p010, p000);
109
+ const tet_4 = make_cell(p111, p101, p011, p000);
110
+ const tet_5 = make_cell(p011, p101, p001, p000);
111
+
112
+ // link newly created tetrahedrons
113
+ // TODO implement
114
+
115
+ if (x > 1) {
116
+ // link to previous voxel
117
+ // TODO implement
118
+ }
119
+
120
+ if (y > 1) {
121
+ // link to previous voxel
122
+ // TODO implement
123
+ }
124
+
125
+ if (z > 1) {
126
+ // link to previous voxel
127
+ // TODO implement
128
+ }
129
+
130
+ }
131
+
132
+ }
133
+
134
+ }
135
+ }
@@ -1,17 +1,19 @@
1
- import { EngineHarness } from "../../../../engine/EngineHarness.js";
2
- import { compute_delaunay_tetrahedral_mesh } from "./delaunay/compute_delaunay_tetrahedral_mesh.js";
3
1
  import { LineBasicMaterial } from "three";
4
- import { ShadedGeometry } from "../../../../engine/graphics/ecs/mesh-v2/ShadedGeometry.js";
5
- import { DrawMode } from "../../../../engine/graphics/ecs/mesh-v2/DrawMode.js";
6
2
  import Entity from "../../../../engine/ecs/Entity.js";
7
3
  import { Transform } from "../../../../engine/ecs/transform/Transform.js";
4
+ import { EngineHarness } from "../../../../engine/EngineHarness.js";
5
+ import { DrawMode } from "../../../../engine/graphics/ecs/mesh-v2/DrawMode.js";
6
+ import { ShadedGeometry } from "../../../../engine/graphics/ecs/mesh-v2/ShadedGeometry.js";
8
7
  import { ShadedGeometrySystem } from "../../../../engine/graphics/ecs/mesh-v2/ShadedGeometrySystem.js";
9
- import { GizmoRenderingPlugin } from "../../../../engine/graphics/render/gizmo/GizmoRenderingPlugin.js";
10
8
  import { Gizmo } from "../../../../engine/graphics/render/gizmo/Gizmo.js";
11
- import { build_tetrahedral_mesh_buffer_geometry } from "./build_tetrahedral_mesh_buffer_geometry.js";
9
+ import { GizmoRenderingPlugin } from "../../../../engine/graphics/render/gizmo/GizmoRenderingPlugin.js";
12
10
  import { seededRandom } from "../../../math/random/seededRandom.js";
13
- import { randomFloatBetween } from "../../../math/random/randomFloatBetween.js";
11
+ import { number_pretty_print } from "../../../primitives/numbers/number_pretty_print.js";
14
12
  import { delay } from "../../../process/delay.js";
13
+ import { AABB3 } from "../aabb/AABB3.js";
14
+ import { make_justified_point_grid } from "../util/make_justified_point_grid.js";
15
+ import { build_tetrahedral_mesh_buffer_geometry } from "./build_tetrahedral_mesh_buffer_geometry.js";
16
+ import { compute_delaunay_tetrahedral_mesh } from "./delaunay/compute_delaunay_tetrahedral_mesh.js";
15
17
  import { TetrahedralMesh } from "./TetrahedralMesh.js";
16
18
 
17
19
  /**
@@ -44,26 +46,37 @@ async function main(engine) {
44
46
 
45
47
  const random = seededRandom();
46
48
 
47
- for (let i = 0; i < 600; i++) {
48
- points.push(
49
- randomFloatBetween(random, -100, 100),
50
- randomFloatBetween(random, 0, 150),
51
- randomFloatBetween(random, -100, 100),
52
- );
53
- }
54
-
55
- // make_justified_point_grid(new AABB3(-100, 0, -100, 100, 150, 100), 40, (x, y, z) => {
56
- // points.push(x, y, z);
57
- // });
49
+ // for (let i = 0; i < 600; i++) {
50
+ // points.push(
51
+ // randomFloatBetween(random, -100, 100),
52
+ // randomFloatBetween(random, 0, 150),
53
+ // randomFloatBetween(random, -100, 100),
54
+ // );
55
+ // }
56
+
57
+ make_justified_point_grid(
58
+ new AABB3(-100, 0, -100, 100, 150, 100),
59
+ 20,
60
+ (x, y, z) => {
61
+ points.push(x, y, z);
62
+ }
63
+ );
58
64
 
59
65
  await delay(1000);
60
66
 
61
67
  const tetrahedra = new TetrahedralMesh();
62
- // console.time('mesh build');
63
- console.profile('mesh build');
68
+ console.time('mesh build');
69
+ // console.profile('mesh build');
64
70
  compute_delaunay_tetrahedral_mesh(tetrahedra, points, points.length / 3);
65
- console.profileEnd('mesh build');
66
- // console.timeEnd('mesh build');
71
+ // tetrahedral_mesh_build_from_grid(
72
+ // tetrahedra,
73
+ // points,
74
+ // new AABB3(-100, 0, -100, 100, 100, 100),
75
+ // 64, 32, 64
76
+ // )
77
+ // console.profileEnd('mesh build');
78
+ console.timeEnd('mesh build');
79
+ console.log(`Mesh build for ${number_pretty_print(points.length / 3)} points`)
67
80
 
68
81
  console.log(tetrahedra);
69
82
 
@@ -75,7 +88,6 @@ async function main(engine) {
75
88
  const geometry = build_tetrahedral_mesh_buffer_geometry(tetrahedra, points);
76
89
 
77
90
 
78
-
79
91
  new Entity()
80
92
  .add(ShadedGeometry.from(geometry, new LineBasicMaterial({ color: 0xFF0000 }), DrawMode.LineSegments))
81
93
  .add(Transform.fromJSON({
@@ -88,7 +100,9 @@ async function main(engine) {
88
100
 
89
101
  Gizmo.color = [1, 1, 1, 1];
90
102
 
91
- for (let i = 0; i < points.length; i += 3) {
103
+ const point_count = points.length;
104
+
105
+ for (let i = 0; i < point_count; i += 3) {
92
106
 
93
107
  Gizmo.draw_solid_sphere([
94
108
  points[i] * scale[0] + offset[0],
@@ -1,7 +1,5 @@
1
1
  /**
2
- * Compute the circumcenter (center[3]) and radius squared (method
3
- * return value) of a tetrahedron defined by the four points x1, x2,
4
- * x3, and x4.
2
+ * Compute the circumcenter (center[3]) and radius squared (method return value) of a tetrahedron defined by the four points x1, x2, x3, and x4.
5
3
  *
6
4
  * @see https://github.com/Kitware/VTK/blob/ac3fd8005bce7b3da4423c305f61ffd9df9695ef/Common/DataModel/vtkTetra.cxx
7
5
  * @param {number[]} result [center_x, center_y, center_z, radius_squared]
@@ -11,5 +9,5 @@
11
9
  * @param {number} c
12
10
  * @param {number} d
13
11
  */
14
- export function compute_circumsphere(result: number[], points: number[], a: number, b: number, c: number, d: number): void;
15
- //# sourceMappingURL=compute_circumsphere.d.ts.map
12
+ export function tetrahedron_compute_circumsphere(result: number[], points: number[], a: number, b: number, c: number, d: number): void;
13
+ //# sourceMappingURL=tetrahedron_compute_circumsphere.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tetrahedron_compute_circumsphere.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/3d/tetrahedra/tetrahedron_compute_circumsphere.js"],"names":[],"mappings":"AAOA;;;;;;;;;;GAUG;AACH,yDAPW,MAAM,EAAE,UACR,MAAM,EAAE,KACR,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,QA+EhB"}
@@ -6,9 +6,7 @@ const SMALL_NUMBER = 1e-12;
6
6
  const VTK_MAX_WARNS = 3;
7
7
 
8
8
  /**
9
- * Compute the circumcenter (center[3]) and radius squared (method
10
- * return value) of a tetrahedron defined by the four points x1, x2,
11
- * x3, and x4.
9
+ * Compute the circumcenter (center[3]) and radius squared (method return value) of a tetrahedron defined by the four points x1, x2, x3, and x4.
12
10
  *
13
11
  * @see https://github.com/Kitware/VTK/blob/ac3fd8005bce7b3da4423c305f61ffd9df9695ef/Common/DataModel/vtkTetra.cxx
14
12
  * @param {number[]} result [center_x, center_y, center_z, radius_squared]
@@ -18,7 +16,7 @@ const VTK_MAX_WARNS = 3;
18
16
  * @param {number} c
19
17
  * @param {number} d
20
18
  */
21
- export function compute_circumsphere(
19
+ export function tetrahedron_compute_circumsphere(
22
20
  result,
23
21
  points,
24
22
  a, b, c, d
@@ -1 +1 @@
1
- {"version":3,"file":"tetrahedron_compute_signed_volume.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/3d/tetrahedra/tetrahedron_compute_signed_volume.js"],"names":[],"mappings":"AAgCA;;;;;;;;;GASG;AACH,0DAPW,UAAU,MAAM,CAAC,GAAC,MAAM,EAAE,GAAC,YAAY,KACvC,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,GACJ,MAAM,CA0ClB"}
1
+ {"version":3,"file":"tetrahedron_compute_signed_volume.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/3d/tetrahedra/tetrahedron_compute_signed_volume.js"],"names":[],"mappings":"AAkCA;;;;;;;;;GASG;AACH,0DAPW,UAAU,MAAM,CAAC,GAAC,MAAM,EAAE,GAAC,YAAY,KACvC,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,GACJ,MAAM,CA0ClB"}
@@ -1,3 +1,5 @@
1
+ const ONE_OVER_SIX = 1.0 / 6.0;
2
+
1
3
  /**
2
4
  * Compute signed volume of a tetrahedron with the last point at the origin
3
5
  * @see "EFFICIENT FEATURE EXTRACTION FOR 2D/3D OBJECTS IN MESH REPRESENTATION" by Cha Zhang and Tsuhan Chen
@@ -25,7 +27,7 @@ function triangle_compute_signed_volume(
25
27
  const v213 = bx * ay * cz;
26
28
  const v123 = ax * by * cz;
27
29
 
28
- return (1.0 / 6.0) * (-v321 + v231 + v312 - v132 - v213 + v123);
30
+ return ONE_OVER_SIX * (-v321 + v231 + v312 - v132 - v213 + v123);
29
31
 
30
32
  }
31
33
 
@@ -1 +1 @@
1
- {"version":3,"file":"Quaternion.d.ts","sourceRoot":"","sources":["../../../../src/core/geom/Quaternion.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Quaternion.d.ts","sourceRoot":"","sources":["../../../../src/core/geom/Quaternion.js"],"names":[],"mappings":"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"}
@@ -1,8 +1,3 @@
1
- /**
2
- * Created by Alex on 10/03/14.
3
- */
4
-
5
-
6
1
  import { assert } from "../assert.js";
7
2
  import Signal from "../events/signal/Signal.js";
8
3
  import { clamp } from "../math/clamp.js";
@@ -1 +1 @@
1
- {"version":3,"file":"Vector3.d.ts","sourceRoot":"","sources":["../../../../src/core/geom/Vector3.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Vector3.d.ts","sourceRoot":"","sources":["../../../../src/core/geom/Vector3.js"],"names":[],"mappings":"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"}
@@ -598,6 +598,7 @@ class Vector3 {
598
598
  const y = this.y;
599
599
  const z = this.z;
600
600
 
601
+ // This is just 3x3 matrix multiplication
601
602
  const _x = m4[0] * x + m4[4] * y + m4[8] * z;
602
603
  const _y = m4[1] * x + m4[5] * y + m4[9] * z;
603
604
  const _z = m4[2] * x + m4[6] * y + m4[10] * z;
@@ -1 +1 @@
1
- {"version":3,"file":"Vector4.d.ts","sourceRoot":"","sources":["../../../../src/core/geom/Vector4.js"],"names":[],"mappings":";AAUA;IA2WI;;;;;;OAMG;IACH,gBALW,OAAO,MACP,OAAO,qBAEP,OAAO,QASjB;IAxXD;;;;;;;;OAQG;IACH,4DAOC;IANG,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IAEV,eAA6B;IAGjC,gBAEC;IAED,gBAEC;IAED,gBAEC;IAED,gBAEC;IAED;;;;OAIG;IACH,qBAHW,MAAM,EAAE,WACR,MAAM,QAShB;IAED;;;;OAIG;IACH,oBAHW,MAAM,EAAE,WACR,MAAM,QAOhB;IAED;;;;;;;OAOG;IACH,iDAFa,OAAO,CAkCnB;IAED;;;OAGG;IACH,mCAMC;IAED;;;;OAIG;IACH,+BAFa,OAAO,CAOnB;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,kBAlBW,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,GACJ,OAAO,CAoBnB;IAED;;;;OAIG;IACH,WAHW,OAAO,GACL,MAAM,CAIlB;IAED;;;;OAIG;IACH,SAHW,UAAQ,OAAO,GACb,OAAO,CASnB;IAED;;;;OAIG;IACH,+BAFa,OAAO,CAUnB;IAED;;;;OAIG;IACH,WAHW,OAAO,GACL,OAAO,CAInB;IAED;;;OAGG;IACH,SAFa,OAAO,CAQnB;IAED;;;OAGG;IACH,qCAuBC;IAED;;;;OAIG;IACH,aAHW,OAAO,GACL,OAAO,CAInB;IAED;;;OAGG;IACH,QAFY,MAAM,CASjB;IAED;;;;OAIG;IACH,gBAJW,OAAO,MACP,OAAO,mBAKjB;IAED;;;OAGG;IACH,gBAFW,MAAM,EAAE,QAOlB;IAED;;OAEG;IACH,WAFa,MAAM,EAAE,CAQpB;IAED;;;;OAIG;IACH,mBAHW,MAAM,EAAE,UACR,MAAM,QAIhB;IAED;;;;;MAOC;IAED,0BAEC;IAED;;;OAGG;IACH,2CAKC;IAED;;;OAGG;IACH,6CAOC;IAED,sDAOC;CAiBJ"}
1
+ {"version":3,"file":"Vector4.d.ts","sourceRoot":"","sources":["../../../../src/core/geom/Vector4.js"],"names":[],"mappings":";AAMA;IA2WI;;;;;;OAMG;IACH,gBALW,OAAO,MACP,OAAO,qBAEP,OAAO,QASjB;IAxXD;;;;;;;;OAQG;IACH,4DAOC;IANG,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IAEV,eAA6B;IAGjC,gBAEC;IAED,gBAEC;IAED,gBAEC;IAED,gBAEC;IAED;;;;OAIG;IACH,qBAHW,MAAM,EAAE,WACR,MAAM,QAShB;IAED;;;;OAIG;IACH,oBAHW,MAAM,EAAE,WACR,MAAM,QAOhB;IAED;;;;;;;OAOG;IACH,iDAFa,OAAO,CAkCnB;IAED;;;OAGG;IACH,mCAMC;IAED;;;;OAIG;IACH,+BAFa,OAAO,CAOnB;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,kBAlBW,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,GACJ,OAAO,CAoBnB;IAED;;;;OAIG;IACH,WAHW,OAAO,GACL,MAAM,CAIlB;IAED;;;;OAIG;IACH,SAHW,UAAQ,OAAO,GACb,OAAO,CASnB;IAED;;;;OAIG;IACH,+BAFa,OAAO,CAUnB;IAED;;;;OAIG;IACH,WAHW,OAAO,GACL,OAAO,CAInB;IAED;;;OAGG;IACH,SAFa,OAAO,CAQnB;IAED;;;OAGG;IACH,qCAuBC;IAED;;;;OAIG;IACH,aAHW,OAAO,GACL,OAAO,CAInB;IAED;;;OAGG;IACH,QAFY,MAAM,CASjB;IAED;;;;OAIG;IACH,gBAJW,OAAO,MACP,OAAO,mBAKjB;IAED;;;OAGG;IACH,gBAFW,MAAM,EAAE,QAOlB;IAED;;OAEG;IACH,WAFa,MAAM,EAAE,CAQpB;IAED;;;;OAIG;IACH,mBAHW,MAAM,EAAE,UACR,MAAM,QAIhB;IAED;;;;;MAOC;IAED,0BAEC;IAED;;;OAGG;IACH,2CAKC;IAED;;;OAGG;IACH,6CAOC;IAED,sDAOC;CAiBJ"}
@@ -1,7 +1,3 @@
1
- /**
2
- * Created by Alex on 29/12/2015.
3
- */
4
-
5
1
  import { assert } from "../assert.js";
6
2
  import { computeHashIntegerArray } from "../collection/array/computeHashIntegerArray.js";
7
3
  import { Signal } from "../events/signal/Signal.js";
@@ -0,0 +1,8 @@
1
+ /**
2
+ *
3
+ * @param {mat3} out
4
+ * @param {mat3} a
5
+ * @param {vec3} v
6
+ */
7
+ export function m3_multiply_vec3(out: mat3, a: mat3, v: vec3): void;
8
+ //# sourceMappingURL=m3_multiply_vec3.d.ts.map