@vyr/three 0.0.1 → 0.0.2

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 (63) hide show
  1. package/package.json +1 -26
  2. package/src/actor/ComposerServiceActor.ts +7 -6
  3. package/src/actor/HTMLConvertActor.ts +4 -4
  4. package/src/actor/OrbitControllerActor.ts +19 -19
  5. package/src/actor/SceneServiceActor.ts +9 -9
  6. package/src/actor/TransformControllerActor.ts +3 -3
  7. package/src/controls/TransformControls.ts +12 -16
  8. package/src/descriptor/OrbitControllerDescriptor.ts +2 -2
  9. package/src/descriptor/TransformControllerDescriptor.ts +2 -2
  10. package/src/interpreter/ComposerServiceInterpreter.ts +1 -1
  11. package/src/interpreter/GeoMapInterpreter.ts +32 -32
  12. package/src/interpreter/HTMLConvertInterpreter.ts +9 -9
  13. package/src/interpreter/InstancedMeshInterpreter.ts +13 -13
  14. package/src/interpreter/MeshInterpreter.ts +6 -7
  15. package/src/interpreter/ModelInterpreter.ts +10 -10
  16. package/src/interpreter/NodeInterpreter.ts +19 -19
  17. package/src/interpreter/OrbitControllerInterpreter.ts +20 -20
  18. package/src/interpreter/OrthographicCameraInterpreter.ts +2 -2
  19. package/src/interpreter/ParticleInterpreter.ts +13 -13
  20. package/src/interpreter/PassInterpreter.ts +16 -16
  21. package/src/interpreter/PerspectiveCameraInterpreter.ts +8 -8
  22. package/src/interpreter/PointsInterpreter.ts +13 -13
  23. package/src/interpreter/SceneServiceInterpreter.ts +28 -28
  24. package/src/interpreter/ServiceSchedulerInterpreter.ts +6 -6
  25. package/src/interpreter/SpriteInterpreter.ts +10 -10
  26. package/src/interpreter/TextInterpreter.ts +10 -10
  27. package/src/interpreter/TransformControllerInterpreter.ts +17 -17
  28. package/src/interpreter/animation/AnimationActionInterpreter.ts +10 -10
  29. package/src/interpreter/geometry/BoxGeometryInterpreter.ts +8 -8
  30. package/src/interpreter/geometry/BufferGeometryInterpreter.ts +8 -8
  31. package/src/interpreter/geometry/CircleGeometryInterpreter.ts +8 -8
  32. package/src/interpreter/geometry/CylinderGeometryInterpreter.ts +8 -8
  33. package/src/interpreter/geometry/ExtrudeGeometryInterpreter.ts +10 -10
  34. package/src/interpreter/geometry/PlaneGeometryInterpreter.ts +8 -8
  35. package/src/interpreter/geometry/RingGeometryInterpreter.ts +8 -8
  36. package/src/interpreter/geometry/SphereGeometryInterpreter.ts +8 -8
  37. package/src/interpreter/geometry/SurfaceGeometryInterpreter.ts +2 -3
  38. package/src/interpreter/geometry/TubeGeometryInterpreter.ts +10 -10
  39. package/src/interpreter/helper/AxesHelperInterpreter.ts +7 -8
  40. package/src/interpreter/light/AmbientLightInterpreter.ts +8 -8
  41. package/src/interpreter/light/DirectionalLightInterpreter.ts +14 -14
  42. package/src/interpreter/light/HemisphereLightInterpreter.ts +8 -8
  43. package/src/interpreter/light/PointLightInterpreter.ts +11 -11
  44. package/src/interpreter/light/RectAreaLightInterpreter.ts +8 -8
  45. package/src/interpreter/light/SpotLightInterpreter.ts +14 -14
  46. package/src/interpreter/material/MaterialInterpreter.ts +4 -4
  47. package/src/interpreter/material/MeshBasicMaterialInterpreter.ts +9 -10
  48. package/src/interpreter/material/MeshPhongMaterialInterpreter.ts +13 -14
  49. package/src/interpreter/material/MeshStandardMaterialInterpreter.ts +14 -15
  50. package/src/interpreter/material/PointsMaterialInterpreter.ts +6 -7
  51. package/src/interpreter/material/ShaderMaterialInterpreter.ts +9 -9
  52. package/src/interpreter/material/ShadowMaterialInterpreter.ts +4 -5
  53. package/src/interpreter/material/SpriteMaterialInterpreter.ts +6 -7
  54. package/src/interpreter/texture/TextureInterpreter.ts +8 -8
  55. package/src/preset/execute/GeoMap/drilldown.ts +6 -7
  56. package/src/preset/index.ts +2 -2
  57. package/src/preset/interaction/GeoMap/drilldown.ts +26 -0
  58. package/src/utils/geometry/index.ts +3 -3
  59. package/src/utils/material/index.ts +6 -6
  60. package/src/utils/texture/index.ts +3 -3
  61. package/src/preset/routine/GeoMap/drilldown.ts +0 -26
  62. /package/src/preset/{routine → interaction}/GeoMap/index.ts +0 -0
  63. /package/src/preset/{routine → interaction}/index.ts +0 -0
@@ -1,5 +1,5 @@
1
1
  import { Object3D } from 'three'
2
- import { Asset, Descriptor, UpdateArgs } from "@vyr/engine";
2
+ import { Asset, Descriptor } from "@vyr/engine";
3
3
  import { ModelDescriptor } from "../descriptor";
4
4
  import { NodeInterpreter, PickupNode } from "./NodeInterpreter";
5
5
  import { NodeActor } from '../actor';
@@ -11,15 +11,15 @@ class ModelInterpreter extends NodeInterpreter {
11
11
  readonly wrapper!: Object3D
12
12
  url = ''
13
13
 
14
- protected createActor(descriptor: Descriptor, args: UpdateArgs) {
15
- const actor = super.createActor(descriptor, args)
14
+ protected createActor(descriptor: Descriptor) {
15
+ const actor = super.createActor(descriptor)
16
16
  //@ts-ignore
17
17
  this.wrapper = new Object3D()
18
18
  actor.object.add(this.wrapper)
19
19
  return actor
20
20
  }
21
21
 
22
- setModel(descriptor: ModelDescriptor, args: UpdateArgs) {
22
+ setModel(descriptor: ModelDescriptor) {
23
23
 
24
24
  if (this.url !== descriptor.url) {
25
25
  diaposeObject3D(this.wrapper)
@@ -41,17 +41,17 @@ class ModelInterpreter extends NodeInterpreter {
41
41
  })
42
42
  }
43
43
 
44
- update(descriptor: ModelDescriptor, args: UpdateArgs) {
45
- super.update(descriptor, args)
46
- this.setModel(descriptor, args)
44
+ update(descriptor: ModelDescriptor) {
45
+ super.update(descriptor)
46
+ this.setModel(descriptor)
47
47
  }
48
48
 
49
- free(descriptor: ModelDescriptor, args: UpdateArgs) {
49
+ free(descriptor: ModelDescriptor) {
50
50
  diaposeObject3D(this.wrapper)
51
- super.free(descriptor, args)
51
+ super.free(descriptor)
52
52
  }
53
53
 
54
- pickup(descriptor: ModelDescriptor, args: UpdateArgs, result: PickupNode[]) {
54
+ pickup(descriptor: ModelDescriptor, result: PickupNode[]) {
55
55
  if (descriptor.visible === false) return
56
56
  collectionPickupResult(this.wrapper, true, descriptor, result)
57
57
  }
@@ -1,5 +1,5 @@
1
1
  import { Object3D, Intersection } from "three";
2
- import { Descriptor, Interpreter, NodeDescriptor, PickupObject, UpdateArgs } from "@vyr/engine";
2
+ import { Descriptor, Interpreter, NodeDescriptor, PickupObject } from "@vyr/engine";
3
3
  import { NodeActor } from "../actor";
4
4
  import { collectionPickupResult } from "../utils";
5
5
 
@@ -11,12 +11,12 @@ interface PickupNode extends PickupObject {
11
11
  class NodeInterpreter extends Interpreter {
12
12
  static type = NodeDescriptor.type
13
13
 
14
- protected createActor(descriptor: Descriptor, args: UpdateArgs) {
14
+ protected createActor(descriptor: Descriptor) {
15
15
  const actor = new NodeActor(new Object3D())
16
16
  return actor
17
17
  }
18
18
 
19
- setProperty(actor: NodeActor, descriptor: NodeDescriptor, args: UpdateArgs) {
19
+ setProperty(actor: NodeActor, descriptor: NodeDescriptor) {
20
20
  actor.object.layers.set(descriptor.layer)
21
21
  actor.object.visible = descriptor.visible
22
22
  actor.object.renderOrder = descriptor.renderOrder
@@ -24,7 +24,7 @@ class NodeInterpreter extends Interpreter {
24
24
  actor.object.receiveShadow = descriptor.receiveShadow
25
25
  }
26
26
 
27
- setTransform(actor: NodeActor, descriptor: NodeDescriptor, args: UpdateArgs) {
27
+ setTransform(actor: NodeActor, descriptor: NodeDescriptor) {
28
28
  const scale = descriptor.scale
29
29
  const position = descriptor.position
30
30
  const rotation = descriptor.rotation
@@ -33,30 +33,30 @@ class NodeInterpreter extends Interpreter {
33
33
  actor.object.rotation.set(rotation.x, rotation.y, rotation.z)
34
34
  }
35
35
 
36
- update(descriptor: NodeDescriptor, args: UpdateArgs) {
37
- super.update(descriptor, args)
38
- const actor = this.getActor<NodeActor>(descriptor, args)
39
- this.setProperty(actor, descriptor, args)
40
- this.setTransform(actor, descriptor, args)
36
+ update(descriptor: NodeDescriptor) {
37
+ super.update(descriptor)
38
+ const actor = this.getActor<NodeActor>(descriptor)
39
+ this.setProperty(actor, descriptor)
40
+ this.setTransform(actor, descriptor)
41
41
  }
42
42
 
43
- mount(descriptor: NodeDescriptor, args: UpdateArgs, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
44
- super.mount(descriptor, args, parentInterpreter, parentDescriptor)
45
- const parenActor = parentInterpreter.getActor<NodeActor>(parentDescriptor, args)
46
- const actor = this.getActor<NodeActor>(descriptor, args)
43
+ mount(descriptor: NodeDescriptor, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
44
+ super.mount(descriptor, parentInterpreter, parentDescriptor)
45
+ const parenActor = parentInterpreter.getActor<NodeActor>(parentDescriptor)
46
+ const actor = this.getActor<NodeActor>(descriptor)
47
47
  parenActor.add(actor)
48
48
  }
49
49
 
50
- unmount(descriptor: NodeDescriptor, args: UpdateArgs, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
51
- const parenActor = parentInterpreter.getActor<NodeActor>(parentDescriptor, args)
52
- const actor = this.getActor<NodeActor>(descriptor, args)
50
+ unmount(descriptor: NodeDescriptor, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
51
+ const parenActor = parentInterpreter.getActor<NodeActor>(parentDescriptor)
52
+ const actor = this.getActor<NodeActor>(descriptor)
53
53
  parenActor.remove(actor)
54
- super.unmount(descriptor, args, parentInterpreter, parentDescriptor)
54
+ super.unmount(descriptor, parentInterpreter, parentDescriptor)
55
55
  }
56
56
 
57
- pickup(descriptor: NodeDescriptor, args: UpdateArgs, result: PickupNode[]) {
57
+ pickup(descriptor: NodeDescriptor, result: PickupNode[]) {
58
58
  if (descriptor.visible === false) return
59
- const actor = this.getActor<NodeActor>(descriptor, args)
59
+ const actor = this.getActor<NodeActor>(descriptor)
60
60
  collectionPickupResult(actor.object, false, descriptor, result)
61
61
  }
62
62
  }
@@ -1,45 +1,45 @@
1
- import { Descriptor, Interpreter, PickupObject, UpdateArgs } from "@vyr/engine";
1
+ import { Descriptor, Interpreter, PickupObject } from "@vyr/engine";
2
2
  import { OrbitControllerDescriptor } from "../descriptor";
3
3
  import { NodeActor, OrbitControllerActor } from "../actor";
4
4
 
5
5
  class OrbitControllerInterpreter extends Interpreter {
6
6
  static type = OrbitControllerDescriptor.type
7
7
 
8
- protected createActor(descriptor: OrbitControllerDescriptor, args: UpdateArgs) {
8
+ protected createActor(descriptor: OrbitControllerDescriptor) {
9
9
  const actor = new OrbitControllerActor(descriptor.uuid, this.graphics)
10
10
  return actor
11
11
  }
12
12
 
13
- update(descriptor: OrbitControllerDescriptor, args: UpdateArgs) {
14
- const actor = this.getActor<OrbitControllerActor>(descriptor, args)
15
- actor.update(descriptor, this.graphics, args)
16
- super.update(descriptor, args)
13
+ update(descriptor: OrbitControllerDescriptor) {
14
+ const actor = this.getActor<OrbitControllerActor>(descriptor)
15
+ actor.update(descriptor, this.graphics)
16
+ super.update(descriptor)
17
17
  }
18
18
 
19
- mount(descriptor: OrbitControllerDescriptor, args: UpdateArgs, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
20
- super.mount(descriptor, args, parentInterpreter, parentDescriptor)
21
- const parenActor = parentInterpreter.getActor<NodeActor>(parentDescriptor, args)
22
- const actor = this.getActor<OrbitControllerActor>(descriptor, args)
19
+ mount(descriptor: OrbitControllerDescriptor, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
20
+ super.mount(descriptor, parentInterpreter, parentDescriptor)
21
+ const parenActor = parentInterpreter.getActor<NodeActor>(parentDescriptor)
22
+ const actor = this.getActor<OrbitControllerActor>(descriptor)
23
23
  parenActor.add(actor)
24
- actor.listen(descriptor, this.graphics, args)
24
+ actor.listen(descriptor, this.graphics)
25
25
  }
26
26
 
27
- unmount(descriptor: OrbitControllerDescriptor, args: UpdateArgs, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
28
- const parenActor = parentInterpreter.getActor<NodeActor>(parentDescriptor, args)
29
- const actor = this.getActor<OrbitControllerActor>(descriptor, args)
27
+ unmount(descriptor: OrbitControllerDescriptor, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
28
+ const parenActor = parentInterpreter.getActor<NodeActor>(parentDescriptor)
29
+ const actor = this.getActor<OrbitControllerActor>(descriptor)
30
30
  parenActor.remove(actor)
31
- actor.unlisten(descriptor, this.graphics, args)
31
+ actor.unlisten(descriptor, this.graphics)
32
32
 
33
- super.unmount(descriptor, args, parentInterpreter, parentDescriptor)
33
+ super.unmount(descriptor, parentInterpreter, parentDescriptor)
34
34
  }
35
35
 
36
- free(descriptor: OrbitControllerDescriptor, args: UpdateArgs) {
37
- const actor = this.getActor<OrbitControllerActor>(descriptor, args)
36
+ free(descriptor: OrbitControllerDescriptor) {
37
+ const actor = this.getActor<OrbitControllerActor>(descriptor)
38
38
  actor.dispose()
39
- super.free(descriptor, args)
39
+ super.free(descriptor)
40
40
  }
41
41
 
42
- pickup(descriptor: OrbitControllerDescriptor, args: UpdateArgs, result: PickupObject[]) { }
42
+ pickup(descriptor: OrbitControllerDescriptor, result: PickupObject[]) { }
43
43
  }
44
44
  Interpreter.register(OrbitControllerInterpreter)
45
45
 
@@ -1,11 +1,11 @@
1
- import { PickupObject, UpdateArgs } from "@vyr/engine";
1
+ import { PickupObject } from "@vyr/engine";
2
2
  import { OrthographicCameraDescriptor } from "../descriptor";
3
3
  import { NodeInterpreter } from "./NodeInterpreter";
4
4
 
5
5
  class OrthographicCameraInterpreter extends NodeInterpreter {
6
6
  static type = OrthographicCameraDescriptor.type
7
7
 
8
- pickup(descriptor: OrthographicCameraDescriptor, args: UpdateArgs, result: PickupObject[]) { }
8
+ pickup(descriptor: OrthographicCameraDescriptor, result: PickupObject[]) { }
9
9
  }
10
10
  NodeInterpreter.register(OrthographicCameraInterpreter)
11
11
 
@@ -13,7 +13,7 @@ import {
13
13
  CatmullRomCurve3,
14
14
  Vector3,
15
15
  } from "three";
16
- import { DatasetDescriptor, UpdateArgs } from "@vyr/engine";
16
+ import { DatasetDescriptor, TickArgs } from "@vyr/engine";
17
17
  import { ParticleDescriptor } from "../descriptor";
18
18
  import { NodeInterpreter } from "./NodeInterpreter";
19
19
  import { NodeActor } from "../actor";
@@ -29,7 +29,7 @@ class ParticleInterpreter extends NodeInterpreter {
29
29
  private _trackTexture = { value: new DataTexture() };
30
30
  uptime = 0;
31
31
 
32
- protected createActor(descriptor: ParticleDescriptor, args: UpdateArgs) {
32
+ protected createActor(descriptor: ParticleDescriptor) {
33
33
  const actor = new NodeActor(new Points(this._geometry, this._material));
34
34
  return actor;
35
35
  }
@@ -112,7 +112,7 @@ class ParticleInterpreter extends NodeInterpreter {
112
112
  'gl_PointSize = vSize * size;'
113
113
  );
114
114
  }
115
- private _setTrackMap(descriptor: ParticleDescriptor, args: UpdateArgs) {
115
+ private _setTrackMap(descriptor: ParticleDescriptor) {
116
116
  this.clear();
117
117
 
118
118
  const trackData = DatasetDescriptor.getCollection<number[]>(descriptor.track);
@@ -133,10 +133,10 @@ class ParticleInterpreter extends NodeInterpreter {
133
133
  };
134
134
  this.graphics.engine.listen("beforeRender", this._updateRadio);
135
135
  }
136
- private _updateMaterial(descriptor: ParticleDescriptor, args: UpdateArgs) {
137
- this._setTrackMap(descriptor, args);
138
- texture.setMap(this._material, "map", descriptor, this.graphics, args);
139
- texture.setMap(this._material, "alphaMap", descriptor, this.graphics, args);
136
+ private _updateMaterial(descriptor: ParticleDescriptor) {
137
+ this._setTrackMap(descriptor);
138
+ texture.setMap(this._material, "map", descriptor, this.graphics);
139
+ texture.setMap(this._material, "alphaMap", descriptor, this.graphics);
140
140
  this._material.alphaTest = descriptor.alphaTest;
141
141
  this._material.transparent = descriptor.transparent;
142
142
  this._material.colorWrite = descriptor.colorWrite;
@@ -193,17 +193,17 @@ class ParticleInterpreter extends NodeInterpreter {
193
193
 
194
194
  this._geometry.copy(geometry)
195
195
  }
196
- private _updateRadio = (args: UpdateArgs) => {
196
+ private _updateRadio = (args: TickArgs) => {
197
197
  this.uptime += args.delta;
198
198
  const currentTime = this.uptime % this._duration;
199
199
  this._tracRadio.value = currentTime / this._duration;
200
200
  };
201
201
 
202
- update(descriptor: ParticleDescriptor, args: UpdateArgs) {
203
- super.update(descriptor, args);
202
+ update(descriptor: ParticleDescriptor) {
203
+ super.update(descriptor);
204
204
  this._duration = descriptor.duration;
205
205
  this._updateGeometry(descriptor);
206
- this._updateMaterial(descriptor, args);
206
+ this._updateMaterial(descriptor);
207
207
  }
208
208
 
209
209
  clear() {
@@ -211,9 +211,9 @@ class ParticleInterpreter extends NodeInterpreter {
211
211
  this._trackTexture.value.dispose();
212
212
  }
213
213
 
214
- free(descriptor: ParticleDescriptor, args: UpdateArgs) {
214
+ free(descriptor: ParticleDescriptor) {
215
215
  this.clear();
216
- super.free(descriptor, args);
216
+ super.free(descriptor);
217
217
  }
218
218
  }
219
219
  NodeInterpreter.register(ParticleInterpreter);
@@ -1,40 +1,40 @@
1
- // import { Descriptor, Interpreter, UpdateArgs } from "@vyr/engine";
1
+ // import { Descriptor, Interpreter } from "@vyr/engine";
2
2
  // import { PassDescriptor } from '../descriptor/PassDescriptor'
3
3
  // import { ComposerServiceActor, PassActor } from "../actor"
4
4
 
5
5
  // class PassInterpreter extends Interpreter {
6
6
  // static type = PassDescriptor.type
7
7
 
8
- // protected createActor(descriptor: PassDescriptor, args: UpdateArgs) {
8
+ // protected createActor(descriptor: PassDescriptor) {
9
9
  // const actor = new PassActor(descriptor)
10
10
  // return actor
11
11
  // }
12
12
 
13
- // update(descriptor: PassDescriptor, args: UpdateArgs) {
14
- // super.update(descriptor, args)
15
- // const actor = this.getActor<PassActor>(descriptor, args)
13
+ // update(descriptor: PassDescriptor) {
14
+ // super.update(descriptor)
15
+ // const actor = this.getActor<PassActor>(descriptor)
16
16
  // actor.update(descriptor)
17
17
  // }
18
18
 
19
- // mount(descriptor: PassDescriptor, args: UpdateArgs, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
20
- // super.mount(descriptor, args, parentInterpreter, parentDescriptor)
21
- // const parenActor = parentInterpreter.getActor<ComposerServiceActor>(parentDescriptor, args)
22
- // const actor = this.getActor<PassActor>(descriptor, args)
19
+ // mount(descriptor: PassDescriptor, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
20
+ // super.mount(descriptor, parentInterpreter, parentDescriptor)
21
+ // const parenActor = parentInterpreter.getActor<ComposerServiceActor>(parentDescriptor)
22
+ // const actor = this.getActor<PassActor>(descriptor)
23
23
  // parenActor.add(actor)
24
24
  // }
25
25
 
26
- // unmount(descriptor: PassDescriptor, args: UpdateArgs, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
27
- // const parenActor = parentInterpreter.getActor<ComposerServiceActor>(parentDescriptor, args)
28
- // const actor = this.getActor<PassActor>(descriptor, args)
26
+ // unmount(descriptor: PassDescriptor, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
27
+ // const parenActor = parentInterpreter.getActor<ComposerServiceActor>(parentDescriptor)
28
+ // const actor = this.getActor<PassActor>(descriptor)
29
29
  // parenActor.remove(actor)
30
30
 
31
- // super.unmount(descriptor, args, parentInterpreter, parentDescriptor)
31
+ // super.unmount(descriptor, parentInterpreter, parentDescriptor)
32
32
  // }
33
33
 
34
- // free(descriptor: PassDescriptor, args: UpdateArgs) {
35
- // const actor = this.getActor<PassActor>(descriptor, args)
34
+ // free(descriptor: PassDescriptor) {
35
+ // const actor = this.getActor<PassActor>(descriptor)
36
36
  // actor.dispose()
37
- // super.free(descriptor, args)
37
+ // super.free(descriptor)
38
38
  // }
39
39
  // }
40
40
  // Interpreter.register(PassInterpreter)
@@ -1,5 +1,5 @@
1
1
  import { PerspectiveCamera } from "three";
2
- import { PickupObject, UpdateArgs } from "@vyr/engine";
2
+ import { PickupObject } from "@vyr/engine";
3
3
  import { PerspectiveCameraDescriptor } from "../descriptor";
4
4
  import { NodeInterpreter } from "./NodeInterpreter";
5
5
  import { NodeActor } from "../actor";
@@ -7,25 +7,25 @@ import { NodeActor } from "../actor";
7
7
  class PerspectiveCameraInterpreter extends NodeInterpreter {
8
8
  static type = PerspectiveCameraDescriptor.type
9
9
 
10
- protected createActor(descriptor: PerspectiveCameraDescriptor, args: UpdateArgs) {
10
+ protected createActor(descriptor: PerspectiveCameraDescriptor) {
11
11
  const actor = new NodeActor(new PerspectiveCamera())
12
12
  return actor
13
13
  }
14
14
 
15
- setCamera(actor: NodeActor<PerspectiveCamera>, descriptor: PerspectiveCameraDescriptor, args: UpdateArgs) {
15
+ setCamera(actor: NodeActor<PerspectiveCamera>, descriptor: PerspectiveCameraDescriptor) {
16
16
  actor.object.fov = descriptor.fov
17
17
  actor.object.updateMatrix()
18
18
  actor.object.updateMatrixWorld()
19
19
  actor.object.updateProjectionMatrix()
20
20
  }
21
21
 
22
- update(descriptor: PerspectiveCameraDescriptor, args: UpdateArgs) {
23
- super.update(descriptor,args)
24
- const actor = this.getActor<NodeActor<PerspectiveCamera>>(descriptor, args)
25
- this.setCamera(actor, descriptor, args)
22
+ update(descriptor: PerspectiveCameraDescriptor) {
23
+ super.update(descriptor)
24
+ const actor = this.getActor<NodeActor<PerspectiveCamera>>(descriptor)
25
+ this.setCamera(actor, descriptor)
26
26
  }
27
27
 
28
- pickup(descriptor: PerspectiveCameraDescriptor, args: UpdateArgs, result: PickupObject[]) { }
28
+ pickup(descriptor: PerspectiveCameraDescriptor, result: PickupObject[]) { }
29
29
  }
30
30
  NodeInterpreter.register(PerspectiveCameraInterpreter)
31
31
 
@@ -1,5 +1,5 @@
1
1
  import { BufferGeometry, Points, Material, PointsMaterial } from "three";
2
- import { Asset, UpdateArgs } from "@vyr/engine";
2
+ import { Asset } from "@vyr/engine";
3
3
  import { PointsDescriptor } from "../descriptor";
4
4
  import { NodeInterpreter } from "./NodeInterpreter";
5
5
  import { GeometryActor, MaterialActor, NodeActor } from "../actor";
@@ -22,38 +22,38 @@ class PointsInterpreter extends NodeInterpreter {
22
22
 
23
23
  static type = PointsDescriptor.type
24
24
 
25
- protected createActor(descriptor: PointsDescriptor, args: UpdateArgs) {
25
+ protected createActor(descriptor: PointsDescriptor) {
26
26
  const actor = new NodeActor(new Points())
27
27
  return actor
28
28
  }
29
29
 
30
- getGeometry(descriptor: PointsDescriptor, args: UpdateArgs) {
30
+ getGeometry(descriptor: PointsDescriptor) {
31
31
  const geometryDescriptor = Asset.get(descriptor.geometry)
32
32
  if (geometryDescriptor === null) return PointsInterpreter.geometry
33
33
 
34
34
  const interpreter = this.graphics.getInterpreter(geometryDescriptor)
35
- const actor = interpreter.getActor<GeometryActor<BufferGeometry>>(geometryDescriptor, args)
35
+ const actor = interpreter.getActor<GeometryActor<BufferGeometry>>(geometryDescriptor)
36
36
  return actor.object instanceof BufferGeometry ? actor.object : PointsInterpreter.geometry
37
37
  }
38
38
 
39
- useMaterial(material: string, args: UpdateArgs) {
39
+ useMaterial(material: string) {
40
40
  const materialDescriptor = Asset.get(material)
41
41
  if (materialDescriptor === null) return PointsInterpreter.material
42
42
 
43
43
  const interpreter = this.graphics.getInterpreter(materialDescriptor)
44
- const actor = interpreter.getActor<MaterialActor<Material>>(materialDescriptor, args)
44
+ const actor = interpreter.getActor<MaterialActor<Material>>(materialDescriptor)
45
45
  return actor.object instanceof Material ? actor.object : PointsInterpreter.material
46
46
  }
47
47
 
48
- getMaterial(descriptor: PointsDescriptor, args: UpdateArgs) {
49
- return this.useMaterial(descriptor.material, args)
48
+ getMaterial(descriptor: PointsDescriptor) {
49
+ return this.useMaterial(descriptor.material)
50
50
  }
51
51
 
52
- update(descriptor: PointsDescriptor, args: UpdateArgs) {
53
- super.update(descriptor, args)
54
- const actor = this.getActor<NodeActor<Points>>(descriptor, args)
55
- actor.object.geometry = this.getGeometry(descriptor, args)
56
- actor.object.material = this.getMaterial(descriptor, args)
52
+ update(descriptor: PointsDescriptor) {
53
+ super.update(descriptor)
54
+ const actor = this.getActor<NodeActor<Points>>(descriptor)
55
+ actor.object.geometry = this.getGeometry(descriptor)
56
+ actor.object.material = this.getMaterial(descriptor)
57
57
  }
58
58
  }
59
59
  NodeInterpreter.register(PointsInterpreter)
@@ -1,5 +1,5 @@
1
1
  import { Camera, PerspectiveCamera, Raycaster, Vector2, } from 'three'
2
- import { CameraDescriptor, Descriptor, HTMLActor, Interpreter, ServiceDescriptor, ServiceInterpreter, UpdateArgs } from '@vyr/engine'
2
+ import { CameraDescriptor, Descriptor, HTMLActor, Interpreter, ServiceDescriptor, ServiceInterpreter } from '@vyr/engine'
3
3
  import { SceneServiceDescriptor } from '../descriptor'
4
4
  import { NodeActor, SceneServiceActor } from '../actor'
5
5
  import { PickupNode } from './NodeInterpreter'
@@ -11,7 +11,7 @@ class SceneServiceInterpreter extends ServiceInterpreter {
11
11
  static direcation = new Vector2()
12
12
 
13
13
  private _unlisten = -1
14
- protected createActor(descriptor: SceneServiceDescriptor, args: UpdateArgs) {
14
+ protected createActor(descriptor: SceneServiceDescriptor) {
15
15
  const actor = new SceneServiceActor(descriptor.uuid)
16
16
  return actor
17
17
  }
@@ -24,15 +24,15 @@ class SceneServiceInterpreter extends ServiceInterpreter {
24
24
  }
25
25
  protected resize = () => {
26
26
  const descriptor = Descriptor.get<Descriptor>(this.unit.uuid)
27
- const actor = this.getActor<SceneServiceActor>(descriptor, { delta: 0 })
27
+ const actor = this.getActor<SceneServiceActor>(descriptor)
28
28
  this.setSize(actor)
29
29
  }
30
30
 
31
- update(descriptor: SceneServiceDescriptor, args: UpdateArgs) {
32
- super.update(descriptor, args)
31
+ update(descriptor: SceneServiceDescriptor) {
32
+ super.update(descriptor)
33
33
 
34
- const actor = this.getActor<SceneServiceActor>(descriptor, args)
35
- actor.update(descriptor, args)
34
+ const actor = this.getActor<SceneServiceActor>(descriptor)
35
+ actor.update(descriptor)
36
36
 
37
37
  this.resize()
38
38
  actor.pipeline.shadowMap.enabled = descriptor.shadowMap
@@ -42,53 +42,53 @@ class SceneServiceInterpreter extends ServiceInterpreter {
42
42
  actor.pipeline.shadowMap.needsUpdate = true
43
43
  }
44
44
 
45
- mount(descriptor: SceneServiceDescriptor, args: UpdateArgs, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
46
- super.mount(descriptor, args, parentInterpreter, parentDescriptor)
45
+ mount(descriptor: SceneServiceDescriptor, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
46
+ super.mount(descriptor, parentInterpreter, parentDescriptor)
47
47
 
48
- const actor = this.getActor<SceneServiceActor>(descriptor, args)
48
+ const actor = this.getActor<SceneServiceActor>(descriptor)
49
49
  actor.clearStyleClass(actor.pipeline.domElement)
50
50
 
51
- const parenActor = parentInterpreter.getActor<HTMLActor>(parentDescriptor, args)
51
+ const parenActor = parentInterpreter.getActor<HTMLActor>(parentDescriptor)
52
52
  if (parenActor instanceof HTMLActor) parenActor.add(actor)
53
53
 
54
54
  this._unlisten = this.graphics.engine.inputSystem.listen('resize', this.resize, { target: window })
55
55
  }
56
56
 
57
- unmount(descriptor: SceneServiceDescriptor, args: UpdateArgs, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
58
- const actor = this.getActor<SceneServiceActor>(descriptor, args)
57
+ unmount(descriptor: SceneServiceDescriptor, parentInterpreter: Interpreter, parentDescriptor: Descriptor) {
58
+ const actor = this.getActor<SceneServiceActor>(descriptor)
59
59
 
60
- const parenActor = parentInterpreter.getActor<HTMLActor>(parentDescriptor, args)
60
+ const parenActor = parentInterpreter.getActor<HTMLActor>(parentDescriptor)
61
61
  parenActor.remove(actor)
62
62
 
63
63
  this.graphics.engine.inputSystem.unlisten(this._unlisten)
64
64
  this.resize()
65
65
 
66
- super.unmount(descriptor, args, parentInterpreter, parentDescriptor)
66
+ super.unmount(descriptor, parentInterpreter, parentDescriptor)
67
67
  }
68
68
 
69
- free(descriptor: SceneServiceDescriptor, args: UpdateArgs) {
70
- const actor = this.getActor<SceneServiceActor>(descriptor, args)
69
+ free(descriptor: SceneServiceDescriptor) {
70
+ const actor = this.getActor<SceneServiceActor>(descriptor)
71
71
  actor.dispose()
72
- super.free(descriptor, args)
72
+ super.free(descriptor)
73
73
  }
74
74
 
75
- clear(service: ServiceDescriptor, args: UpdateArgs): void {
76
- const actor = this.getActor<SceneServiceActor>(service, args)
75
+ clear(service: ServiceDescriptor): void {
76
+ const actor = this.getActor<SceneServiceActor>(service)
77
77
  actor.pipeline.clear()
78
78
  }
79
79
 
80
- beforeRender(service: SceneServiceDescriptor, args: UpdateArgs) {
81
- const actor = this.getActor<SceneServiceActor>(service, args)
80
+ beforeRender(service: SceneServiceDescriptor) {
81
+ const actor = this.getActor<SceneServiceActor>(service)
82
82
  actor.scene.updateMatrixWorld()
83
83
  }
84
84
 
85
- render(service: SceneServiceDescriptor, args: UpdateArgs) {
85
+ render(service: SceneServiceDescriptor) {
86
86
  const cameraDescriptor = CameraDescriptor.get<CameraDescriptor>(this.graphics.scheduler.camera)
87
87
  if (cameraDescriptor === null) return
88
- const actor = this.getActor<SceneServiceActor>(service, args)
88
+ const actor = this.getActor<SceneServiceActor>(service)
89
89
 
90
90
  const cameraInterpreter = this.graphics.getInterpreter(cameraDescriptor)
91
- const camera = cameraInterpreter.getActor<NodeActor<Camera>>(cameraDescriptor, args)
91
+ const camera = cameraInterpreter.getActor<NodeActor<Camera>>(cameraDescriptor)
92
92
  if (camera.object instanceof PerspectiveCamera) {
93
93
  const aspect = actor.pipeline.domElement.clientWidth / actor.pipeline.domElement.clientHeight
94
94
  if (aspect !== camera.object.aspect) {
@@ -97,12 +97,12 @@ class SceneServiceInterpreter extends ServiceInterpreter {
97
97
  }
98
98
  }
99
99
 
100
- actor.render(service, camera, args)
100
+ actor.render(service, camera)
101
101
  }
102
102
 
103
- beforePickup(mouse: { x: number; y: number }, rect: DOMRect, args: UpdateArgs) {
103
+ beforePickup(mouse: { x: number; y: number }, rect: DOMRect) {
104
104
  const currentCamera = SceneServiceDescriptor.get<CameraDescriptor>(this.graphics.scheduler.camera)
105
- const camera = this.graphics.getInterpreter(currentCamera).getActor<NodeActor<Camera>>(currentCamera, args)
105
+ const camera = this.graphics.getInterpreter(currentCamera).getActor<NodeActor<Camera>>(currentCamera)
106
106
 
107
107
  SceneServiceInterpreter.direcation.x = (mouse.x / rect.width) * 2 - 1
108
108
  SceneServiceInterpreter.direcation.y = -(mouse.y / rect.height) * 2 + 1
@@ -1,21 +1,21 @@
1
1
  import { AnimationMixer, Object3D } from 'three'
2
- import { ServiceSchedulerInterpreter as SchedulerInterpreter, ServiceSchedulerDescriptor, UpdateArgs } from '@vyr/engine'
2
+ import { ServiceSchedulerInterpreter as SchedulerInterpreter, ServiceSchedulerDescriptor, TickArgs } from '@vyr/engine'
3
3
 
4
4
  class ServiceSchedulerInterpreter extends SchedulerInterpreter {
5
5
  readonly mixer = new AnimationMixer(new Object3D())
6
6
 
7
- updateMixer = (args: UpdateArgs) => {
7
+ updateMixer = (args: TickArgs) => {
8
8
  this.mixer.update(args.delta)
9
9
  }
10
10
 
11
- install(descriptor: ServiceSchedulerDescriptor, args: UpdateArgs) {
12
- super.install(descriptor, args)
11
+ install(descriptor: ServiceSchedulerDescriptor) {
12
+ super.install(descriptor)
13
13
  this.graphics.engine.listen('beforeRender', this.updateMixer)
14
14
  }
15
15
 
16
- uninstall(descriptor: ServiceSchedulerDescriptor, args: UpdateArgs) {
16
+ uninstall(descriptor: ServiceSchedulerDescriptor) {
17
17
  this.graphics.engine.unlisten('beforeRender', this.updateMixer)
18
- super.uninstall(descriptor, args)
18
+ super.uninstall(descriptor)
19
19
  }
20
20
  }
21
21
  SchedulerInterpreter.register(ServiceSchedulerInterpreter)
@@ -1,5 +1,5 @@
1
1
  import { Sprite, SpriteMaterial } from "three";
2
- import { Asset, UpdateArgs } from "@vyr/engine";
2
+ import { Asset } from "@vyr/engine";
3
3
  import { SpriteDescriptor } from "../descriptor";
4
4
  import { NodeInterpreter } from "./NodeInterpreter";
5
5
  import { MaterialActor, NodeActor } from "../actor";
@@ -16,28 +16,28 @@ class SpriteInterpreter extends NodeInterpreter {
16
16
 
17
17
  static type = SpriteDescriptor.type
18
18
 
19
- protected createActor(descriptor: SpriteDescriptor, args: UpdateArgs) {
19
+ protected createActor(descriptor: SpriteDescriptor) {
20
20
  const actor = new NodeActor(new Sprite())
21
21
  return actor
22
22
  }
23
23
 
24
- useMaterial(material: string, args: UpdateArgs) {
24
+ useMaterial(material: string) {
25
25
  const materialDescriptor = Asset.get(material)
26
26
  if (materialDescriptor === null) return SpriteInterpreter.material
27
27
 
28
28
  const interpreter = this.graphics.getInterpreter(materialDescriptor)
29
- const actor = interpreter.getActor<MaterialActor>(materialDescriptor, args)
29
+ const actor = interpreter.getActor<MaterialActor>(materialDescriptor)
30
30
  return actor.object instanceof SpriteMaterial ? actor.object : SpriteInterpreter.material
31
31
  }
32
32
 
33
- getMaterial(descriptor: SpriteDescriptor, args: UpdateArgs) {
34
- return this.useMaterial(descriptor.material, args)
33
+ getMaterial(descriptor: SpriteDescriptor) {
34
+ return this.useMaterial(descriptor.material)
35
35
  }
36
36
 
37
- update(descriptor: SpriteDescriptor, args: UpdateArgs) {
38
- super.update(descriptor, args)
39
- const actor = this.getActor<NodeActor<Sprite>>(descriptor, args)
40
- actor.object.material = this.getMaterial(descriptor, args)
37
+ update(descriptor: SpriteDescriptor) {
38
+ super.update(descriptor)
39
+ const actor = this.getActor<NodeActor<Sprite>>(descriptor)
40
+ actor.object.material = this.getMaterial(descriptor)
41
41
  }
42
42
  }
43
43
  NodeInterpreter.register(SpriteInterpreter)