@babylonjs/core 7.26.5 → 7.27.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/Animations/animationGroup.d.ts +2 -2
  2. package/Animations/animationGroup.js.map +1 -1
  3. package/Audio/audioSceneComponent.d.ts +5 -9
  4. package/Audio/audioSceneComponent.js.map +1 -1
  5. package/Bones/skeleton.d.ts +2 -2
  6. package/Bones/skeleton.js.map +1 -1
  7. package/Cameras/camera.d.ts +2 -0
  8. package/Cameras/camera.js +2 -0
  9. package/Cameras/camera.js.map +1 -1
  10. package/Engines/WebGPU/webgpuSnapshotRendering.js +3 -0
  11. package/Engines/WebGPU/webgpuSnapshotRendering.js.map +1 -1
  12. package/Engines/abstractEngine.js +2 -2
  13. package/Engines/abstractEngine.js.map +1 -1
  14. package/{abstractScene.d.ts → IAssetContainer.d.ts} +33 -6
  15. package/IAssetContainer.js +2 -0
  16. package/IAssetContainer.js.map +1 -0
  17. package/Layers/effectLayerSceneComponent.d.ts +6 -6
  18. package/Layers/effectLayerSceneComponent.js +3 -3
  19. package/Layers/effectLayerSceneComponent.js.map +1 -1
  20. package/Layers/glowLayer.d.ts +3 -3
  21. package/Layers/glowLayer.js +2 -2
  22. package/Layers/glowLayer.js.map +1 -1
  23. package/Layers/highlightLayer.d.ts +3 -3
  24. package/Layers/highlightLayer.js +2 -2
  25. package/Layers/highlightLayer.js.map +1 -1
  26. package/Layers/layerSceneComponent.d.ts +5 -5
  27. package/Layers/layerSceneComponent.js.map +1 -1
  28. package/LensFlares/lensFlareSystemSceneComponent.d.ts +6 -6
  29. package/LensFlares/lensFlareSystemSceneComponent.js +6 -6
  30. package/LensFlares/lensFlareSystemSceneComponent.js.map +1 -1
  31. package/Lights/Shadows/shadowGeneratorSceneComponent.d.ts +3 -3
  32. package/Lights/Shadows/shadowGeneratorSceneComponent.js.map +1 -1
  33. package/Materials/GreasedLine/greasedLineSimpleMaterial.js +1 -1
  34. package/Materials/GreasedLine/greasedLineSimpleMaterial.js.map +1 -1
  35. package/Materials/Textures/Procedurals/proceduralTextureSceneComponent.d.ts +2 -2
  36. package/Materials/Textures/Procedurals/proceduralTextureSceneComponent.js.map +1 -1
  37. package/Materials/Textures/baseTexture.d.ts +2 -2
  38. package/Materials/Textures/baseTexture.js.map +1 -1
  39. package/Materials/material.d.ts +2 -2
  40. package/Materials/material.decalMapConfiguration.d.ts +1 -1
  41. package/Materials/material.decalMapConfiguration.js +1 -1
  42. package/Materials/material.decalMapConfiguration.js.map +1 -1
  43. package/Materials/material.js.map +1 -1
  44. package/Materials/shaderMaterial.d.ts +5 -0
  45. package/Materials/shaderMaterial.js +7 -0
  46. package/Materials/shaderMaterial.js.map +1 -1
  47. package/Maths/math.color.d.ts +20 -0
  48. package/Maths/math.color.js +41 -12
  49. package/Maths/math.color.js.map +1 -1
  50. package/Meshes/Builders/greasedLineBuilder.d.ts +16 -0
  51. package/Meshes/Builders/greasedLineBuilder.js +1 -1
  52. package/Meshes/Builders/greasedLineBuilder.js.map +1 -1
  53. package/Meshes/Builders/groundBuilder.d.ts +1 -0
  54. package/Meshes/Builders/groundBuilder.js +2 -2
  55. package/Meshes/Builders/groundBuilder.js.map +1 -1
  56. package/Meshes/GreasedLine/greasedLineBaseMesh.js +1 -1
  57. package/Meshes/GreasedLine/greasedLineBaseMesh.js.map +1 -1
  58. package/Meshes/GreasedLine/greasedLineMesh.js +1 -1
  59. package/Meshes/GreasedLine/greasedLineMesh.js.map +1 -1
  60. package/Meshes/GreasedLine/greasedLineRibbonMesh.js +1 -1
  61. package/Meshes/GreasedLine/greasedLineRibbonMesh.js.map +1 -1
  62. package/Meshes/Node/Blocks/Set/setPositionsBlock.d.ts +3 -0
  63. package/Meshes/Node/Blocks/Set/setPositionsBlock.js +86 -1
  64. package/Meshes/Node/Blocks/Set/setPositionsBlock.js.map +1 -1
  65. package/Meshes/Node/Blocks/Sources/nullBlock.d.ts +4 -0
  66. package/Meshes/Node/Blocks/Sources/nullBlock.js +8 -0
  67. package/Meshes/Node/Blocks/Sources/nullBlock.js.map +1 -1
  68. package/Meshes/Node/Blocks/Sources/planeBlock.d.ts +13 -0
  69. package/Meshes/Node/Blocks/Sources/planeBlock.js +41 -3
  70. package/Meshes/Node/Blocks/Sources/planeBlock.js.map +1 -1
  71. package/Meshes/Node/Blocks/debugBlock.js +1 -1
  72. package/Meshes/Node/Blocks/debugBlock.js.map +1 -1
  73. package/Meshes/Node/Blocks/geometryElbowBlock.js +1 -1
  74. package/Meshes/Node/Blocks/geometryElbowBlock.js.map +1 -1
  75. package/Meshes/Node/Blocks/geometryOptimizeBlock.d.ts +4 -0
  76. package/Meshes/Node/Blocks/geometryOptimizeBlock.js +47 -1
  77. package/Meshes/Node/Blocks/geometryOptimizeBlock.js.map +1 -1
  78. package/Meshes/geometry.d.ts +2 -2
  79. package/Meshes/geometry.js.map +1 -1
  80. package/Meshes/meshUVSpaceRenderer.d.ts +3 -2
  81. package/Meshes/meshUVSpaceRenderer.js +15 -3
  82. package/Meshes/meshUVSpaceRenderer.js.map +1 -1
  83. package/Misc/greasedLineTools.d.ts +3 -1
  84. package/Misc/greasedLineTools.js +17 -2
  85. package/Misc/greasedLineTools.js.map +1 -1
  86. package/Misc/index.d.ts +2 -0
  87. package/Misc/index.js +2 -0
  88. package/Misc/index.js.map +1 -1
  89. package/Misc/screenshotTools.js +3 -2
  90. package/Misc/screenshotTools.js.map +1 -1
  91. package/Misc/textureTools.js +20 -4
  92. package/Misc/textureTools.js.map +1 -1
  93. package/Morph/morphTargetManager.d.ts +2 -2
  94. package/Morph/morphTargetManager.js.map +1 -1
  95. package/PostProcesses/RenderPipeline/Pipelines/ssrRenderingPipeline.d.ts +3 -1
  96. package/PostProcesses/RenderPipeline/Pipelines/ssrRenderingPipeline.js +49 -10
  97. package/PostProcesses/RenderPipeline/Pipelines/ssrRenderingPipeline.js.map +1 -1
  98. package/PostProcesses/postProcess.d.ts +2 -2
  99. package/PostProcesses/postProcess.js.map +1 -1
  100. package/Probes/reflectionProbe.d.ts +5 -5
  101. package/Probes/reflectionProbe.js +3 -3
  102. package/Probes/reflectionProbe.js.map +1 -1
  103. package/Rendering/IBLShadows/iblShadowsVoxelTracingPass.js +8 -2
  104. package/Rendering/IBLShadows/iblShadowsVoxelTracingPass.js.map +1 -1
  105. package/Rendering/fluidRenderer/fluidRenderer.d.ts +2 -2
  106. package/Rendering/fluidRenderer/fluidRenderer.js.map +1 -1
  107. package/Rendering/geometryBufferRenderer.d.ts +30 -0
  108. package/Rendering/geometryBufferRenderer.js +100 -18
  109. package/Rendering/geometryBufferRenderer.js.map +1 -1
  110. package/Rendering/prePassRendererSceneComponent.d.ts +2 -2
  111. package/Rendering/prePassRendererSceneComponent.js.map +1 -1
  112. package/Rendering/screenSpaceReflections2Configuration.d.ts +4 -0
  113. package/Rendering/screenSpaceReflections2Configuration.js +6 -2
  114. package/Rendering/screenSpaceReflections2Configuration.js.map +1 -1
  115. package/Rendering/subSurfaceSceneComponent.d.ts +2 -2
  116. package/Rendering/subSurfaceSceneComponent.js.map +1 -1
  117. package/Shaders/ShadersInclude/screenSpaceRayTrace.js +28 -3
  118. package/Shaders/ShadersInclude/screenSpaceRayTrace.js.map +1 -1
  119. package/Shaders/geometry.fragment.js +4 -5
  120. package/Shaders/geometry.fragment.js.map +1 -1
  121. package/Shaders/iblShadowVoxelTracing.fragment.js +12 -2
  122. package/Shaders/iblShadowVoxelTracing.fragment.js.map +1 -1
  123. package/Shaders/lod.fragment.js +2 -2
  124. package/Shaders/lod.fragment.js.map +1 -1
  125. package/Shaders/lodCube.fragment.js +2 -2
  126. package/Shaders/lodCube.fragment.js.map +1 -1
  127. package/Shaders/screenSpaceReflection2.fragment.js +7 -2
  128. package/Shaders/screenSpaceReflection2.fragment.js.map +1 -1
  129. package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js +8 -1
  130. package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js.map +1 -1
  131. package/Shaders/spriteMap.fragment.js +18 -6
  132. package/Shaders/spriteMap.fragment.js.map +1 -1
  133. package/Shaders/spriteMap.vertex.js +1 -1
  134. package/Shaders/spriteMap.vertex.js.map +1 -1
  135. package/ShadersWGSL/ShadersInclude/screenSpaceRayTrace.js +30 -4
  136. package/ShadersWGSL/ShadersInclude/screenSpaceRayTrace.js.map +1 -1
  137. package/ShadersWGSL/geometry.fragment.js +6 -7
  138. package/ShadersWGSL/geometry.fragment.js.map +1 -1
  139. package/ShadersWGSL/lod.fragment.d.ts +5 -0
  140. package/ShadersWGSL/lod.fragment.js +11 -0
  141. package/ShadersWGSL/lod.fragment.js.map +1 -0
  142. package/ShadersWGSL/lodCube.fragment.d.ts +5 -0
  143. package/ShadersWGSL/lodCube.fragment.js +30 -0
  144. package/ShadersWGSL/lodCube.fragment.js.map +1 -0
  145. package/ShadersWGSL/screenSpaceReflection2.fragment.js +7 -2
  146. package/ShadersWGSL/screenSpaceReflection2.fragment.js.map +1 -1
  147. package/ShadersWGSL/screenSpaceReflection2BlurCombiner.fragment.js +8 -1
  148. package/ShadersWGSL/screenSpaceReflection2BlurCombiner.fragment.js.map +1 -1
  149. package/Sprites/spriteMap.d.ts +16 -0
  150. package/Sprites/spriteMap.js +17 -0
  151. package/Sprites/spriteMap.js.map +1 -1
  152. package/assetContainer.d.ts +143 -3
  153. package/assetContainer.js +129 -8
  154. package/assetContainer.js.map +1 -1
  155. package/index.d.ts +0 -1
  156. package/index.js +0 -1
  157. package/index.js.map +1 -1
  158. package/node.d.ts +2 -2
  159. package/node.js.map +1 -1
  160. package/package.json +1 -1
  161. package/scene.d.ts +99 -14
  162. package/scene.js +114 -23
  163. package/scene.js.map +1 -1
  164. package/sceneComponent.d.ts +3 -3
  165. package/sceneComponent.js.map +1 -1
  166. package/abstractScene.js +0 -117
  167. package/abstractScene.js.map +0 -1
@@ -1,15 +1,155 @@
1
- import { AbstractScene } from "./abstractScene";
2
1
  import type { Scene } from "./scene";
3
2
  import { Mesh } from "./Meshes/mesh";
3
+ import { TransformNode } from "./Meshes/transformNode";
4
4
  import type { Skeleton } from "./Bones/skeleton";
5
5
  import type { AnimationGroup } from "./Animations/animationGroup";
6
6
  import type { Animatable } from "./Animations/animatable";
7
+ import { AbstractMesh } from "./Meshes/abstractMesh";
8
+ import type { MultiMaterial } from "./Materials/multiMaterial";
9
+ import type { Material } from "./Materials/material";
7
10
  import type { Nullable } from "./types";
8
11
  import type { Node } from "./node";
12
+ import { Light } from "./Lights/light";
13
+ import { Camera } from "./Cameras/camera";
14
+ import type { IParticleSystem } from "./Particles/IParticleSystem";
15
+ import type { IAssetContainer } from "./IAssetContainer";
16
+ import type { Animation } from "./Animations/animation";
17
+ import type { MorphTargetManager } from "./Morph/morphTargetManager";
18
+ import type { Geometry } from "./Meshes/geometry";
19
+ import type { AbstractActionManager } from "./Actions/abstractActionManager";
20
+ import type { BaseTexture } from "./Materials/Textures/baseTexture";
21
+ import type { PostProcess } from "./PostProcesses/postProcess";
22
+ import type { Sound } from "./Audio/sound";
23
+ import type { Layer } from "./Layers/layer";
24
+ import type { EffectLayer } from "./Layers/effectLayer";
25
+ import type { ReflectionProbe } from "./Probes/reflectionProbe";
26
+ import type { LensFlareSystem } from "./LensFlares/lensFlareSystem";
27
+ import type { ProceduralTexture } from "./Materials/Textures/Procedurals/proceduralTexture";
28
+ /**
29
+ * Root class for AssetContainer and KeepAssets
30
+ */
31
+ export declare class AbstractAssetContainer implements IAssetContainer {
32
+ /**
33
+ * Gets the list of root nodes (ie. nodes with no parent)
34
+ */
35
+ rootNodes: Node[];
36
+ /** All of the cameras added to this scene
37
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/cameras
38
+ */
39
+ cameras: Camera[];
40
+ /**
41
+ * All of the lights added to this scene
42
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/lights/lights_introduction
43
+ */
44
+ lights: Light[];
45
+ /**
46
+ * All of the (abstract) meshes added to this scene
47
+ */
48
+ meshes: AbstractMesh[];
49
+ /**
50
+ * The list of skeletons added to the scene
51
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/mesh/bonesSkeletons
52
+ */
53
+ skeletons: Skeleton[];
54
+ /**
55
+ * All of the particle systems added to this scene
56
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/particles/particle_system/particle_system_intro
57
+ */
58
+ particleSystems: IParticleSystem[];
59
+ /**
60
+ * Gets a list of Animations associated with the scene
61
+ */
62
+ animations: Animation[];
63
+ /**
64
+ * All of the animation groups added to this scene
65
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/animation/groupAnimations
66
+ */
67
+ animationGroups: AnimationGroup[];
68
+ /**
69
+ * All of the multi-materials added to this scene
70
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/materials/using/multiMaterials
71
+ */
72
+ multiMaterials: MultiMaterial[];
73
+ /**
74
+ * All of the materials added to this scene
75
+ * In the context of a Scene, it is not supposed to be modified manually.
76
+ * Any addition or removal should be done using the addMaterial and removeMaterial Scene methods.
77
+ * Note also that the order of the Material within the array is not significant and might change.
78
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/materials/using/materials_introduction
79
+ */
80
+ materials: Material[];
81
+ /**
82
+ * The list of morph target managers added to the scene
83
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/mesh/dynamicMeshMorph
84
+ */
85
+ morphTargetManagers: MorphTargetManager[];
86
+ /**
87
+ * The list of geometries used in the scene.
88
+ */
89
+ geometries: Geometry[];
90
+ /**
91
+ * All of the transform nodes added to this scene
92
+ * In the context of a Scene, it is not supposed to be modified manually.
93
+ * Any addition or removal should be done using the addTransformNode and removeTransformNode Scene methods.
94
+ * Note also that the order of the TransformNode within the array is not significant and might change.
95
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/mesh/transforms/parent_pivot/transform_node
96
+ */
97
+ transformNodes: TransformNode[];
98
+ /**
99
+ * ActionManagers available on the scene.
100
+ * @deprecated
101
+ */
102
+ actionManagers: AbstractActionManager[];
103
+ /**
104
+ * Textures to keep.
105
+ */
106
+ textures: BaseTexture[];
107
+ /** @internal */
108
+ protected _environmentTexture: Nullable<BaseTexture>;
109
+ /**
110
+ * Texture used in all pbr material as the reflection texture.
111
+ * As in the majority of the scene they are the same (exception for multi room and so on),
112
+ * this is easier to reference from here than from all the materials.
113
+ */
114
+ get environmentTexture(): Nullable<BaseTexture>;
115
+ set environmentTexture(value: Nullable<BaseTexture>);
116
+ /**
117
+ * The list of postprocesses added to the scene
118
+ */
119
+ postProcesses: PostProcess[];
120
+ /**
121
+ * The list of sounds
122
+ */
123
+ sounds: Nullable<Sound[]>;
124
+ /**
125
+ * The list of effect layers added to the scene
126
+ */
127
+ effectLayers: EffectLayer[];
128
+ /**
129
+ * The list of layers added to the scene
130
+ */
131
+ layers: Layer[];
132
+ /**
133
+ * The list of reflection probes added to the scene
134
+ */
135
+ reflectionProbes: ReflectionProbe[];
136
+ /**
137
+ * The list of lens flare systems added to the scene
138
+ */
139
+ lensFlareSystems: LensFlareSystem[];
140
+ /**
141
+ * The list of procedural textures added to the scene
142
+ */
143
+ proceduralTextures: ProceduralTexture[];
144
+ /**
145
+ * @returns all meshes, lights, cameras, transformNodes and bones
146
+ */
147
+ getNodes(): Array<Node>;
148
+ }
9
149
  /**
10
150
  * Set of assets to keep when moving a scene into an asset container.
11
151
  */
12
- export declare class KeepAssets extends AbstractScene {
152
+ export declare class KeepAssets extends AbstractAssetContainer {
13
153
  }
14
154
  /**
15
155
  * Class used to store the output of the AssetContainer.instantiateAllMeshesToScene function
@@ -35,7 +175,7 @@ export declare class InstantiatedEntries {
35
175
  /**
36
176
  * Container with a set of assets that can be added or removed from a scene.
37
177
  */
38
- export declare class AssetContainer extends AbstractScene {
178
+ export declare class AssetContainer extends AbstractAssetContainer {
39
179
  private _wasAddedToScene;
40
180
  private _onContextRestoredObserver;
41
181
  /**
package/assetContainer.js CHANGED
@@ -1,4 +1,3 @@
1
- import { AbstractScene } from "./abstractScene.js";
2
1
  import { Mesh } from "./Meshes/mesh.js";
3
2
  import { TransformNode } from "./Meshes/transformNode.js";
4
3
  import { AbstractMesh } from "./Meshes/abstractMesh.js";
@@ -8,10 +7,137 @@ import { InstancedMesh } from "./Meshes/instancedMesh.js";
8
7
  import { Light } from "./Lights/light.js";
9
8
  import { Camera } from "./Cameras/camera.js";
10
9
  import { Tools } from "./Misc/tools.js";
10
+ /**
11
+ * Root class for AssetContainer and KeepAssets
12
+ */
13
+ export class AbstractAssetContainer {
14
+ constructor() {
15
+ /**
16
+ * Gets the list of root nodes (ie. nodes with no parent)
17
+ */
18
+ this.rootNodes = [];
19
+ /** All of the cameras added to this scene
20
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/cameras
21
+ */
22
+ this.cameras = [];
23
+ /**
24
+ * All of the lights added to this scene
25
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/lights/lights_introduction
26
+ */
27
+ this.lights = [];
28
+ /**
29
+ * All of the (abstract) meshes added to this scene
30
+ */
31
+ this.meshes = [];
32
+ /**
33
+ * The list of skeletons added to the scene
34
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/mesh/bonesSkeletons
35
+ */
36
+ this.skeletons = [];
37
+ /**
38
+ * All of the particle systems added to this scene
39
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/particles/particle_system/particle_system_intro
40
+ */
41
+ this.particleSystems = [];
42
+ /**
43
+ * Gets a list of Animations associated with the scene
44
+ */
45
+ this.animations = [];
46
+ /**
47
+ * All of the animation groups added to this scene
48
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/animation/groupAnimations
49
+ */
50
+ this.animationGroups = [];
51
+ /**
52
+ * All of the multi-materials added to this scene
53
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/materials/using/multiMaterials
54
+ */
55
+ this.multiMaterials = [];
56
+ /**
57
+ * All of the materials added to this scene
58
+ * In the context of a Scene, it is not supposed to be modified manually.
59
+ * Any addition or removal should be done using the addMaterial and removeMaterial Scene methods.
60
+ * Note also that the order of the Material within the array is not significant and might change.
61
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/materials/using/materials_introduction
62
+ */
63
+ this.materials = [];
64
+ /**
65
+ * The list of morph target managers added to the scene
66
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/mesh/dynamicMeshMorph
67
+ */
68
+ this.morphTargetManagers = [];
69
+ /**
70
+ * The list of geometries used in the scene.
71
+ */
72
+ this.geometries = [];
73
+ /**
74
+ * All of the transform nodes added to this scene
75
+ * In the context of a Scene, it is not supposed to be modified manually.
76
+ * Any addition or removal should be done using the addTransformNode and removeTransformNode Scene methods.
77
+ * Note also that the order of the TransformNode within the array is not significant and might change.
78
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/mesh/transforms/parent_pivot/transform_node
79
+ */
80
+ this.transformNodes = [];
81
+ /**
82
+ * ActionManagers available on the scene.
83
+ * @deprecated
84
+ */
85
+ this.actionManagers = [];
86
+ /**
87
+ * Textures to keep.
88
+ */
89
+ this.textures = [];
90
+ /** @internal */
91
+ this._environmentTexture = null;
92
+ /**
93
+ * The list of postprocesses added to the scene
94
+ */
95
+ this.postProcesses = [];
96
+ /**
97
+ * The list of sounds
98
+ */
99
+ this.sounds = null;
100
+ /**
101
+ * The list of effect layers added to the scene
102
+ */
103
+ this.effectLayers = [];
104
+ /**
105
+ * The list of layers added to the scene
106
+ */
107
+ this.layers = [];
108
+ /**
109
+ * The list of reflection probes added to the scene
110
+ */
111
+ this.reflectionProbes = [];
112
+ }
113
+ /**
114
+ * Texture used in all pbr material as the reflection texture.
115
+ * As in the majority of the scene they are the same (exception for multi room and so on),
116
+ * this is easier to reference from here than from all the materials.
117
+ */
118
+ get environmentTexture() {
119
+ return this._environmentTexture;
120
+ }
121
+ set environmentTexture(value) {
122
+ this._environmentTexture = value;
123
+ }
124
+ /**
125
+ * @returns all meshes, lights, cameras, transformNodes and bones
126
+ */
127
+ getNodes() {
128
+ let nodes = [];
129
+ nodes = nodes.concat(this.meshes);
130
+ nodes = nodes.concat(this.lights);
131
+ nodes = nodes.concat(this.cameras);
132
+ nodes = nodes.concat(this.transformNodes); // dummies
133
+ this.skeletons.forEach((skeleton) => (nodes = nodes.concat(skeleton.bones)));
134
+ return nodes;
135
+ }
136
+ }
11
137
  /**
12
138
  * Set of assets to keep when moving a scene into an asset container.
13
139
  */
14
- export class KeepAssets extends AbstractScene {
140
+ export class KeepAssets extends AbstractAssetContainer {
15
141
  }
16
142
  /**
17
143
  * Class used to store the output of the AssetContainer.instantiateAllMeshesToScene function
@@ -52,7 +178,7 @@ export class InstantiatedEntries {
52
178
  /**
53
179
  * Container with a set of assets that can be added or removed from a scene.
54
180
  */
55
- export class AssetContainer extends AbstractScene {
181
+ export class AssetContainer extends AbstractAssetContainer {
56
182
  /**
57
183
  * Instantiates an AssetContainer.
58
184
  * @param scene The scene the AssetContainer belongs to.
@@ -65,12 +191,7 @@ export class AssetContainer extends AbstractScene {
65
191
  return;
66
192
  }
67
193
  this.scene = scene;
68
- this["sounds"] = [];
69
- this["effectLayers"] = [];
70
- this["layers"] = [];
71
- this["lensFlareSystems"] = [];
72
194
  this["proceduralTextures"] = [];
73
- this["reflectionProbes"] = [];
74
195
  scene.onDisposeObservable.add(() => {
75
196
  if (!this._wasAddedToScene) {
76
197
  this.dispose();