@p100-web/core 100.0.66 → 100.0.68

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 (74) hide show
  1. package/dist/GameContext.d.ts +20 -11
  2. package/dist/GameContext.d.ts.map +1 -1
  3. package/dist/GameContext.js +55 -32
  4. package/dist/GameContext.js.map +1 -1
  5. package/dist/IEngine.d.ts +8 -7
  6. package/dist/IEngine.d.ts.map +1 -1
  7. package/dist/MathTools.d.ts +4 -0
  8. package/dist/MathTools.d.ts.map +1 -1
  9. package/dist/MathTools.js +13 -0
  10. package/dist/MathTools.js.map +1 -1
  11. package/dist/PCanvas.d.ts +159 -0
  12. package/dist/PCanvas.d.ts.map +1 -0
  13. package/dist/PCanvas.js +612 -0
  14. package/dist/PCanvas.js.map +1 -0
  15. package/dist/PEnums.d.ts +2 -5
  16. package/dist/PEnums.d.ts.map +1 -1
  17. package/dist/PEnums.js +1 -5
  18. package/dist/PEnums.js.map +1 -1
  19. package/dist/PNode.d.ts +1 -0
  20. package/dist/PNode.d.ts.map +1 -1
  21. package/dist/PNode.js +3 -0
  22. package/dist/PNode.js.map +1 -1
  23. package/dist/PTypes.d.ts +1 -115
  24. package/dist/PTypes.d.ts.map +1 -1
  25. package/dist/index.d.ts +11 -4
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +6 -5
  28. package/dist/index.js.map +1 -1
  29. package/dist/pcomponents/BaseMaterial.d.ts +1 -1
  30. package/dist/pcomponents/BaseMaterial.d.ts.map +1 -1
  31. package/dist/pcomponents/BaseMaterial.js +0 -3
  32. package/dist/pcomponents/BaseMaterial.js.map +1 -1
  33. package/dist/pcomponents/PAnimator.d.ts +1 -1
  34. package/dist/pcomponents/PAnimator.d.ts.map +1 -1
  35. package/dist/pcomponents/PEnvironment.d.ts +1 -0
  36. package/dist/pcomponents/PEnvironment.d.ts.map +1 -1
  37. package/dist/pcomponents/PEnvironment.js.map +1 -1
  38. package/dist/pcomponents/PVideoMaterial.d.ts +1 -0
  39. package/dist/pcomponents/PVideoMaterial.d.ts.map +1 -1
  40. package/dist/pcomponents/PVideoMaterial.js +6 -2
  41. package/dist/pcomponents/PVideoMaterial.js.map +1 -1
  42. package/dist/settings/ICameraSettings.d.ts +13 -0
  43. package/dist/settings/ICameraSettings.d.ts.map +1 -0
  44. package/dist/settings/ICameraSettings.js +2 -0
  45. package/dist/settings/ICameraSettings.js.map +1 -0
  46. package/dist/settings/IPostProcessingSettings.d.ts +4 -0
  47. package/dist/settings/IPostProcessingSettings.d.ts.map +1 -0
  48. package/dist/settings/IPostProcessingSettings.js +2 -0
  49. package/dist/settings/IPostProcessingSettings.js.map +1 -0
  50. package/dist/settings/IQualitySettings.d.ts +14 -0
  51. package/dist/settings/IQualitySettings.d.ts.map +1 -0
  52. package/dist/settings/IQualitySettings.js +2 -0
  53. package/dist/settings/IQualitySettings.js.map +1 -0
  54. package/dist/settings/ISetting.d.ts +4 -0
  55. package/dist/settings/ISetting.d.ts.map +1 -0
  56. package/dist/settings/ISetting.js +2 -0
  57. package/dist/settings/ISetting.js.map +1 -0
  58. package/dist/settings/Settings_Babylonjs.d.ts +13 -0
  59. package/dist/settings/Settings_Babylonjs.d.ts.map +1 -0
  60. package/dist/settings/Settings_Babylonjs.js +27 -0
  61. package/dist/settings/Settings_Babylonjs.js.map +1 -0
  62. package/dist/settings/Settings_Base.d.ts +4 -2
  63. package/dist/settings/Settings_Base.d.ts.map +1 -1
  64. package/dist/settings/Settings_Base.js +21 -2
  65. package/dist/settings/Settings_Base.js.map +1 -1
  66. package/dist/settings/Settings_Threejs.d.ts +102 -2
  67. package/dist/settings/Settings_Threejs.d.ts.map +1 -1
  68. package/dist/settings/Settings_Threejs.js +6 -22
  69. package/dist/settings/Settings_Threejs.js.map +1 -1
  70. package/package.json +2 -8
  71. package/dist/IPCanvas.d.ts +0 -45
  72. package/dist/IPCanvas.d.ts.map +0 -1
  73. package/dist/IPCanvas.js +0 -2
  74. package/dist/IPCanvas.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import DBEvent from "./DBEvent";
2
2
  import DBNode from "./DBNode";
3
3
  import DBVariable from "./DBVariable";
4
- import { type IPCanvas } from "./IPCanvas";
4
+ import PCanvas from "./PCanvas";
5
5
  import { type IPNodeRenderer } from "./IPNodeRenderer";
6
6
  import { type IEngine } from "./IEngine";
7
7
  import { type IMediaLoader_Image, type IMediaLoader_Video, type IMediaLoader_Audio, type IMediaLoader_Model, type IMediaLoader_Environment } from "./media/IMediaLoader";
@@ -12,12 +12,12 @@ import PComponent from "./PComponent";
12
12
  import { Platform, Language } from "./PEnums";
13
13
  import PEvent from "./PEvent";
14
14
  import PNode from "./PNode";
15
- import { type ICameraSettings } from "./PTypes";
16
15
  import { PVariable } from "./PVariable";
17
16
  import { type IAudioListener } from "./IAudioListener";
18
- import { ICameraControls } from "./ICameraControls";
17
+ import { type ICameraControls } from "./ICameraControls";
19
18
  import { Tween } from "@tweenjs/tween.js";
20
- import { ICameraNode } from "./ICameraNode";
19
+ import { type ICameraNode } from "./ICameraNode";
20
+ import { type ICameraSettings } from "./settings/ICameraSettings";
21
21
  declare enum Workers {
22
22
  None = 0,
23
23
  System = 1,
@@ -47,25 +47,26 @@ export default class GameContext implements IEmitter {
47
47
  protected _owner: IGameContextOwner;
48
48
  protected _mediaManager: IMediaManager;
49
49
  protected _root: PNode | null;
50
- protected _pcanvas: IPCanvas | null;
50
+ protected _pcanvas: PCanvas | null;
51
51
  protected _running: boolean;
52
- protected _pnodeRenderer: IPNodeRenderer;
53
- protected _engine: IEngine;
52
+ protected _pnodeRenderer: IPNodeRenderer | null;
53
+ protected _engine: IEngine | null;
54
54
  protected _audioListener: IAudioListener | null;
55
55
  private _componentFactory;
56
56
  editor: boolean;
57
57
  debug_fastVideo: boolean;
58
58
  isAdmin(): boolean;
59
59
  s3Url: string;
60
- constructor(owner: IGameContextOwner, platform: Platform, mediaManager: IMediaManager, engine: IEngine);
60
+ constructor(owner: IGameContextOwner, platform: Platform, mediaManager: IMediaManager);
61
+ setEngine(engine: IEngine | null): void;
61
62
  getOwner(): IGameContextOwner;
62
63
  getIEngine(): IEngine;
63
64
  getEngine<T>(): T;
64
65
  getNodeRenderer(): IPNodeRenderer;
65
- getCanvas(): IPCanvas | null;
66
+ getCanvas(): PCanvas | null;
66
67
  getPCanvas<T>(): T;
67
68
  getCanvasElement(): HTMLCanvasElement | null;
68
- setPCanvas(canvas: IPCanvas | null): void;
69
+ setPCanvas(canvas: PCanvas | null): void;
69
70
  protected _imageLoader: IMediaLoader_Image | null;
70
71
  protected _audioLoader: IMediaLoader_Audio | null;
71
72
  protected _modelLoader: IMediaLoader_Model | null;
@@ -86,11 +87,19 @@ export default class GameContext implements IEmitter {
86
87
  */
87
88
  enable(): void;
88
89
  disable(): void;
90
+ /**
91
+ * Destroy everything
92
+ */
93
+ dispose(): void;
94
+ /**
95
+ * Call when we need to dispose the old PCanvas and canvas element
96
+ */
97
+ disposeCanvas(): void;
89
98
  /**
90
99
  * use hard = true if we want to tear down and free all resources. Not
91
100
  * to use while restarting.
92
101
  */
93
- dispose(hard: boolean): void;
102
+ soft_dispose(): void;
94
103
  isLoading(): boolean;
95
104
  private _sceneLoaderCounter;
96
105
  private increaseSceneLoader;
@@ -1 +1 @@
1
- {"version":3,"file":"GameContext.d.ts","sourceRoot":"","sources":["../src/GameContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GameContext.d.ts","sourceRoot":"","sources":["../src/GameContext.ts"],"names":[],"mappings":"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"}
@@ -20,23 +20,31 @@ export default class GameContext {
20
20
  _root = null;
21
21
  _pcanvas = null;
22
22
  _running = false;
23
- _pnodeRenderer;
24
- _engine;
23
+ _pnodeRenderer = null;
24
+ _engine = null;
25
25
  _audioListener = null;
26
- _componentFactory;
26
+ _componentFactory = null;
27
27
  editor = false;
28
28
  debug_fastVideo = false;
29
29
  isAdmin() {
30
30
  return false;
31
31
  }
32
32
  s3Url = "https://p100-pw.s3.eu-north-1.amazonaws.com/";
33
- constructor(owner, platform, mediaManager, engine) {
33
+ constructor(owner, platform, mediaManager) {
34
34
  this._owner = owner;
35
35
  this._platform = platform;
36
36
  this._mediaManager = mediaManager;
37
+ }
38
+ setEngine(engine) {
37
39
  this._engine = engine;
38
- this._pnodeRenderer = engine.setupNodeRenderer();
39
- this._componentFactory = engine.getComponentFactory();
40
+ if (engine) {
41
+ this._pnodeRenderer = engine.setupNodeRenderer();
42
+ this._componentFactory = engine.getComponentFactory();
43
+ }
44
+ else {
45
+ this._pnodeRenderer = null;
46
+ this._componentFactory = null;
47
+ }
40
48
  }
41
49
  getOwner() {
42
50
  return this._owner;
@@ -134,12 +142,9 @@ export default class GameContext {
134
142
  if (this._root.hasValidPlatform()) {
135
143
  this._root.enable();
136
144
  this._root.update();
137
- const pcanvas = this.getCanvas();
138
- if (pcanvas) {
139
- this.setWorkFlag(Workers.System);
140
- pcanvas.enable();
141
- this.clearWorkFlag(Workers.System);
142
- }
145
+ this.setWorkFlag(Workers.System);
146
+ // pcanvas.enable();
147
+ this.clearWorkFlag(Workers.System);
143
148
  }
144
149
  else {
145
150
  this.error("Root is not enabled or valid platform");
@@ -150,22 +155,42 @@ export default class GameContext {
150
155
  this.disableInput();
151
156
  this._root?.disable();
152
157
  }
158
+ /**
159
+ * Destroy everything
160
+ */
161
+ dispose() {
162
+ this._modelLoader?.dispose();
163
+ this._audioLoader?.dispose();
164
+ this._videoLoader?.dispose();
165
+ this._imageLoader?.dispose();
166
+ this._imageLoader = null;
167
+ this._videoLoader = null;
168
+ this._modelLoader = null;
169
+ this._environtmentLoader = null;
170
+ this._audioLoader = null;
171
+ // Dispose ALL nodes, not just mounted ones
172
+ for (const node of this._nodes) {
173
+ node.dispose(false);
174
+ }
175
+ this._root = null;
176
+ this._nodes = [];
177
+ this._scenes = [];
178
+ this._mediaManager.dispose();
179
+ this.disposeCanvas();
180
+ }
181
+ /**
182
+ * Call when we need to dispose the old PCanvas and canvas element
183
+ */
184
+ disposeCanvas() {
185
+ this._pcanvas?.dispose();
186
+ this._pcanvas = null;
187
+ this._engine = null;
188
+ }
153
189
  /**
154
190
  * use hard = true if we want to tear down and free all resources. Not
155
191
  * to use while restarting.
156
192
  */
157
- dispose(hard) {
158
- if (hard) {
159
- this._modelLoader?.dispose();
160
- this._audioLoader?.dispose();
161
- this._videoLoader?.dispose();
162
- this._imageLoader?.dispose();
163
- this._imageLoader = null;
164
- this._videoLoader = null;
165
- this._modelLoader = null;
166
- this._environtmentLoader = null;
167
- this._audioLoader = null;
168
- }
193
+ soft_dispose() {
169
194
  // Dispose ALL nodes, not just mounted ones
170
195
  for (const node of this._nodes) {
171
196
  node.dispose(false);
@@ -174,10 +199,6 @@ export default class GameContext {
174
199
  this._nodes = [];
175
200
  this._scenes = [];
176
201
  this._mediaManager.dispose();
177
- if (hard) {
178
- this._pcanvas?.dispose();
179
- this._pcanvas = null;
180
- }
181
202
  }
182
203
  isLoading() {
183
204
  return this.hasMediaQueue();
@@ -220,6 +241,7 @@ export default class GameContext {
220
241
  await this._modelLoader?.queue();
221
242
  await this._audioLoader?.queue();
222
243
  pRootComponent.native_OnPlaying();
244
+ this._pcanvas?.updateEditorMode(false);
223
245
  this._pcanvas.onSceneRunning();
224
246
  this.decreaseSceneLoader();
225
247
  }
@@ -233,6 +255,7 @@ export default class GameContext {
233
255
  variable.reset();
234
256
  }
235
257
  this._root.stop();
258
+ this._pcanvas?.updateEditorMode(true);
236
259
  }
237
260
  //
238
261
  // WORKER
@@ -248,7 +271,7 @@ export default class GameContext {
248
271
  // "setWorkState (" + Workers[worker] + ") _workFlags: ",
249
272
  // this._workFlags
250
273
  // );
251
- if (!wasWorking && this._workFlags > 0) {
274
+ if (!wasWorking && this._workFlags > 0 && this._pcanvas !== null) {
252
275
  this._pcanvas.onWorkStarted(this._workFlags);
253
276
  this.getOwner().setWorkState(true);
254
277
  }
@@ -260,7 +283,7 @@ export default class GameContext {
260
283
  // "clearWorkState (" + Workers[flag] + ") _workState: ",
261
284
  // this._workFlags
262
285
  // );
263
- if (wasWorking && this._workFlags === 0) {
286
+ if (wasWorking && this._workFlags === 0 && this._pcanvas !== null) {
264
287
  this._pcanvas.onWorkStopped(flag);
265
288
  this.getOwner().setWorkState(false);
266
289
  }
@@ -546,14 +569,14 @@ export default class GameContext {
546
569
  if (this._inputEnabled || !this._pcanvas)
547
570
  return;
548
571
  this._inputEnabled = true;
549
- this._pcanvas?.getCameraControls()?.enable();
572
+ this._pcanvas.getCameraControls().enable();
550
573
  this._pcanvas.enableRaycaster();
551
574
  }
552
575
  disableInput() {
553
576
  if (!this._inputEnabled || !this._pcanvas)
554
577
  return;
555
578
  this._inputEnabled = false;
556
- this._pcanvas?.getCameraControls()?.disable();
579
+ this._pcanvas.getCameraControls().disable();
557
580
  this._pcanvas.disableRaycaster();
558
581
  }
559
582
  isInputEnabled() {
@@ -1 +1 @@
1
- {"version":3,"file":"GameContext.js","sourceRoot":"","sources":["../src/GameContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GameContext.js","sourceRoot":"","sources":["../src/GameContext.ts"],"names":[],"mappings":"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"}
package/dist/IEngine.d.ts CHANGED
@@ -1,15 +1,16 @@
1
1
  import GameContext from "./GameContext";
2
2
  import { type IAudioListener } from "./IAudioListener";
3
- import { ICameraControls } from "./ICameraControls";
4
- import { IComponentFactory } from "./IComponentFactory";
5
- import { type IPCanvas } from "./IPCanvas";
3
+ import { type ICameraControls } from "./ICameraControls";
4
+ import { type IComponentFactory } from "./IComponentFactory";
6
5
  import { type IPNodeRenderer } from "./IPNodeRenderer";
7
- import { IStats } from "./IStats";
6
+ import { type IStats } from "./IStats";
8
7
  import { type IMediaLoader_Audio, type IMediaLoader_Environment, type IMediaLoader_Model, type IMediaLoader_Image, type IMediaLoader_Video } from "./media/IMediaLoader";
9
- import { type ICameraSettings } from "./PTypes";
10
- import { IVector3 } from "./PVector3";
8
+ import PCanvas from "./PCanvas";
9
+ import { type IVector3 } from "./PVector3";
10
+ import { type ICameraSettings } from "./settings/ICameraSettings";
11
+ import Settings_Base from "./settings/Settings_Base";
11
12
  interface IEngine {
12
- setupPCanvas(context: GameContext): IPCanvas;
13
+ setupCanvas(canvas: HTMLCanvasElement, context: GameContext, width: number, height: number, settings: Settings_Base): PCanvas;
13
14
  setupNodeRenderer(): IPNodeRenderer;
14
15
  setupCameraControls(context: GameContext, cameraSettings: ICameraSettings | null): ICameraControls | null;
15
16
  getComponentFactory(): IComponentFactory;
@@ -1 +1 @@
1
- {"version":3,"file":"IEngine.d.ts","sourceRoot":"","sources":["../src/IEngine.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,UAAU,OAAO;IACf,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,QAAQ,CAAC;IAC7C,iBAAiB,IAAI,cAAc,CAAC;IAEpC,mBAAmB,CACjB,OAAO,EAAE,WAAW,EACpB,cAAc,EAAE,eAAe,GAAG,IAAI,GACrC,eAAe,GAAG,IAAI,CAAC;IAM1B,mBAAmB,IAAI,iBAAiB,CAAC;IAMzC,sBAAsB,CAAC,OAAO,EAAE,WAAW,GAAG,QAAQ,CAAC;IAMvD,kBAAkB,IAAI,cAAc,CAAC;IAMrC,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,kBAAkB,CAAC;IAC3D,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,kBAAkB,CAAC;IAC3D,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,kBAAkB,CAAC;IAC3D,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,kBAAkB,CAAC;IAC3D,sBAAsB,CAAC,OAAO,EAAE,WAAW,GAAG,wBAAwB,CAAC;IAMvE,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,CAAC;CACxC;AAED,OAAO,EAAE,KAAK,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"IEngine.d.ts","sourceRoot":"","sources":["../src/IEngine.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,aAAa,MAAM,0BAA0B,CAAC;AAErD,UAAU,OAAO;IACf,WAAW,CACT,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,aAAa,GACtB,OAAO,CAAC;IAEX,iBAAiB,IAAI,cAAc,CAAC;IAEpC,mBAAmB,CACjB,OAAO,EAAE,WAAW,EACpB,cAAc,EAAE,eAAe,GAAG,IAAI,GACrC,eAAe,GAAG,IAAI,CAAC;IAM1B,mBAAmB,IAAI,iBAAiB,CAAC;IAMzC,sBAAsB,CAAC,OAAO,EAAE,WAAW,GAAG,QAAQ,CAAC;IAMvD,kBAAkB,IAAI,cAAc,CAAC;IAMrC,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,kBAAkB,CAAC;IAC3D,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,kBAAkB,CAAC;IAC3D,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,kBAAkB,CAAC;IAC3D,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,kBAAkB,CAAC;IAC3D,sBAAsB,CAAC,OAAO,EAAE,WAAW,GAAG,wBAAwB,CAAC;IAMvE,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,CAAC;CACxC;AAED,OAAO,EAAE,KAAK,OAAO,EAAE,CAAC"}
@@ -1,4 +1,8 @@
1
+ import { IVector3 } from "./PVector3";
1
2
  export default class MathTools {
2
3
  static degToRad(deg: number): number;
4
+ static radToDeg(rad: number): number;
5
+ static radToDeg3(v: IVector3): IVector3;
6
+ static lerp(x: number, y: number, t: number): number;
3
7
  }
4
8
  //# sourceMappingURL=MathTools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MathTools.d.ts","sourceRoot":"","sources":["../src/MathTools.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,OAAO,OAAO,SAAS;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAGrC"}
1
+ {"version":3,"file":"MathTools.d.ts","sourceRoot":"","sources":["../src/MathTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAKtC,MAAM,CAAC,OAAO,OAAO,SAAS;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIpC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIpC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,GAAG,QAAQ;IAOvC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;CAGrD"}
package/dist/MathTools.js CHANGED
@@ -1,7 +1,20 @@
1
1
  const DEG2RAD = Math.PI / 180;
2
+ const RAD2DEG = 180 / Math.PI;
2
3
  export default class MathTools {
3
4
  static degToRad(deg) {
4
5
  return deg * DEG2RAD;
5
6
  }
7
+ static radToDeg(rad) {
8
+ return rad * RAD2DEG;
9
+ }
10
+ static radToDeg3(v) {
11
+ v.x = v.x * RAD2DEG;
12
+ v.y = v.y * RAD2DEG;
13
+ v.z = v.z * RAD2DEG;
14
+ return v;
15
+ }
16
+ static lerp(x, y, t) {
17
+ return (1 - t) * x + t * y;
18
+ }
6
19
  }
7
20
  //# sourceMappingURL=MathTools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MathTools.js","sourceRoot":"","sources":["../src/MathTools.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC;AAC9B,MAAM,CAAC,OAAO,OAAO,SAAS;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAW;QACzB,OAAO,GAAG,GAAG,OAAO,CAAC;IACvB,CAAC;CACF"}
1
+ {"version":3,"file":"MathTools.js","sourceRoot":"","sources":["../src/MathTools.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC;AAC9B,MAAM,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;AAE9B,MAAM,CAAC,OAAO,OAAO,SAAS;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAW;QACzB,OAAO,GAAG,GAAG,OAAO,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,GAAW;QACzB,OAAO,GAAG,GAAG,OAAO,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,CAAW;QAC1B,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;QACpB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;QACpB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;QACpB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;QACzC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;CACF"}
@@ -0,0 +1,159 @@
1
+ import { Tween, Group as TweenGroup } from "@tweenjs/tween.js";
2
+ import GameContext, { Workers } from "./GameContext";
3
+ import { ICameraControls } from "./ICameraControls";
4
+ import { IUpdate, IUpdator } from "./PTypes";
5
+ import PEnvironment from "./pcomponents/PEnvironment";
6
+ import AdaptivePerformance from "./AdaptivePerformance";
7
+ import PNode from "./PNode";
8
+ import { ICameraNode } from "./ICameraNode";
9
+ import { IPostProcessingSettings } from "./settings/IPostProcessingSettings";
10
+ import { IQualitySettings } from "./settings/IQualitySettings";
11
+ import Settings_Base from "./settings/Settings_Base";
12
+ import { IVector3 } from "./PVector3";
13
+ export default abstract class PCanvas {
14
+ protected _context: GameContext;
15
+ protected _disposed: boolean;
16
+ protected _canvas: HTMLCanvasElement;
17
+ protected _controls: ICameraControls | null;
18
+ protected _eventsAttached: boolean;
19
+ protected _updates: IUpdate[];
20
+ protected _tweens: TweenGroup;
21
+ protected _startHoverId: string | null;
22
+ protected _cameraUpdate: (() => void) | null;
23
+ protected _hoverCanvas: boolean;
24
+ protected _hoverWindow: boolean;
25
+ protected _isAdmin: boolean;
26
+ protected _environment: PEnvironment | null;
27
+ protected _sizeX: number;
28
+ protected _sizeY: number;
29
+ protected _pointerX: number;
30
+ protected _pointerY: number;
31
+ protected _renderScale: number;
32
+ protected _maxScale: number;
33
+ protected _minScale: number;
34
+ protected _adaptiveQuality: boolean;
35
+ protected _estimating: boolean;
36
+ protected _baseQuality: number;
37
+ protected _currentQuality: number;
38
+ protected _estimatedQuality: number;
39
+ protected _performanceCounter: AdaptivePerformance | null;
40
+ protected _skipFrameActive: boolean;
41
+ protected _isWorking: boolean;
42
+ protected _isSceneRunning: boolean;
43
+ protected _isSleeping: boolean;
44
+ protected _isSleepEnabled: boolean;
45
+ protected _isHoveringAdmin: boolean;
46
+ protected _isRaycasting: boolean;
47
+ protected _editor: boolean;
48
+ protected _hovered: PNode | null;
49
+ protected _debug: boolean;
50
+ protected _renderCounter: number;
51
+ protected _renderInterval: number;
52
+ protected _hasUpdators: boolean;
53
+ protected _hasTweens: boolean;
54
+ constructor(canvas: HTMLCanvasElement, context: GameContext, width: number, height: number);
55
+ abstract render(settings: Settings_Base, startLoop: boolean): void;
56
+ private attachEvents;
57
+ private detachEvents;
58
+ /**
59
+ * Should be called after render() and restore()
60
+ */
61
+ dispose(): void;
62
+ getCanvasElement(): HTMLCanvasElement | null;
63
+ getEnvironment(): PEnvironment | null;
64
+ setEnvironment(environment: PEnvironment): void;
65
+ abstract updateEnvironment(): void;
66
+ abstract setBackgroundColor(bg: string): void;
67
+ abstract clearEnvironment(environment: PEnvironment): void;
68
+ abstract setToneMapping(value: number): void;
69
+ abstract setToneMappingExposure(value: number): void;
70
+ abstract setFOV(fov: number): void;
71
+ abstract setNearFar(near: number, far: number): void;
72
+ abstract getCameraNode(): ICameraNode;
73
+ setCameraControls(controls: ICameraControls | null): void;
74
+ getCameraControls(): ICameraControls | null;
75
+ /**
76
+ * Base settings has changed for post processing
77
+ */
78
+ abstract updatePostProcessingSettings(field: string, settings: IPostProcessingSettings): void;
79
+ onExternalEvent: (e: any) => void;
80
+ /**
81
+ * Helper function to trigger events
82
+ */
83
+ emit(type: string, detail: any, bubbles: boolean): void;
84
+ /**
85
+ * Add <canvas/> event listener
86
+ */
87
+ addEventListener(type: string, callback: (e: any) => void): void;
88
+ /**
89
+ * Add <canvas/> event listener
90
+ */
91
+ removeEventListener(type: string, callback: (e: any) => void): void;
92
+ onMouseEnter: (_event: MouseEvent) => void;
93
+ onMouseExit: (_event: MouseEvent) => void;
94
+ _stats: IUpdator | null;
95
+ registerStats(updator: IUpdator | null): void;
96
+ /**
97
+ * Event callback when mouse moves.
98
+ */
99
+ onMouseMove: (event: MouseEvent) => void;
100
+ private _wasDown;
101
+ /**
102
+ * User pressed down on canvas
103
+ */
104
+ onCanvasClickDown: (e: any) => void;
105
+ /**
106
+ * User pressed up on canvas
107
+ */
108
+ onCanvasClickUp: (e: any) => void;
109
+ onWindowResize(width: number, height: number, _resize: boolean): void;
110
+ registerUpdate(f: IUpdate): void;
111
+ unregisterUpdate(f: IUpdate): void;
112
+ abstract startRenderLoop(): void;
113
+ abstract stopRenderLoop(): void;
114
+ addTween(tween: Tween): void;
115
+ setCameraUpdate(updateFunction: (() => void) | null): void;
116
+ private onWindowHide;
117
+ private onWindowEnter;
118
+ private onWindowExit;
119
+ private updateHoverState;
120
+ isSleepEnabled(): boolean;
121
+ private setIsSleepEnabled;
122
+ snooze(): void;
123
+ abstract updateRendererSettings(field: string, isettings: Settings_Base): void;
124
+ abstract updateCameraSettings(field: string, isettings: Settings_Base): void;
125
+ updateQualitySettings(field: string, settings: IQualitySettings): void;
126
+ initQualitySettings(settings: IQualitySettings): void;
127
+ getRenderScale(): number;
128
+ getCurrentQuality(): number;
129
+ getEstimatedQuality(): number;
130
+ getRenderInterval(): number;
131
+ private updateSkipFrameState;
132
+ private setSkipFrameActive;
133
+ private setIsAdaptiveQualityEnabled;
134
+ onPerformanceEstimated: (quality: number, fps: number, estimating: boolean) => void;
135
+ /**
136
+ * Quality is always clamped to steps of 0.05.
137
+ * Return true if a resize renderscale is needed
138
+ */
139
+ protected abstract setQuality(quality: number): boolean;
140
+ /**
141
+ * Quality is always clamped to steps of 0.05
142
+ */
143
+ private _setQuality;
144
+ protected abstract updateRenderScale(value: number): void;
145
+ private _updateRenderScale;
146
+ onSceneRunning(): void;
147
+ onWorkStarted(_workers: Workers): void;
148
+ onWorkStopped(_workers: Workers): void;
149
+ private sleepCheck;
150
+ private sleep;
151
+ enableRaycaster(): void;
152
+ disableRaycaster(): void;
153
+ updateEditorMode(editor: boolean): void;
154
+ /**
155
+ * Set current hovered object.
156
+ */
157
+ protected setHovered(node: any, point: IVector3 | null): void;
158
+ }
159
+ //# sourceMappingURL=PCanvas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PCanvas.d.ts","sourceRoot":"","sources":["../src/PCanvas.ts"],"names":[],"mappings":"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"}