@p100-web/core-three 100.0.86 → 100.0.88

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 (92) hide show
  1. package/dist/ThreeCanvas.d.ts.map +1 -1
  2. package/dist/ThreeCanvas.js +0 -1
  3. package/dist/ThreeCanvas.js.map +1 -1
  4. package/dist/ThreeEngine.d.ts +4 -10
  5. package/dist/ThreeEngine.d.ts.map +1 -1
  6. package/dist/ThreeEngine.js +9 -21
  7. package/dist/ThreeEngine.js.map +1 -1
  8. package/dist/assets/ThreeAssetLoader.d.ts +98 -0
  9. package/dist/assets/ThreeAssetLoader.d.ts.map +1 -0
  10. package/dist/assets/ThreeAssetLoader.js +487 -0
  11. package/dist/assets/ThreeAssetLoader.js.map +1 -0
  12. package/dist/index.d.ts +1 -4
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +1 -4
  15. package/dist/index.js.map +1 -1
  16. package/dist/pcomponents/PAnimator.d.ts +2 -2
  17. package/dist/pcomponents/PAnimator.d.ts.map +1 -1
  18. package/dist/pcomponents/PAnimator.js +1 -8
  19. package/dist/pcomponents/PAnimator.js.map +1 -1
  20. package/dist/pcomponents/PBackground.d.ts +5 -6
  21. package/dist/pcomponents/PBackground.d.ts.map +1 -1
  22. package/dist/pcomponents/PBackground.js +47 -60
  23. package/dist/pcomponents/PBackground.js.map +1 -1
  24. package/dist/pcomponents/PBasicMaterial.d.ts +4 -5
  25. package/dist/pcomponents/PBasicMaterial.d.ts.map +1 -1
  26. package/dist/pcomponents/PBasicMaterial.js +48 -60
  27. package/dist/pcomponents/PBasicMaterial.js.map +1 -1
  28. package/dist/pcomponents/PEnvironment.d.ts +4 -5
  29. package/dist/pcomponents/PEnvironment.d.ts.map +1 -1
  30. package/dist/pcomponents/PEnvironment.js +31 -51
  31. package/dist/pcomponents/PEnvironment.js.map +1 -1
  32. package/dist/pcomponents/PImageCache.d.ts +11 -0
  33. package/dist/pcomponents/PImageCache.d.ts.map +1 -0
  34. package/dist/pcomponents/PImageCache.js +35 -0
  35. package/dist/pcomponents/PImageCache.js.map +1 -0
  36. package/dist/pcomponents/PLight.js +23 -0
  37. package/dist/pcomponents/PLight.js.map +1 -1
  38. package/dist/pcomponents/PMaskedMaterial.d.ts +5 -5
  39. package/dist/pcomponents/PMaskedMaterial.d.ts.map +1 -1
  40. package/dist/pcomponents/PMaskedMaterial.js +43 -58
  41. package/dist/pcomponents/PMaskedMaterial.js.map +1 -1
  42. package/dist/pcomponents/PModelAnnotation.d.ts.map +1 -1
  43. package/dist/pcomponents/PModelAnnotation.js +2 -0
  44. package/dist/pcomponents/PModelAnnotation.js.map +1 -1
  45. package/dist/pcomponents/PModelGLTF.d.ts +4 -8
  46. package/dist/pcomponents/PModelGLTF.d.ts.map +1 -1
  47. package/dist/pcomponents/PModelGLTF.js +16 -19
  48. package/dist/pcomponents/PModelGLTF.js.map +1 -1
  49. package/dist/pcomponents/PModelNode.d.ts.map +1 -1
  50. package/dist/pcomponents/PModelNode.js +1 -8
  51. package/dist/pcomponents/PModelNode.js.map +1 -1
  52. package/dist/pcomponents/PPhysicalMaterial.d.ts +3 -4
  53. package/dist/pcomponents/PPhysicalMaterial.d.ts.map +1 -1
  54. package/dist/pcomponents/PPhysicalMaterial.js +21 -30
  55. package/dist/pcomponents/PPhysicalMaterial.js.map +1 -1
  56. package/dist/pcomponents/PSound.d.ts +4 -4
  57. package/dist/pcomponents/PSound.d.ts.map +1 -1
  58. package/dist/pcomponents/PSound.js +26 -18
  59. package/dist/pcomponents/PSound.js.map +1 -1
  60. package/dist/pcomponents/PSprite.d.ts +3 -4
  61. package/dist/pcomponents/PSprite.d.ts.map +1 -1
  62. package/dist/pcomponents/PSprite.js +18 -24
  63. package/dist/pcomponents/PSprite.js.map +1 -1
  64. package/dist/pcomponents.d.ts +2 -1
  65. package/dist/pcomponents.d.ts.map +1 -1
  66. package/dist/pcomponents.js +2 -1
  67. package/dist/pcomponents.js.map +1 -1
  68. package/package.json +2 -2
  69. package/dist/media/AudioLoader.d.ts +0 -32
  70. package/dist/media/AudioLoader.d.ts.map +0 -1
  71. package/dist/media/AudioLoader.js +0 -110
  72. package/dist/media/AudioLoader.js.map +0 -1
  73. package/dist/media/EnvironmentLoader.d.ts +0 -40
  74. package/dist/media/EnvironmentLoader.d.ts.map +0 -1
  75. package/dist/media/EnvironmentLoader.js +0 -120
  76. package/dist/media/EnvironmentLoader.js.map +0 -1
  77. package/dist/media/ImageLoader.d.ts +0 -36
  78. package/dist/media/ImageLoader.d.ts.map +0 -1
  79. package/dist/media/ImageLoader.js +0 -160
  80. package/dist/media/ImageLoader.js.map +0 -1
  81. package/dist/media/MediaLoader.d.ts +0 -14
  82. package/dist/media/MediaLoader.d.ts.map +0 -1
  83. package/dist/media/MediaLoader.js +0 -70
  84. package/dist/media/MediaLoader.js.map +0 -1
  85. package/dist/media/ModelLoader.d.ts +0 -49
  86. package/dist/media/ModelLoader.d.ts.map +0 -1
  87. package/dist/media/ModelLoader.js +0 -223
  88. package/dist/media/ModelLoader.js.map +0 -1
  89. package/dist/media/VideoLoader.d.ts +0 -35
  90. package/dist/media/VideoLoader.d.ts.map +0 -1
  91. package/dist/media/VideoLoader.js +0 -105
  92. package/dist/media/VideoLoader.js.map +0 -1
@@ -1,11 +1,44 @@
1
- import { BackSide, FrontSide, Texture, SRGBColorSpace, VideoTexture, ShaderMaterial, Color, } from "three";
1
+ import { BackSide, FrontSide, ShaderMaterial, Color, } from "three";
2
2
  import { PMaskedMaterial as PMaskedMaterialBase } from "@p100-web/core";
3
3
  import { FileType, FileSubType, } from "@p100-web/core";
4
4
  export default class PMaskedMaterial extends PMaskedMaterialBase {
5
5
  constructor() {
6
6
  super(...arguments);
7
7
  this._material = null;
8
- this._cacheKey = 0;
8
+ //
9
+ // VideoTextureTask
10
+ //
11
+ this.onVideoTextureTaskLoaded = (task) => {
12
+ if (this._material === null) {
13
+ this.context.error("onVideoTextureLoaded and material was null");
14
+ return;
15
+ }
16
+ if (task.texture === null) {
17
+ this.context.error("onVideoTextureLoaded and texture was null");
18
+ return;
19
+ }
20
+ const texture = task.texture;
21
+ this.setTextureRepeat(task.pfile, texture);
22
+ this._material.uniforms.map.value = texture;
23
+ this._material.needsUpdate = true;
24
+ };
25
+ //
26
+ // TextureTask
27
+ //
28
+ this.onTextureTaskLoaded = (task) => {
29
+ if (this._material === null) {
30
+ this.context.error("onTextureLoaded and material was null");
31
+ return;
32
+ }
33
+ if (task.texture === null) {
34
+ this.context.error("onTextureLoaded and texture was null");
35
+ return;
36
+ }
37
+ const texture = task.texture;
38
+ this.setTextureRepeat(task.pfile, texture);
39
+ this._material.uniforms.map.value = texture;
40
+ this._material.needsUpdate = true;
41
+ };
9
42
  }
10
43
  getTexture() {
11
44
  return this._material?.uniforms.map.value || null;
@@ -22,28 +55,11 @@ export default class PMaskedMaterial extends PMaskedMaterialBase {
22
55
  this.context.releaseFile(this.file_texture);
23
56
  }
24
57
  _dispose(unrender) {
25
- if (this.file_texture) {
26
- if (this.file_texture.type === FileType.Image) {
27
- this.context
28
- .imageLoader()
29
- .disposeImage(this, this.file_texture, this._cacheKey);
30
- }
31
- else if (this.file_texture.type === FileType.Video) {
32
- // Notify any video player
33
- const videoPlayer = this.node.findComponent("PVideoPlayer");
34
- videoPlayer?.onDisposeMaterial();
35
- this.context
36
- .videoLoader()
37
- .disposeVideo(this, this.file_texture);
38
- }
39
- this._cacheKey = 0;
40
- }
41
58
  // Check if we should dispose Material
42
59
  if (this._material) {
43
60
  // Do we have a texture as well?
44
61
  if (this._material.uniforms.map.value) {
45
62
  this._material.uniforms.map.value.dispose();
46
- this._material.uniforms.map.value.source.data = null;
47
63
  this._material.uniforms.map.value = null;
48
64
  }
49
65
  this._material.needsUpdate = true;
@@ -87,16 +103,16 @@ export default class PMaskedMaterial extends PMaskedMaterialBase {
87
103
  mesh.renderOrder = this.renderOrder;
88
104
  if (this.file_texture !== null) {
89
105
  // Check which loader to use
90
- if (this.file_texture.type === FileType.Image)
106
+ if (this.file_texture.type === FileType.Image) {
91
107
  this.context
92
- .imageLoader()
93
- .load(this, this.file_texture);
94
- else if (this.file_texture.type === FileType.Video)
108
+ .assetLoader()
109
+ .addTextureTask(this, this.file_texture);
110
+ }
111
+ else if (this.file_texture.type === FileType.Video) {
95
112
  this.context
96
- .videoLoader()
97
- .load(this, this.file_texture);
98
- else
99
- this.context.error("Unsuppotred material texture");
113
+ .assetLoader()
114
+ .addVideoTextureTask(this, this.file_texture);
115
+ }
100
116
  }
101
117
  material.needsUpdate = true;
102
118
  }
@@ -111,37 +127,6 @@ export default class PMaskedMaterial extends PMaskedMaterialBase {
111
127
  texture.needsUpdate = true;
112
128
  }
113
129
  }
114
- //
115
- // IVideoLoader
116
- //
117
- onVideoLoaded(file, value) {
118
- if (this._material === null) {
119
- this.context.error("onVideoLoaded and material was null");
120
- return;
121
- }
122
- const texture = new VideoTexture(value);
123
- texture.colorSpace = SRGBColorSpace;
124
- this.setTextureRepeat(file, texture);
125
- this._material.uniforms.map.value = texture;
126
- this._material.needsUpdate = true;
127
- }
128
- //
129
- // IImageLoader
130
- //
131
- onImageLoaded(file, data, cacheKey) {
132
- this._cacheKey = cacheKey;
133
- if (this._material === null) {
134
- this.context.error("onImageLoaded and material was null");
135
- return;
136
- }
137
- const texture = new Texture();
138
- texture.userData.id = file._id;
139
- texture.colorSpace = SRGBColorSpace;
140
- texture.image = data;
141
- this.setTextureRepeat(file, texture);
142
- this._material.uniforms.map.value = texture;
143
- this._material.needsUpdate = true;
144
- }
145
130
  }
146
131
  function createChromaKeyMaterial(args) {
147
132
  return new ShaderMaterial({
@@ -1 +1 @@
1
- {"version":3,"file":"PMaskedMaterial.js","sourceRoot":"","sources":["../../src/pcomponents/PMaskedMaterial.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PMaskedMaterial.js","sourceRoot":"","sources":["../../src/pcomponents/PMaskedMaterial.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PModelAnnotation.d.ts","sourceRoot":"","sources":["../../src/pcomponents/PModelAnnotation.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gBAAgB,IAAI,oBAAoB,EACxC,QAAQ,EACT,MAAM,gBAAgB,CAAC;AAExB,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,oBAAoB;IAChE,MAAM,IAAI,IAAI;IAEd,QAAQ;IAER,aAAa,IAAI;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,MAAM,EAAE,QAAQ,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;CAc/E"}
1
+ {"version":3,"file":"PModelAnnotation.d.ts","sourceRoot":"","sources":["../../src/pcomponents/PModelAnnotation.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gBAAgB,IAAI,oBAAoB,EACxC,QAAQ,EACT,MAAM,gBAAgB,CAAC;AAExB,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,oBAAoB;IAChE,MAAM,IAAI,IAAI;IAEd,QAAQ;IAER,aAAa,IAAI;QACf,QAAQ,EAAE,QAAQ,CAAC;QACnB,MAAM,EAAE,QAAQ,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;KACd,GAAG,IAAI;CAeT"}
@@ -5,6 +5,8 @@ export default class PModelAnnotation extends PModelAnnotationBase {
5
5
  getAnnotation() {
6
6
  const annotation = this.node.getEl();
7
7
  if (annotation) {
8
+ if (annotation.children.length !== 2)
9
+ return null;
8
10
  const positionNode = annotation.children[this.positionIndex];
9
11
  const targetNode = annotation.children[this.targetIndex];
10
12
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"PModelAnnotation.js","sourceRoot":"","sources":["../../src/pcomponents/PModelAnnotation.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gBAAgB,IAAI,oBAAoB,GAEzC,MAAM,gBAAgB,CAAC;AAExB,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,oBAAoB;IAChE,MAAM,KAAU,CAAC;IAEjB,QAAQ,KAAI,CAAC;IAEb,aAAa;QACX,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAY,CAAC;QAC/C,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC7D,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACzD,OAAO;gBACL,QAAQ,EAAE,YAAY,CAAC,gBAAgB,CAAC,YAAY,CAAC,QAAQ,CAAC;gBAC9D,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,UAAU,CAAC,QAAQ,CAAC;gBACxD,IAAI,EAAE,UAAU,CAAC,IAAI;aACtB,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
1
+ {"version":3,"file":"PModelAnnotation.js","sourceRoot":"","sources":["../../src/pcomponents/PModelAnnotation.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gBAAgB,IAAI,oBAAoB,GAEzC,MAAM,gBAAgB,CAAC;AAExB,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,oBAAoB;IAChE,MAAM,KAAU,CAAC;IAEjB,QAAQ,KAAI,CAAC;IAEb,aAAa;QAKX,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAY,CAAC;QAC/C,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAClD,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC7D,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACzD,OAAO;gBACL,QAAQ,EAAE,YAAY,CAAC,gBAAgB,CAAC,YAAY,CAAC,QAAQ,CAAC;gBAC9D,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,UAAU,CAAC,QAAQ,CAAC;gBACxD,IAAI,EAAE,UAAU,CAAC,IAAI;aACtB,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -1,7 +1,6 @@
1
- import { AnimationAction, AnimationMixer, Group, Object3D } from "three";
1
+ import { AnimationAction, AnimationMixer, Object3D, Group } from "three";
2
2
  import { type IAnimationAction, PModelGLTF as PModelGLTFBase } from "@p100-web/core";
3
- import { type IModelLoader, PFile } from "@p100-web/core";
4
- import { IModel } from "../media/ModelLoader";
3
+ import { ModelTask, type IModelTaskLoader } from "../assets/ThreeAssetLoader";
5
4
  /**
6
5
  * Interface for other components that listens to when this model has loaded
7
6
  */
@@ -9,7 +8,7 @@ interface IModelListener {
9
8
  onModelUpdate(component: PModelGLTF | null, model: Object3D | null): void;
10
9
  }
11
10
  export { type IModelListener };
12
- export default class PModelGLTF extends PModelGLTFBase implements IModelLoader {
11
+ export default class PModelGLTF extends PModelGLTFBase implements IModelTaskLoader {
13
12
  el: Group | null;
14
13
  mixer: AnimationMixer | null;
15
14
  actions: AnimationAction[] | null;
@@ -20,9 +19,6 @@ export default class PModelGLTF extends PModelGLTFBase implements IModelLoader {
20
19
  addListener(listener: IModelListener): void;
21
20
  removeListener(listener: IModelListener): void;
22
21
  getAnimationAction(clip: string): IAnimationAction | null;
23
- /**
24
- * Called when the object has finished loading
25
- */
26
- onModelLoaded: (_file: PFile, model: IModel) => void;
22
+ onModelTaskLoaded: (task: ModelTask) => void;
27
23
  }
28
24
  //# sourceMappingURL=PModelGLTF.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PModelGLTF.d.ts","sourceRoot":"","sources":["../../src/pcomponents/PModelGLTF.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,KAAK,EAAQ,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC/E,OAAO,EACL,KAAK,gBAAgB,EACrB,UAAU,IAAI,cAAc,EAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C;;GAEG;AACH,UAAU,cAAc;IACtB,aAAa,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI,EAAE,KAAK,EAAE,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;CAC3E;AAED,OAAO,EAAE,KAAK,cAAc,EAAE,CAAC;AAE/B,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,cAAe,YAAW,YAAY;IAC5E,EAAE,EAAE,KAAK,GAAG,IAAI,CAAQ;IAExB,KAAK,EAAE,cAAc,GAAG,IAAI,CAAQ;IACpC,OAAO,EAAE,eAAe,EAAE,GAAG,IAAI,CAAQ;IAEzC,SAAS,CAAC,eAAe,EAAE,OAAO,CAAS;IAE3C,SAAS,CAAC,SAAS,EAAE,cAAc,EAAE,CAAM;IAE3C,QAAQ;IAuBR,MAAM;IAaN,WAAW,CAAC,QAAQ,EAAE,cAAc;IAOpC,cAAc,CAAC,QAAQ,EAAE,cAAc;IAWvC,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAYzD;;OAEG;IACH,aAAa,GAAI,OAAO,KAAK,EAAE,OAAO,MAAM,UAkD1C;CACH"}
1
+ {"version":3,"file":"PModelGLTF.d.ts","sourceRoot":"","sources":["../../src/pcomponents/PModelGLTF.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAQ,QAAQ,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC/E,OAAO,EACL,KAAK,gBAAgB,EACrB,UAAU,IAAI,cAAc,EAC7B,MAAM,gBAAgB,CAAC;AAGxB,OAAyB,EACvB,SAAS,EACT,KAAK,gBAAgB,EACtB,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,UAAU,cAAc;IACtB,aAAa,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI,EAAE,KAAK,EAAE,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;CAC3E;AAED,OAAO,EAAE,KAAK,cAAc,EAAE,CAAC;AAE/B,MAAM,CAAC,OAAO,OAAO,UACnB,SAAQ,cACR,YAAW,gBAAgB;IAE3B,EAAE,EAAE,KAAK,GAAG,IAAI,CAAQ;IAExB,KAAK,EAAE,cAAc,GAAG,IAAI,CAAQ;IACpC,OAAO,EAAE,eAAe,EAAE,GAAG,IAAI,CAAQ;IAEzC,SAAS,CAAC,eAAe,EAAE,OAAO,CAAS;IAE3C,SAAS,CAAC,SAAS,EAAE,cAAc,EAAE,CAAM;IAE3C,QAAQ;IAuBR,MAAM;IAaN,WAAW,CAAC,QAAQ,EAAE,cAAc;IAOpC,cAAc,CAAC,QAAQ,EAAE,cAAc;IAWvC,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAUzD,iBAAiB,GAAI,MAAM,SAAS,KAAG,IAAI,CAmD1C;CACF"}
@@ -8,25 +8,22 @@ export default class PModelGLTF extends PModelGLTFBase {
8
8
  this.actions = null;
9
9
  this._haveReflectors = false;
10
10
  this.listeners = [];
11
- //
12
- // IModelLoader
13
- //
14
- /**
15
- * Called when the object has finished loading
16
- */
17
- this.onModelLoaded = (_file, model) => {
18
- if (!this.node.hasEl())
19
- throw new Error("Missing el");
20
- if (model.actions && model.actions.length) {
21
- this.mixer = model.mixer;
11
+ // ModelTask
12
+ this.onModelTaskLoaded = (task) => {
13
+ if (!task.model) {
14
+ this.context.error("onModelTaskLoaded: no model");
15
+ return;
22
16
  }
23
- this.actions = model.actions || [];
24
- this.el = model.modelScene;
25
- this.node.getEl().add(model.modelScene);
17
+ if (task.actions && task.actions.length) {
18
+ this.mixer = task.mixer;
19
+ }
20
+ this.actions = task.actions || [];
21
+ this.el = task.model;
22
+ this.node.getEl().add(this.el);
26
23
  // Process model
27
24
  if (this.forceDepthWrite || this.reflector) {
28
25
  let reflectors = [];
29
- model.modelScene.traverse((node) => {
26
+ this.el.traverse((node) => {
30
27
  if (node.material) {
31
28
  const material = node.material;
32
29
  if (this.reflector) {
@@ -71,16 +68,16 @@ export default class PModelGLTF extends PModelGLTFBase {
71
68
  }
72
69
  this.listeners.length = 0;
73
70
  if (this.el !== null) {
74
- this.context.modelLoader().disposeModel(this, this.el);
71
+ this.context.assetLoader().disposeModel(this.el);
75
72
  this.el = null;
76
73
  }
77
74
  }
78
75
  render() {
79
76
  if (this.file_model !== null) {
80
77
  this.node.set_el(new Group());
81
- if (!this.context.modelLoader().load(this, this.file_model)) {
82
- this.context.error("File type not supported");
83
- }
78
+ this.context
79
+ .assetLoader()
80
+ .addModelTask(this, this.file_model);
84
81
  }
85
82
  }
86
83
  //
@@ -1 +1 @@
1
- {"version":3,"file":"PModelGLTF.js","sourceRoot":"","sources":["../../src/pcomponents/PModelGLTF.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,KAAK,EAAkB,MAAM,OAAO,CAAC;AAC/E,OAAO,EAEL,UAAU,IAAI,cAAc,GAC7B,MAAM,gBAAgB,CAAC;AAexB,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,cAAc;IAAtD;;QACE,OAAE,GAAiB,IAAI,CAAC;QAExB,UAAK,GAA0B,IAAI,CAAC;QACpC,YAAO,GAA6B,IAAI,CAAC;QAE/B,oBAAe,GAAY,KAAK,CAAC;QAEjC,cAAS,GAAqB,EAAE,CAAC;QAgE3C,EAAE;QACF,gBAAgB;QAChB,EAAE;QAEF;;WAEG;QACH,kBAAa,GAAG,CAAC,KAAY,EAAE,KAAa,EAAE,EAAE;YAC9C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;YAEtD,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC1C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YAC3B,CAAC;YACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;YAEnC,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,KAAK,EAAY,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAElD,gBAAgB;YAChB,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC3C,IAAI,UAAU,GAAW,EAAE,CAAC;gBAE5B,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAS,EAAE,EAAE;oBACtC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;wBAC/B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;4BACnB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gCACvB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BACxB,CAAC;wBACH,CAAC;wBACD,IACE,IAAI,CAAC,eAAe;4BACpB,QAAQ,CAAC,WAAW;4BACpB,CAAC,QAAQ,CAAC,UAAU,EACpB,CAAC;4BACD,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC;wBAC7B,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEH,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAe,CAAC,WAAW,EAAG,CAAC;oBACvE,QAAQ,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACzB,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC3C,CAAC;YAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACtC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YACxC,CAAC;YAED,wBAAwB;YACxB,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC/B,CAAC,CAAC;IACJ,CAAC;IAxHC,QAAQ;QACN,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAEpB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QAEpB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAe,CAAC,WAAW,EAAE,CAAC;YACtE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;YAC/B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC/B,CAAC;QAED,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QAE1B,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YACvD,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;IAED,MAAM;QACJ,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC5D,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;IACH,CAAC;IAED,EAAE;IACF,YAAY;IACZ,EAAE;IAEF,WAAW,CAAC,QAAwB;QAClC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,cAAc,CAAC,QAAwB;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,EAAE;IACF,cAAc;IACd,EAAE;IAEF,kBAAkB,CAAC,IAAY;QAC7B,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACvC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,KAAK,IAAI;gBAAE,OAAO,MAAM,CAAC;QACpD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CA4DF"}
1
+ {"version":3,"file":"PModelGLTF.js","sourceRoot":"","sources":["../../src/pcomponents/PModelGLTF.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PModelNode.d.ts","sourceRoot":"","sources":["../../src/pcomponents/PModelNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,UAAU,EAAE,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE9D,MAAM,CAAC,OAAO,OAAO,UACnB,SAAQ,cACR,YAAW,cAAc;IAEzB,SAAS,EAAE,QAAQ,GAAG,IAAI,CAAQ;IAElC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI;IASpE,iBAAiB,IAAI,UAAU,GAAG,IAAI;IAUtC,MAAM,IAAI,IAAI;IAMd,QAAQ;IASR,aAAa,IAAI,MAAM,EAAE;IAiBzB,aAAa,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI,EAAE,KAAK,EAAE,QAAQ,GAAG,IAAI,GAAG,IAAI;CAqB1E"}
1
+ {"version":3,"file":"PModelNode.d.ts","sourceRoot":"","sources":["../../src/pcomponents/PModelNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,UAAU,EAAE,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE9D,MAAM,CAAC,OAAO,OAAO,UACnB,SAAQ,cACR,YAAW,cAAc;IAEzB,SAAS,EAAE,QAAQ,GAAG,IAAI,CAAQ;IAElC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI;IASpE,iBAAiB,IAAI,UAAU,GAAG,IAAI;IAItC,MAAM,IAAI,IAAI;IAMd,QAAQ;IASR,aAAa,IAAI,MAAM,EAAE;IAiBzB,aAAa,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI,EAAE,KAAK,EAAE,QAAQ,GAAG,IAAI,GAAG,IAAI;CAqB1E"}
@@ -15,14 +15,7 @@ export default class PModelNode extends PModelNodeBase {
15
15
  return null;
16
16
  }
17
17
  getModelComponent() {
18
- let parent = this.node.parent;
19
- while (parent) {
20
- const model = parent.findComponent("PModelGLTF");
21
- if (model)
22
- return model;
23
- parent = parent.parent;
24
- }
25
- return null;
18
+ return this.findComponent("PModelGLTF");
26
19
  }
27
20
  render() {
28
21
  // Find model
@@ -1 +1 @@
1
- {"version":3,"file":"PModelNode.js","sourceRoot":"","sources":["../../src/pcomponents/PModelNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PModelNode.js","sourceRoot":"","sources":["../../src/pcomponents/PModelNode.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,13 @@
1
1
  import { MeshStandardMaterial } from "three";
2
2
  import { PPhysicalMaterial as PPhysicalMaterialBase } from "@p100-web/core";
3
- import { IImageLoader, PFile } from "@p100-web/core";
4
- export default class PPhysicalMaterial extends PPhysicalMaterialBase implements IImageLoader {
3
+ import { TextureTask, ITextureTaskLoader } from "../assets/ThreeAssetLoader";
4
+ export default class PPhysicalMaterial extends PPhysicalMaterialBase implements ITextureTaskLoader {
5
5
  protected _material: MeshStandardMaterial | null;
6
- _cacheKey: number;
7
6
  setTextureRepeat(): void;
8
7
  getTexture<T>(): T | null;
9
8
  _dispose(unrender: boolean): void;
10
9
  render(): void;
11
10
  callback_setOpacity: (payloadValue: string | null) => void;
12
- onImageLoaded(file: PFile, data: any, cacheKey: number): void;
11
+ onTextureTaskLoaded: (task: TextureTask) => void;
13
12
  }
14
13
  //# sourceMappingURL=PPhysicalMaterial.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PPhysicalMaterial.d.ts","sourceRoot":"","sources":["../../src/pcomponents/PPhysicalMaterial.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,oBAAoB,EAKrB,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAe,YAAY,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAElE,MAAM,CAAC,OAAO,OAAO,iBACnB,SAAQ,qBACR,YAAW,YAAY;IAEvB,SAAS,CAAC,SAAS,EAAE,oBAAoB,GAAG,IAAI,CAAQ;IACxD,SAAS,SAAK;IAEd,gBAAgB;IAYhB,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,IAAI;IAQzB,QAAQ,CAAC,QAAQ,EAAE,OAAO;IA0B1B,MAAM;IAwCN,mBAAmB,GAAI,cAAc,MAAM,GAAG,IAAI,UAKhD;IAMF,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;CAmB9D"}
1
+ {"version":3,"file":"PPhysicalMaterial.d.ts","sourceRoot":"","sources":["../../src/pcomponents/PPhysicalMaterial.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,oBAAoB,EAGrB,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAE5E,OAAyB,EACvB,WAAW,EACX,kBAAkB,EACnB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,CAAC,OAAO,OAAO,iBACnB,SAAQ,qBACR,YAAW,kBAAkB;IAE7B,SAAS,CAAC,SAAS,EAAE,oBAAoB,GAAG,IAAI,CAAQ;IAExD,gBAAgB;IAYhB,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,IAAI;IAQzB,QAAQ,CAAC,QAAQ,EAAE,OAAO;IAmB1B,MAAM;IAwCN,mBAAmB,GAAI,cAAc,MAAM,GAAG,IAAI,UAKhD;IAMF,mBAAmB,GAAI,MAAM,WAAW,KAAG,IAAI,CAc7C;CACH"}
@@ -1,11 +1,9 @@
1
- import { BackSide, ClampToEdgeWrapping, DoubleSide, FrontSide, MeshStandardMaterial, RepeatWrapping, Texture, Vector2, SRGBColorSpace, } from "three";
1
+ import { BackSide, ClampToEdgeWrapping, DoubleSide, FrontSide, MeshStandardMaterial, RepeatWrapping, Vector2, } from "three";
2
2
  import { PPhysicalMaterial as PPhysicalMaterialBase } from "@p100-web/core";
3
- import { FileSubType } from "@p100-web/core";
4
3
  export default class PPhysicalMaterial extends PPhysicalMaterialBase {
5
4
  constructor() {
6
5
  super(...arguments);
7
6
  this._material = null;
8
- this._cacheKey = 0;
9
7
  //
10
8
  // Event Callbacks
11
9
  //
@@ -15,6 +13,23 @@ export default class PPhysicalMaterial extends PPhysicalMaterialBase {
15
13
  this._material.opacity = opacity;
16
14
  }
17
15
  };
16
+ //
17
+ // TextureTask
18
+ //
19
+ this.onTextureTaskLoaded = (task) => {
20
+ if (this._material === null) {
21
+ this.context.error("onTextureLoaded and material was null");
22
+ return;
23
+ }
24
+ if (task.texture === null) {
25
+ this.context.error("onTextureLoaded and texture was null");
26
+ return;
27
+ }
28
+ const texture = task.texture;
29
+ this._material.map = texture;
30
+ this._material.needsUpdate = true;
31
+ this.setTextureRepeat();
32
+ };
18
33
  }
19
34
  setTextureRepeat() {
20
35
  const texture = this._material?.map || null;
@@ -35,12 +50,6 @@ export default class PPhysicalMaterial extends PPhysicalMaterialBase {
35
50
  // PComponent
36
51
  //
37
52
  _dispose(unrender) {
38
- if (this.file_texture) {
39
- this.context
40
- .imageLoader()
41
- .disposeImage(this, this.file_texture, this._cacheKey);
42
- this._cacheKey = 0;
43
- }
44
53
  // Check if we should dispose Material
45
54
  if (this._material) {
46
55
  // Do we have a texture as well?
@@ -82,28 +91,10 @@ export default class PPhysicalMaterial extends PPhysicalMaterialBase {
82
91
  }
83
92
  mesh.renderOrder = this.renderOrder;
84
93
  if (this.file_texture !== null) {
85
- this.context.imageLoader().load(this, this.file_texture);
86
- }
87
- material.needsUpdate = true;
88
- }
89
- //
90
- // IImageLoader
91
- //
92
- onImageLoaded(file, data, cacheKey) {
93
- this._cacheKey = cacheKey;
94
- if (this._material === null) {
95
- this.context.error("onImageLoaded and material was null");
96
- return;
94
+ this.context
95
+ .assetLoader()
96
+ .addTextureTask(this, this.file_texture);
97
97
  }
98
- const texture = new Texture();
99
- texture.userData.id = file._id;
100
- texture.colorSpace = SRGBColorSpace;
101
- texture.image = data;
102
- if (file.subType === FileSubType.Stereo)
103
- texture.repeat = new Vector2(1, 0.5);
104
- this._material.map = texture;
105
- this.setTextureRepeat();
106
- this._material.needsUpdate = true;
107
98
  }
108
99
  }
109
100
  //# sourceMappingURL=PPhysicalMaterial.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PPhysicalMaterial.js","sourceRoot":"","sources":["../../src/pcomponents/PPhysicalMaterial.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PPhysicalMaterial.js","sourceRoot":"","sources":["../../src/pcomponents/PPhysicalMaterial.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,15 @@
1
1
  import { Audio as StaticAudio, PositionalAudio } from "three";
2
2
  import { PSound as PSoundBase } from "@p100-web/core";
3
- import { IAudioLoader, PFile } from "@p100-web/core";
4
- export default class PSound extends PSoundBase implements IAudioLoader {
3
+ import { AudioTask, IAudioTaskLoader } from "../assets/ThreeAssetLoader";
4
+ export default class PSound extends PSoundBase implements IAudioTaskLoader {
5
5
  _staticSound: StaticAudio | null;
6
6
  _positionalSound: PositionalAudio | null;
7
7
  _waitingForPlay: boolean;
8
8
  render(): void;
9
9
  unrender(): void;
10
- onAudioLoaded: (_file: PFile, buffer: AudioBuffer) => void;
10
+ onAudioTaskLoaded: (task: AudioTask) => void;
11
11
  disposeAudio(): void;
12
- loadAudio: () => void;
12
+ loadAudio(): void;
13
13
  onEnded: () => void;
14
14
  callback_onPlay: () => void;
15
15
  callback_onStop: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"PSound.d.ts","sourceRoot":"","sources":["../../src/pcomponents/PSound.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,eAAe,EAAiB,MAAM,OAAO,CAAC;AAC7E,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAErD,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,UAAW,YAAW,YAAY;IACpE,YAAY,EAAE,WAAW,GAAG,IAAI,CAAQ;IACxC,gBAAgB,EAAE,eAAe,GAAG,IAAI,CAAQ;IAChD,eAAe,UAAS;IAExB,MAAM;IAMN,QAAQ;IAUR,aAAa,GAAI,OAAO,KAAK,EAAE,QAAQ,WAAW,UAiBhD;IAEF,YAAY;IAmBZ,SAAS,aAYP;IAMF,OAAO,aAEL;IAEF,eAAe,aAgBb;IAEF,eAAe,aAMb;CACH"}
1
+ {"version":3,"file":"PSound.d.ts","sourceRoot":"","sources":["../../src/pcomponents/PSound.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,eAAe,EAAiB,MAAM,OAAO,CAAC;AAC7E,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAyB,EACvB,SAAS,EACT,gBAAgB,EACjB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,UAAW,YAAW,gBAAgB;IACxE,YAAY,EAAE,WAAW,GAAG,IAAI,CAAQ;IACxC,gBAAgB,EAAE,eAAe,GAAG,IAAI,CAAQ;IAChD,eAAe,UAAS;IAExB,MAAM;IAMN,QAAQ;IAUR,iBAAiB,GAAI,MAAM,SAAS,KAAG,IAAI,CAsB1C;IAED,YAAY;IAmBZ,SAAS;IAoBT,OAAO,aAEL;IAEF,eAAe,aAgBb;IAEF,eAAe,aAMb;CACH"}
@@ -9,7 +9,12 @@ export default class PSound extends PSoundBase {
9
9
  //
10
10
  // LOADING
11
11
  //
12
- this.onAudioLoaded = (_file, buffer) => {
12
+ this.onAudioTaskLoaded = (task) => {
13
+ const buffer = task.buffer;
14
+ if (!buffer) {
15
+ this.context.error("onAudioTaskLoaded: no buffer");
16
+ return;
17
+ }
13
18
  if (this._positionalSound) {
14
19
  const sound = this._positionalSound;
15
20
  sound.setBuffer(buffer);
@@ -28,20 +33,6 @@ export default class PSound extends PSoundBase {
28
33
  this._staticSound = sound;
29
34
  }
30
35
  };
31
- this.loadAudio = () => {
32
- if (this.file_sound !== null) {
33
- const audioListener = this.context.getAudioListener();
34
- if (this.positional) {
35
- this._positionalSound = new PositionalAudio(audioListener);
36
- this.node.set_el(this._positionalSound);
37
- }
38
- else {
39
- this._staticSound = new StaticAudio(audioListener);
40
- this.node.set_el(this._staticSound);
41
- }
42
- this.context.audioLoader().load(this, this.file_sound);
43
- }
44
- };
45
36
  //
46
37
  // EVENTS
47
38
  //
@@ -88,14 +79,13 @@ export default class PSound extends PSoundBase {
88
79
  }
89
80
  }
90
81
  disposeAudio() {
91
- if (this.file_sound !== null) {
92
- this.context.audioLoader().disposeAudio(this, this.file_sound);
93
- }
94
82
  // Positional sound
95
83
  if (this._positionalSound !== null) {
96
84
  if (this._positionalSound.isPlaying)
97
85
  this._positionalSound.stop();
98
86
  this._positionalSound.onEnded = undefined;
87
+ this._positionalSound.disconnect();
88
+ this._positionalSound.setBuffer(null);
99
89
  this._positionalSound = null;
100
90
  }
101
91
  // Static sound
@@ -103,8 +93,26 @@ export default class PSound extends PSoundBase {
103
93
  if (this._staticSound?.isPlaying)
104
94
  this._staticSound.stop();
105
95
  this._staticSound.onEnded = undefined;
96
+ this._staticSound.disconnect();
97
+ this._staticSound.setBuffer(null);
106
98
  this._staticSound = null;
107
99
  }
108
100
  }
101
+ loadAudio() {
102
+ if (this.file_sound !== null) {
103
+ const audioListener = this.context.getAudioListener();
104
+ if (this.positional) {
105
+ this._positionalSound = new PositionalAudio(audioListener);
106
+ this.node.set_el(this._positionalSound);
107
+ }
108
+ else {
109
+ this._staticSound = new StaticAudio(audioListener);
110
+ this.node.set_el(this._staticSound);
111
+ }
112
+ this.context
113
+ .assetLoader()
114
+ .addAudioTask(this, this.file_sound);
115
+ }
116
+ }
109
117
  }
110
118
  //# sourceMappingURL=PSound.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PSound.js","sourceRoot":"","sources":["../../src/pcomponents/PSound.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PSound.js","sourceRoot":"","sources":["../../src/pcomponents/PSound.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,13 @@
1
1
  import { SpriteMaterial } from "three";
2
2
  import { PSprite as PSpriteBase } from "@p100-web/core";
3
- import { IImageLoader, PFile } from "@p100-web/core";
4
- export default class PSprite extends PSpriteBase implements IImageLoader {
3
+ import { TextureTask, ITextureTaskLoader } from "../assets/ThreeAssetLoader";
4
+ export default class PSprite extends PSpriteBase implements ITextureTaskLoader {
5
5
  protected _material_back: SpriteMaterial | null;
6
6
  protected _material_front: SpriteMaterial | null;
7
- _cacheKey: number;
8
7
  private _unrenderMaterial;
9
8
  _unrender(unrender: boolean): void;
10
9
  unrender(): void;
11
10
  render(): void;
12
- onImageLoaded(file: PFile, data: any, cacheKey: number): void;
11
+ onTextureTaskLoaded: (task: TextureTask) => void;
13
12
  }
14
13
  //# sourceMappingURL=PSprite.d.ts.map