three-nebula 10.0.3 → 11.1.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.
- package/.claude/rules/no-coauthor.md +4 -0
- package/CHANGELOG.md +33 -0
- package/dist/three-nebula.cjs +109 -0
- package/dist/three-nebula.cjs.map +1 -0
- package/dist/three-nebula.mjs +2968 -0
- package/dist/three-nebula.mjs.map +1 -0
- package/dist/three-nebula.umd.js +109 -0
- package/dist/three-nebula.umd.js.map +1 -0
- package/package.json +32 -56
- package/specs/01-emitter-hierarchy.md +200 -0
- package/specs/02-determinism-scrubbing.md +188 -0
- package/specs/03-sound-renderer.md +183 -0
- package/specs/04-schema-versioning.md +140 -0
- package/specs/05-content-addressed-assets.md +288 -0
- package/specs/README.md +80 -0
- package/build/cjs/behaviour/Alpha.js +0 -189
- package/build/cjs/behaviour/Attraction.js +0 -189
- package/build/cjs/behaviour/Behaviour.js +0 -253
- package/build/cjs/behaviour/Collision.js +0 -146
- package/build/cjs/behaviour/Color.js +0 -148
- package/build/cjs/behaviour/CrossZone.js +0 -141
- package/build/cjs/behaviour/Force.js +0 -126
- package/build/cjs/behaviour/Gravity.js +0 -78
- package/build/cjs/behaviour/RandomDrift.js +0 -153
- package/build/cjs/behaviour/Repulsion.js +0 -123
- package/build/cjs/behaviour/Rotate.js +0 -265
- package/build/cjs/behaviour/Scale.js +0 -177
- package/build/cjs/behaviour/Spring.js +0 -133
- package/build/cjs/behaviour/constants.js +0 -28
- package/build/cjs/behaviour/index.js +0 -112
- package/build/cjs/behaviour/types.js +0 -33
- package/build/cjs/constants/index.js +0 -61
- package/build/cjs/core/Particle.js +0 -390
- package/build/cjs/core/Pool.js +0 -203
- package/build/cjs/core/System.js +0 -366
- package/build/cjs/core/constants.js +0 -163
- package/build/cjs/core/fromJSON.js +0 -128
- package/build/cjs/core/fromJSONAsync.js +0 -239
- package/build/cjs/core/index.js +0 -32
- package/build/cjs/core/three/Euler.js +0 -233
- package/build/cjs/core/three/Math.js +0 -91
- package/build/cjs/core/three/Matrix4.js +0 -745
- package/build/cjs/core/three/Quaternion.js +0 -451
- package/build/cjs/core/three/Vector3.js +0 -464
- package/build/cjs/core/three/constants.js +0 -298
- package/build/cjs/core/three/index.js +0 -48
- package/build/cjs/core/types.js +0 -13
- package/build/cjs/debug/Debug.js +0 -209
- package/build/cjs/debug/constants.js +0 -19
- package/build/cjs/debug/index.js +0 -24
- package/build/cjs/debug/log.js +0 -38
- package/build/cjs/ease/index.js +0 -149
- package/build/cjs/emitter/Emitter.js +0 -791
- package/build/cjs/emitter/FollowEmitter.js +0 -146
- package/build/cjs/emitter/constants.js +0 -20
- package/build/cjs/emitter/index.js +0 -24
- package/build/cjs/emitter/types.js +0 -11
- package/build/cjs/events/EventDispatcher.js +0 -105
- package/build/cjs/events/constants.js +0 -23
- package/build/cjs/events/index.js +0 -27
- package/build/cjs/index.js +0 -151
- package/build/cjs/initializer/Body.js +0 -122
- package/build/cjs/initializer/BodySprite.js +0 -146
- package/build/cjs/initializer/Initializer.js +0 -109
- package/build/cjs/initializer/InitializerUtil.js +0 -54
- package/build/cjs/initializer/Life.js +0 -106
- package/build/cjs/initializer/Mass.js +0 -101
- package/build/cjs/initializer/Position.js +0 -152
- package/build/cjs/initializer/Radius.js +0 -118
- package/build/cjs/initializer/Rate.js +0 -150
- package/build/cjs/initializer/Texture.js +0 -139
- package/build/cjs/initializer/Velocity/PolarVelocity.js +0 -102
- package/build/cjs/initializer/Velocity/RadialVelocity.js +0 -111
- package/build/cjs/initializer/Velocity/VectorVelocity.js +0 -108
- package/build/cjs/initializer/Velocity/Velocity.js +0 -94
- package/build/cjs/initializer/Velocity/index.js +0 -32
- package/build/cjs/initializer/constants.js +0 -43
- package/build/cjs/initializer/index.js +0 -100
- package/build/cjs/initializer/types.js +0 -35
- package/build/cjs/math/ArraySpan.js +0 -103
- package/build/cjs/math/Box.js +0 -46
- package/build/cjs/math/ColorSpan.js +0 -113
- package/build/cjs/math/MathUtils.js +0 -57
- package/build/cjs/math/Polar3D.js +0 -115
- package/build/cjs/math/Span.js +0 -88
- package/build/cjs/math/Vector3D.js +0 -76
- package/build/cjs/math/constants.js +0 -35
- package/build/cjs/math/index.js +0 -122
- package/build/cjs/math/integration.js +0 -59
- package/build/cjs/math/types.js +0 -19
- package/build/cjs/renderer/BaseRenderer.js +0 -108
- package/build/cjs/renderer/CustomRenderer.js +0 -65
- package/build/cjs/renderer/GPURenderer/Desktop/index.js +0 -350
- package/build/cjs/renderer/GPURenderer/Desktop/shaders/fragmentShader.js +0 -13
- package/build/cjs/renderer/GPURenderer/Desktop/shaders/index.js +0 -22
- package/build/cjs/renderer/GPURenderer/Desktop/shaders/vertexShader.js +0 -17
- package/build/cjs/renderer/GPURenderer/Mobile/index.js +0 -364
- package/build/cjs/renderer/GPURenderer/Mobile/shaders/fragmentShader.js +0 -13
- package/build/cjs/renderer/GPURenderer/Mobile/shaders/index.js +0 -22
- package/build/cjs/renderer/GPURenderer/Mobile/shaders/vertexShader.js +0 -15
- package/build/cjs/renderer/GPURenderer/common/ParticleBuffer/constants.js +0 -53
- package/build/cjs/renderer/GPURenderer/common/ParticleBuffer/index.js +0 -93
- package/build/cjs/renderer/GPURenderer/common/TextureAtlas/constants.js +0 -9
- package/build/cjs/renderer/GPURenderer/common/TextureAtlas/index.js +0 -221
- package/build/cjs/renderer/GPURenderer/common/constants.js +0 -22
- package/build/cjs/renderer/GPURenderer/common/index.js +0 -38
- package/build/cjs/renderer/GPURenderer/common/shaders/constants.js +0 -9
- package/build/cjs/renderer/GPURenderer/common/stores/Target.js +0 -43
- package/build/cjs/renderer/GPURenderer/common/stores/UniqueList.js +0 -51
- package/build/cjs/renderer/GPURenderer/common/stores/index.js +0 -22
- package/build/cjs/renderer/GPURenderer/index.js +0 -97
- package/build/cjs/renderer/MeshRenderer.js +0 -136
- package/build/cjs/renderer/SpriteRenderer.js +0 -63
- package/build/cjs/renderer/index.js +0 -40
- package/build/cjs/renderer/types.js +0 -21
- package/build/cjs/utils/ColorUtil.js +0 -39
- package/build/cjs/utils/PUID.js +0 -26
- package/build/cjs/utils/THREEUtil.js +0 -40
- package/build/cjs/utils/Util.js +0 -69
- package/build/cjs/utils/index.js +0 -61
- package/build/cjs/utils/uid.js +0 -14
- package/build/cjs/zone/BoxZone.js +0 -178
- package/build/cjs/zone/LineZone.js +0 -101
- package/build/cjs/zone/MeshZone.js +0 -101
- package/build/cjs/zone/PointZone.js +0 -99
- package/build/cjs/zone/ScreenZone.js +0 -164
- package/build/cjs/zone/SphereZone.js +0 -155
- package/build/cjs/zone/Zone.js +0 -172
- package/build/cjs/zone/index.js +0 -56
- package/build/cjs/zone/types.js +0 -21
- package/build/esm/behaviour/Alpha.js +0 -134
- package/build/esm/behaviour/Attraction.js +0 -135
- package/build/esm/behaviour/Behaviour.js +0 -215
- package/build/esm/behaviour/Collision.js +0 -100
- package/build/esm/behaviour/Color.js +0 -101
- package/build/esm/behaviour/CrossZone.js +0 -82
- package/build/esm/behaviour/Force.js +0 -83
- package/build/esm/behaviour/Gravity.js +0 -40
- package/build/esm/behaviour/RandomDrift.js +0 -97
- package/build/esm/behaviour/Repulsion.js +0 -81
- package/build/esm/behaviour/Rotate.js +0 -214
- package/build/esm/behaviour/Scale.js +0 -131
- package/build/esm/behaviour/Spring.js +0 -90
- package/build/esm/behaviour/constants.js +0 -11
- package/build/esm/behaviour/index.js +0 -14
- package/build/esm/behaviour/types.js +0 -14
- package/build/esm/constants/index.js +0 -42
- package/build/esm/core/Particle.js +0 -357
- package/build/esm/core/Pool.js +0 -161
- package/build/esm/core/System.js +0 -320
- package/build/esm/core/constants.js +0 -127
- package/build/esm/core/fromJSON.js +0 -107
- package/build/esm/core/fromJSONAsync.js +0 -210
- package/build/esm/core/index.js +0 -4
- package/build/esm/core/three/Euler.js +0 -224
- package/build/esm/core/three/Math.js +0 -84
- package/build/esm/core/three/Matrix4.js +0 -739
- package/build/esm/core/three/Quaternion.js +0 -445
- package/build/esm/core/three/Vector3.js +0 -457
- package/build/esm/core/three/constants.js +0 -148
- package/build/esm/core/three/index.js +0 -5
- package/build/esm/core/types.js +0 -4
- package/build/esm/debug/Debug.js +0 -195
- package/build/esm/debug/constants.js +0 -7
- package/build/esm/debug/index.js +0 -3
- package/build/esm/debug/log.js +0 -31
- package/build/esm/ease/index.js +0 -113
- package/build/esm/emitter/Emitter.js +0 -701
- package/build/esm/emitter/FollowEmitter.js +0 -97
- package/build/esm/emitter/constants.js +0 -7
- package/build/esm/emitter/index.js +0 -3
- package/build/esm/emitter/types.js +0 -3
- package/build/esm/events/EventDispatcher.js +0 -82
- package/build/esm/events/constants.js +0 -9
- package/build/esm/events/index.js +0 -4
- package/build/esm/index.js +0 -13
- package/build/esm/initializer/Body.js +0 -83
- package/build/esm/initializer/BodySprite.js +0 -108
- package/build/esm/initializer/Initializer.js +0 -84
- package/build/esm/initializer/InitializerUtil.js +0 -48
- package/build/esm/initializer/Life.js +0 -66
- package/build/esm/initializer/Mass.js +0 -60
- package/build/esm/initializer/Position.js +0 -98
- package/build/esm/initializer/Radius.js +0 -75
- package/build/esm/initializer/Rate.js +0 -107
- package/build/esm/initializer/Texture.js +0 -101
- package/build/esm/initializer/Velocity/PolarVelocity.js +0 -63
- package/build/esm/initializer/Velocity/RadialVelocity.js +0 -72
- package/build/esm/initializer/Velocity/VectorVelocity.js +0 -69
- package/build/esm/initializer/Velocity/Velocity.js +0 -52
- package/build/esm/initializer/Velocity/index.js +0 -4
- package/build/esm/initializer/constants.js +0 -26
- package/build/esm/initializer/index.js +0 -11
- package/build/esm/initializer/types.js +0 -15
- package/build/esm/math/ArraySpan.js +0 -62
- package/build/esm/math/Box.js +0 -25
- package/build/esm/math/ColorSpan.js +0 -71
- package/build/esm/math/MathUtils.js +0 -48
- package/build/esm/math/Polar3D.js +0 -81
- package/build/esm/math/Span.js +0 -63
- package/build/esm/math/Vector3D.js +0 -34
- package/build/esm/math/constants.js +0 -24
- package/build/esm/math/index.js +0 -10
- package/build/esm/math/integration.js +0 -47
- package/build/esm/math/types.js +0 -7
- package/build/esm/renderer/BaseRenderer.js +0 -78
- package/build/esm/renderer/CustomRenderer.js +0 -23
- package/build/esm/renderer/GPURenderer/Desktop/index.js +0 -331
- package/build/esm/renderer/GPURenderer/Desktop/shaders/fragmentShader.js +0 -23
- package/build/esm/renderer/GPURenderer/Desktop/shaders/index.js +0 -3
- package/build/esm/renderer/GPURenderer/Desktop/shaders/vertexShader.js +0 -33
- package/build/esm/renderer/GPURenderer/Mobile/index.js +0 -349
- package/build/esm/renderer/GPURenderer/Mobile/shaders/fragmentShader.js +0 -20
- package/build/esm/renderer/GPURenderer/Mobile/shaders/index.js +0 -3
- package/build/esm/renderer/GPURenderer/Mobile/shaders/vertexShader.js +0 -30
- package/build/esm/renderer/GPURenderer/common/ParticleBuffer/constants.js +0 -27
- package/build/esm/renderer/GPURenderer/common/ParticleBuffer/index.js +0 -70
- package/build/esm/renderer/GPURenderer/common/TextureAtlas/constants.js +0 -2
- package/build/esm/renderer/GPURenderer/common/TextureAtlas/index.js +0 -206
- package/build/esm/renderer/GPURenderer/common/constants.js +0 -13
- package/build/esm/renderer/GPURenderer/common/index.js +0 -4
- package/build/esm/renderer/GPURenderer/common/shaders/constants.js +0 -2
- package/build/esm/renderer/GPURenderer/common/stores/Target.js +0 -24
- package/build/esm/renderer/GPURenderer/common/stores/UniqueList.js +0 -29
- package/build/esm/renderer/GPURenderer/common/stores/index.js +0 -3
- package/build/esm/renderer/GPURenderer/index.js +0 -57
- package/build/esm/renderer/MeshRenderer.js +0 -94
- package/build/esm/renderer/SpriteRenderer.js +0 -26
- package/build/esm/renderer/index.js +0 -5
- package/build/esm/renderer/types.js +0 -8
- package/build/esm/utils/ColorUtil.js +0 -32
- package/build/esm/utils/PUID.js +0 -19
- package/build/esm/utils/THREEUtil.js +0 -31
- package/build/esm/utils/Util.js +0 -60
- package/build/esm/utils/index.js +0 -13
- package/build/esm/utils/uid.js +0 -3
- package/build/esm/zone/BoxZone.js +0 -133
- package/build/esm/zone/LineZone.js +0 -61
- package/build/esm/zone/MeshZone.js +0 -60
- package/build/esm/zone/PointZone.js +0 -59
- package/build/esm/zone/ScreenZone.js +0 -116
- package/build/esm/zone/SphereZone.js +0 -113
- package/build/esm/zone/Zone.js +0 -141
- package/build/esm/zone/index.js +0 -7
- package/build/esm/zone/types.js +0 -8
- package/build/three-nebula.js +0 -2
- package/build/three-nebula.js.map +0 -1
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
-
|
|
12
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
|
-
|
|
14
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
|
-
|
|
16
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
-
|
|
18
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
-
|
|
20
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
-
|
|
22
|
-
var _constants = require("./constants");
|
|
23
|
-
|
|
24
|
-
var _Initializer2 = _interopRequireDefault(require("./Initializer"));
|
|
25
|
-
|
|
26
|
-
var _types = require("./types");
|
|
27
|
-
|
|
28
|
-
var _utils = require("../utils");
|
|
29
|
-
|
|
30
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
31
|
-
|
|
32
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
33
|
-
|
|
34
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
35
|
-
|
|
36
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Sets the body property to be a THREE.Sprite on initialized particles.
|
|
40
|
-
*
|
|
41
|
-
* NOTE The texture map MUST be set on the SpriteMaterial in the TextureLoader.load
|
|
42
|
-
* callback. Not doing so will cause WebGL buffer errors.
|
|
43
|
-
*/
|
|
44
|
-
var BodySprite = /*#__PURE__*/function (_Initializer) {
|
|
45
|
-
(0, _inherits2["default"])(BodySprite, _Initializer);
|
|
46
|
-
|
|
47
|
-
var _super = _createSuper(BodySprite);
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* Constructs a BodySprite initializer.
|
|
51
|
-
*
|
|
52
|
-
* @param {object} THREE - The Web GL API we are using eg., THREE
|
|
53
|
-
* @param {string} texture - The sprite texture
|
|
54
|
-
* @param {object} materialProperties - The sprite material properties
|
|
55
|
-
* @throws {Error} If the TextureLoader fails to load the supplied texture
|
|
56
|
-
* @return void
|
|
57
|
-
*/
|
|
58
|
-
function BodySprite(THREE, texture) {
|
|
59
|
-
var _this;
|
|
60
|
-
|
|
61
|
-
var materialProperties = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _constants.DEFAULT_MATERIAL_PROPERTIES;
|
|
62
|
-
var isEnabled = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
|
|
63
|
-
(0, _classCallCheck2["default"])(this, BodySprite);
|
|
64
|
-
_this = _super.call(this, _types.INITIALIZER_TYPE_BODY_SPRITE, isEnabled);
|
|
65
|
-
var Sprite = THREE.Sprite,
|
|
66
|
-
SpriteMaterial = THREE.SpriteMaterial,
|
|
67
|
-
TextureLoader = THREE.TextureLoader;
|
|
68
|
-
/**
|
|
69
|
-
* @desc The material properties for this object's SpriteMaterial
|
|
70
|
-
* NOTE This is required for testing purposes
|
|
71
|
-
* @type {object}
|
|
72
|
-
*/
|
|
73
|
-
|
|
74
|
-
_this.materialProperties = (0, _utils.withDefaults)(_constants.DEFAULT_MATERIAL_PROPERTIES, materialProperties);
|
|
75
|
-
new TextureLoader().load(texture, function (map) {
|
|
76
|
-
/**
|
|
77
|
-
* @desc The texture for the THREE.SpriteMaterial map.
|
|
78
|
-
* @type {Texture}
|
|
79
|
-
*/
|
|
80
|
-
_this.texture = map;
|
|
81
|
-
/**
|
|
82
|
-
* @desc THREE.SpriteMaterial instance.
|
|
83
|
-
* @type {SpriteMaterial}
|
|
84
|
-
*/
|
|
85
|
-
|
|
86
|
-
_this.material = new SpriteMaterial(_objectSpread(_objectSpread({}, {
|
|
87
|
-
map: map
|
|
88
|
-
}), _this.materialProperties));
|
|
89
|
-
/**
|
|
90
|
-
* @desc THREE.Sprite instance.
|
|
91
|
-
* @type {Sprite}
|
|
92
|
-
*/
|
|
93
|
-
|
|
94
|
-
_this.sprite = new Sprite(_this.material);
|
|
95
|
-
}, undefined, function (error) {
|
|
96
|
-
throw new Error(error);
|
|
97
|
-
});
|
|
98
|
-
return _this;
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Sets the particle body to the sprite.
|
|
102
|
-
*
|
|
103
|
-
* @param {Particle} particle - The particle to set the body of
|
|
104
|
-
* @return void
|
|
105
|
-
*/
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
(0, _createClass2["default"])(BodySprite, [{
|
|
109
|
-
key: "initialize",
|
|
110
|
-
value: function initialize(particle) {
|
|
111
|
-
particle.body = this.sprite;
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Creates a BodySprite initializer from JSON.
|
|
115
|
-
*
|
|
116
|
-
* @param {object} json - The JSON to construct the instance from
|
|
117
|
-
* @param {object} THREE - The Web GL API we are using eg., THREE
|
|
118
|
-
* @param {string} json.texture - The sprite texture
|
|
119
|
-
* @param {object} json.materialProperties - The sprite material properties
|
|
120
|
-
* @return {BodySprite}
|
|
121
|
-
*/
|
|
122
|
-
|
|
123
|
-
}], [{
|
|
124
|
-
key: "fromJSON",
|
|
125
|
-
value: function fromJSON(json, THREE) {
|
|
126
|
-
var texture = json.texture,
|
|
127
|
-
_json$materialPropert = json.materialProperties,
|
|
128
|
-
materialProperties = _json$materialPropert === void 0 ? _constants.DEFAULT_JSON_MATERIAL_PROPERTIES : _json$materialPropert,
|
|
129
|
-
_json$isEnabled = json.isEnabled,
|
|
130
|
-
isEnabled = _json$isEnabled === void 0 ? true : _json$isEnabled;
|
|
131
|
-
|
|
132
|
-
var ensureMappedBlendingMode = function ensureMappedBlendingMode(properties) {
|
|
133
|
-
var blending = properties.blending;
|
|
134
|
-
return _objectSpread(_objectSpread({}, properties), {}, {
|
|
135
|
-
blending: blending ? _constants.SUPPORTED_MATERIAL_BLENDING_MODES[blending] : _constants.SUPPORTED_MATERIAL_BLENDING_MODES[_constants.DEFAULT_JSON_MATERIAL_PROPERTIES.blending]
|
|
136
|
-
});
|
|
137
|
-
};
|
|
138
|
-
|
|
139
|
-
return new BodySprite(THREE, texture, (0, _utils.withDefaults)(_constants.DEFAULT_JSON_MATERIAL_PROPERTIES, ensureMappedBlendingMode(materialProperties)), isEnabled);
|
|
140
|
-
}
|
|
141
|
-
}]);
|
|
142
|
-
return BodySprite;
|
|
143
|
-
}(_Initializer2["default"]);
|
|
144
|
-
|
|
145
|
-
exports["default"] = BodySprite;
|
|
146
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbml0aWFsaXplci9Cb2R5U3ByaXRlLmpzIl0sIm5hbWVzIjpbIkJvZHlTcHJpdGUiLCJUSFJFRSIsInRleHR1cmUiLCJtYXRlcmlhbFByb3BlcnRpZXMiLCJERUZBVUxUX01BVEVSSUFMX1BST1BFUlRJRVMiLCJpc0VuYWJsZWQiLCJ0eXBlIiwiU3ByaXRlIiwiU3ByaXRlTWF0ZXJpYWwiLCJUZXh0dXJlTG9hZGVyIiwibG9hZCIsIm1hcCIsIm1hdGVyaWFsIiwic3ByaXRlIiwidW5kZWZpbmVkIiwiZXJyb3IiLCJFcnJvciIsInBhcnRpY2xlIiwiYm9keSIsImpzb24iLCJERUZBVUxUX0pTT05fTUFURVJJQUxfUFJPUEVSVElFUyIsImVuc3VyZU1hcHBlZEJsZW5kaW5nTW9kZSIsInByb3BlcnRpZXMiLCJibGVuZGluZyIsIlNVUFBPUlRFRF9NQVRFUklBTF9CTEVORElOR19NT0RFUyIsIkluaXRpYWxpemVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFNQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNxQkEsVTs7Ozs7QUFDbkI7QUFDRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Usc0JBQ0VDLEtBREYsRUFFRUMsT0FGRixFQUtFO0FBQUE7O0FBQUEsUUFGQUMsa0JBRUEsdUVBRnFCQyxzQ0FFckI7QUFBQSxRQURBQyxTQUNBLHVFQURZLElBQ1o7QUFBQTtBQUNBLDhCQUFNQyxtQ0FBTixFQUFZRCxTQUFaO0FBREEsUUFHUUUsTUFIUixHQUdrRE4sS0FIbEQsQ0FHUU0sTUFIUjtBQUFBLFFBR2dCQyxjQUhoQixHQUdrRFAsS0FIbEQsQ0FHZ0JPLGNBSGhCO0FBQUEsUUFHZ0NDLGFBSGhDLEdBR2tEUixLQUhsRCxDQUdnQ1EsYUFIaEM7QUFLQTtBQUNKO0FBQ0E7QUFDQTtBQUNBOztBQUNJLFVBQUtOLGtCQUFMLEdBQTBCLHlCQUN4QkMsc0NBRHdCLEVBRXhCRCxrQkFGd0IsQ0FBMUI7QUFLQSxRQUFJTSxhQUFKLEdBQW9CQyxJQUFwQixDQUNFUixPQURGLEVBRUUsVUFBQVMsR0FBRyxFQUFJO0FBQ0w7QUFDUjtBQUNBO0FBQ0E7QUFDUSxZQUFLVCxPQUFMLEdBQWVTLEdBQWY7QUFFQTtBQUNSO0FBQ0E7QUFDQTs7QUFDUSxZQUFLQyxRQUFMLEdBQWdCLElBQUlKLGNBQUosaUNBQ1g7QUFBRUcsUUFBQUEsR0FBRyxFQUFIQTtBQUFGLE9BRFcsR0FFWCxNQUFLUixrQkFGTSxFQUFoQjtBQUtBO0FBQ1I7QUFDQTtBQUNBOztBQUNRLFlBQUtVLE1BQUwsR0FBYyxJQUFJTixNQUFKLENBQVcsTUFBS0ssUUFBaEIsQ0FBZDtBQUNELEtBdkJILEVBd0JFRSxTQXhCRixFQXlCRSxVQUFBQyxLQUFLLEVBQUk7QUFDUCxZQUFNLElBQUlDLEtBQUosQ0FBVUQsS0FBVixDQUFOO0FBQ0QsS0EzQkg7QUFmQTtBQTRDRDtBQUVEO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7K0JBQ2FFLFEsRUFBVTtBQUNuQkEsTUFBQUEsUUFBUSxDQUFDQyxJQUFULEdBQWdCLEtBQUtMLE1BQXJCO0FBQ0Q7QUFFRDtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7NkJBQ2tCTSxJLEVBQU1sQixLLEVBQU87QUFBQSxVQUV6QkMsT0FGeUIsR0FLdkJpQixJQUx1QixDQUV6QmpCLE9BRnlCO0FBQUEsa0NBS3ZCaUIsSUFMdUIsQ0FHekJoQixrQkFIeUI7QUFBQSxVQUd6QkEsa0JBSHlCLHNDQUdKaUIsMkNBSEk7QUFBQSw0QkFLdkJELElBTHVCLENBSXpCZCxTQUp5QjtBQUFBLFVBSXpCQSxTQUp5QixnQ0FJYixJQUphOztBQU8zQixVQUFNZ0Isd0JBQXdCLEdBQUcsU0FBM0JBLHdCQUEyQixDQUFBQyxVQUFVLEVBQUk7QUFBQSxZQUNyQ0MsUUFEcUMsR0FDeEJELFVBRHdCLENBQ3JDQyxRQURxQztBQUc3QywrQ0FDS0QsVUFETDtBQUVFQyxVQUFBQSxRQUFRLEVBQUVBLFFBQVEsR0FDZEMsNkNBQWtDRCxRQUFsQyxDQURjLEdBRWRDLDZDQUNBSiw0Q0FBaUNHLFFBRGpDO0FBSk47QUFRRCxPQVhEOztBQWFBLGFBQU8sSUFBSXZCLFVBQUosQ0FDTEMsS0FESyxFQUVMQyxPQUZLLEVBR0wseUJBQ0VrQiwyQ0FERixFQUVFQyx3QkFBd0IsQ0FBQ2xCLGtCQUFELENBRjFCLENBSEssRUFPTEUsU0FQSyxDQUFQO0FBU0Q7OztFQTdHcUNvQix3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERFRkFVTFRfSlNPTl9NQVRFUklBTF9QUk9QRVJUSUVTLFxuICBERUZBVUxUX01BVEVSSUFMX1BST1BFUlRJRVMsXG4gIFNVUFBPUlRFRF9NQVRFUklBTF9CTEVORElOR19NT0RFUyxcbn0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5pbXBvcnQgSW5pdGlhbGl6ZXIgZnJvbSAnLi9Jbml0aWFsaXplcic7XG5pbXBvcnQgeyBJTklUSUFMSVpFUl9UWVBFX0JPRFlfU1BSSVRFIGFzIHR5cGUgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IHdpdGhEZWZhdWx0cyB9IGZyb20gJy4uL3V0aWxzJztcblxuLyoqXG4gKiBTZXRzIHRoZSBib2R5IHByb3BlcnR5IHRvIGJlIGEgVEhSRUUuU3ByaXRlIG9uIGluaXRpYWxpemVkIHBhcnRpY2xlcy5cbiAqXG4gKiBOT1RFIFRoZSB0ZXh0dXJlIG1hcCBNVVNUIGJlIHNldCBvbiB0aGUgU3ByaXRlTWF0ZXJpYWwgaW4gdGhlIFRleHR1cmVMb2FkZXIubG9hZFxuICogY2FsbGJhY2suIE5vdCBkb2luZyBzbyB3aWxsIGNhdXNlIFdlYkdMIGJ1ZmZlciBlcnJvcnMuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEJvZHlTcHJpdGUgZXh0ZW5kcyBJbml0aWFsaXplciB7XG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGEgQm9keVNwcml0ZSBpbml0aWFsaXplci5cbiAgICpcbiAgICogQHBhcmFtIHtvYmplY3R9IFRIUkVFIC0gVGhlIFdlYiBHTCBBUEkgd2UgYXJlIHVzaW5nIGVnLiwgVEhSRUVcbiAgICogQHBhcmFtIHtzdHJpbmd9IHRleHR1cmUgLSBUaGUgc3ByaXRlIHRleHR1cmVcbiAgICogQHBhcmFtIHtvYmplY3R9IG1hdGVyaWFsUHJvcGVydGllcyAtIFRoZSBzcHJpdGUgbWF0ZXJpYWwgcHJvcGVydGllc1xuICAgKiBAdGhyb3dzIHtFcnJvcn0gSWYgdGhlIFRleHR1cmVMb2FkZXIgZmFpbHMgdG8gbG9hZCB0aGUgc3VwcGxpZWQgdGV4dHVyZVxuICAgKiBAcmV0dXJuIHZvaWRcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIFRIUkVFLFxuICAgIHRleHR1cmUsXG4gICAgbWF0ZXJpYWxQcm9wZXJ0aWVzID0gREVGQVVMVF9NQVRFUklBTF9QUk9QRVJUSUVTLFxuICAgIGlzRW5hYmxlZCA9IHRydWVcbiAgKSB7XG4gICAgc3VwZXIodHlwZSwgaXNFbmFibGVkKTtcblxuICAgIGNvbnN0IHsgU3ByaXRlLCBTcHJpdGVNYXRlcmlhbCwgVGV4dHVyZUxvYWRlciB9ID0gVEhSRUU7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzYyBUaGUgbWF0ZXJpYWwgcHJvcGVydGllcyBmb3IgdGhpcyBvYmplY3QncyBTcHJpdGVNYXRlcmlhbFxuICAgICAqIE5PVEUgVGhpcyBpcyByZXF1aXJlZCBmb3IgdGVzdGluZyBwdXJwb3Nlc1xuICAgICAqIEB0eXBlIHtvYmplY3R9XG4gICAgICovXG4gICAgdGhpcy5tYXRlcmlhbFByb3BlcnRpZXMgPSB3aXRoRGVmYXVsdHMoXG4gICAgICBERUZBVUxUX01BVEVSSUFMX1BST1BFUlRJRVMsXG4gICAgICBtYXRlcmlhbFByb3BlcnRpZXNcbiAgICApO1xuXG4gICAgbmV3IFRleHR1cmVMb2FkZXIoKS5sb2FkKFxuICAgICAgdGV4dHVyZSxcbiAgICAgIG1hcCA9PiB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBAZGVzYyBUaGUgdGV4dHVyZSBmb3IgdGhlIFRIUkVFLlNwcml0ZU1hdGVyaWFsIG1hcC5cbiAgICAgICAgICogQHR5cGUge1RleHR1cmV9XG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLnRleHR1cmUgPSBtYXA7XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIEBkZXNjIFRIUkVFLlNwcml0ZU1hdGVyaWFsIGluc3RhbmNlLlxuICAgICAgICAgKiBAdHlwZSB7U3ByaXRlTWF0ZXJpYWx9XG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLm1hdGVyaWFsID0gbmV3IFNwcml0ZU1hdGVyaWFsKHtcbiAgICAgICAgICAuLi57IG1hcCB9LFxuICAgICAgICAgIC4uLnRoaXMubWF0ZXJpYWxQcm9wZXJ0aWVzLFxuICAgICAgICB9KTtcblxuICAgICAgICAvKipcbiAgICAgICAgICogQGRlc2MgVEhSRUUuU3ByaXRlIGluc3RhbmNlLlxuICAgICAgICAgKiBAdHlwZSB7U3ByaXRlfVxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5zcHJpdGUgPSBuZXcgU3ByaXRlKHRoaXMubWF0ZXJpYWwpO1xuICAgICAgfSxcbiAgICAgIHVuZGVmaW5lZCxcbiAgICAgIGVycm9yID0+IHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBhcnRpY2xlIGJvZHkgdG8gdGhlIHNwcml0ZS5cbiAgICpcbiAgICogQHBhcmFtIHtQYXJ0aWNsZX0gcGFydGljbGUgLSBUaGUgcGFydGljbGUgdG8gc2V0IHRoZSBib2R5IG9mXG4gICAqIEByZXR1cm4gdm9pZFxuICAgKi9cbiAgaW5pdGlhbGl6ZShwYXJ0aWNsZSkge1xuICAgIHBhcnRpY2xlLmJvZHkgPSB0aGlzLnNwcml0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgQm9keVNwcml0ZSBpbml0aWFsaXplciBmcm9tIEpTT04uXG4gICAqXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBqc29uIC0gVGhlIEpTT04gdG8gY29uc3RydWN0IHRoZSBpbnN0YW5jZSBmcm9tXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBUSFJFRSAtIFRoZSBXZWIgR0wgQVBJIHdlIGFyZSB1c2luZyBlZy4sIFRIUkVFXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBqc29uLnRleHR1cmUgLSBUaGUgc3ByaXRlIHRleHR1cmVcbiAgICogQHBhcmFtIHtvYmplY3R9IGpzb24ubWF0ZXJpYWxQcm9wZXJ0aWVzIC0gVGhlIHNwcml0ZSBtYXRlcmlhbCBwcm9wZXJ0aWVzXG4gICAqIEByZXR1cm4ge0JvZHlTcHJpdGV9XG4gICAqL1xuICBzdGF0aWMgZnJvbUpTT04oanNvbiwgVEhSRUUpIHtcbiAgICBjb25zdCB7XG4gICAgICB0ZXh0dXJlLFxuICAgICAgbWF0ZXJpYWxQcm9wZXJ0aWVzID0gREVGQVVMVF9KU09OX01BVEVSSUFMX1BST1BFUlRJRVMsXG4gICAgICBpc0VuYWJsZWQgPSB0cnVlLFxuICAgIH0gPSBqc29uO1xuXG4gICAgY29uc3QgZW5zdXJlTWFwcGVkQmxlbmRpbmdNb2RlID0gcHJvcGVydGllcyA9PiB7XG4gICAgICBjb25zdCB7IGJsZW5kaW5nIH0gPSBwcm9wZXJ0aWVzO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5wcm9wZXJ0aWVzLFxuICAgICAgICBibGVuZGluZzogYmxlbmRpbmdcbiAgICAgICAgICA/IFNVUFBPUlRFRF9NQVRFUklBTF9CTEVORElOR19NT0RFU1tibGVuZGluZ11cbiAgICAgICAgICA6IFNVUFBPUlRFRF9NQVRFUklBTF9CTEVORElOR19NT0RFU1tcbiAgICAgICAgICAgIERFRkFVTFRfSlNPTl9NQVRFUklBTF9QUk9QRVJUSUVTLmJsZW5kaW5nXG4gICAgICAgICAgXSxcbiAgICAgIH07XG4gICAgfTtcblxuICAgIHJldHVybiBuZXcgQm9keVNwcml0ZShcbiAgICAgIFRIUkVFLFxuICAgICAgdGV4dHVyZSxcbiAgICAgIHdpdGhEZWZhdWx0cyhcbiAgICAgICAgREVGQVVMVF9KU09OX01BVEVSSUFMX1BST1BFUlRJRVMsXG4gICAgICAgIGVuc3VyZU1hcHBlZEJsZW5kaW5nTW9kZShtYXRlcmlhbFByb3BlcnRpZXMpXG4gICAgICApLFxuICAgICAgaXNFbmFibGVkXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
|
-
var _types = require("./types");
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* The base Emitter / Particle property class.
|
|
18
|
-
*
|
|
19
|
-
* @abstract
|
|
20
|
-
*/
|
|
21
|
-
var Initializer = /*#__PURE__*/function () {
|
|
22
|
-
/**
|
|
23
|
-
* Constructs an Initializer instance.
|
|
24
|
-
*
|
|
25
|
-
* @param {string} [type=INITIALIZER_TYPE_ABSTRACT] - The intiializer type
|
|
26
|
-
* @param {boolean} [isEnabled=true] - Determines if the initializer should be enabled or not
|
|
27
|
-
* @return void
|
|
28
|
-
*/
|
|
29
|
-
function Initializer() {
|
|
30
|
-
var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _types.INITIALIZER_TYPE_ABSTRACT;
|
|
31
|
-
var isEnabled = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
32
|
-
(0, _classCallCheck2["default"])(this, Initializer);
|
|
33
|
-
this.type = type;
|
|
34
|
-
this.isEnabled = isEnabled;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Initializes the property on the emitter or particle.
|
|
38
|
-
*
|
|
39
|
-
* @see {@link '../emitter/emitter.js'} setupParticle
|
|
40
|
-
* @param {Emitter} emitter - the emitter to initialize the property on
|
|
41
|
-
* @param {Particle} particle - the particle to intiialize the property on
|
|
42
|
-
* @return void
|
|
43
|
-
*/
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
(0, _createClass2["default"])(Initializer, [{
|
|
47
|
-
key: "init",
|
|
48
|
-
value: function init(emitter, particle) {
|
|
49
|
-
if (!this.isEnabled) {
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
if (particle) {
|
|
54
|
-
this.initialize(particle);
|
|
55
|
-
particle.hasBeenInitialized = true;
|
|
56
|
-
} else {
|
|
57
|
-
this.initialize(emitter);
|
|
58
|
-
emitter.hasBeenInitialized = true;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* @abstract
|
|
63
|
-
*/
|
|
64
|
-
|
|
65
|
-
}, {
|
|
66
|
-
key: "reset",
|
|
67
|
-
value: function reset() {}
|
|
68
|
-
/**
|
|
69
|
-
* Place custom property initialization code in this method in the subclass.
|
|
70
|
-
*
|
|
71
|
-
* @param {object} target - either an Emitter or a Particle
|
|
72
|
-
* @abstract
|
|
73
|
-
*/
|
|
74
|
-
|
|
75
|
-
}, {
|
|
76
|
-
key: "initialize",
|
|
77
|
-
value: function initialize(target) {} // eslint-disable-line
|
|
78
|
-
|
|
79
|
-
/**
|
|
80
|
-
* Determines if the initializer requires a Web GL API to be provided to its constructor.
|
|
81
|
-
* If true, the WebGL API will need to be provided as the first argument to the constructor
|
|
82
|
-
* and fromJSON methods.
|
|
83
|
-
*
|
|
84
|
-
* @return {boolean}
|
|
85
|
-
*/
|
|
86
|
-
|
|
87
|
-
}], [{
|
|
88
|
-
key: "requiresWebGlApi",
|
|
89
|
-
value: function requiresWebGlApi() {
|
|
90
|
-
return false;
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Returns a new instance of the initializer from the JSON object passed.
|
|
94
|
-
*
|
|
95
|
-
* @abstract
|
|
96
|
-
* @param {object} json - JSON object containing the required constructor properties
|
|
97
|
-
* @return {Behaviour}
|
|
98
|
-
*/
|
|
99
|
-
|
|
100
|
-
}, {
|
|
101
|
-
key: "fromJSON",
|
|
102
|
-
value: function fromJSON(json) {} // eslint-disable-line
|
|
103
|
-
|
|
104
|
-
}]);
|
|
105
|
-
return Initializer;
|
|
106
|
-
}();
|
|
107
|
-
|
|
108
|
-
exports["default"] = Initializer;
|
|
109
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbml0aWFsaXplci9Jbml0aWFsaXplci5qcyJdLCJuYW1lcyI6WyJJbml0aWFsaXplciIsInR5cGUiLCJJTklUSUFMSVpFUl9UWVBFX0FCU1RSQUNUIiwiaXNFbmFibGVkIiwiZW1pdHRlciIsInBhcnRpY2xlIiwiaW5pdGlhbGl6ZSIsImhhc0JlZW5Jbml0aWFsaXplZCIsInRhcmdldCIsImpzb24iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0lBQ3FCQSxXO0FBQ25CO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUUseUJBQWdFO0FBQUEsUUFBcERDLElBQW9ELHVFQUE3Q0MsZ0NBQTZDO0FBQUEsUUFBbEJDLFNBQWtCLHVFQUFOLElBQU07QUFBQTtBQUM5RCxTQUFLRixJQUFMLEdBQVlBLElBQVo7QUFDQSxTQUFLRSxTQUFMLEdBQWlCQSxTQUFqQjtBQUNEO0FBRUQ7QUFDRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7eUJBQ09DLE8sRUFBU0MsUSxFQUFVO0FBQ3RCLFVBQUksQ0FBQyxLQUFLRixTQUFWLEVBQXFCO0FBQ25CO0FBQ0Q7O0FBRUQsVUFBSUUsUUFBSixFQUFjO0FBQ1osYUFBS0MsVUFBTCxDQUFnQkQsUUFBaEI7QUFDQUEsUUFBQUEsUUFBUSxDQUFDRSxrQkFBVCxHQUE4QixJQUE5QjtBQUNELE9BSEQsTUFHTztBQUNMLGFBQUtELFVBQUwsQ0FBZ0JGLE9BQWhCO0FBQ0FBLFFBQUFBLE9BQU8sQ0FBQ0csa0JBQVIsR0FBNkIsSUFBN0I7QUFDRDtBQUNGO0FBRUQ7QUFDRjtBQUNBOzs7OzRCQUNVLENBQUU7QUFFVjtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7K0JBQ2FDLE0sRUFBUSxDQUFFLEMsQ0FBQzs7QUFFdEI7QUFDRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7dUNBQzRCO0FBQ3hCLGFBQU8sS0FBUDtBQUNEO0FBRUQ7QUFDRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7NkJBQ2tCQyxJLEVBQU0sQ0FBRSxDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJTklUSUFMSVpFUl9UWVBFX0FCU1RSQUNUIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogVGhlIGJhc2UgRW1pdHRlciAvIFBhcnRpY2xlIHByb3BlcnR5IGNsYXNzLlxuICpcbiAqIEBhYnN0cmFjdFxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBJbml0aWFsaXplciB7XG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGFuIEluaXRpYWxpemVyIGluc3RhbmNlLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW3R5cGU9SU5JVElBTElaRVJfVFlQRV9BQlNUUkFDVF0gLSBUaGUgaW50aWlhbGl6ZXIgdHlwZVxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFtpc0VuYWJsZWQ9dHJ1ZV0gLSBEZXRlcm1pbmVzIGlmIHRoZSBpbml0aWFsaXplciBzaG91bGQgYmUgZW5hYmxlZCBvciBub3RcblxuICAgKiBAcmV0dXJuIHZvaWRcbiAgICovXG4gIGNvbnN0cnVjdG9yKHR5cGUgPSBJTklUSUFMSVpFUl9UWVBFX0FCU1RSQUNULCBpc0VuYWJsZWQgPSB0cnVlKSB7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLmlzRW5hYmxlZCA9IGlzRW5hYmxlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyB0aGUgcHJvcGVydHkgb24gdGhlIGVtaXR0ZXIgb3IgcGFydGljbGUuXG4gICAqXG4gICAqIEBzZWUge0BsaW5rICcuLi9lbWl0dGVyL2VtaXR0ZXIuanMnfSBzZXR1cFBhcnRpY2xlXG4gICAqIEBwYXJhbSB7RW1pdHRlcn0gZW1pdHRlciAtIHRoZSBlbWl0dGVyIHRvIGluaXRpYWxpemUgdGhlIHByb3BlcnR5IG9uXG4gICAqIEBwYXJhbSB7UGFydGljbGV9IHBhcnRpY2xlIC0gdGhlIHBhcnRpY2xlIHRvIGludGlpYWxpemUgdGhlIHByb3BlcnR5IG9uXG4gICAqIEByZXR1cm4gdm9pZFxuICAgKi9cbiAgaW5pdChlbWl0dGVyLCBwYXJ0aWNsZSkge1xuICAgIGlmICghdGhpcy5pc0VuYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAocGFydGljbGUpIHtcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZShwYXJ0aWNsZSk7XG4gICAgICBwYXJ0aWNsZS5oYXNCZWVuSW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmluaXRpYWxpemUoZW1pdHRlcik7XG4gICAgICBlbWl0dGVyLmhhc0JlZW5Jbml0aWFsaXplZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBhYnN0cmFjdFxuICAgKi9cbiAgcmVzZXQoKSB7fVxuXG4gIC8qKlxuICAgKiBQbGFjZSBjdXN0b20gcHJvcGVydHkgaW5pdGlhbGl6YXRpb24gY29kZSBpbiB0aGlzIG1ldGhvZCBpbiB0aGUgc3ViY2xhc3MuXG4gICAqXG4gICAqIEBwYXJhbSB7b2JqZWN0fSB0YXJnZXQgLSBlaXRoZXIgYW4gRW1pdHRlciBvciBhIFBhcnRpY2xlXG4gICAqIEBhYnN0cmFjdFxuICAgKi9cbiAgaW5pdGlhbGl6ZSh0YXJnZXQpIHt9IC8vIGVzbGludC1kaXNhYmxlLWxpbmVcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgaW5pdGlhbGl6ZXIgcmVxdWlyZXMgYSBXZWIgR0wgQVBJIHRvIGJlIHByb3ZpZGVkIHRvIGl0cyBjb25zdHJ1Y3Rvci5cbiAgICogSWYgdHJ1ZSwgdGhlIFdlYkdMIEFQSSB3aWxsIG5lZWQgdG8gYmUgcHJvdmlkZWQgYXMgdGhlIGZpcnN0IGFyZ3VtZW50IHRvIHRoZSBjb25zdHJ1Y3RvclxuICAgKiBhbmQgZnJvbUpTT04gbWV0aG9kcy5cbiAgICpcbiAgICogQHJldHVybiB7Ym9vbGVhbn1cbiAgICovXG4gIHN0YXRpYyByZXF1aXJlc1dlYkdsQXBpKCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgbmV3IGluc3RhbmNlIG9mIHRoZSBpbml0aWFsaXplciBmcm9tIHRoZSBKU09OIG9iamVjdCBwYXNzZWQuXG4gICAqXG4gICAqIEBhYnN0cmFjdFxuICAgKiBAcGFyYW0ge29iamVjdH0ganNvbiAtIEpTT04gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIHJlcXVpcmVkIGNvbnN0cnVjdG9yIHByb3BlcnRpZXNcbiAgICogQHJldHVybiB7QmVoYXZpb3VyfVxuICAgKi9cbiAgc3RhdGljIGZyb21KU09OKGpzb24pIHt9IC8vIGVzbGludC1kaXNhYmxlLWxpbmVcbn1cbiJdfQ==
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports["default"] = void 0;
|
|
7
|
-
|
|
8
|
-
var _three = require("../core/three/");
|
|
9
|
-
|
|
10
|
-
var particleEuler = new _three.Euler();
|
|
11
|
-
var _default = {
|
|
12
|
-
particleEuler: null,
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Loops through the initializers array and calls each initializer's initialize method
|
|
16
|
-
* on the supplied particle. This sets the particle's initial properties.
|
|
17
|
-
*
|
|
18
|
-
* @see {@link '../emitter/Emitter'} setupParticle
|
|
19
|
-
* @param {Emitter} emitter - The emitter that has called this method
|
|
20
|
-
* @param {Particle} particle - The particle that has just been created
|
|
21
|
-
* @param {array<Initializer>} initializers - All of the emitter's initializers
|
|
22
|
-
* @return void
|
|
23
|
-
*/
|
|
24
|
-
initialize: function initialize(emitter, particle, initializers) {
|
|
25
|
-
var i = initializers.length;
|
|
26
|
-
|
|
27
|
-
while (i--) {
|
|
28
|
-
initializers[i].init(emitter, particle);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
emitter.bindEmitter && this.bindEmitter(emitter, particle);
|
|
32
|
-
},
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Ensures that the emitter's position, velocity and accleration are added
|
|
36
|
-
* to each created particle.
|
|
37
|
-
*
|
|
38
|
-
* @param {Emitter} emitter - The emitter that is emitting the particles
|
|
39
|
-
* @param {Particle} particle - The newly created particle
|
|
40
|
-
* @return void
|
|
41
|
-
*/
|
|
42
|
-
bindEmitter: function bindEmitter(emitter, particle) {
|
|
43
|
-
var _emitter$rotation = emitter.rotation,
|
|
44
|
-
x = _emitter$rotation.x,
|
|
45
|
-
y = _emitter$rotation.y,
|
|
46
|
-
z = _emitter$rotation.z;
|
|
47
|
-
particle.position.add(emitter.position);
|
|
48
|
-
particle.velocity.add(emitter.velocity);
|
|
49
|
-
particle.acceleration.add(emitter.acceleration);
|
|
50
|
-
particle.velocity.applyEuler(particleEuler.set(x, y, z));
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
exports["default"] = _default;
|
|
54
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbml0aWFsaXplci9Jbml0aWFsaXplclV0aWwuanMiXSwibmFtZXMiOlsicGFydGljbGVFdWxlciIsIkV1bGVyIiwiaW5pdGlhbGl6ZSIsImVtaXR0ZXIiLCJwYXJ0aWNsZSIsImluaXRpYWxpemVycyIsImkiLCJsZW5ndGgiLCJpbml0IiwiYmluZEVtaXR0ZXIiLCJyb3RhdGlvbiIsIngiLCJ5IiwieiIsInBvc2l0aW9uIiwiYWRkIiwidmVsb2NpdHkiLCJhY2NlbGVyYXRpb24iLCJhcHBseUV1bGVyIiwic2V0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBRUEsSUFBTUEsYUFBYSxHQUFHLElBQUlDLFlBQUosRUFBdEI7ZUFFZTtBQUNiRCxFQUFBQSxhQUFhLEVBQUUsSUFERjs7QUFFYjtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNFRSxFQUFBQSxVQUFVLEVBQUUsb0JBQVNDLE9BQVQsRUFBa0JDLFFBQWxCLEVBQTRCQyxZQUE1QixFQUEwQztBQUNwRCxRQUFJQyxDQUFDLEdBQUdELFlBQVksQ0FBQ0UsTUFBckI7O0FBRUEsV0FBT0QsQ0FBQyxFQUFSLEVBQVk7QUFDVkQsTUFBQUEsWUFBWSxDQUFDQyxDQUFELENBQVosQ0FBZ0JFLElBQWhCLENBQXFCTCxPQUFyQixFQUE4QkMsUUFBOUI7QUFDRDs7QUFFREQsSUFBQUEsT0FBTyxDQUFDTSxXQUFSLElBQXVCLEtBQUtBLFdBQUwsQ0FBaUJOLE9BQWpCLEVBQTBCQyxRQUExQixDQUF2QjtBQUNELEdBcEJZOztBQXNCYjtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0VLLEVBQUFBLFdBQVcsRUFBRSxxQkFBU04sT0FBVCxFQUFrQkMsUUFBbEIsRUFBNEI7QUFBQSw0QkFHbkNELE9BSG1DLENBRXJDTyxRQUZxQztBQUFBLFFBRXpCQyxDQUZ5QixxQkFFekJBLENBRnlCO0FBQUEsUUFFdEJDLENBRnNCLHFCQUV0QkEsQ0FGc0I7QUFBQSxRQUVuQkMsQ0FGbUIscUJBRW5CQSxDQUZtQjtBQUt2Q1QsSUFBQUEsUUFBUSxDQUFDVSxRQUFULENBQWtCQyxHQUFsQixDQUFzQlosT0FBTyxDQUFDVyxRQUE5QjtBQUNBVixJQUFBQSxRQUFRLENBQUNZLFFBQVQsQ0FBa0JELEdBQWxCLENBQXNCWixPQUFPLENBQUNhLFFBQTlCO0FBQ0FaLElBQUFBLFFBQVEsQ0FBQ2EsWUFBVCxDQUFzQkYsR0FBdEIsQ0FBMEJaLE9BQU8sQ0FBQ2MsWUFBbEM7QUFDQWIsSUFBQUEsUUFBUSxDQUFDWSxRQUFULENBQWtCRSxVQUFsQixDQUE2QmxCLGFBQWEsQ0FBQ21CLEdBQWQsQ0FBa0JSLENBQWxCLEVBQXFCQyxDQUFyQixFQUF3QkMsQ0FBeEIsQ0FBN0I7QUFDRDtBQXZDWSxDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXVsZXIgfSBmcm9tICcuLi9jb3JlL3RocmVlLyc7XG5cbmNvbnN0IHBhcnRpY2xlRXVsZXIgPSBuZXcgRXVsZXIoKTtcblxuZXhwb3J0IGRlZmF1bHQge1xuICBwYXJ0aWNsZUV1bGVyOiBudWxsLFxuICAvKipcbiAgICogTG9vcHMgdGhyb3VnaCB0aGUgaW5pdGlhbGl6ZXJzIGFycmF5IGFuZCBjYWxscyBlYWNoIGluaXRpYWxpemVyJ3MgaW5pdGlhbGl6ZSBtZXRob2RcbiAgICogb24gdGhlIHN1cHBsaWVkIHBhcnRpY2xlLiBUaGlzIHNldHMgdGhlIHBhcnRpY2xlJ3MgaW5pdGlhbCBwcm9wZXJ0aWVzLlxuICAgKlxuICAgKiBAc2VlIHtAbGluayAnLi4vZW1pdHRlci9FbWl0dGVyJ30gc2V0dXBQYXJ0aWNsZVxuICAgKiBAcGFyYW0ge0VtaXR0ZXJ9IGVtaXR0ZXIgLSBUaGUgZW1pdHRlciB0aGF0IGhhcyBjYWxsZWQgdGhpcyBtZXRob2RcbiAgICogQHBhcmFtIHtQYXJ0aWNsZX0gcGFydGljbGUgLSBUaGUgcGFydGljbGUgdGhhdCBoYXMganVzdCBiZWVuIGNyZWF0ZWRcbiAgICogQHBhcmFtIHthcnJheTxJbml0aWFsaXplcj59IGluaXRpYWxpemVycyAtIEFsbCBvZiB0aGUgZW1pdHRlcidzIGluaXRpYWxpemVyc1xuICAgKiBAcmV0dXJuIHZvaWRcbiAgICovXG4gIGluaXRpYWxpemU6IGZ1bmN0aW9uKGVtaXR0ZXIsIHBhcnRpY2xlLCBpbml0aWFsaXplcnMpIHtcbiAgICBsZXQgaSA9IGluaXRpYWxpemVycy5sZW5ndGg7XG5cbiAgICB3aGlsZSAoaS0tKSB7XG4gICAgICBpbml0aWFsaXplcnNbaV0uaW5pdChlbWl0dGVyLCBwYXJ0aWNsZSk7XG4gICAgfVxuXG4gICAgZW1pdHRlci5iaW5kRW1pdHRlciAmJiB0aGlzLmJpbmRFbWl0dGVyKGVtaXR0ZXIsIHBhcnRpY2xlKTtcbiAgfSxcblxuICAvKipcbiAgICogRW5zdXJlcyB0aGF0IHRoZSBlbWl0dGVyJ3MgcG9zaXRpb24sIHZlbG9jaXR5IGFuZCBhY2NsZXJhdGlvbiBhcmUgYWRkZWRcbiAgICogdG8gZWFjaCBjcmVhdGVkIHBhcnRpY2xlLlxuICAgKlxuICAgKiBAcGFyYW0ge0VtaXR0ZXJ9IGVtaXR0ZXIgLSBUaGUgZW1pdHRlciB0aGF0IGlzIGVtaXR0aW5nIHRoZSBwYXJ0aWNsZXNcbiAgICogQHBhcmFtIHtQYXJ0aWNsZX0gcGFydGljbGUgLSBUaGUgbmV3bHkgY3JlYXRlZCBwYXJ0aWNsZVxuICAgKiBAcmV0dXJuIHZvaWRcbiAgICovXG4gIGJpbmRFbWl0dGVyOiBmdW5jdGlvbihlbWl0dGVyLCBwYXJ0aWNsZSkge1xuICAgIGNvbnN0IHtcbiAgICAgIHJvdGF0aW9uOiB7IHgsIHksIHogfSxcbiAgICB9ID0gZW1pdHRlcjtcblxuICAgIHBhcnRpY2xlLnBvc2l0aW9uLmFkZChlbWl0dGVyLnBvc2l0aW9uKTtcbiAgICBwYXJ0aWNsZS52ZWxvY2l0eS5hZGQoZW1pdHRlci52ZWxvY2l0eSk7XG4gICAgcGFydGljbGUuYWNjZWxlcmF0aW9uLmFkZChlbWl0dGVyLmFjY2VsZXJhdGlvbik7XG4gICAgcGFydGljbGUudmVsb2NpdHkuYXBwbHlFdWxlcihwYXJ0aWNsZUV1bGVyLnNldCh4LCB5LCB6KSk7XG4gIH0sXG59O1xuIl19
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
|
-
|
|
16
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
17
|
-
|
|
18
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
19
|
-
|
|
20
|
-
var _Initializer2 = _interopRequireDefault(require("./Initializer"));
|
|
21
|
-
|
|
22
|
-
var _math = require("../math");
|
|
23
|
-
|
|
24
|
-
var _types = require("./types");
|
|
25
|
-
|
|
26
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
27
|
-
|
|
28
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Sets the life property on initialized particles.
|
|
32
|
-
*
|
|
33
|
-
*/
|
|
34
|
-
var Life = /*#__PURE__*/function (_Initializer) {
|
|
35
|
-
(0, _inherits2["default"])(Life, _Initializer);
|
|
36
|
-
|
|
37
|
-
var _super = _createSuper(Life);
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* Constructs a Life property instance.
|
|
41
|
-
*
|
|
42
|
-
* @param {number} min - The minimum life
|
|
43
|
-
* @param {number} max - The maximum life
|
|
44
|
-
* @param {boolean} [center] - Determines whether to average the life value
|
|
45
|
-
* @param {boolean} [isEnabled=true] - Determines if the initializer should be enabled or not
|
|
46
|
-
* @return void
|
|
47
|
-
*/
|
|
48
|
-
function Life(min, max, center) {
|
|
49
|
-
var _this;
|
|
50
|
-
|
|
51
|
-
var isEnabled = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
|
|
52
|
-
(0, _classCallCheck2["default"])(this, Life);
|
|
53
|
-
_this = _super.call(this, _types.INITIALIZER_TYPE_LIFE, isEnabled);
|
|
54
|
-
/**
|
|
55
|
-
* @desc The life span of the particle.
|
|
56
|
-
* @type {Span}
|
|
57
|
-
*/
|
|
58
|
-
|
|
59
|
-
_this.lifePan = (0, _math.createSpan)(min, max, center);
|
|
60
|
-
return _this;
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Sets the particle's initial life.
|
|
64
|
-
*
|
|
65
|
-
* @param {Particle} particle - the particle to initialize the property on
|
|
66
|
-
* @return void
|
|
67
|
-
*/
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
(0, _createClass2["default"])(Life, [{
|
|
71
|
-
key: "initialize",
|
|
72
|
-
value: function initialize(particle) {
|
|
73
|
-
if (this.lifePan.a == Infinity || this.lifePan.a == 'infi') {
|
|
74
|
-
particle.life = Infinity;
|
|
75
|
-
} else {
|
|
76
|
-
particle.life = this.lifePan.getValue();
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Creates a Life initializer from JSON.
|
|
81
|
-
*
|
|
82
|
-
* @param {object} json - The JSON to construct the instance from.
|
|
83
|
-
* @param {number} json.min - The minimum life time
|
|
84
|
-
* @param {number} json.max - The maximum life time
|
|
85
|
-
* @param {number} json.center - The center of the life time
|
|
86
|
-
* @param {boolean} [json.isEnabled=true] - Determines if the initializer should be enabled or not
|
|
87
|
-
* @return {Life}
|
|
88
|
-
*/
|
|
89
|
-
|
|
90
|
-
}], [{
|
|
91
|
-
key: "fromJSON",
|
|
92
|
-
value: function fromJSON(json) {
|
|
93
|
-
var min = json.min,
|
|
94
|
-
max = json.max,
|
|
95
|
-
_json$center = json.center,
|
|
96
|
-
center = _json$center === void 0 ? false : _json$center,
|
|
97
|
-
_json$isEnabled = json.isEnabled,
|
|
98
|
-
isEnabled = _json$isEnabled === void 0 ? true : _json$isEnabled;
|
|
99
|
-
return new Life(min, max, center, isEnabled);
|
|
100
|
-
}
|
|
101
|
-
}]);
|
|
102
|
-
return Life;
|
|
103
|
-
}(_Initializer2["default"]);
|
|
104
|
-
|
|
105
|
-
exports["default"] = Life;
|
|
106
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbml0aWFsaXplci9MaWZlLmpzIl0sIm5hbWVzIjpbIkxpZmUiLCJtaW4iLCJtYXgiLCJjZW50ZXIiLCJpc0VuYWJsZWQiLCJ0eXBlIiwibGlmZVBhbiIsInBhcnRpY2xlIiwiYSIsIkluZmluaXR5IiwibGlmZSIsImdldFZhbHVlIiwianNvbiIsIkluaXRpYWxpemVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBO0FBQ0E7QUFDQTtBQUNBO0lBQ3FCQSxJOzs7OztBQUNuQjtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDRSxnQkFBWUMsR0FBWixFQUFpQkMsR0FBakIsRUFBc0JDLE1BQXRCLEVBQWdEO0FBQUE7O0FBQUEsUUFBbEJDLFNBQWtCLHVFQUFOLElBQU07QUFBQTtBQUM5Qyw4QkFBTUMsNEJBQU4sRUFBWUQsU0FBWjtBQUVBO0FBQ0o7QUFDQTtBQUNBOztBQUNJLFVBQUtFLE9BQUwsR0FBZSxzQkFBV0wsR0FBWCxFQUFnQkMsR0FBaEIsRUFBcUJDLE1BQXJCLENBQWY7QUFQOEM7QUFRL0M7QUFFRDtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7OytCQUNhSSxRLEVBQVU7QUFDbkIsVUFBSSxLQUFLRCxPQUFMLENBQWFFLENBQWIsSUFBa0JDLFFBQWxCLElBQThCLEtBQUtILE9BQUwsQ0FBYUUsQ0FBYixJQUFrQixNQUFwRCxFQUE0RDtBQUMxREQsUUFBQUEsUUFBUSxDQUFDRyxJQUFULEdBQWdCRCxRQUFoQjtBQUNELE9BRkQsTUFFTztBQUNMRixRQUFBQSxRQUFRLENBQUNHLElBQVQsR0FBZ0IsS0FBS0osT0FBTCxDQUFhSyxRQUFiLEVBQWhCO0FBQ0Q7QUFDRjtBQUVEO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7OzZCQUNrQkMsSSxFQUFNO0FBQUEsVUFDWlgsR0FEWSxHQUNtQ1csSUFEbkMsQ0FDWlgsR0FEWTtBQUFBLFVBQ1BDLEdBRE8sR0FDbUNVLElBRG5DLENBQ1BWLEdBRE87QUFBQSx5QkFDbUNVLElBRG5DLENBQ0ZULE1BREU7QUFBQSxVQUNGQSxNQURFLDZCQUNPLEtBRFA7QUFBQSw0QkFDbUNTLElBRG5DLENBQ2NSLFNBRGQ7QUFBQSxVQUNjQSxTQURkLGdDQUMwQixJQUQxQjtBQUdwQixhQUFPLElBQUlKLElBQUosQ0FBU0MsR0FBVCxFQUFjQyxHQUFkLEVBQW1CQyxNQUFuQixFQUEyQkMsU0FBM0IsQ0FBUDtBQUNEOzs7RUFoRCtCUyx3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBJbml0aWFsaXplciBmcm9tICcuL0luaXRpYWxpemVyJztcbmltcG9ydCB7IGNyZWF0ZVNwYW4gfSBmcm9tICcuLi9tYXRoJztcbmltcG9ydCB7IElOSVRJQUxJWkVSX1RZUEVfTElGRSBhcyB0eXBlIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogU2V0cyB0aGUgbGlmZSBwcm9wZXJ0eSBvbiBpbml0aWFsaXplZCBwYXJ0aWNsZXMuXG4gKlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBMaWZlIGV4dGVuZHMgSW5pdGlhbGl6ZXIge1xuICAvKipcbiAgICogQ29uc3RydWN0cyBhIExpZmUgcHJvcGVydHkgaW5zdGFuY2UuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBtaW4gLSBUaGUgbWluaW11bSBsaWZlXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBtYXggLSBUaGUgbWF4aW11bSBsaWZlXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gW2NlbnRlcl0gLSBEZXRlcm1pbmVzIHdoZXRoZXIgdG8gYXZlcmFnZSB0aGUgbGlmZSB2YWx1ZVxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFtpc0VuYWJsZWQ9dHJ1ZV0gLSBEZXRlcm1pbmVzIGlmIHRoZSBpbml0aWFsaXplciBzaG91bGQgYmUgZW5hYmxlZCBvciBub3RcbiAgICogQHJldHVybiB2b2lkXG4gICAqL1xuICBjb25zdHJ1Y3RvcihtaW4sIG1heCwgY2VudGVyLCBpc0VuYWJsZWQgPSB0cnVlKSB7XG4gICAgc3VwZXIodHlwZSwgaXNFbmFibGVkKTtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjIFRoZSBsaWZlIHNwYW4gb2YgdGhlIHBhcnRpY2xlLlxuICAgICAqIEB0eXBlIHtTcGFufVxuICAgICAqL1xuICAgIHRoaXMubGlmZVBhbiA9IGNyZWF0ZVNwYW4obWluLCBtYXgsIGNlbnRlcik7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGFydGljbGUncyBpbml0aWFsIGxpZmUuXG4gICAqXG4gICAqIEBwYXJhbSB7UGFydGljbGV9IHBhcnRpY2xlIC0gdGhlIHBhcnRpY2xlIHRvIGluaXRpYWxpemUgdGhlIHByb3BlcnR5IG9uXG4gICAqIEByZXR1cm4gdm9pZFxuICAgKi9cbiAgaW5pdGlhbGl6ZShwYXJ0aWNsZSkge1xuICAgIGlmICh0aGlzLmxpZmVQYW4uYSA9PSBJbmZpbml0eSB8fCB0aGlzLmxpZmVQYW4uYSA9PSAnaW5maScpIHtcbiAgICAgIHBhcnRpY2xlLmxpZmUgPSBJbmZpbml0eTtcbiAgICB9IGVsc2Uge1xuICAgICAgcGFydGljbGUubGlmZSA9IHRoaXMubGlmZVBhbi5nZXRWYWx1ZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgTGlmZSBpbml0aWFsaXplciBmcm9tIEpTT04uXG4gICAqXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBqc29uIC0gVGhlIEpTT04gdG8gY29uc3RydWN0IHRoZSBpbnN0YW5jZSBmcm9tLlxuICAgKiBAcGFyYW0ge251bWJlcn0ganNvbi5taW4gLSBUaGUgbWluaW11bSBsaWZlIHRpbWVcbiAgICogQHBhcmFtIHtudW1iZXJ9IGpzb24ubWF4IC0gVGhlIG1heGltdW0gbGlmZSB0aW1lXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBqc29uLmNlbnRlciAtIFRoZSBjZW50ZXIgb2YgdGhlIGxpZmUgdGltZVxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFtqc29uLmlzRW5hYmxlZD10cnVlXSAtIERldGVybWluZXMgaWYgdGhlIGluaXRpYWxpemVyIHNob3VsZCBiZSBlbmFibGVkIG9yIG5vdFxuICAgKiBAcmV0dXJuIHtMaWZlfVxuICAgKi9cbiAgc3RhdGljIGZyb21KU09OKGpzb24pIHtcbiAgICBjb25zdCB7IG1pbiwgbWF4LCBjZW50ZXIgPSBmYWxzZSwgaXNFbmFibGVkID0gdHJ1ZSB9ID0ganNvbjtcblxuICAgIHJldHVybiBuZXcgTGlmZShtaW4sIG1heCwgY2VudGVyLCBpc0VuYWJsZWQpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
|
-
|
|
16
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
17
|
-
|
|
18
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
19
|
-
|
|
20
|
-
var _Initializer2 = _interopRequireDefault(require("./Initializer"));
|
|
21
|
-
|
|
22
|
-
var _math = require("../math");
|
|
23
|
-
|
|
24
|
-
var _types = require("./types");
|
|
25
|
-
|
|
26
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
27
|
-
|
|
28
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Sets the mass property on initialized particles.
|
|
32
|
-
*
|
|
33
|
-
*/
|
|
34
|
-
var Mass = /*#__PURE__*/function (_Initializer) {
|
|
35
|
-
(0, _inherits2["default"])(Mass, _Initializer);
|
|
36
|
-
|
|
37
|
-
var _super = _createSuper(Mass);
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* Constructs a Mass initializer instance.
|
|
41
|
-
*
|
|
42
|
-
* @param {number} min - The minumum mass for the particle
|
|
43
|
-
* @param {number} max - The maximum mass for the particle
|
|
44
|
-
* @param {boolean} [center] - Determines whether to average the mass value
|
|
45
|
-
* @return void
|
|
46
|
-
*/
|
|
47
|
-
function Mass(min, max) {
|
|
48
|
-
var _this;
|
|
49
|
-
|
|
50
|
-
var center = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
51
|
-
var isEnabled = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
|
|
52
|
-
(0, _classCallCheck2["default"])(this, Mass);
|
|
53
|
-
_this = _super.call(this, _types.INITIALIZER_TYPE_MASS, isEnabled);
|
|
54
|
-
/**
|
|
55
|
-
* @desc The mass span which is used to set the particle mass value.
|
|
56
|
-
* @type {Span}
|
|
57
|
-
*/
|
|
58
|
-
|
|
59
|
-
_this.massPan = (0, _math.createSpan)(min, max, center);
|
|
60
|
-
return _this;
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Sets the particle's initial mass.
|
|
64
|
-
*
|
|
65
|
-
* @param {Particle} particle - the particle to initialize the property on
|
|
66
|
-
* @return void
|
|
67
|
-
*/
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
(0, _createClass2["default"])(Mass, [{
|
|
71
|
-
key: "initialize",
|
|
72
|
-
value: function initialize(particle) {
|
|
73
|
-
particle.mass = this.massPan.getValue();
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Creates a Mass initializer from JSON.
|
|
77
|
-
*
|
|
78
|
-
* @param {object} json - The JSON to construct the instance from.
|
|
79
|
-
* @property {number} json.min - The minimum mass
|
|
80
|
-
* @property {number} json.max - The maximum mass
|
|
81
|
-
* @property {number} json.center - The center of the mass
|
|
82
|
-
* @return {Mass}
|
|
83
|
-
*/
|
|
84
|
-
|
|
85
|
-
}], [{
|
|
86
|
-
key: "fromJSON",
|
|
87
|
-
value: function fromJSON(json) {
|
|
88
|
-
var min = json.min,
|
|
89
|
-
max = json.max,
|
|
90
|
-
_json$center = json.center,
|
|
91
|
-
center = _json$center === void 0 ? false : _json$center,
|
|
92
|
-
_json$isEnabled = json.isEnabled,
|
|
93
|
-
isEnabled = _json$isEnabled === void 0 ? true : _json$isEnabled;
|
|
94
|
-
return new Mass(min, max, center, isEnabled);
|
|
95
|
-
}
|
|
96
|
-
}]);
|
|
97
|
-
return Mass;
|
|
98
|
-
}(_Initializer2["default"]);
|
|
99
|
-
|
|
100
|
-
exports["default"] = Mass;
|
|
101
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbml0aWFsaXplci9NYXNzLmpzIl0sIm5hbWVzIjpbIk1hc3MiLCJtaW4iLCJtYXgiLCJjZW50ZXIiLCJpc0VuYWJsZWQiLCJ0eXBlIiwibWFzc1BhbiIsInBhcnRpY2xlIiwibWFzcyIsImdldFZhbHVlIiwianNvbiIsIkluaXRpYWxpemVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBO0FBQ0E7QUFDQTtBQUNBO0lBQ3FCQSxJOzs7OztBQUNuQjtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0UsZ0JBQVlDLEdBQVosRUFBaUJDLEdBQWpCLEVBQXdEO0FBQUE7O0FBQUEsUUFBbENDLE1BQWtDLHVFQUF6QixLQUF5QjtBQUFBLFFBQWxCQyxTQUFrQix1RUFBTixJQUFNO0FBQUE7QUFDdEQsOEJBQU1DLDRCQUFOLEVBQVlELFNBQVo7QUFFQTtBQUNKO0FBQ0E7QUFDQTs7QUFDSSxVQUFLRSxPQUFMLEdBQWUsc0JBQVdMLEdBQVgsRUFBZ0JDLEdBQWhCLEVBQXFCQyxNQUFyQixDQUFmO0FBUHNEO0FBUXZEO0FBRUQ7QUFDRjtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7OzsrQkFDYUksUSxFQUFVO0FBQ25CQSxNQUFBQSxRQUFRLENBQUNDLElBQVQsR0FBZ0IsS0FBS0YsT0FBTCxDQUFhRyxRQUFiLEVBQWhCO0FBQ0Q7QUFFRDtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7NkJBQ2tCQyxJLEVBQU07QUFBQSxVQUNaVCxHQURZLEdBQ21DUyxJQURuQyxDQUNaVCxHQURZO0FBQUEsVUFDUEMsR0FETyxHQUNtQ1EsSUFEbkMsQ0FDUFIsR0FETztBQUFBLHlCQUNtQ1EsSUFEbkMsQ0FDRlAsTUFERTtBQUFBLFVBQ0ZBLE1BREUsNkJBQ08sS0FEUDtBQUFBLDRCQUNtQ08sSUFEbkMsQ0FDY04sU0FEZDtBQUFBLFVBQ2NBLFNBRGQsZ0NBQzBCLElBRDFCO0FBR3BCLGFBQU8sSUFBSUosSUFBSixDQUFTQyxHQUFULEVBQWNDLEdBQWQsRUFBbUJDLE1BQW5CLEVBQTJCQyxTQUEzQixDQUFQO0FBQ0Q7OztFQTFDK0JPLHdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEluaXRpYWxpemVyIGZyb20gJy4vSW5pdGlhbGl6ZXInO1xuaW1wb3J0IHsgY3JlYXRlU3BhbiB9IGZyb20gJy4uL21hdGgnO1xuaW1wb3J0IHsgSU5JVElBTElaRVJfVFlQRV9NQVNTIGFzIHR5cGUgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBTZXRzIHRoZSBtYXNzIHByb3BlcnR5IG9uIGluaXRpYWxpemVkIHBhcnRpY2xlcy5cbiAqXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1hc3MgZXh0ZW5kcyBJbml0aWFsaXplciB7XG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGEgTWFzcyBpbml0aWFsaXplciBpbnN0YW5jZS5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IG1pbiAtIFRoZSBtaW51bXVtIG1hc3MgZm9yIHRoZSBwYXJ0aWNsZVxuICAgKiBAcGFyYW0ge251bWJlcn0gbWF4IC0gVGhlIG1heGltdW0gbWFzcyBmb3IgdGhlIHBhcnRpY2xlXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gW2NlbnRlcl0gLSBEZXRlcm1pbmVzIHdoZXRoZXIgdG8gYXZlcmFnZSB0aGUgbWFzcyB2YWx1ZVxuICAgKiBAcmV0dXJuIHZvaWRcbiAgICovXG4gIGNvbnN0cnVjdG9yKG1pbiwgbWF4LCBjZW50ZXIgPSBmYWxzZSwgaXNFbmFibGVkID0gdHJ1ZSkge1xuICAgIHN1cGVyKHR5cGUsIGlzRW5hYmxlZCk7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzYyBUaGUgbWFzcyBzcGFuIHdoaWNoIGlzIHVzZWQgdG8gc2V0IHRoZSBwYXJ0aWNsZSBtYXNzIHZhbHVlLlxuICAgICAqIEB0eXBlIHtTcGFufVxuICAgICAqL1xuICAgIHRoaXMubWFzc1BhbiA9IGNyZWF0ZVNwYW4obWluLCBtYXgsIGNlbnRlcik7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGFydGljbGUncyBpbml0aWFsIG1hc3MuXG4gICAqXG4gICAqIEBwYXJhbSB7UGFydGljbGV9IHBhcnRpY2xlIC0gdGhlIHBhcnRpY2xlIHRvIGluaXRpYWxpemUgdGhlIHByb3BlcnR5IG9uXG4gICAqIEByZXR1cm4gdm9pZFxuICAgKi9cbiAgaW5pdGlhbGl6ZShwYXJ0aWNsZSkge1xuICAgIHBhcnRpY2xlLm1hc3MgPSB0aGlzLm1hc3NQYW4uZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgTWFzcyBpbml0aWFsaXplciBmcm9tIEpTT04uXG4gICAqXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBqc29uIC0gVGhlIEpTT04gdG8gY29uc3RydWN0IHRoZSBpbnN0YW5jZSBmcm9tLlxuICAgKiBAcHJvcGVydHkge251bWJlcn0ganNvbi5taW4gLSBUaGUgbWluaW11bSBtYXNzXG4gICAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBqc29uLm1heCAtIFRoZSBtYXhpbXVtIG1hc3NcbiAgICogQHByb3BlcnR5IHtudW1iZXJ9IGpzb24uY2VudGVyIC0gVGhlIGNlbnRlciBvZiB0aGUgbWFzc1xuICAgKiBAcmV0dXJuIHtNYXNzfVxuICAgKi9cbiAgc3RhdGljIGZyb21KU09OKGpzb24pIHtcbiAgICBjb25zdCB7IG1pbiwgbWF4LCBjZW50ZXIgPSBmYWxzZSwgaXNFbmFibGVkID0gdHJ1ZSB9ID0ganNvbjtcblxuICAgIHJldHVybiBuZXcgTWFzcyhtaW4sIG1heCwgY2VudGVyLCBpc0VuYWJsZWQpO1xuICB9XG59XG4iXX0=
|