three-nebula 11.0.0 → 11.1.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 (248) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/three-nebula.cjs +109 -0
  3. package/dist/three-nebula.cjs.map +1 -0
  4. package/dist/three-nebula.mjs +2969 -0
  5. package/dist/three-nebula.mjs.map +1 -0
  6. package/dist/three-nebula.umd.js +109 -0
  7. package/dist/three-nebula.umd.js.map +1 -0
  8. package/package.json +23 -47
  9. package/specs/01-emitter-hierarchy.md +200 -0
  10. package/specs/02-determinism-scrubbing.md +188 -0
  11. package/specs/03-sound-renderer.md +183 -0
  12. package/specs/04-schema-versioning.md +140 -0
  13. package/specs/05-content-addressed-assets.md +288 -0
  14. package/specs/README.md +80 -0
  15. package/build/cjs/behaviour/Alpha.js +0 -189
  16. package/build/cjs/behaviour/Attraction.js +0 -189
  17. package/build/cjs/behaviour/Behaviour.js +0 -253
  18. package/build/cjs/behaviour/Collision.js +0 -146
  19. package/build/cjs/behaviour/Color.js +0 -148
  20. package/build/cjs/behaviour/CrossZone.js +0 -141
  21. package/build/cjs/behaviour/Force.js +0 -126
  22. package/build/cjs/behaviour/Gravity.js +0 -78
  23. package/build/cjs/behaviour/RandomDrift.js +0 -153
  24. package/build/cjs/behaviour/Repulsion.js +0 -123
  25. package/build/cjs/behaviour/Rotate.js +0 -265
  26. package/build/cjs/behaviour/Scale.js +0 -177
  27. package/build/cjs/behaviour/Spring.js +0 -133
  28. package/build/cjs/behaviour/constants.js +0 -28
  29. package/build/cjs/behaviour/index.js +0 -112
  30. package/build/cjs/behaviour/types.js +0 -33
  31. package/build/cjs/constants/index.js +0 -61
  32. package/build/cjs/core/Particle.js +0 -390
  33. package/build/cjs/core/Pool.js +0 -203
  34. package/build/cjs/core/System.js +0 -366
  35. package/build/cjs/core/constants.js +0 -163
  36. package/build/cjs/core/fromJSON.js +0 -128
  37. package/build/cjs/core/fromJSONAsync.js +0 -239
  38. package/build/cjs/core/index.js +0 -32
  39. package/build/cjs/core/three/Euler.js +0 -233
  40. package/build/cjs/core/three/Math.js +0 -91
  41. package/build/cjs/core/three/Matrix4.js +0 -745
  42. package/build/cjs/core/three/Quaternion.js +0 -451
  43. package/build/cjs/core/three/Vector3.js +0 -464
  44. package/build/cjs/core/three/constants.js +0 -298
  45. package/build/cjs/core/three/index.js +0 -48
  46. package/build/cjs/core/types.js +0 -13
  47. package/build/cjs/debug/Debug.js +0 -209
  48. package/build/cjs/debug/constants.js +0 -19
  49. package/build/cjs/debug/index.js +0 -24
  50. package/build/cjs/debug/log.js +0 -38
  51. package/build/cjs/ease/index.js +0 -149
  52. package/build/cjs/emitter/Emitter.js +0 -798
  53. package/build/cjs/emitter/FollowEmitter.js +0 -146
  54. package/build/cjs/emitter/constants.js +0 -20
  55. package/build/cjs/emitter/index.js +0 -24
  56. package/build/cjs/emitter/types.js +0 -11
  57. package/build/cjs/events/EventDispatcher.js +0 -105
  58. package/build/cjs/events/constants.js +0 -23
  59. package/build/cjs/events/index.js +0 -27
  60. package/build/cjs/index.js +0 -151
  61. package/build/cjs/initializer/Body.js +0 -122
  62. package/build/cjs/initializer/BodySprite.js +0 -146
  63. package/build/cjs/initializer/Initializer.js +0 -109
  64. package/build/cjs/initializer/InitializerUtil.js +0 -54
  65. package/build/cjs/initializer/Life.js +0 -106
  66. package/build/cjs/initializer/Mass.js +0 -101
  67. package/build/cjs/initializer/Position.js +0 -152
  68. package/build/cjs/initializer/Radius.js +0 -118
  69. package/build/cjs/initializer/Rate.js +0 -150
  70. package/build/cjs/initializer/Rotation.js +0 -95
  71. package/build/cjs/initializer/Texture.js +0 -139
  72. package/build/cjs/initializer/Velocity/PolarVelocity.js +0 -102
  73. package/build/cjs/initializer/Velocity/RadialVelocity.js +0 -111
  74. package/build/cjs/initializer/Velocity/VectorVelocity.js +0 -108
  75. package/build/cjs/initializer/Velocity/Velocity.js +0 -94
  76. package/build/cjs/initializer/Velocity/index.js +0 -32
  77. package/build/cjs/initializer/constants.js +0 -43
  78. package/build/cjs/initializer/index.js +0 -108
  79. package/build/cjs/initializer/types.js +0 -37
  80. package/build/cjs/math/ArraySpan.js +0 -103
  81. package/build/cjs/math/Box.js +0 -46
  82. package/build/cjs/math/ColorSpan.js +0 -113
  83. package/build/cjs/math/MathUtils.js +0 -57
  84. package/build/cjs/math/Polar3D.js +0 -115
  85. package/build/cjs/math/Span.js +0 -88
  86. package/build/cjs/math/Vector3D.js +0 -76
  87. package/build/cjs/math/constants.js +0 -35
  88. package/build/cjs/math/index.js +0 -122
  89. package/build/cjs/math/integration.js +0 -59
  90. package/build/cjs/math/types.js +0 -19
  91. package/build/cjs/renderer/BaseRenderer.js +0 -108
  92. package/build/cjs/renderer/CustomRenderer.js +0 -65
  93. package/build/cjs/renderer/GPURenderer/Desktop/index.js +0 -371
  94. package/build/cjs/renderer/GPURenderer/Desktop/shaders/fragmentShader.js +0 -13
  95. package/build/cjs/renderer/GPURenderer/Desktop/shaders/index.js +0 -22
  96. package/build/cjs/renderer/GPURenderer/Desktop/shaders/vertexShader.js +0 -17
  97. package/build/cjs/renderer/GPURenderer/Mobile/index.js +0 -385
  98. package/build/cjs/renderer/GPURenderer/Mobile/shaders/fragmentShader.js +0 -13
  99. package/build/cjs/renderer/GPURenderer/Mobile/shaders/index.js +0 -22
  100. package/build/cjs/renderer/GPURenderer/Mobile/shaders/vertexShader.js +0 -15
  101. package/build/cjs/renderer/GPURenderer/common/ParticleBuffer/constants.js +0 -58
  102. package/build/cjs/renderer/GPURenderer/common/ParticleBuffer/index.js +0 -93
  103. package/build/cjs/renderer/GPURenderer/common/TextureAtlas/constants.js +0 -9
  104. package/build/cjs/renderer/GPURenderer/common/TextureAtlas/index.js +0 -221
  105. package/build/cjs/renderer/GPURenderer/common/constants.js +0 -22
  106. package/build/cjs/renderer/GPURenderer/common/index.js +0 -38
  107. package/build/cjs/renderer/GPURenderer/common/shaders/constants.js +0 -9
  108. package/build/cjs/renderer/GPURenderer/common/stores/Target.js +0 -45
  109. package/build/cjs/renderer/GPURenderer/common/stores/UniqueList.js +0 -51
  110. package/build/cjs/renderer/GPURenderer/common/stores/index.js +0 -22
  111. package/build/cjs/renderer/GPURenderer/index.js +0 -97
  112. package/build/cjs/renderer/MeshRenderer.js +0 -136
  113. package/build/cjs/renderer/SpriteRenderer.js +0 -68
  114. package/build/cjs/renderer/index.js +0 -40
  115. package/build/cjs/renderer/types.js +0 -21
  116. package/build/cjs/utils/ColorUtil.js +0 -39
  117. package/build/cjs/utils/PUID.js +0 -26
  118. package/build/cjs/utils/THREEUtil.js +0 -40
  119. package/build/cjs/utils/Util.js +0 -69
  120. package/build/cjs/utils/index.js +0 -61
  121. package/build/cjs/utils/uid.js +0 -12
  122. package/build/cjs/zone/BoxZone.js +0 -178
  123. package/build/cjs/zone/LineZone.js +0 -101
  124. package/build/cjs/zone/MeshZone.js +0 -101
  125. package/build/cjs/zone/PointZone.js +0 -99
  126. package/build/cjs/zone/ScreenZone.js +0 -164
  127. package/build/cjs/zone/SphereZone.js +0 -155
  128. package/build/cjs/zone/Zone.js +0 -172
  129. package/build/cjs/zone/index.js +0 -56
  130. package/build/cjs/zone/types.js +0 -21
  131. package/build/esm/behaviour/Alpha.js +0 -134
  132. package/build/esm/behaviour/Attraction.js +0 -135
  133. package/build/esm/behaviour/Behaviour.js +0 -215
  134. package/build/esm/behaviour/Collision.js +0 -100
  135. package/build/esm/behaviour/Color.js +0 -101
  136. package/build/esm/behaviour/CrossZone.js +0 -82
  137. package/build/esm/behaviour/Force.js +0 -83
  138. package/build/esm/behaviour/Gravity.js +0 -40
  139. package/build/esm/behaviour/RandomDrift.js +0 -97
  140. package/build/esm/behaviour/Repulsion.js +0 -81
  141. package/build/esm/behaviour/Rotate.js +0 -214
  142. package/build/esm/behaviour/Scale.js +0 -131
  143. package/build/esm/behaviour/Spring.js +0 -90
  144. package/build/esm/behaviour/constants.js +0 -11
  145. package/build/esm/behaviour/index.js +0 -14
  146. package/build/esm/behaviour/types.js +0 -14
  147. package/build/esm/constants/index.js +0 -42
  148. package/build/esm/core/Particle.js +0 -357
  149. package/build/esm/core/Pool.js +0 -161
  150. package/build/esm/core/System.js +0 -320
  151. package/build/esm/core/constants.js +0 -127
  152. package/build/esm/core/fromJSON.js +0 -107
  153. package/build/esm/core/fromJSONAsync.js +0 -210
  154. package/build/esm/core/index.js +0 -4
  155. package/build/esm/core/three/Euler.js +0 -224
  156. package/build/esm/core/three/Math.js +0 -84
  157. package/build/esm/core/three/Matrix4.js +0 -739
  158. package/build/esm/core/three/Quaternion.js +0 -445
  159. package/build/esm/core/three/Vector3.js +0 -457
  160. package/build/esm/core/three/constants.js +0 -148
  161. package/build/esm/core/three/index.js +0 -5
  162. package/build/esm/core/types.js +0 -4
  163. package/build/esm/debug/Debug.js +0 -195
  164. package/build/esm/debug/constants.js +0 -7
  165. package/build/esm/debug/index.js +0 -3
  166. package/build/esm/debug/log.js +0 -31
  167. package/build/esm/ease/index.js +0 -113
  168. package/build/esm/emitter/Emitter.js +0 -708
  169. package/build/esm/emitter/FollowEmitter.js +0 -97
  170. package/build/esm/emitter/constants.js +0 -7
  171. package/build/esm/emitter/index.js +0 -3
  172. package/build/esm/emitter/types.js +0 -3
  173. package/build/esm/events/EventDispatcher.js +0 -82
  174. package/build/esm/events/constants.js +0 -9
  175. package/build/esm/events/index.js +0 -4
  176. package/build/esm/index.js +0 -13
  177. package/build/esm/initializer/Body.js +0 -83
  178. package/build/esm/initializer/BodySprite.js +0 -108
  179. package/build/esm/initializer/Initializer.js +0 -84
  180. package/build/esm/initializer/InitializerUtil.js +0 -48
  181. package/build/esm/initializer/Life.js +0 -66
  182. package/build/esm/initializer/Mass.js +0 -60
  183. package/build/esm/initializer/Position.js +0 -98
  184. package/build/esm/initializer/Radius.js +0 -75
  185. package/build/esm/initializer/Rate.js +0 -107
  186. package/build/esm/initializer/Rotation.js +0 -54
  187. package/build/esm/initializer/Texture.js +0 -101
  188. package/build/esm/initializer/Velocity/PolarVelocity.js +0 -63
  189. package/build/esm/initializer/Velocity/RadialVelocity.js +0 -72
  190. package/build/esm/initializer/Velocity/VectorVelocity.js +0 -69
  191. package/build/esm/initializer/Velocity/Velocity.js +0 -52
  192. package/build/esm/initializer/Velocity/index.js +0 -4
  193. package/build/esm/initializer/constants.js +0 -26
  194. package/build/esm/initializer/index.js +0 -12
  195. package/build/esm/initializer/types.js +0 -16
  196. package/build/esm/math/ArraySpan.js +0 -62
  197. package/build/esm/math/Box.js +0 -25
  198. package/build/esm/math/ColorSpan.js +0 -71
  199. package/build/esm/math/MathUtils.js +0 -48
  200. package/build/esm/math/Polar3D.js +0 -81
  201. package/build/esm/math/Span.js +0 -63
  202. package/build/esm/math/Vector3D.js +0 -34
  203. package/build/esm/math/constants.js +0 -24
  204. package/build/esm/math/index.js +0 -10
  205. package/build/esm/math/integration.js +0 -47
  206. package/build/esm/math/types.js +0 -7
  207. package/build/esm/renderer/BaseRenderer.js +0 -78
  208. package/build/esm/renderer/CustomRenderer.js +0 -23
  209. package/build/esm/renderer/GPURenderer/Desktop/index.js +0 -357
  210. package/build/esm/renderer/GPURenderer/Desktop/shaders/fragmentShader.js +0 -30
  211. package/build/esm/renderer/GPURenderer/Desktop/shaders/index.js +0 -3
  212. package/build/esm/renderer/GPURenderer/Desktop/shaders/vertexShader.js +0 -36
  213. package/build/esm/renderer/GPURenderer/Mobile/index.js +0 -375
  214. package/build/esm/renderer/GPURenderer/Mobile/shaders/fragmentShader.js +0 -27
  215. package/build/esm/renderer/GPURenderer/Mobile/shaders/index.js +0 -3
  216. package/build/esm/renderer/GPURenderer/Mobile/shaders/vertexShader.js +0 -33
  217. package/build/esm/renderer/GPURenderer/common/ParticleBuffer/constants.js +0 -30
  218. package/build/esm/renderer/GPURenderer/common/ParticleBuffer/index.js +0 -70
  219. package/build/esm/renderer/GPURenderer/common/TextureAtlas/constants.js +0 -2
  220. package/build/esm/renderer/GPURenderer/common/TextureAtlas/index.js +0 -206
  221. package/build/esm/renderer/GPURenderer/common/constants.js +0 -13
  222. package/build/esm/renderer/GPURenderer/common/index.js +0 -4
  223. package/build/esm/renderer/GPURenderer/common/shaders/constants.js +0 -2
  224. package/build/esm/renderer/GPURenderer/common/stores/Target.js +0 -26
  225. package/build/esm/renderer/GPURenderer/common/stores/UniqueList.js +0 -29
  226. package/build/esm/renderer/GPURenderer/common/stores/index.js +0 -3
  227. package/build/esm/renderer/GPURenderer/index.js +0 -57
  228. package/build/esm/renderer/MeshRenderer.js +0 -93
  229. package/build/esm/renderer/SpriteRenderer.js +0 -30
  230. package/build/esm/renderer/index.js +0 -5
  231. package/build/esm/renderer/types.js +0 -8
  232. package/build/esm/utils/ColorUtil.js +0 -32
  233. package/build/esm/utils/PUID.js +0 -19
  234. package/build/esm/utils/THREEUtil.js +0 -31
  235. package/build/esm/utils/Util.js +0 -60
  236. package/build/esm/utils/index.js +0 -13
  237. package/build/esm/utils/uid.js +0 -3
  238. package/build/esm/zone/BoxZone.js +0 -133
  239. package/build/esm/zone/LineZone.js +0 -61
  240. package/build/esm/zone/MeshZone.js +0 -60
  241. package/build/esm/zone/PointZone.js +0 -59
  242. package/build/esm/zone/ScreenZone.js +0 -116
  243. package/build/esm/zone/SphereZone.js +0 -113
  244. package/build/esm/zone/Zone.js +0 -141
  245. package/build/esm/zone/index.js +0 -7
  246. package/build/esm/zone/types.js +0 -8
  247. package/build/three-nebula.js +0 -2
  248. package/build/three-nebula.js.map +0 -1
@@ -1,81 +0,0 @@
1
- import Vector3D from './Vector3D';
2
- import { MATH_TYPE_POLAR_3D as type } from './types';
3
- export default class Polar3D {
4
- constructor(radius, theta, phi) {
5
- /**
6
- * @desc The class type.
7
- * @type {string}
8
- */
9
- this.type = type;
10
- this.radius = radius || 1;
11
- this.phi = phi || 0;
12
- this.theta = theta || 0;
13
- }
14
-
15
- set(radius, theta, phi) {
16
- this.radius = radius || 1;
17
- this.phi = phi || 0;
18
- this.theta = theta || 0;
19
- return this;
20
- }
21
-
22
- setRadius(radius) {
23
- this.radius = radius;
24
- return this;
25
- }
26
-
27
- setPhi(phi) {
28
- this.phi = phi;
29
- return this;
30
- }
31
-
32
- setTheta(theta) {
33
- this.theta = theta;
34
- return this;
35
- }
36
-
37
- copy(p) {
38
- this.radius = p.radius;
39
- this.phi = p.phi;
40
- this.theta = p.theta;
41
- return this;
42
- }
43
-
44
- toVector3D() {
45
- return new Vector3D(this.getX(), this.getY(), this.getZ());
46
- }
47
-
48
- getX() {
49
- return this.radius * Math.sin(this.theta) * Math.cos(this.phi);
50
- }
51
-
52
- getY() {
53
- return -this.radius * Math.sin(this.theta) * Math.sin(this.phi);
54
- }
55
-
56
- getZ() {
57
- return this.radius * Math.cos(this.theta);
58
- }
59
-
60
- normalize() {
61
- this.radius = 1;
62
- return this;
63
- }
64
-
65
- equals(v) {
66
- return v.radius === this.radius && v.phi === this.phi && v.theta === this.theta;
67
- }
68
-
69
- clear() {
70
- this.radius = 0.0;
71
- this.phi = 0.0;
72
- this.theta = 0.0;
73
- return this;
74
- }
75
-
76
- clone() {
77
- return new Polar3D(this.radius, this.phi, this.theta);
78
- }
79
-
80
- }
81
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tYXRoL1BvbGFyM0QuanMiXSwibmFtZXMiOlsiVmVjdG9yM0QiLCJNQVRIX1RZUEVfUE9MQVJfM0QiLCJ0eXBlIiwiUG9sYXIzRCIsImNvbnN0cnVjdG9yIiwicmFkaXVzIiwidGhldGEiLCJwaGkiLCJzZXQiLCJzZXRSYWRpdXMiLCJzZXRQaGkiLCJzZXRUaGV0YSIsImNvcHkiLCJwIiwidG9WZWN0b3IzRCIsImdldFgiLCJnZXRZIiwiZ2V0WiIsIk1hdGgiLCJzaW4iLCJjb3MiLCJub3JtYWxpemUiLCJlcXVhbHMiLCJ2IiwiY2xlYXIiLCJjbG9uZSJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsUUFBUCxNQUFxQixZQUFyQjtBQUNBLFNBQVNDLGtCQUFrQixJQUFJQyxJQUEvQixRQUEyQyxTQUEzQztBQUVBLGVBQWUsTUFBTUMsT0FBTixDQUFjO0FBQzNCQyxFQUFBQSxXQUFXLENBQUNDLE1BQUQsRUFBU0MsS0FBVCxFQUFnQkMsR0FBaEIsRUFBcUI7QUFDOUI7QUFDSjtBQUNBO0FBQ0E7QUFDSSxTQUFLTCxJQUFMLEdBQVlBLElBQVo7QUFDQSxTQUFLRyxNQUFMLEdBQWNBLE1BQU0sSUFBSSxDQUF4QjtBQUNBLFNBQUtFLEdBQUwsR0FBV0EsR0FBRyxJQUFJLENBQWxCO0FBQ0EsU0FBS0QsS0FBTCxHQUFhQSxLQUFLLElBQUksQ0FBdEI7QUFDRDs7QUFFREUsRUFBQUEsR0FBRyxDQUFDSCxNQUFELEVBQVNDLEtBQVQsRUFBZ0JDLEdBQWhCLEVBQXFCO0FBQ3RCLFNBQUtGLE1BQUwsR0FBY0EsTUFBTSxJQUFJLENBQXhCO0FBQ0EsU0FBS0UsR0FBTCxHQUFXQSxHQUFHLElBQUksQ0FBbEI7QUFDQSxTQUFLRCxLQUFMLEdBQWFBLEtBQUssSUFBSSxDQUF0QjtBQUVBLFdBQU8sSUFBUDtBQUNEOztBQUVERyxFQUFBQSxTQUFTLENBQUNKLE1BQUQsRUFBUztBQUNoQixTQUFLQSxNQUFMLEdBQWNBLE1BQWQ7QUFFQSxXQUFPLElBQVA7QUFDRDs7QUFFREssRUFBQUEsTUFBTSxDQUFDSCxHQUFELEVBQU07QUFDVixTQUFLQSxHQUFMLEdBQVdBLEdBQVg7QUFFQSxXQUFPLElBQVA7QUFDRDs7QUFFREksRUFBQUEsUUFBUSxDQUFDTCxLQUFELEVBQVE7QUFDZCxTQUFLQSxLQUFMLEdBQWFBLEtBQWI7QUFFQSxXQUFPLElBQVA7QUFDRDs7QUFFRE0sRUFBQUEsSUFBSSxDQUFDQyxDQUFELEVBQUk7QUFDTixTQUFLUixNQUFMLEdBQWNRLENBQUMsQ0FBQ1IsTUFBaEI7QUFDQSxTQUFLRSxHQUFMLEdBQVdNLENBQUMsQ0FBQ04sR0FBYjtBQUNBLFNBQUtELEtBQUwsR0FBYU8sQ0FBQyxDQUFDUCxLQUFmO0FBRUEsV0FBTyxJQUFQO0FBQ0Q7O0FBRURRLEVBQUFBLFVBQVUsR0FBRztBQUNYLFdBQU8sSUFBSWQsUUFBSixDQUFhLEtBQUtlLElBQUwsRUFBYixFQUEwQixLQUFLQyxJQUFMLEVBQTFCLEVBQXVDLEtBQUtDLElBQUwsRUFBdkMsQ0FBUDtBQUNEOztBQUVERixFQUFBQSxJQUFJLEdBQUc7QUFDTCxXQUFPLEtBQUtWLE1BQUwsR0FBY2EsSUFBSSxDQUFDQyxHQUFMLENBQVMsS0FBS2IsS0FBZCxDQUFkLEdBQXFDWSxJQUFJLENBQUNFLEdBQUwsQ0FBUyxLQUFLYixHQUFkLENBQTVDO0FBQ0Q7O0FBRURTLEVBQUFBLElBQUksR0FBRztBQUNMLFdBQU8sQ0FBQyxLQUFLWCxNQUFOLEdBQWVhLElBQUksQ0FBQ0MsR0FBTCxDQUFTLEtBQUtiLEtBQWQsQ0FBZixHQUFzQ1ksSUFBSSxDQUFDQyxHQUFMLENBQVMsS0FBS1osR0FBZCxDQUE3QztBQUNEOztBQUVEVSxFQUFBQSxJQUFJLEdBQUc7QUFDTCxXQUFPLEtBQUtaLE1BQUwsR0FBY2EsSUFBSSxDQUFDRSxHQUFMLENBQVMsS0FBS2QsS0FBZCxDQUFyQjtBQUNEOztBQUVEZSxFQUFBQSxTQUFTLEdBQUc7QUFDVixTQUFLaEIsTUFBTCxHQUFjLENBQWQ7QUFFQSxXQUFPLElBQVA7QUFDRDs7QUFFRGlCLEVBQUFBLE1BQU0sQ0FBQ0MsQ0FBRCxFQUFJO0FBQ1IsV0FDRUEsQ0FBQyxDQUFDbEIsTUFBRixLQUFhLEtBQUtBLE1BQWxCLElBQTRCa0IsQ0FBQyxDQUFDaEIsR0FBRixLQUFVLEtBQUtBLEdBQTNDLElBQWtEZ0IsQ0FBQyxDQUFDakIsS0FBRixLQUFZLEtBQUtBLEtBRHJFO0FBR0Q7O0FBRURrQixFQUFBQSxLQUFLLEdBQUc7QUFDTixTQUFLbkIsTUFBTCxHQUFjLEdBQWQ7QUFDQSxTQUFLRSxHQUFMLEdBQVcsR0FBWDtBQUNBLFNBQUtELEtBQUwsR0FBYSxHQUFiO0FBRUEsV0FBTyxJQUFQO0FBQ0Q7O0FBRURtQixFQUFBQSxLQUFLLEdBQUc7QUFDTixXQUFPLElBQUl0QixPQUFKLENBQVksS0FBS0UsTUFBakIsRUFBeUIsS0FBS0UsR0FBOUIsRUFBbUMsS0FBS0QsS0FBeEMsQ0FBUDtBQUNEOztBQXBGMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVmVjdG9yM0QgZnJvbSAnLi9WZWN0b3IzRCc7XG5pbXBvcnQgeyBNQVRIX1RZUEVfUE9MQVJfM0QgYXMgdHlwZSB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQb2xhcjNEIHtcbiAgY29uc3RydWN0b3IocmFkaXVzLCB0aGV0YSwgcGhpKSB7XG4gICAgLyoqXG4gICAgICogQGRlc2MgVGhlIGNsYXNzIHR5cGUuXG4gICAgICogQHR5cGUge3N0cmluZ31cbiAgICAgKi9cbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMucmFkaXVzID0gcmFkaXVzIHx8IDE7XG4gICAgdGhpcy5waGkgPSBwaGkgfHwgMDtcbiAgICB0aGlzLnRoZXRhID0gdGhldGEgfHwgMDtcbiAgfVxuXG4gIHNldChyYWRpdXMsIHRoZXRhLCBwaGkpIHtcbiAgICB0aGlzLnJhZGl1cyA9IHJhZGl1cyB8fCAxO1xuICAgIHRoaXMucGhpID0gcGhpIHx8IDA7XG4gICAgdGhpcy50aGV0YSA9IHRoZXRhIHx8IDA7XG5cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHNldFJhZGl1cyhyYWRpdXMpIHtcbiAgICB0aGlzLnJhZGl1cyA9IHJhZGl1cztcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgc2V0UGhpKHBoaSkge1xuICAgIHRoaXMucGhpID0gcGhpO1xuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzZXRUaGV0YSh0aGV0YSkge1xuICAgIHRoaXMudGhldGEgPSB0aGV0YTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgY29weShwKSB7XG4gICAgdGhpcy5yYWRpdXMgPSBwLnJhZGl1cztcbiAgICB0aGlzLnBoaSA9IHAucGhpO1xuICAgIHRoaXMudGhldGEgPSBwLnRoZXRhO1xuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICB0b1ZlY3RvcjNEKCkge1xuICAgIHJldHVybiBuZXcgVmVjdG9yM0QodGhpcy5nZXRYKCksIHRoaXMuZ2V0WSgpLCB0aGlzLmdldFooKSk7XG4gIH1cblxuICBnZXRYKCkge1xuICAgIHJldHVybiB0aGlzLnJhZGl1cyAqIE1hdGguc2luKHRoaXMudGhldGEpICogTWF0aC5jb3ModGhpcy5waGkpO1xuICB9XG5cbiAgZ2V0WSgpIHtcbiAgICByZXR1cm4gLXRoaXMucmFkaXVzICogTWF0aC5zaW4odGhpcy50aGV0YSkgKiBNYXRoLnNpbih0aGlzLnBoaSk7XG4gIH1cblxuICBnZXRaKCkge1xuICAgIHJldHVybiB0aGlzLnJhZGl1cyAqIE1hdGguY29zKHRoaXMudGhldGEpO1xuICB9XG5cbiAgbm9ybWFsaXplKCkge1xuICAgIHRoaXMucmFkaXVzID0gMTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgZXF1YWxzKHYpIHtcbiAgICByZXR1cm4gKFxuICAgICAgdi5yYWRpdXMgPT09IHRoaXMucmFkaXVzICYmIHYucGhpID09PSB0aGlzLnBoaSAmJiB2LnRoZXRhID09PSB0aGlzLnRoZXRhXG4gICAgKTtcbiAgfVxuXG4gIGNsZWFyKCkge1xuICAgIHRoaXMucmFkaXVzID0gMC4wO1xuICAgIHRoaXMucGhpID0gMC4wO1xuICAgIHRoaXMudGhldGEgPSAwLjA7XG5cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGNsb25lKCkge1xuICAgIHJldHVybiBuZXcgUG9sYXIzRCh0aGlzLnJhZGl1cywgdGhpcy5waGksIHRoaXMudGhldGEpO1xuICB9XG59XG4iXX0=
@@ -1,63 +0,0 @@
1
- import MathUtils from './MathUtils';
2
- import Util from '../utils/Util';
3
- import { MATH_TYPE_SPAN as type } from './types';
4
- export default class Span {
5
- /**
6
- * Span Class. Get a random Number from a to b. Or from c-a to c+b
7
- * @param {Number|Array} a - min number
8
- * @param {Number} b - max number
9
- * @param {Number} center - the center's z value
10
- * @example
11
- * var span = new Span(0,30);
12
- * or
13
- * var span = new Span(["#fff","#ff0","#000"]);
14
- * or
15
- * var span = new Span(5,1,"center");
16
- * @extends {Zone}
17
- * @constructor
18
- */
19
- constructor(a, b, center) {
20
- this._isArray = false;
21
- /**
22
- * @desc The class type.
23
- * @type {string}
24
- */
25
-
26
- this.type = type;
27
-
28
- if (Util.isArray(a)) {
29
- this._isArray = true;
30
- this.a = a;
31
- } else {
32
- this.a = Util.initValue(a, 1);
33
- this.b = Util.initValue(b, this.a);
34
- this._center = Util.initValue(center, false);
35
- }
36
- }
37
- /**
38
- * Span.getValue function
39
- * @name get a random Number from a to b. Or get a random Number from c-a to c+b
40
- * @param {number} INT or int
41
- * @return {number} a random Number
42
- */
43
-
44
-
45
- getValue(INT) {
46
- if (this._isArray) {
47
- return this.a[this.a.length * Math.random() >> 0];
48
- } else {
49
- if (!this._center) return MathUtils.randomAToB(this.a, this.b, INT);else return MathUtils.randomFloating(this.a, this.b, INT);
50
- }
51
- }
52
-
53
- }
54
- export const createSpan = (a, b, c) => {
55
- if (a instanceof Span) return a;
56
-
57
- if (b === undefined) {
58
- return new Span(a);
59
- } else {
60
- if (c === undefined) return new Span(a, b);else return new Span(a, b, c);
61
- }
62
- };
63
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tYXRoL1NwYW4uanMiXSwibmFtZXMiOlsiTWF0aFV0aWxzIiwiVXRpbCIsIk1BVEhfVFlQRV9TUEFOIiwidHlwZSIsIlNwYW4iLCJjb25zdHJ1Y3RvciIsImEiLCJiIiwiY2VudGVyIiwiX2lzQXJyYXkiLCJpc0FycmF5IiwiaW5pdFZhbHVlIiwiX2NlbnRlciIsImdldFZhbHVlIiwiSU5UIiwibGVuZ3RoIiwiTWF0aCIsInJhbmRvbSIsInJhbmRvbUFUb0IiLCJyYW5kb21GbG9hdGluZyIsImNyZWF0ZVNwYW4iLCJjIiwidW5kZWZpbmVkIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxTQUFQLE1BQXNCLGFBQXRCO0FBQ0EsT0FBT0MsSUFBUCxNQUFpQixlQUFqQjtBQUNBLFNBQVNDLGNBQWMsSUFBSUMsSUFBM0IsUUFBdUMsU0FBdkM7QUFFQSxlQUFlLE1BQU1DLElBQU4sQ0FBVztBQUN4QjtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0VDLEVBQUFBLFdBQVcsQ0FBQ0MsQ0FBRCxFQUFJQyxDQUFKLEVBQU9DLE1BQVAsRUFBZTtBQUN4QixTQUFLQyxRQUFMLEdBQWdCLEtBQWhCO0FBRUE7QUFDSjtBQUNBO0FBQ0E7O0FBQ0ksU0FBS04sSUFBTCxHQUFZQSxJQUFaOztBQUVBLFFBQUlGLElBQUksQ0FBQ1MsT0FBTCxDQUFhSixDQUFiLENBQUosRUFBcUI7QUFDbkIsV0FBS0csUUFBTCxHQUFnQixJQUFoQjtBQUNBLFdBQUtILENBQUwsR0FBU0EsQ0FBVDtBQUNELEtBSEQsTUFHTztBQUNMLFdBQUtBLENBQUwsR0FBU0wsSUFBSSxDQUFDVSxTQUFMLENBQWVMLENBQWYsRUFBa0IsQ0FBbEIsQ0FBVDtBQUNBLFdBQUtDLENBQUwsR0FBU04sSUFBSSxDQUFDVSxTQUFMLENBQWVKLENBQWYsRUFBa0IsS0FBS0QsQ0FBdkIsQ0FBVDtBQUNBLFdBQUtNLE9BQUwsR0FBZVgsSUFBSSxDQUFDVSxTQUFMLENBQWVILE1BQWYsRUFBdUIsS0FBdkIsQ0FBZjtBQUNEO0FBQ0Y7QUFFRDtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUNFSyxFQUFBQSxRQUFRLENBQUNDLEdBQUQsRUFBTTtBQUNaLFFBQUksS0FBS0wsUUFBVCxFQUFtQjtBQUNqQixhQUFPLEtBQUtILENBQUwsQ0FBUSxLQUFLQSxDQUFMLENBQU9TLE1BQVAsR0FBZ0JDLElBQUksQ0FBQ0MsTUFBTCxFQUFqQixJQUFtQyxDQUExQyxDQUFQO0FBQ0QsS0FGRCxNQUVPO0FBQ0wsVUFBSSxDQUFDLEtBQUtMLE9BQVYsRUFBbUIsT0FBT1osU0FBUyxDQUFDa0IsVUFBVixDQUFxQixLQUFLWixDQUExQixFQUE2QixLQUFLQyxDQUFsQyxFQUFxQ08sR0FBckMsQ0FBUCxDQUFuQixLQUNLLE9BQU9kLFNBQVMsQ0FBQ21CLGNBQVYsQ0FBeUIsS0FBS2IsQ0FBOUIsRUFBaUMsS0FBS0MsQ0FBdEMsRUFBeUNPLEdBQXpDLENBQVA7QUFDTjtBQUNGOztBQS9DdUI7QUFrRDFCLE9BQU8sTUFBTU0sVUFBVSxHQUFHLENBQUNkLENBQUQsRUFBSUMsQ0FBSixFQUFPYyxDQUFQLEtBQWE7QUFDckMsTUFBSWYsQ0FBQyxZQUFZRixJQUFqQixFQUF1QixPQUFPRSxDQUFQOztBQUV2QixNQUFJQyxDQUFDLEtBQUtlLFNBQVYsRUFBcUI7QUFDbkIsV0FBTyxJQUFJbEIsSUFBSixDQUFTRSxDQUFULENBQVA7QUFDRCxHQUZELE1BRU87QUFDTCxRQUFJZSxDQUFDLEtBQUtDLFNBQVYsRUFBcUIsT0FBTyxJQUFJbEIsSUFBSixDQUFTRSxDQUFULEVBQVlDLENBQVosQ0FBUCxDQUFyQixLQUNLLE9BQU8sSUFBSUgsSUFBSixDQUFTRSxDQUFULEVBQVlDLENBQVosRUFBZWMsQ0FBZixDQUFQO0FBQ047QUFDRixDQVRNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE1hdGhVdGlscyBmcm9tICcuL01hdGhVdGlscyc7XG5pbXBvcnQgVXRpbCBmcm9tICcuLi91dGlscy9VdGlsJztcbmltcG9ydCB7IE1BVEhfVFlQRV9TUEFOIGFzIHR5cGUgfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3BhbiB7XG4gIC8qKlxuICAgKiBTcGFuIENsYXNzLiBHZXQgYSByYW5kb20gTnVtYmVyIGZyb20gYSB0byBiLiBPciBmcm9tIGMtYSB0byBjK2JcbiAgICogQHBhcmFtIHtOdW1iZXJ8QXJyYXl9IGEgLSBtaW4gbnVtYmVyXG4gICAqIEBwYXJhbSB7TnVtYmVyfSBiIC0gbWF4IG51bWJlclxuICAgKiBAcGFyYW0ge051bWJlcn0gY2VudGVyIC0gdGhlIGNlbnRlcidzIHogdmFsdWVcbiAgICogQGV4YW1wbGVcbiAgICogdmFyIHNwYW4gPSBuZXcgU3BhbigwLDMwKTtcbiAgICogb3JcbiAgICogdmFyIHNwYW4gPSBuZXcgU3BhbihbXCIjZmZmXCIsXCIjZmYwXCIsXCIjMDAwXCJdKTtcbiAgICogb3JcbiAgICogdmFyIHNwYW4gPSBuZXcgU3Bhbig1LDEsXCJjZW50ZXJcIik7XG4gICAqIEBleHRlbmRzIHtab25lfVxuICAgKiBAY29uc3RydWN0b3JcbiAgICovXG4gIGNvbnN0cnVjdG9yKGEsIGIsIGNlbnRlcikge1xuICAgIHRoaXMuX2lzQXJyYXkgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjIFRoZSBjbGFzcyB0eXBlLlxuICAgICAqIEB0eXBlIHtzdHJpbmd9XG4gICAgICovXG4gICAgdGhpcy50eXBlID0gdHlwZTtcblxuICAgIGlmIChVdGlsLmlzQXJyYXkoYSkpIHtcbiAgICAgIHRoaXMuX2lzQXJyYXkgPSB0cnVlO1xuICAgICAgdGhpcy5hID0gYTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5hID0gVXRpbC5pbml0VmFsdWUoYSwgMSk7XG4gICAgICB0aGlzLmIgPSBVdGlsLmluaXRWYWx1ZShiLCB0aGlzLmEpO1xuICAgICAgdGhpcy5fY2VudGVyID0gVXRpbC5pbml0VmFsdWUoY2VudGVyLCBmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNwYW4uZ2V0VmFsdWUgZnVuY3Rpb25cbiAgICogQG5hbWUgZ2V0IGEgcmFuZG9tIE51bWJlciBmcm9tIGEgdG8gYi4gT3IgZ2V0IGEgcmFuZG9tIE51bWJlciBmcm9tIGMtYSB0byBjK2JcbiAgICogQHBhcmFtIHtudW1iZXJ9IElOVCBvciBpbnRcbiAgICogQHJldHVybiB7bnVtYmVyfSBhIHJhbmRvbSBOdW1iZXJcbiAgICovXG4gIGdldFZhbHVlKElOVCkge1xuICAgIGlmICh0aGlzLl9pc0FycmF5KSB7XG4gICAgICByZXR1cm4gdGhpcy5hWyh0aGlzLmEubGVuZ3RoICogTWF0aC5yYW5kb20oKSkgPj4gMF07XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghdGhpcy5fY2VudGVyKSByZXR1cm4gTWF0aFV0aWxzLnJhbmRvbUFUb0IodGhpcy5hLCB0aGlzLmIsIElOVCk7XG4gICAgICBlbHNlIHJldHVybiBNYXRoVXRpbHMucmFuZG9tRmxvYXRpbmcodGhpcy5hLCB0aGlzLmIsIElOVCk7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVTcGFuID0gKGEsIGIsIGMpID0+IHtcbiAgaWYgKGEgaW5zdGFuY2VvZiBTcGFuKSByZXR1cm4gYTtcblxuICBpZiAoYiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIG5ldyBTcGFuKGEpO1xuICB9IGVsc2Uge1xuICAgIGlmIChjID09PSB1bmRlZmluZWQpIHJldHVybiBuZXcgU3BhbihhLCBiKTtcbiAgICBlbHNlIHJldHVybiBuZXcgU3BhbihhLCBiLCBjKTtcbiAgfVxufTtcbiJdfQ==
@@ -1,34 +0,0 @@
1
- import { Euler, Vector3 } from '../core/three/';
2
- export default class Vector3D extends Vector3 {
3
- clear() {
4
- this.x = 0.0;
5
- this.y = 0.0;
6
- this.z = 0.0;
7
- return this;
8
- }
9
-
10
- scalar(s) {
11
- this.x *= s;
12
- this.y *= s;
13
- this.z *= s;
14
- return this;
15
- }
16
-
17
- addValue(a, b, c) {
18
- this.x += a;
19
- this.y += b;
20
- this.z += c;
21
- return this;
22
- }
23
-
24
- toString() {
25
- return 'x:' + this.x + 'y:' + this.y + 'z:' + this.z;
26
- }
27
-
28
- eulerFromDir(vector3D) {
29
- const euler = new Euler();
30
- return euler.setFromVector3(vector3D);
31
- }
32
-
33
- }
34
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tYXRoL1ZlY3RvcjNELmpzIl0sIm5hbWVzIjpbIkV1bGVyIiwiVmVjdG9yMyIsIlZlY3RvcjNEIiwiY2xlYXIiLCJ4IiwieSIsInoiLCJzY2FsYXIiLCJzIiwiYWRkVmFsdWUiLCJhIiwiYiIsImMiLCJ0b1N0cmluZyIsImV1bGVyRnJvbURpciIsInZlY3RvcjNEIiwiZXVsZXIiLCJzZXRGcm9tVmVjdG9yMyJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsS0FBVCxFQUFnQkMsT0FBaEIsUUFBK0IsZ0JBQS9CO0FBRUEsZUFBZSxNQUFNQyxRQUFOLFNBQXVCRCxPQUF2QixDQUErQjtBQUM1Q0UsRUFBQUEsS0FBSyxHQUFHO0FBQ04sU0FBS0MsQ0FBTCxHQUFTLEdBQVQ7QUFDQSxTQUFLQyxDQUFMLEdBQVMsR0FBVDtBQUNBLFNBQUtDLENBQUwsR0FBUyxHQUFUO0FBRUEsV0FBTyxJQUFQO0FBQ0Q7O0FBRURDLEVBQUFBLE1BQU0sQ0FBQ0MsQ0FBRCxFQUFJO0FBQ1IsU0FBS0osQ0FBTCxJQUFVSSxDQUFWO0FBQ0EsU0FBS0gsQ0FBTCxJQUFVRyxDQUFWO0FBQ0EsU0FBS0YsQ0FBTCxJQUFVRSxDQUFWO0FBRUEsV0FBTyxJQUFQO0FBQ0Q7O0FBRURDLEVBQUFBLFFBQVEsQ0FBQ0MsQ0FBRCxFQUFJQyxDQUFKLEVBQU9DLENBQVAsRUFBVTtBQUNoQixTQUFLUixDQUFMLElBQVVNLENBQVY7QUFDQSxTQUFLTCxDQUFMLElBQVVNLENBQVY7QUFDQSxTQUFLTCxDQUFMLElBQVVNLENBQVY7QUFFQSxXQUFPLElBQVA7QUFDRDs7QUFFREMsRUFBQUEsUUFBUSxHQUFHO0FBQ1QsV0FBTyxPQUFPLEtBQUtULENBQVosR0FBZ0IsSUFBaEIsR0FBdUIsS0FBS0MsQ0FBNUIsR0FBZ0MsSUFBaEMsR0FBdUMsS0FBS0MsQ0FBbkQ7QUFDRDs7QUFFRFEsRUFBQUEsWUFBWSxDQUFDQyxRQUFELEVBQVc7QUFDckIsVUFBTUMsS0FBSyxHQUFHLElBQUloQixLQUFKLEVBQWQ7QUFFQSxXQUFPZ0IsS0FBSyxDQUFDQyxjQUFOLENBQXFCRixRQUFyQixDQUFQO0FBQ0Q7O0FBakMyQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV1bGVyLCBWZWN0b3IzIH0gZnJvbSAnLi4vY29yZS90aHJlZS8nO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZWN0b3IzRCBleHRlbmRzIFZlY3RvcjMge1xuICBjbGVhcigpIHtcbiAgICB0aGlzLnggPSAwLjA7XG4gICAgdGhpcy55ID0gMC4wO1xuICAgIHRoaXMueiA9IDAuMDtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgc2NhbGFyKHMpIHtcbiAgICB0aGlzLnggKj0gcztcbiAgICB0aGlzLnkgKj0gcztcbiAgICB0aGlzLnogKj0gcztcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgYWRkVmFsdWUoYSwgYiwgYykge1xuICAgIHRoaXMueCArPSBhO1xuICAgIHRoaXMueSArPSBiO1xuICAgIHRoaXMueiArPSBjO1xuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICB0b1N0cmluZygpIHtcbiAgICByZXR1cm4gJ3g6JyArIHRoaXMueCArICd5OicgKyB0aGlzLnkgKyAnejonICsgdGhpcy56O1xuICB9XG5cbiAgZXVsZXJGcm9tRGlyKHZlY3RvcjNEKSB7XG4gICAgY29uc3QgZXVsZXIgPSBuZXcgRXVsZXIoKTtcblxuICAgIHJldHVybiBldWxlci5zZXRGcm9tVmVjdG9yMyh2ZWN0b3IzRCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,24 +0,0 @@
1
- /**
2
- * @see https://en.wikipedia.org/wiki/Euler_method
3
- * @type {string}
4
- */
5
- export const INTEGRATION_TYPE_EULER = 'EULER';
6
- /**
7
- * @see http://web.mit.edu/10.001/Web/Course_Notes/Differential_Equations_Notes/node5.html
8
- * @type {string}
9
- */
10
-
11
- export const INTEGRATION_TYPE_RK2 = 'RUNGE_KUTTA_2';
12
- /**
13
- * @see http://web.mit.edu/10.001/Web/Course_Notes/Differential_Equations_Notes/node5.html
14
- * @type {string}
15
- */
16
-
17
- export const INTEGRATION_TYPE_RK4 = 'RUNGE_KUTTA_4';
18
- /**
19
- * @see https://en.wikipedia.org/wiki/Verlet_integration
20
- * @type {string}
21
- */
22
-
23
- export const INTEGRATION_TYPE_VERLET = 'VERLET';
24
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tYXRoL2NvbnN0YW50cy5qcyJdLCJuYW1lcyI6WyJJTlRFR1JBVElPTl9UWVBFX0VVTEVSIiwiSU5URUdSQVRJT05fVFlQRV9SSzIiLCJJTlRFR1JBVElPTl9UWVBFX1JLNCIsIklOVEVHUkFUSU9OX1RZUEVfVkVSTEVUIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU8sTUFBTUEsc0JBQXNCLEdBQUcsT0FBL0I7QUFFUDtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxPQUFPLE1BQU1DLG9CQUFvQixHQUFHLGVBQTdCO0FBRVA7QUFDQTtBQUNBO0FBQ0E7O0FBQ0EsT0FBTyxNQUFNQyxvQkFBb0IsR0FBRyxlQUE3QjtBQUVQO0FBQ0E7QUFDQTtBQUNBOztBQUNBLE9BQU8sTUFBTUMsdUJBQXVCLEdBQUcsUUFBaEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzZWUgaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvRXVsZXJfbWV0aG9kXG4gKiBAdHlwZSB7c3RyaW5nfVxuICovXG5leHBvcnQgY29uc3QgSU5URUdSQVRJT05fVFlQRV9FVUxFUiA9ICdFVUxFUic7XG5cbi8qKlxuICogQHNlZSBodHRwOi8vd2ViLm1pdC5lZHUvMTAuMDAxL1dlYi9Db3Vyc2VfTm90ZXMvRGlmZmVyZW50aWFsX0VxdWF0aW9uc19Ob3Rlcy9ub2RlNS5odG1sXG4gKiBAdHlwZSB7c3RyaW5nfVxuICovXG5leHBvcnQgY29uc3QgSU5URUdSQVRJT05fVFlQRV9SSzIgPSAnUlVOR0VfS1VUVEFfMic7XG5cbi8qKlxuICogQHNlZSBodHRwOi8vd2ViLm1pdC5lZHUvMTAuMDAxL1dlYi9Db3Vyc2VfTm90ZXMvRGlmZmVyZW50aWFsX0VxdWF0aW9uc19Ob3Rlcy9ub2RlNS5odG1sXG4gKiBAdHlwZSB7c3RyaW5nfVxuICovXG5leHBvcnQgY29uc3QgSU5URUdSQVRJT05fVFlQRV9SSzQgPSAnUlVOR0VfS1VUVEFfNCc7XG5cbi8qKlxuICogQHNlZSBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9WZXJsZXRfaW50ZWdyYXRpb25cbiAqIEB0eXBlIHtzdHJpbmd9XG4gKi9cbmV4cG9ydCBjb25zdCBJTlRFR1JBVElPTl9UWVBFX1ZFUkxFVCA9ICdWRVJMRVQnO1xuIl19
@@ -1,10 +0,0 @@
1
- export { default as ArraySpan, createArraySpan } from './ArraySpan';
2
- export { default as ColorSpan, createColorSpan } from './ColorSpan';
3
- export { default as Box } from './Box';
4
- export { integrate } from './integration';
5
- export { default as MathUtils } from './MathUtils';
6
- export { default as Polar3D } from './Polar3D';
7
- export { default as Span, createSpan } from './Span';
8
- export { default as Vector3D } from './Vector3D';
9
- export { INTEGRATION_TYPE_EULER, INTEGRATION_TYPE_RK2, INTEGRATION_TYPE_RK4, INTEGRATION_TYPE_VERLET } from './constants';
10
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tYXRoL2luZGV4LmpzIl0sIm5hbWVzIjpbImRlZmF1bHQiLCJBcnJheVNwYW4iLCJjcmVhdGVBcnJheVNwYW4iLCJDb2xvclNwYW4iLCJjcmVhdGVDb2xvclNwYW4iLCJCb3giLCJpbnRlZ3JhdGUiLCJNYXRoVXRpbHMiLCJQb2xhcjNEIiwiU3BhbiIsImNyZWF0ZVNwYW4iLCJWZWN0b3IzRCIsIklOVEVHUkFUSU9OX1RZUEVfRVVMRVIiLCJJTlRFR1JBVElPTl9UWVBFX1JLMiIsIklOVEVHUkFUSU9OX1RZUEVfUks0IiwiSU5URUdSQVRJT05fVFlQRV9WRVJMRVQiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLE9BQU8sSUFBSUMsU0FBcEIsRUFBK0JDLGVBQS9CLFFBQXNELGFBQXREO0FBQ0EsU0FBU0YsT0FBTyxJQUFJRyxTQUFwQixFQUErQkMsZUFBL0IsUUFBc0QsYUFBdEQ7QUFDQSxTQUFTSixPQUFPLElBQUlLLEdBQXBCLFFBQStCLE9BQS9CO0FBQ0EsU0FBU0MsU0FBVCxRQUEwQixlQUExQjtBQUNBLFNBQVNOLE9BQU8sSUFBSU8sU0FBcEIsUUFBcUMsYUFBckM7QUFDQSxTQUFTUCxPQUFPLElBQUlRLE9BQXBCLFFBQW1DLFdBQW5DO0FBQ0EsU0FBU1IsT0FBTyxJQUFJUyxJQUFwQixFQUEwQkMsVUFBMUIsUUFBNEMsUUFBNUM7QUFDQSxTQUFTVixPQUFPLElBQUlXLFFBQXBCLFFBQW9DLFlBQXBDO0FBQ0EsU0FDRUMsc0JBREYsRUFFRUMsb0JBRkYsRUFHRUMsb0JBSEYsRUFJRUMsdUJBSkYsUUFLTyxhQUxQIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgZGVmYXVsdCBhcyBBcnJheVNwYW4sIGNyZWF0ZUFycmF5U3BhbiB9IGZyb20gJy4vQXJyYXlTcGFuJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQ29sb3JTcGFuLCBjcmVhdGVDb2xvclNwYW4gfSBmcm9tICcuL0NvbG9yU3Bhbic7XG5leHBvcnQgeyBkZWZhdWx0IGFzIEJveCB9IGZyb20gJy4vQm94JztcbmV4cG9ydCB7IGludGVncmF0ZSB9IGZyb20gJy4vaW50ZWdyYXRpb24nO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBNYXRoVXRpbHMgfSBmcm9tICcuL01hdGhVdGlscyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFBvbGFyM0QgfSBmcm9tICcuL1BvbGFyM0QnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBTcGFuLCBjcmVhdGVTcGFuIH0gZnJvbSAnLi9TcGFuJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVmVjdG9yM0QgfSBmcm9tICcuL1ZlY3RvcjNEJztcbmV4cG9ydCB7XG4gIElOVEVHUkFUSU9OX1RZUEVfRVVMRVIsXG4gIElOVEVHUkFUSU9OX1RZUEVfUksyLFxuICBJTlRFR1JBVElPTl9UWVBFX1JLNCxcbiAgSU5URUdSQVRJT05fVFlQRV9WRVJMRVRcbn0gZnJvbSAnLi9jb25zdGFudHMnO1xuIl19
@@ -1,47 +0,0 @@
1
- import { INTEGRATION_TYPE_EULER } from './constants';
2
- import { DEFAULT_SYSTEM_DELTA } from '../core/constants';
3
- /**
4
- * Performs euler integration on the particle.
5
- *
6
- * @param {Particle} particle - The particle to integrate
7
- * @param {number} time - The factor of time to use
8
- * @param {number} damping - The damping to use
9
- * @return void
10
- */
11
-
12
- const eulerIntegration = (particle, time, damping) => {
13
- if (particle.sleep) {
14
- return;
15
- }
16
-
17
- particle.old.position.copy(particle.position);
18
- particle.old.velocity.copy(particle.velocity);
19
- particle.acceleration.scalar(1 / particle.mass);
20
- particle.velocity.add(particle.acceleration.scalar(time));
21
- particle.position.add(particle.old.velocity.scalar(time));
22
- damping && particle.velocity.scalar(Math.pow(damping, time / DEFAULT_SYSTEM_DELTA));
23
- particle.acceleration.clear();
24
- };
25
- /**
26
- * Performs the chosen integration on the particle.
27
- * Defaults to euler integration.
28
- *
29
- * @param {Particle} particle - The particle to integrate
30
- * @param {number} time - The factor of time to use
31
- * @param {number} damping - The damping to use
32
- * @param {string} [type=INTEGRATION_TYPE_EULER] - The algorithm to use
33
- * @return void
34
- */
35
-
36
-
37
- export const integrate = (particle, time, damping, type = INTEGRATION_TYPE_EULER) => {
38
- switch (type) {
39
- case INTEGRATION_TYPE_EULER:
40
- eulerIntegration(particle, time, damping);
41
- break;
42
-
43
- default:
44
- eulerIntegration(particle, time, damping);
45
- }
46
- };
47
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tYXRoL2ludGVncmF0aW9uLmpzIl0sIm5hbWVzIjpbIklOVEVHUkFUSU9OX1RZUEVfRVVMRVIiLCJERUZBVUxUX1NZU1RFTV9ERUxUQSIsImV1bGVySW50ZWdyYXRpb24iLCJwYXJ0aWNsZSIsInRpbWUiLCJkYW1waW5nIiwic2xlZXAiLCJvbGQiLCJwb3NpdGlvbiIsImNvcHkiLCJ2ZWxvY2l0eSIsImFjY2VsZXJhdGlvbiIsInNjYWxhciIsIm1hc3MiLCJhZGQiLCJNYXRoIiwicG93IiwiY2xlYXIiLCJpbnRlZ3JhdGUiLCJ0eXBlIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxzQkFBVCxRQUF1QyxhQUF2QztBQUNBLFNBQVNDLG9CQUFULFFBQXFDLG1CQUFyQztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBQ0EsTUFBTUMsZ0JBQWdCLEdBQUcsQ0FBQ0MsUUFBRCxFQUFXQyxJQUFYLEVBQWlCQyxPQUFqQixLQUE2QjtBQUNwRCxNQUFJRixRQUFRLENBQUNHLEtBQWIsRUFBb0I7QUFDbEI7QUFDRDs7QUFFREgsRUFBQUEsUUFBUSxDQUFDSSxHQUFULENBQWFDLFFBQWIsQ0FBc0JDLElBQXRCLENBQTJCTixRQUFRLENBQUNLLFFBQXBDO0FBQ0FMLEVBQUFBLFFBQVEsQ0FBQ0ksR0FBVCxDQUFhRyxRQUFiLENBQXNCRCxJQUF0QixDQUEyQk4sUUFBUSxDQUFDTyxRQUFwQztBQUNBUCxFQUFBQSxRQUFRLENBQUNRLFlBQVQsQ0FBc0JDLE1BQXRCLENBQTZCLElBQUlULFFBQVEsQ0FBQ1UsSUFBMUM7QUFDQVYsRUFBQUEsUUFBUSxDQUFDTyxRQUFULENBQWtCSSxHQUFsQixDQUFzQlgsUUFBUSxDQUFDUSxZQUFULENBQXNCQyxNQUF0QixDQUE2QlIsSUFBN0IsQ0FBdEI7QUFDQUQsRUFBQUEsUUFBUSxDQUFDSyxRQUFULENBQWtCTSxHQUFsQixDQUFzQlgsUUFBUSxDQUFDSSxHQUFULENBQWFHLFFBQWIsQ0FBc0JFLE1BQXRCLENBQTZCUixJQUE3QixDQUF0QjtBQUNBQyxFQUFBQSxPQUFPLElBQ0xGLFFBQVEsQ0FBQ08sUUFBVCxDQUFrQkUsTUFBbEIsQ0FBeUJHLElBQUksQ0FBQ0MsR0FBTCxDQUFTWCxPQUFULEVBQWtCRCxJQUFJLEdBQUdILG9CQUF6QixDQUF6QixDQURGO0FBRUFFLEVBQUFBLFFBQVEsQ0FBQ1EsWUFBVCxDQUFzQk0sS0FBdEI7QUFDRCxDQWJEO0FBZUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUNBLE9BQU8sTUFBTUMsU0FBUyxHQUFHLENBQ3ZCZixRQUR1QixFQUV2QkMsSUFGdUIsRUFHdkJDLE9BSHVCLEVBSXZCYyxJQUFJLEdBQUduQixzQkFKZ0IsS0FLcEI7QUFDSCxVQUFRbUIsSUFBUjtBQUNFLFNBQUtuQixzQkFBTDtBQUNFRSxNQUFBQSxnQkFBZ0IsQ0FBQ0MsUUFBRCxFQUFXQyxJQUFYLEVBQWlCQyxPQUFqQixDQUFoQjtBQUNBOztBQUNGO0FBQ0VILE1BQUFBLGdCQUFnQixDQUFDQyxRQUFELEVBQVdDLElBQVgsRUFBaUJDLE9BQWpCLENBQWhCO0FBTEo7QUFPRCxDQWJNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU5URUdSQVRJT05fVFlQRV9FVUxFUiB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IERFRkFVTFRfU1lTVEVNX0RFTFRBIH0gZnJvbSAnLi4vY29yZS9jb25zdGFudHMnO1xuXG4vKipcbiAqIFBlcmZvcm1zIGV1bGVyIGludGVncmF0aW9uIG9uIHRoZSBwYXJ0aWNsZS5cbiAqXG4gKiBAcGFyYW0ge1BhcnRpY2xlfSBwYXJ0aWNsZSAtIFRoZSBwYXJ0aWNsZSB0byBpbnRlZ3JhdGVcbiAqIEBwYXJhbSB7bnVtYmVyfSB0aW1lIC0gVGhlIGZhY3RvciBvZiB0aW1lIHRvIHVzZVxuICogQHBhcmFtIHtudW1iZXJ9IGRhbXBpbmcgLSBUaGUgZGFtcGluZyB0byB1c2VcbiAqIEByZXR1cm4gdm9pZFxuICovXG5jb25zdCBldWxlckludGVncmF0aW9uID0gKHBhcnRpY2xlLCB0aW1lLCBkYW1waW5nKSA9PiB7XG4gIGlmIChwYXJ0aWNsZS5zbGVlcCkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHBhcnRpY2xlLm9sZC5wb3NpdGlvbi5jb3B5KHBhcnRpY2xlLnBvc2l0aW9uKTtcbiAgcGFydGljbGUub2xkLnZlbG9jaXR5LmNvcHkocGFydGljbGUudmVsb2NpdHkpO1xuICBwYXJ0aWNsZS5hY2NlbGVyYXRpb24uc2NhbGFyKDEgLyBwYXJ0aWNsZS5tYXNzKTtcbiAgcGFydGljbGUudmVsb2NpdHkuYWRkKHBhcnRpY2xlLmFjY2VsZXJhdGlvbi5zY2FsYXIodGltZSkpO1xuICBwYXJ0aWNsZS5wb3NpdGlvbi5hZGQocGFydGljbGUub2xkLnZlbG9jaXR5LnNjYWxhcih0aW1lKSk7XG4gIGRhbXBpbmcgJiZcbiAgICBwYXJ0aWNsZS52ZWxvY2l0eS5zY2FsYXIoTWF0aC5wb3coZGFtcGluZywgdGltZSAvIERFRkFVTFRfU1lTVEVNX0RFTFRBKSk7XG4gIHBhcnRpY2xlLmFjY2VsZXJhdGlvbi5jbGVhcigpO1xufTtcblxuLyoqXG4gKiBQZXJmb3JtcyB0aGUgY2hvc2VuIGludGVncmF0aW9uIG9uIHRoZSBwYXJ0aWNsZS5cbiAqIERlZmF1bHRzIHRvIGV1bGVyIGludGVncmF0aW9uLlxuICpcbiAqIEBwYXJhbSB7UGFydGljbGV9IHBhcnRpY2xlIC0gVGhlIHBhcnRpY2xlIHRvIGludGVncmF0ZVxuICogQHBhcmFtIHtudW1iZXJ9IHRpbWUgLSBUaGUgZmFjdG9yIG9mIHRpbWUgdG8gdXNlXG4gKiBAcGFyYW0ge251bWJlcn0gZGFtcGluZyAtIFRoZSBkYW1waW5nIHRvIHVzZVxuICogQHBhcmFtIHtzdHJpbmd9IFt0eXBlPUlOVEVHUkFUSU9OX1RZUEVfRVVMRVJdIC0gVGhlIGFsZ29yaXRobSB0byB1c2VcbiAqIEByZXR1cm4gdm9pZFxuICovXG5leHBvcnQgY29uc3QgaW50ZWdyYXRlID0gKFxuICBwYXJ0aWNsZSxcbiAgdGltZSxcbiAgZGFtcGluZyxcbiAgdHlwZSA9IElOVEVHUkFUSU9OX1RZUEVfRVVMRVJcbikgPT4ge1xuICBzd2l0Y2ggKHR5cGUpIHtcbiAgICBjYXNlIElOVEVHUkFUSU9OX1RZUEVfRVVMRVI6XG4gICAgICBldWxlckludGVncmF0aW9uKHBhcnRpY2xlLCB0aW1lLCBkYW1waW5nKTtcbiAgICAgIGJyZWFrO1xuICAgIGRlZmF1bHQ6XG4gICAgICBldWxlckludGVncmF0aW9uKHBhcnRpY2xlLCB0aW1lLCBkYW1waW5nKTtcbiAgfVxufTtcbiJdfQ==
@@ -1,7 +0,0 @@
1
- export const MATH_TYPE_ARRAY_SPAN = 'ArraySpan';
2
- export const MATH_TYPE_COLOR_SPAN = 'ColorSpan';
3
- export const MATH_TYPE_BOX = 'Box';
4
- export const MATH_TYPE_POLAR_3D = 'Polar3D';
5
- export const MATH_TYPE_SPAN = 'Span';
6
- export const MATH_TYPE_VECTOR_3D = 'Vector3D';
7
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tYXRoL3R5cGVzLmpzIl0sIm5hbWVzIjpbIk1BVEhfVFlQRV9BUlJBWV9TUEFOIiwiTUFUSF9UWVBFX0NPTE9SX1NQQU4iLCJNQVRIX1RZUEVfQk9YIiwiTUFUSF9UWVBFX1BPTEFSXzNEIiwiTUFUSF9UWVBFX1NQQU4iLCJNQVRIX1RZUEVfVkVDVE9SXzNEIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU1BLG9CQUFvQixHQUFHLFdBQTdCO0FBQ1AsT0FBTyxNQUFNQyxvQkFBb0IsR0FBRyxXQUE3QjtBQUNQLE9BQU8sTUFBTUMsYUFBYSxHQUFHLEtBQXRCO0FBQ1AsT0FBTyxNQUFNQyxrQkFBa0IsR0FBRyxTQUEzQjtBQUNQLE9BQU8sTUFBTUMsY0FBYyxHQUFHLE1BQXZCO0FBQ1AsT0FBTyxNQUFNQyxtQkFBbUIsR0FBRyxVQUE1QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBNQVRIX1RZUEVfQVJSQVlfU1BBTiA9ICdBcnJheVNwYW4nO1xuZXhwb3J0IGNvbnN0IE1BVEhfVFlQRV9DT0xPUl9TUEFOID0gJ0NvbG9yU3Bhbic7XG5leHBvcnQgY29uc3QgTUFUSF9UWVBFX0JPWCA9ICdCb3gnO1xuZXhwb3J0IGNvbnN0IE1BVEhfVFlQRV9QT0xBUl8zRCA9ICdQb2xhcjNEJztcbmV4cG9ydCBjb25zdCBNQVRIX1RZUEVfU1BBTiA9ICdTcGFuJztcbmV4cG9ydCBjb25zdCBNQVRIX1RZUEVfVkVDVE9SXzNEID0gJ1ZlY3RvcjNEJztcbiJdfQ==
@@ -1,78 +0,0 @@
1
- import { PARTICLE_CREATED, PARTICLE_DEAD, PARTICLE_UPDATE, SYSTEM_UPDATE } from '../events/constants';
2
- import { RENDERER_TYPE_BASE } from './types';
3
- import { __DEV__ } from '../constants';
4
- export default class BaseRenderer {
5
- constructor(type = RENDERER_TYPE_BASE) {
6
- /**
7
- * @desc The class type.
8
- * @type {string}
9
- */
10
- this.type = type;
11
- }
12
-
13
- init(system) {
14
- var self = this;
15
- this.system = system;
16
- this.system.eventDispatcher.addEventListener(SYSTEM_UPDATE, function (system) {
17
- self.onSystemUpdate.call(self, system);
18
- });
19
- this.system.eventDispatcher.addEventListener(PARTICLE_CREATED, function (particle) {
20
- self.onParticleCreated.call(self, particle);
21
- });
22
- this.system.eventDispatcher.addEventListener(PARTICLE_UPDATE, function (particle) {
23
- self.onParticleUpdate.call(self, particle);
24
- });
25
- this.system.eventDispatcher.addEventListener(PARTICLE_DEAD, function (particle) {
26
- self.onParticleDead.call(self, particle);
27
- });
28
- this.logRendererType();
29
- }
30
-
31
- remove() {
32
- this.system = null;
33
- }
34
- /**
35
- * @abstract
36
- */
37
-
38
-
39
- onParticleCreated(particle) {} // eslint-disable-line
40
-
41
- /**
42
- * @abstract
43
- */
44
-
45
-
46
- onParticleUpdate(particle) {} // eslint-disable-line
47
-
48
- /**
49
- * @abstract
50
- */
51
-
52
-
53
- onParticleDead(particle) {} // eslint-disable-line
54
-
55
- /**
56
- * @abstract
57
- */
58
-
59
-
60
- onSystemUpdate(system) {} // eslint-disable-line
61
-
62
- /**
63
- * Logs the renderer type being used when in development mode.
64
- *
65
- * @return void
66
- */
67
-
68
-
69
- logRendererType() {
70
- if (!__DEV__) {
71
- return;
72
- }
73
-
74
- console.log(`${this.type}`);
75
- }
76
-
77
- }
78
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZW5kZXJlci9CYXNlUmVuZGVyZXIuanMiXSwibmFtZXMiOlsiUEFSVElDTEVfQ1JFQVRFRCIsIlBBUlRJQ0xFX0RFQUQiLCJQQVJUSUNMRV9VUERBVEUiLCJTWVNURU1fVVBEQVRFIiwiUkVOREVSRVJfVFlQRV9CQVNFIiwiX19ERVZfXyIsIkJhc2VSZW5kZXJlciIsImNvbnN0cnVjdG9yIiwidHlwZSIsImluaXQiLCJzeXN0ZW0iLCJzZWxmIiwiZXZlbnREaXNwYXRjaGVyIiwiYWRkRXZlbnRMaXN0ZW5lciIsIm9uU3lzdGVtVXBkYXRlIiwiY2FsbCIsInBhcnRpY2xlIiwib25QYXJ0aWNsZUNyZWF0ZWQiLCJvblBhcnRpY2xlVXBkYXRlIiwib25QYXJ0aWNsZURlYWQiLCJsb2dSZW5kZXJlclR5cGUiLCJyZW1vdmUiLCJjb25zb2xlIiwibG9nIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUNFQSxnQkFERixFQUVFQyxhQUZGLEVBR0VDLGVBSEYsRUFJRUMsYUFKRixRQUtPLHFCQUxQO0FBT0EsU0FBU0Msa0JBQVQsUUFBbUMsU0FBbkM7QUFDQSxTQUFTQyxPQUFULFFBQXdCLGNBQXhCO0FBRUEsZUFBZSxNQUFNQyxZQUFOLENBQW1CO0FBQ2hDQyxFQUFBQSxXQUFXLENBQUNDLElBQUksR0FBR0osa0JBQVIsRUFBNEI7QUFDckM7QUFDSjtBQUNBO0FBQ0E7QUFDSSxTQUFLSSxJQUFMLEdBQVlBLElBQVo7QUFDRDs7QUFFREMsRUFBQUEsSUFBSSxDQUFDQyxNQUFELEVBQVM7QUFDWCxRQUFJQyxJQUFJLEdBQUcsSUFBWDtBQUVBLFNBQUtELE1BQUwsR0FBY0EsTUFBZDtBQUVBLFNBQUtBLE1BQUwsQ0FBWUUsZUFBWixDQUE0QkMsZ0JBQTVCLENBQTZDVixhQUE3QyxFQUE0RCxVQUMxRE8sTUFEMEQsRUFFMUQ7QUFDQUMsTUFBQUEsSUFBSSxDQUFDRyxjQUFMLENBQW9CQyxJQUFwQixDQUF5QkosSUFBekIsRUFBK0JELE1BQS9CO0FBQ0QsS0FKRDtBQU1BLFNBQUtBLE1BQUwsQ0FBWUUsZUFBWixDQUE0QkMsZ0JBQTVCLENBQTZDYixnQkFBN0MsRUFBK0QsVUFDN0RnQixRQUQ2RCxFQUU3RDtBQUNBTCxNQUFBQSxJQUFJLENBQUNNLGlCQUFMLENBQXVCRixJQUF2QixDQUE0QkosSUFBNUIsRUFBa0NLLFFBQWxDO0FBQ0QsS0FKRDtBQU1BLFNBQUtOLE1BQUwsQ0FBWUUsZUFBWixDQUE0QkMsZ0JBQTVCLENBQTZDWCxlQUE3QyxFQUE4RCxVQUM1RGMsUUFENEQsRUFFNUQ7QUFDQUwsTUFBQUEsSUFBSSxDQUFDTyxnQkFBTCxDQUFzQkgsSUFBdEIsQ0FBMkJKLElBQTNCLEVBQWlDSyxRQUFqQztBQUNELEtBSkQ7QUFNQSxTQUFLTixNQUFMLENBQVlFLGVBQVosQ0FBNEJDLGdCQUE1QixDQUE2Q1osYUFBN0MsRUFBNEQsVUFDMURlLFFBRDBELEVBRTFEO0FBQ0FMLE1BQUFBLElBQUksQ0FBQ1EsY0FBTCxDQUFvQkosSUFBcEIsQ0FBeUJKLElBQXpCLEVBQStCSyxRQUEvQjtBQUNELEtBSkQ7QUFNQSxTQUFLSSxlQUFMO0FBQ0Q7O0FBRURDLEVBQUFBLE1BQU0sR0FBRztBQUNQLFNBQUtYLE1BQUwsR0FBYyxJQUFkO0FBQ0Q7QUFFRDtBQUNGO0FBQ0E7OztBQUNFTyxFQUFBQSxpQkFBaUIsQ0FBQ0QsUUFBRCxFQUFXLENBQUUsQ0FoREUsQ0FnREQ7O0FBRS9CO0FBQ0Y7QUFDQTs7O0FBQ0VFLEVBQUFBLGdCQUFnQixDQUFDRixRQUFELEVBQVcsQ0FBRSxDQXJERyxDQXFERjs7QUFFOUI7QUFDRjtBQUNBOzs7QUFDRUcsRUFBQUEsY0FBYyxDQUFDSCxRQUFELEVBQVcsQ0FBRSxDQTFESyxDQTBESjs7QUFFNUI7QUFDRjtBQUNBOzs7QUFDRUYsRUFBQUEsY0FBYyxDQUFDSixNQUFELEVBQVMsQ0FBRSxDQS9ETyxDQStETjs7QUFFMUI7QUFDRjtBQUNBO0FBQ0E7QUFDQTs7O0FBQ0VVLEVBQUFBLGVBQWUsR0FBRztBQUNoQixRQUFJLENBQUNmLE9BQUwsRUFBYztBQUNaO0FBQ0Q7O0FBRURpQixJQUFBQSxPQUFPLENBQUNDLEdBQVIsQ0FBYSxHQUFFLEtBQUtmLElBQUssRUFBekI7QUFDRDs7QUE1RStCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgUEFSVElDTEVfQ1JFQVRFRCxcbiAgUEFSVElDTEVfREVBRCxcbiAgUEFSVElDTEVfVVBEQVRFLFxuICBTWVNURU1fVVBEQVRFLFxufSBmcm9tICcuLi9ldmVudHMvY29uc3RhbnRzJztcblxuaW1wb3J0IHsgUkVOREVSRVJfVFlQRV9CQVNFIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBfX0RFVl9fIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQmFzZVJlbmRlcmVyIHtcbiAgY29uc3RydWN0b3IodHlwZSA9IFJFTkRFUkVSX1RZUEVfQkFTRSkge1xuICAgIC8qKlxuICAgICAqIEBkZXNjIFRoZSBjbGFzcyB0eXBlLlxuICAgICAqIEB0eXBlIHtzdHJpbmd9XG4gICAgICovXG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgfVxuXG4gIGluaXQoc3lzdGVtKSB7XG4gICAgdmFyIHNlbGYgPSB0aGlzO1xuXG4gICAgdGhpcy5zeXN0ZW0gPSBzeXN0ZW07XG5cbiAgICB0aGlzLnN5c3RlbS5ldmVudERpc3BhdGNoZXIuYWRkRXZlbnRMaXN0ZW5lcihTWVNURU1fVVBEQVRFLCBmdW5jdGlvbihcbiAgICAgIHN5c3RlbVxuICAgICkge1xuICAgICAgc2VsZi5vblN5c3RlbVVwZGF0ZS5jYWxsKHNlbGYsIHN5c3RlbSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnN5c3RlbS5ldmVudERpc3BhdGNoZXIuYWRkRXZlbnRMaXN0ZW5lcihQQVJUSUNMRV9DUkVBVEVELCBmdW5jdGlvbihcbiAgICAgIHBhcnRpY2xlXG4gICAgKSB7XG4gICAgICBzZWxmLm9uUGFydGljbGVDcmVhdGVkLmNhbGwoc2VsZiwgcGFydGljbGUpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5zeXN0ZW0uZXZlbnREaXNwYXRjaGVyLmFkZEV2ZW50TGlzdGVuZXIoUEFSVElDTEVfVVBEQVRFLCBmdW5jdGlvbihcbiAgICAgIHBhcnRpY2xlXG4gICAgKSB7XG4gICAgICBzZWxmLm9uUGFydGljbGVVcGRhdGUuY2FsbChzZWxmLCBwYXJ0aWNsZSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnN5c3RlbS5ldmVudERpc3BhdGNoZXIuYWRkRXZlbnRMaXN0ZW5lcihQQVJUSUNMRV9ERUFELCBmdW5jdGlvbihcbiAgICAgIHBhcnRpY2xlXG4gICAgKSB7XG4gICAgICBzZWxmLm9uUGFydGljbGVEZWFkLmNhbGwoc2VsZiwgcGFydGljbGUpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5sb2dSZW5kZXJlclR5cGUoKTtcbiAgfVxuXG4gIHJlbW92ZSgpIHtcbiAgICB0aGlzLnN5c3RlbSA9IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogQGFic3RyYWN0XG4gICAqL1xuICBvblBhcnRpY2xlQ3JlYXRlZChwYXJ0aWNsZSkge30gLy8gZXNsaW50LWRpc2FibGUtbGluZVxuXG4gIC8qKlxuICAgKiBAYWJzdHJhY3RcbiAgICovXG4gIG9uUGFydGljbGVVcGRhdGUocGFydGljbGUpIHt9IC8vIGVzbGludC1kaXNhYmxlLWxpbmVcblxuICAvKipcbiAgICogQGFic3RyYWN0XG4gICAqL1xuICBvblBhcnRpY2xlRGVhZChwYXJ0aWNsZSkge30gLy8gZXNsaW50LWRpc2FibGUtbGluZVxuXG4gIC8qKlxuICAgKiBAYWJzdHJhY3RcbiAgICovXG4gIG9uU3lzdGVtVXBkYXRlKHN5c3RlbSkge30gLy8gZXNsaW50LWRpc2FibGUtbGluZVxuXG4gIC8qKlxuICAgKiBMb2dzIHRoZSByZW5kZXJlciB0eXBlIGJlaW5nIHVzZWQgd2hlbiBpbiBkZXZlbG9wbWVudCBtb2RlLlxuICAgKlxuICAgKiBAcmV0dXJuIHZvaWRcbiAgICovXG4gIGxvZ1JlbmRlcmVyVHlwZSgpIHtcbiAgICBpZiAoIV9fREVWX18pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zb2xlLmxvZyhgJHt0aGlzLnR5cGV9YCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,23 +0,0 @@
1
- import BaseRenderer from './BaseRenderer';
2
- import { Pool } from '../core';
3
- import { RENDERER_TYPE_CUSTOM as type } from './types';
4
- export default class CustomRenderer extends BaseRenderer {
5
- constructor() {
6
- super(type);
7
- this.targetPool = new Pool();
8
- this.materialPool = new Pool();
9
- }
10
-
11
- onSystemUpdate() {}
12
-
13
- onParticleCreated(particle) {} // eslint-disable-line
14
-
15
-
16
- onParticleUpdate(particle) {} // eslint-disable-line
17
-
18
-
19
- onParticleDead(particle) {} // eslint-disable-line
20
-
21
-
22
- }
23
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZW5kZXJlci9DdXN0b21SZW5kZXJlci5qcyJdLCJuYW1lcyI6WyJCYXNlUmVuZGVyZXIiLCJQb29sIiwiUkVOREVSRVJfVFlQRV9DVVNUT00iLCJ0eXBlIiwiQ3VzdG9tUmVuZGVyZXIiLCJjb25zdHJ1Y3RvciIsInRhcmdldFBvb2wiLCJtYXRlcmlhbFBvb2wiLCJvblN5c3RlbVVwZGF0ZSIsIm9uUGFydGljbGVDcmVhdGVkIiwicGFydGljbGUiLCJvblBhcnRpY2xlVXBkYXRlIiwib25QYXJ0aWNsZURlYWQiXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLFlBQVAsTUFBeUIsZ0JBQXpCO0FBQ0EsU0FBU0MsSUFBVCxRQUFxQixTQUFyQjtBQUNBLFNBQVNDLG9CQUFvQixJQUFJQyxJQUFqQyxRQUE2QyxTQUE3QztBQUVBLGVBQWUsTUFBTUMsY0FBTixTQUE2QkosWUFBN0IsQ0FBMEM7QUFDdkRLLEVBQUFBLFdBQVcsR0FBRztBQUNaLFVBQU1GLElBQU47QUFFQSxTQUFLRyxVQUFMLEdBQWtCLElBQUlMLElBQUosRUFBbEI7QUFDQSxTQUFLTSxZQUFMLEdBQW9CLElBQUlOLElBQUosRUFBcEI7QUFDRDs7QUFFRE8sRUFBQUEsY0FBYyxHQUFHLENBQUU7O0FBRW5CQyxFQUFBQSxpQkFBaUIsQ0FBQ0MsUUFBRCxFQUFXLENBQUUsQ0FWeUIsQ0FVeEI7OztBQUUvQkMsRUFBQUEsZ0JBQWdCLENBQUNELFFBQUQsRUFBVyxDQUFFLENBWjBCLENBWXpCOzs7QUFFOUJFLEVBQUFBLGNBQWMsQ0FBQ0YsUUFBRCxFQUFXLENBQUUsQ0FkNEIsQ0FjM0I7OztBQWQyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCYXNlUmVuZGVyZXIgZnJvbSAnLi9CYXNlUmVuZGVyZXInO1xuaW1wb3J0IHsgUG9vbCB9IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHsgUkVOREVSRVJfVFlQRV9DVVNUT00gYXMgdHlwZSB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDdXN0b21SZW5kZXJlciBleHRlbmRzIEJhc2VSZW5kZXJlciB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKHR5cGUpO1xuXG4gICAgdGhpcy50YXJnZXRQb29sID0gbmV3IFBvb2woKTtcbiAgICB0aGlzLm1hdGVyaWFsUG9vbCA9IG5ldyBQb29sKCk7XG4gIH1cblxuICBvblN5c3RlbVVwZGF0ZSgpIHt9XG5cbiAgb25QYXJ0aWNsZUNyZWF0ZWQocGFydGljbGUpIHt9IC8vIGVzbGludC1kaXNhYmxlLWxpbmVcblxuICBvblBhcnRpY2xlVXBkYXRlKHBhcnRpY2xlKSB7fSAvLyBlc2xpbnQtZGlzYWJsZS1saW5lXG5cbiAgb25QYXJ0aWNsZURlYWQocGFydGljbGUpIHt9IC8vIGVzbGludC1kaXNhYmxlLWxpbmVcbn1cbiJdfQ==