@galacean/engine-core 1.1.0-beta.4 → 1.1.0-beta.43

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 (182) hide show
  1. package/dist/main.js +8316 -7260
  2. package/dist/main.js.map +1 -1
  3. package/dist/miniprogram.js +8316 -7260
  4. package/dist/module.js +8305 -7262
  5. package/dist/module.js.map +1 -1
  6. package/package.json +3 -3
  7. package/types/2d/atlas/types.d.ts +5 -0
  8. package/types/2d/enums/SpriteModifyFlags.d.ts +2 -1
  9. package/types/2d/text/TextRenderer.d.ts +1 -0
  10. package/types/Background.d.ts +8 -0
  11. package/types/Camera.d.ts +1 -1
  12. package/types/Canvas.d.ts +14 -5
  13. package/types/Component.d.ts +1 -1
  14. package/types/DisorderedArray.d.ts +1 -1
  15. package/types/Scene.d.ts +6 -0
  16. package/types/animation/AnimatorLayerMask.d.ts +45 -0
  17. package/types/animation/LayerPathMask.d.ts +16 -0
  18. package/types/animation/animationCurve/AnimationStringCurve.d.ts +7 -0
  19. package/types/asset/AssetPromise.d.ts +1 -0
  20. package/types/asset/ResourceManager.d.ts +0 -1
  21. package/types/index.d.ts +1 -1
  22. package/types/mesh/PrimitiveMesh.d.ts +22 -0
  23. package/types/mesh/SkinnedMeshRenderer.d.ts +1 -1
  24. package/types/particle/ParticleGenerator.d.ts +0 -2
  25. package/types/particle/index.d.ts +10 -0
  26. package/types/particle/modules/EmissionModule.d.ts +0 -1
  27. package/types/particle/modules/MainModule.d.ts +0 -1
  28. package/types/particle/modules/ParticleGeneratorModule.d.ts +0 -1
  29. package/types/particle/modules/ParticleGradient.d.ts +38 -18
  30. package/types/physics/Collider.d.ts +3 -1
  31. package/types/physics/PhysicsManager.d.ts +5 -22
  32. package/types/physics/PhysicsMaterial.d.ts +1 -0
  33. package/types/physics/joint/HingeJoint.d.ts +1 -1
  34. package/types/physics/joint/Joint.d.ts +4 -3
  35. package/types/physics/shape/ColliderShape.d.ts +2 -1
  36. package/types/physics/shape/SphereColliderShape.d.ts +1 -0
  37. package/types/shader/Shader.d.ts +1 -1
  38. package/types/xr/XRManager.d.ts +3 -29
  39. package/types/xr/XRPose.d.ts +15 -0
  40. package/types/xr/feature/XRFeature.d.ts +13 -26
  41. package/types/xr/feature/XRFeatureManager.d.ts +65 -0
  42. package/types/xr/feature/XRFeatureType.d.ts +13 -0
  43. package/types/xr/feature/camera/XRCameraManager.d.ts +26 -0
  44. package/types/xr/feature/hitTest/TrackableType.d.ts +10 -0
  45. package/types/xr/feature/hitTest/XRHitResult.d.ts +19 -0
  46. package/types/xr/feature/hitTest/XRHitTest.d.ts +39 -0
  47. package/types/xr/feature/hitTest/XRHitTestManager.d.ts +38 -0
  48. package/types/xr/feature/hitTest/XRHitTestType.d.ts +16 -0
  49. package/types/xr/feature/movementTracking/XRMovementTracking.d.ts +18 -0
  50. package/types/xr/feature/movementTracking/XRMovementTrackingManager.d.ts +10 -0
  51. package/types/xr/feature/movementTracking/XRMovementTrackingMode.d.ts +5 -0
  52. package/types/xr/feature/trackable/XRRequestTrackingState.d.ts +11 -0
  53. package/types/xr/feature/trackable/XRTrackableFeature.d.ts +38 -0
  54. package/types/xr/feature/trackable/XRTrackableManager.d.ts +41 -0
  55. package/types/xr/feature/trackable/anchor/XRAnchor.d.ts +6 -0
  56. package/types/xr/feature/trackable/anchor/XRAnchorTracking.d.ts +37 -0
  57. package/types/xr/feature/trackable/anchor/XRAnchorTrackingManager.d.ts +20 -0
  58. package/types/xr/feature/trackable/anchor/XRRequestAnchor.d.ts +15 -0
  59. package/types/xr/feature/trackable/image/XRImageTracking.d.ts +24 -0
  60. package/types/xr/feature/trackable/image/XRImageTrackingManager.d.ts +31 -0
  61. package/types/xr/feature/trackable/image/XRReferenceImage.d.ts +11 -0
  62. package/types/xr/feature/trackable/image/XRRequestImage.d.ts +13 -0
  63. package/types/xr/feature/trackable/image/XRTrackedImage.d.ts +8 -0
  64. package/types/xr/feature/trackable/plane/XRPlaneMode.d.ts +13 -0
  65. package/types/xr/feature/trackable/plane/XRPlaneTracking.d.ts +23 -0
  66. package/types/xr/feature/trackable/plane/XRPlaneTrackingManager.d.ts +11 -0
  67. package/types/xr/feature/trackable/plane/XRRequestPlane.d.ts +12 -0
  68. package/types/xr/feature/trackable/plane/XRTrackedPlane.d.ts +20 -0
  69. package/types/xr/index.d.ts +25 -18
  70. package/types/xr/input/XRCamera.d.ts +15 -0
  71. package/types/xr/input/XRController.d.ts +38 -0
  72. package/types/xr/input/XRControllerPoseMode.d.ts +9 -0
  73. package/types/xr/input/XRInput.d.ts +8 -0
  74. package/types/xr/input/XRInputButton.d.ts +19 -0
  75. package/types/xr/input/XRInputEvent.d.ts +24 -0
  76. package/types/xr/input/XRInputEventType.d.ts +11 -0
  77. package/types/xr/input/XRInputManager.d.ts +31 -0
  78. package/types/xr/input/XRInputType.d.ts +23 -0
  79. package/types/xr/input/XRTargetRayMode.d.ts +12 -0
  80. package/types/xr/input/XRTrackedInputDevice.d.ts +21 -0
  81. package/types/xr/input/XRTrackedUpdateFlag.d.ts +11 -0
  82. package/types/xr/input/XRTrackingState.d.ts +11 -0
  83. package/types/xr/session/XRSessionManager.d.ts +45 -0
  84. package/types/xr/session/XRSessionMode.d.ts +8 -0
  85. package/types/xr/session/XRSessionState.d.ts +13 -0
  86. package/types/RenderPipeline/MeshRenderElement.d.ts +0 -19
  87. package/types/RenderPipeline/RenderElementX.d.ts +0 -12
  88. package/types/RenderPipeline/SpriteElement.d.ts +0 -15
  89. package/types/RenderPipeline/SpriteMaskElement.d.ts +0 -12
  90. package/types/RenderPipeline/TextRenderElement.d.ts +0 -8
  91. package/types/SafeLoopArray.d.ts +0 -37
  92. package/types/Ticker.d.ts +0 -30
  93. package/types/asset/IRefObject.d.ts +0 -2
  94. package/types/asset/RefObject.d.ts +0 -27
  95. package/types/base/Event.d.ts +0 -24
  96. package/types/base/Util.d.ts +0 -14
  97. package/types/particle/ParticleData.d.ts +0 -1
  98. package/types/particle/ParticleMesh.d.ts +0 -289
  99. package/types/particle/ParticleShaderDeclaration.d.ts +0 -1
  100. package/types/particle/ParticleShaderMacro.d.ts +0 -1
  101. package/types/particle/ParticleShaderProperty.d.ts +0 -1
  102. package/types/particle/ParticleSystem.d.ts +0 -41
  103. package/types/particle/ParticleVertexElements.d.ts +0 -1
  104. package/types/particle/ParticleVertexUtils.d.ts +0 -1
  105. package/types/particle/enum/ParticleAnimationRowMode.d.ts +0 -9
  106. package/types/particle/enum/ParticleAnimationType.d.ts +0 -9
  107. package/types/particle/enum/ParticleCurveMode.d.ts +0 -13
  108. package/types/particle/enum/ParticleGradientMode.d.ts +0 -13
  109. package/types/particle/enum/ParticleRenderMode.d.ts +0 -17
  110. package/types/particle/enum/ParticleScaleMode.d.ts +0 -11
  111. package/types/particle/enum/ParticleShapeMultiModeValue.d.ts +0 -9
  112. package/types/particle/enum/ParticleShapeType.d.ts +0 -15
  113. package/types/particle/enum/ParticleSimulationSpace.d.ts +0 -9
  114. package/types/particle/enum/index.d.ts +0 -9
  115. package/types/particle/module/Burst.d.ts +0 -38
  116. package/types/particle/module/ColorGradient.d.ts +0 -75
  117. package/types/particle/module/ColorOverLifetimeModule.d.ts +0 -20
  118. package/types/particle/module/EmissionModule.d.ts +0 -63
  119. package/types/particle/module/FrameOverTime.d.ts +0 -73
  120. package/types/particle/module/ParticleCurve.d.ts +0 -37
  121. package/types/particle/module/RotationOverLifetimeModule.d.ts +0 -21
  122. package/types/particle/module/RotationVelocityGradient.d.ts +0 -184
  123. package/types/particle/module/SizeGradient.d.ts +0 -151
  124. package/types/particle/module/SizeOverLifetimeModule.d.ts +0 -21
  125. package/types/particle/module/StartFrame.d.ts +0 -46
  126. package/types/particle/module/TextureSheetAnimationModule.d.ts +0 -37
  127. package/types/particle/module/VelocityGradient.d.ts +0 -110
  128. package/types/particle/module/VelocityOverLifetimeModule.d.ts +0 -22
  129. package/types/particle/module/index.d.ts +0 -15
  130. package/types/particle/module/shape/BaseShape.d.ts +0 -26
  131. package/types/particle/module/shape/BoxShape.d.ts +0 -20
  132. package/types/particle/module/shape/CircleShape.d.ts +0 -27
  133. package/types/particle/module/shape/ConeShape.d.ts +0 -35
  134. package/types/particle/module/shape/HemisphereShape.d.ts +0 -23
  135. package/types/particle/module/shape/ShapeUtils.d.ts +0 -1
  136. package/types/particle/module/shape/SphereShape.d.ts +0 -23
  137. package/types/particle/module/shape/index.d.ts +0 -5
  138. package/types/particle/modules/ShapeModule.d.ts +0 -9
  139. package/types/particle/modules/shape/enums/ParticleShapeMultiModeValue.d.ts +0 -9
  140. package/types/particle/moudules/Burst.d.ts +0 -25
  141. package/types/particle/moudules/Emission.d.ts +0 -47
  142. package/types/particle/moudules/EmissionModule.d.ts +0 -49
  143. package/types/particle/moudules/MainModule.d.ts +0 -59
  144. package/types/particle/moudules/ParticleCurve.d.ts +0 -27
  145. package/types/particle/moudules/ParticleGradient.d.ts +0 -28
  146. package/types/particle/moudules/ShapeModule.d.ts +0 -7
  147. package/types/particle/moudules/shape/BaseShape.d.ts +0 -28
  148. package/types/particle/moudules/shape/BoxShape.d.ts +0 -20
  149. package/types/particle/moudules/shape/CircleShape.d.ts +0 -27
  150. package/types/particle/moudules/shape/ConeShape.d.ts +0 -35
  151. package/types/particle/moudules/shape/HemisphereShape.d.ts +0 -23
  152. package/types/particle/moudules/shape/ShapeUtils.d.ts +0 -1
  153. package/types/particle/moudules/shape/SphereShape.d.ts +0 -23
  154. package/types/particle/moudules/shape/enums/ParticleShapeMultiModeValue.d.ts +0 -9
  155. package/types/particle/moudules/shape/enums/ParticleShapeType.d.ts +0 -15
  156. package/types/particle/moudules/shape/index.d.ts +0 -5
  157. package/types/shadow/PipelinePass.d.ts +0 -16
  158. package/types/utils/BoolUpdateFlag.d.ts +0 -12
  159. package/types/utils/DisorderedArray.d.ts +0 -18
  160. package/types/utils/UpdateFlag.d.ts +0 -20
  161. package/types/utils/UpdateFlagManager.d.ts +0 -1
  162. package/types/utils/Utils.d.ts +0 -31
  163. package/types/xr/component/XRPoseDriver.d.ts +0 -10
  164. package/types/xr/data/XRCamera.d.ts +0 -6
  165. package/types/xr/data/XRDevice.d.ts +0 -9
  166. package/types/xr/data/XRHandle.d.ts +0 -10
  167. package/types/xr/enum/EnumXRButton.d.ts +0 -5
  168. package/types/xr/enum/EnumXRDevicePhase.d.ts +0 -4
  169. package/types/xr/enum/EnumXRFeature.d.ts +0 -9
  170. package/types/xr/enum/EnumXRInputSource.d.ts +0 -8
  171. package/types/xr/enum/EnumXRMode.d.ts +0 -7
  172. package/types/xr/enum/EnumXRSubsystem.d.ts +0 -4
  173. package/types/xr/enum/EnumXRTrackingMode.d.ts +0 -7
  174. package/types/xr/feature/XRCameraManager.d.ts +0 -21
  175. package/types/xr/feature/XRImageTrackManager.d.ts +0 -10
  176. package/types/xr/feature/XRInputManager.d.ts +0 -16
  177. package/types/xr/provider/XRProvider.d.ts +0 -19
  178. package/types/xr/subsystem/XRInputSubsystem.d.ts +0 -5
  179. package/types/xr/subsystem/XRSubsystem.d.ts +0 -30
  180. /package/types/{2d/data/RenderData2D.d.ts → enums/CameraType.d.ts} +0 -0
  181. /package/types/{animation/internal/AnimationCurveOwnerLayerData.d.ts → xr/feature/trackable/XRRequestTracking.d.ts} +0 -0
  182. /package/types/{graphic/PrimitiveVertexBinding.d.ts → xr/feature/trackable/XRTracked.d.ts} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@galacean/engine-core",
3
- "version": "1.1.0-beta.4",
3
+ "version": "1.1.0-beta.43",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
@@ -15,10 +15,10 @@
15
15
  "types/**/*"
16
16
  ],
17
17
  "dependencies": {
18
- "@galacean/engine-math": "1.1.0-beta.4"
18
+ "@galacean/engine-math": "1.1.0-beta.43"
19
19
  },
20
20
  "devDependencies": {
21
- "@galacean/engine-design": "1.1.0-beta.4"
21
+ "@galacean/engine-design": "1.1.0-beta.43"
22
22
  },
23
23
  "scripts": {
24
24
  "b:types": "tsc"
@@ -1,3 +1,4 @@
1
+ import { AssetType } from "../../asset/AssetType";
1
2
  import { TextureFilterMode, TextureFormat, TextureWrapMode } from "../../texture";
2
3
  /**
3
4
  * The original data type of the atlas.
@@ -16,6 +17,8 @@ export interface AtlasConfig {
16
17
  atlasItems: {
17
18
  /** The url of the sub atlas. */
18
19
  img: string;
20
+ /** Image type. */
21
+ type: AssetType;
19
22
  /** Sprites contained in the sub atlas. */
20
23
  sprites: AtlasSprite[];
21
24
  }[];
@@ -61,4 +64,6 @@ export interface AtlasSprite {
61
64
  w: number;
62
65
  };
63
66
  pixelsPerUnit: number;
67
+ width: number;
68
+ height: number;
64
69
  }
@@ -9,5 +9,6 @@ export declare enum SpriteModifyFlags {
9
9
  atlasRegionOffset = 16,
10
10
  region = 32,
11
11
  pivot = 64,
12
- border = 128
12
+ border = 128,
13
+ destroy = 256
13
14
  }
@@ -108,4 +108,5 @@ export declare class TextRenderer extends Renderer {
108
108
  private _resetSubFont;
109
109
  private _updatePosition;
110
110
  private _updateLocalData;
111
+ private _isTextNoVisible;
111
112
  }
@@ -33,11 +33,19 @@ export declare class Background {
33
33
  */
34
34
  get texture(): Texture2D;
35
35
  set texture(value: Texture2D);
36
+ /**
37
+ * Background texture fill mode.
38
+ * @remarks When `mode` is `BackgroundMode.Texture`, the property will take effects.
39
+ * @defaultValue `BackgroundTextureFillMode.FitHeight`
40
+ */
41
+ get textureFillMode(): BackgroundTextureFillMode;
36
42
  set textureFillMode(value: BackgroundTextureFillMode);
37
43
  /**
38
44
  * Constructor of Background.
39
45
  * @param _engine Engine Which the background belongs to.
40
46
  */
41
47
  constructor(_engine: Engine);
48
+ private _initMesh;
49
+ private _initMaterial;
42
50
  private _createPlane;
43
51
  }
package/types/Camera.d.ts CHANGED
@@ -55,7 +55,6 @@ export declare class Camera extends Component {
55
55
  private _viewport;
56
56
  private _pixelViewport;
57
57
  private _inverseProjectionMatrix;
58
- private _lastAspectSize;
59
58
  private _invViewProjMat;
60
59
  /**
61
60
  * Shader data.
@@ -249,4 +248,5 @@ export declare class Camera extends Component {
249
248
  * The inverse of the projection matrix.
250
249
  */
251
250
  private _getInverseProjectionMatrix;
251
+ private _onPixelViewportChanged;
252
252
  }
package/types/Canvas.d.ts CHANGED
@@ -1,9 +1,18 @@
1
1
  /**
2
2
  * Canvas.
3
3
  */
4
- export interface Canvas {
5
- /** The width of the canvas. */
6
- width: number;
7
- /** The height of the canvas. */
8
- height: number;
4
+ export declare abstract class Canvas {
5
+ private _width;
6
+ private _height;
7
+ /**
8
+ * The width of the canvas.
9
+ */
10
+ get width(): number;
11
+ set width(value: number);
12
+ /**
13
+ *The height of the canvas.
14
+ */
15
+ get height(): number;
16
+ set height(value: number);
17
+ protected abstract _onSizeChanged(width: number, height: number): void;
9
18
  }
@@ -5,8 +5,8 @@ import { Scene } from "./Scene";
5
5
  * The base class of the components.
6
6
  */
7
7
  export declare class Component extends EngineObject {
8
+ protected _phasedActiveInScene: boolean;
8
9
  private _phasedActive;
9
- private _phasedActiveInScene;
10
10
  private _enabled;
11
11
  /**
12
12
  * Indicates whether the component is enabled.
@@ -17,7 +17,7 @@ export declare class DisorderedArray<T> {
17
17
  * @returns The replaced item is used to reset its index
18
18
  */
19
19
  deleteByIndex(index: number): T;
20
- forEach(callbackFn: (e: T) => void): void;
20
+ forEach(callbackFn: (element: T) => void, swapFn: (element: T, index: number) => void): void;
21
21
  forEachAndClean(callbackFn: (e: T) => void): void;
22
22
  garbageCollection(): void;
23
23
  private _startLoop;
package/types/Scene.d.ts CHANGED
@@ -41,6 +41,12 @@ export declare class Scene extends EngineObject {
41
41
  private _fogEnd;
42
42
  private _fogDensity;
43
43
  private _fogParams;
44
+ private _isActive;
45
+ /**
46
+ * Whether the scene is active.
47
+ */
48
+ get isActive(): boolean;
49
+ set isActive(value: boolean);
44
50
  /**
45
51
  * Scene-related shader data.
46
52
  */
@@ -0,0 +1,45 @@
1
+ import { Entity } from "../Entity";
2
+ import { LayerPathMask } from "./LayerPathMask";
3
+ /**
4
+ * AnimatorLayerMask is used to mask out certain entities from being animated by an AnimatorLayer.
5
+ */
6
+ export declare class AnimatorLayerMask {
7
+ /**
8
+ * Creates an AnimatorLayerMask instance by specifying an entity.
9
+ * This will automatically add path masks for the entity and all its children.
10
+ * @param entity - The root entity to create path masks for
11
+ */
12
+ static createByEntity(entity: Entity): AnimatorLayerMask;
13
+ private static _addPathMaskWithChildren;
14
+ private _pathMasks;
15
+ private _pathMaskMap;
16
+ /**
17
+ * The list of path masks.
18
+ */
19
+ get pathMasks(): Readonly<LayerPathMask[]>;
20
+ /**
21
+ * Adds a path mask to the AnimatorLayerMask, the root path is "".
22
+ * @param path - The path to add a mask for
23
+ * @returns The created or existing LayerPathMask
24
+ */
25
+ addPathMask(path: string): LayerPathMask;
26
+ /**
27
+ * Removes a path mask from the AnimatorLayerMask.
28
+ * @param path - The path of the mask to remove
29
+ */
30
+ removePathMask(path: any): void;
31
+ /**
32
+ * Get a path mask based on the given path.
33
+ * @param path - The path of the mask to get
34
+ * @returns The LayerPathMask for the given path
35
+ */
36
+ getPathMask(path: string): LayerPathMask;
37
+ /**
38
+ * Sets the active state of a path mask.
39
+ * If recursive is true, it also sets the active state of all child path masks.
40
+ * @param path - The path of the mask to modify
41
+ * @param active - The active state to set
42
+ * @param withChildren - Whether to apply the active state recursively to child paths
43
+ */
44
+ setPathMaskActive(path: string, active: boolean, withChildren?: boolean): void;
45
+ }
@@ -0,0 +1,16 @@
1
+ /**
2
+ * LayerPathMask represents a mask for a specific entity in an animation layer.
3
+ * It is used to control the animation whether to be applied to the entity or not.
4
+ */
5
+ export declare class LayerPathMask {
6
+ /**
7
+ * It identifies a particular entity in the hierarchy.
8
+ * Example: "arm/left/hand" could be a path to the left hand of a character.
9
+ */
10
+ path: string;
11
+ /**
12
+ * The active property is indicating whether the animation at this path is active or not.
13
+ * When true, the animation for this path is applied; when false, the animation for this path is ignored.
14
+ */
15
+ active: boolean;
16
+ }
@@ -0,0 +1,7 @@
1
+ import { AnimationCurve } from "./AnimationCurve";
2
+ /**
3
+ * Store a collection of Keyframes that can be evaluated over time.
4
+ */
5
+ export declare class AnimationStringCurve extends AnimationCurve<string> {
6
+ constructor();
7
+ }
@@ -13,6 +13,7 @@ export declare class AssetPromise<T> implements PromiseLike<T> {
13
13
  get [Symbol.toStringTag](): string;
14
14
  private _promise;
15
15
  private _state;
16
+ private _progress;
16
17
  private _onProgressCallback;
17
18
  private _onCancelHandler;
18
19
  private _reject;
@@ -104,7 +104,6 @@ export declare class ResourceManager {
104
104
  private _gc;
105
105
  private _getResolveResource;
106
106
  private _parseURL;
107
- private _getParameterByName;
108
107
  private _parseQueryPath;
109
108
  }
110
109
  /**
package/types/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export { Platform } from "./Platform";
2
2
  export { Engine } from "./Engine";
3
3
  export { SystemInfo } from "./SystemInfo";
4
- export type { Canvas } from "./Canvas";
4
+ export { Canvas } from "./Canvas";
5
5
  export { Scene } from "./Scene";
6
6
  export { SceneManager } from "./SceneManager";
7
7
  export { Entity } from "./Entity";
@@ -6,6 +6,10 @@ import { ModelMesh } from "./ModelMesh";
6
6
  */
7
7
  export declare class PrimitiveMesh {
8
8
  private static _tempVec30;
9
+ private static readonly _sphereSeedPositions;
10
+ private static readonly _sphereSeedCells;
11
+ private static _sphereEdgeIdx;
12
+ private static _spherePoleIdx;
9
13
  /**
10
14
  * Create a sphere mesh.
11
15
  * @param engine - Engine
@@ -15,6 +19,16 @@ export declare class PrimitiveMesh {
15
19
  * @returns Sphere model mesh
16
20
  */
17
21
  static createSphere(engine: Engine, radius?: number, segments?: number, noLongerAccessible?: boolean): ModelMesh;
22
+ /**
23
+ * Create a sphere mesh by implementing Catmull-Clark Surface Subdivision Algorithm.
24
+ * Max step is limited to 6.
25
+ * @param engine - Engine
26
+ * @param radius - Sphere radius
27
+ * @param step - Number of subdiv steps
28
+ * @param noLongerAccessible - No longer access the vertices of the mesh after creation
29
+ * @returns Sphere model mesh
30
+ */
31
+ static createSubdivisionSurfaceSphere(engine: Engine, radius?: number, step?: number, noLongerAccessible?: boolean): ModelMesh;
18
32
  /**
19
33
  * Create a cuboid mesh.
20
34
  * @param engine - Engine
@@ -82,6 +96,14 @@ export declare class PrimitiveMesh {
82
96
  * @returns Capsule model mesh
83
97
  */
84
98
  static createCapsule(engine: Engine, radius?: number, height?: number, radialSegments?: number, heightSegments?: number, noLongerAccessible?: boolean): ModelMesh;
99
+ /**
100
+ * Duplicate vertices at the poles and adjust their UV coordinates.
101
+ */
102
+ private static _generateAndReplacePoleUV;
103
+ /**
104
+ * Get edge point index for subdivision surface sphere.
105
+ */
106
+ private static _calculateEdgeIndex;
85
107
  static _setCylinderData(cylinderMesh: ModelMesh, radiusTop: number, radiusBottom: number, height: number, radialSegments: number, heightSegments: number, noLongerAccessible: boolean, isRestoreMode: boolean, restoreVertexBuffer?: Buffer): void;
86
108
  static _setCapsuleData(capsuleMesh: ModelMesh, radius: number, height: number, radialSegments: number, heightSegments: number, noLongerAccessible: boolean, isRestoreMode: boolean, restoreVertexBuffer?: Buffer): void;
87
109
  private static _initialize;
@@ -9,11 +9,11 @@ export declare class SkinnedMeshRenderer extends MeshRenderer {
9
9
  private static _jointCountProperty;
10
10
  private static _jointSamplerProperty;
11
11
  private static _jointMatrixProperty;
12
+ private _localBounds;
12
13
  private _jointDataCreateCache;
13
14
  private _blendShapeWeights;
14
15
  private _maxVertexUniformVectors;
15
16
  private _rootBone;
16
- private _localBounds;
17
17
  private _jointMatrices;
18
18
  private _jointTexture;
19
19
  private _bones;
@@ -1,4 +1,3 @@
1
- import { ParticleRenderer } from "./ParticleRenderer";
2
1
  import { ParticleStopMode } from "./enums/ParticleStopMode";
3
2
  import { ColorOverLifetimeModule } from "./modules/ColorOverLifetimeModule";
4
3
  import { EmissionModule } from "./modules/EmissionModule";
@@ -47,7 +46,6 @@ export declare class ParticleGenerator {
47
46
  */
48
47
  get randomSeed(): number;
49
48
  set randomSeed(value: number);
50
- constructor(renderer: ParticleRenderer);
51
49
  /**
52
50
  * Start emitting particles.
53
51
  * @param withChildren - Whether to start the particle generator of the child entity
@@ -1,3 +1,4 @@
1
+ export { ParticleGenerator } from "./ParticleGenerator";
1
2
  export { ParticleMaterial } from "./ParticleMaterial";
2
3
  export { ParticleRenderer } from "./ParticleRenderer";
3
4
  export { ParticleCurveMode } from "./enums/ParticleCurveMode";
@@ -7,6 +8,15 @@ export { ParticleScaleMode } from "./enums/ParticleScaleMode";
7
8
  export { ParticleSimulationSpace } from "./enums/ParticleSimulationSpace";
8
9
  export { ParticleStopMode } from "./enums/ParticleStopMode";
9
10
  export { Burst } from "./modules/Burst";
11
+ export { ColorOverLifetimeModule } from "./modules/ColorOverLifetimeModule";
12
+ export { EmissionModule } from "./modules/EmissionModule";
13
+ export { MainModule } from "./modules/MainModule";
10
14
  export { ParticleCompositeCurve } from "./modules/ParticleCompositeCurve";
15
+ export { ParticleCompositeGradient } from "./modules/ParticleCompositeGradient";
11
16
  export { CurveKey, ParticleCurve } from "./modules/ParticleCurve";
17
+ export { GradientAlphaKey, GradientColorKey, ParticleGradient } from "./modules/ParticleGradient";
18
+ export { RotationOverLifetimeModule } from "./modules/RotationOverLifetimeModule";
19
+ export { SizeOverLifetimeModule } from "./modules/SizeOverLifetimeModule";
20
+ export { TextureSheetAnimationModule } from "./modules/TextureSheetAnimationModule";
21
+ export { VelocityOverLifetimeModule } from "./modules/VelocityOverLifetimeModule";
12
22
  export * from "./modules/shape/index";
@@ -13,7 +13,6 @@ export declare class EmissionModule extends ParticleGeneratorModule {
13
13
  /** The shape of the emitter. */
14
14
  shape: BaseShape;
15
15
  private _bursts;
16
- private _frameRateTime;
17
16
  private _currentBurstIndex;
18
17
  private _burstRand;
19
18
  /**
@@ -54,7 +54,6 @@ export declare class MainModule implements ICustomClone {
54
54
  scalingMode: ParticleScaleMode;
55
55
  /** If set to true, the Particle Generator automatically begins to play on startup. */
56
56
  playOnEnabled: boolean;
57
- private _maxParticles;
58
57
  private _generator;
59
58
  private _gravity;
60
59
  /**
@@ -7,6 +7,5 @@ export declare abstract class ParticleGeneratorModule {
7
7
  /** Specifies whether the module is enabled or not. */
8
8
  enabled: boolean;
9
9
  protected _generator: ParticleGenerator;
10
- constructor(generator: ParticleGenerator);
11
10
  protected _enableMacro(shaderData: ShaderData, lastEnableMacro: ShaderMacro, enableMacro: ShaderMacro): ShaderMacro;
12
11
  }
@@ -63,32 +63,52 @@ export declare class ParticleGradient {
63
63
  setKeys(colorKeys: GradientColorKey[], alphaKeys: GradientAlphaKey[]): void;
64
64
  private _addKey;
65
65
  private _removeKey;
66
+ private _setColorTypeArrayDirty;
67
+ private _setAlphaTypeArrayDirty;
66
68
  }
67
69
  /**
68
70
  * The color key of the particle gradient.
69
71
  */
70
72
  export declare class GradientColorKey {
71
- /** The key time. */
72
- time: number;
73
- /** The key color. */
74
- color: Color;
75
- constructor(
76
- /** The key time. */
77
- time: number,
78
- /** The key color. */
79
- color: Color);
73
+ private _time;
74
+ private _color;
75
+ /**
76
+ * The key time.
77
+ */
78
+ get time(): number;
79
+ set time(value: number);
80
+ /**
81
+ * The key color.
82
+ */
83
+ get color(): Color;
84
+ set color(value: Color);
85
+ /**
86
+ * Constructor of GradientColorKey.
87
+ * @param time - The time of the gradient colorKey
88
+ * @param color - The alpha component of the gradient colorKey
89
+ */
90
+ constructor(time: number, color: Color);
80
91
  }
81
92
  /**
82
93
  * The alpha key of the particle gradient.
83
94
  */
84
95
  export declare class GradientAlphaKey {
85
- /** The key time. */
86
- time: number;
87
- /** The key alpha. */
88
- alpha: number;
89
- constructor(
90
- /** The key time. */
91
- time: number,
92
- /** The key alpha. */
93
- alpha: number);
96
+ private _time;
97
+ private _alpha;
98
+ /**
99
+ * The key time.
100
+ */
101
+ get time(): number;
102
+ set time(value: number);
103
+ /**
104
+ * The key alpha.
105
+ */
106
+ get alpha(): number;
107
+ set alpha(value: number);
108
+ /**
109
+ * Constructor of GradientAlphaKey.
110
+ * @param time - The time of the gradient alpha key
111
+ * @param alpha - The alpha component of the gradient alpha key
112
+ */
113
+ constructor(time: number, alpha: number);
94
114
  }
@@ -1,11 +1,12 @@
1
1
  import { BoolUpdateFlag } from "../BoolUpdateFlag";
2
2
  import { Component } from "../Component";
3
3
  import { ColliderShape } from "./shape/ColliderShape";
4
+ import { ICustomClone } from "../clone/ComponentCloner";
4
5
  /**
5
6
  * Base class for all colliders.
6
7
  * @decorator `@dependentComponents(Transform, DependentMode.CheckOnly)`
7
8
  */
8
- export declare class Collider extends Component {
9
+ export declare class Collider extends Component implements ICustomClone {
9
10
  protected _updateFlag: BoolUpdateFlag;
10
11
  protected _shapes: ColliderShape[];
11
12
  /**
@@ -26,4 +27,5 @@ export declare class Collider extends Component {
26
27
  * Remove all shape attached.
27
28
  */
28
29
  clearShapes(): void;
30
+ protected _addPhysicsShape(shape: ColliderShape): void;
29
31
  }
@@ -1,4 +1,3 @@
1
- import { IPhysics } from "@galacean/engine-design";
2
1
  import { Ray, Vector3 } from "@galacean/engine-math";
3
2
  import { Engine } from "../Engine";
4
3
  import { Layer } from "../Layer";
@@ -7,8 +6,10 @@ import { HitResult } from "./HitResult";
7
6
  * A physics manager is a collection of colliders and constraints which can interact.
8
7
  */
9
8
  export declare class PhysicsManager {
9
+ private static _collision;
10
10
  private _engine;
11
11
  private _restTime;
12
+ private _fixedTimeStep;
12
13
  private _colliders;
13
14
  private _gravity;
14
15
  private _nativePhysicsManager;
@@ -19,33 +20,15 @@ export declare class PhysicsManager {
19
20
  private _onTriggerEnter;
20
21
  private _onTriggerExit;
21
22
  private _onTriggerStay;
22
- /** The fixed time step in seconds at which physics are performed. */
23
- fixedTimeStep: number;
24
- /**
25
- * The max allowed time step in seconds one frame.
26
- *
27
- * @remarks
28
- * When the frame rate is low or stutter occurs, the maximum execution time of physics will not exceed this value.
29
- * So physics will slow down a bit when performance hitch occurs.
30
- */
31
- maxAllowedTimeStep: number;
32
23
  /**
33
24
  * The gravity of physics scene.
34
25
  */
35
26
  get gravity(): Vector3;
36
27
  set gravity(value: Vector3);
37
- /**
38
- * @deprecated
39
- * Please use `maxAllowedTimeStep` instead.
40
- */
41
- get maxSumTimeStep(): number;
42
- set maxSumTimeStep(value: number);
28
+ /** The fixed time step in seconds at which physics are performed. */
29
+ get fixedTimeStep(): number;
30
+ set fixedTimeStep(value: number);
43
31
  constructor(engine: Engine);
44
- /**
45
- * initialize PhysicsManager.
46
- * @param physics - Physics Engine
47
- */
48
- initialize(physics: IPhysics): void;
49
32
  /**
50
33
  * Casts a ray through the Scene and returns the first hit.
51
34
  * @param ray - The ray
@@ -8,6 +8,7 @@ export declare class PhysicsMaterial {
8
8
  private _staticFriction;
9
9
  private _bounceCombine;
10
10
  private _frictionCombine;
11
+ private _destroyed;
11
12
  constructor();
12
13
  /**
13
14
  * The coefficient of bounciness.
@@ -28,7 +28,7 @@ export declare class HingeJoint extends Joint {
28
28
  /**
29
29
  * The angular velocity of the joint in degrees per second.
30
30
  */
31
- get velocity(): Readonly<Vector3>;
31
+ get velocity(): Readonly<number>;
32
32
  /**
33
33
  * Enables the joint's limits. Disabled by default.
34
34
  */
@@ -3,13 +3,14 @@ import { Vector3 } from "@galacean/engine-math";
3
3
  import { Component } from "../../Component";
4
4
  import { Entity } from "../../Entity";
5
5
  import { Collider } from "../Collider";
6
+ import { ICustomClone } from "../../clone/ComponentCloner";
6
7
  /**
7
8
  * A base class providing common functionality for joints.
8
9
  * @decorator `@dependentComponents(Collider, DependentMode.CheckOnly)`
9
10
  */
10
- export declare class Joint extends Component {
11
- protected _connectedCollider: JointCollider;
12
- protected _collider: JointCollider;
11
+ export declare class Joint extends Component implements ICustomClone {
12
+ protected _colliderInfo: JointColliderInfo;
13
+ protected _connectedColliderInfo: JointColliderInfo;
13
14
  protected _nativeJoint: IJoint;
14
15
  private _force;
15
16
  private _torque;
@@ -1,10 +1,11 @@
1
1
  import { PhysicsMaterial } from "../PhysicsMaterial";
2
2
  import { Vector3 } from "@galacean/engine-math";
3
3
  import { Collider } from "../Collider";
4
+ import { ICustomClone } from "../../clone/ComponentCloner";
4
5
  /**
5
6
  * Abstract class for collider shapes.
6
7
  */
7
- export declare abstract class ColliderShape {
8
+ export declare abstract class ColliderShape implements ICustomClone {
8
9
  private static _idGenerator;
9
10
  protected _id: number;
10
11
  protected _material: PhysicsMaterial;
@@ -10,4 +10,5 @@ export declare class SphereColliderShape extends ColliderShape {
10
10
  get radius(): number;
11
11
  set radius(value: number);
12
12
  constructor();
13
+ _cloneTo(target: SphereColliderShape): void;
13
14
  }
@@ -19,7 +19,7 @@ export declare class Shader {
19
19
  * // Import shaderLab
20
20
  * import { ShaderLab } from "@galacean/engine-shader-lab";
21
21
  * // Create engine with shaderLab
22
- * const engine = await WebGLEngine.create({ canvas: "canvas", new ShaderLab() });
22
+ * const engine = await WebGLEngine.create({ canvas: "canvas", shader: new ShaderLab() });
23
23
  * ...
24
24
  * ```
25
25
  *
@@ -1,31 +1,5 @@
1
- import { Engine } from "../Engine";
2
- import { EnumXRMode } from "./enum/EnumXRMode";
3
- import { EnumXRFeature } from "./enum/EnumXRFeature";
4
- import { EnumXRTrackingMode } from "./enum/EnumXRTrackingMode";
5
- import { XRFeature } from "./feature/XRFeature";
6
- import { EnumXRSubsystem } from "./enum/EnumXRSubsystem";
7
- import { XRProvider } from "./provider/XRProvider";
8
- import { XRSubsystem } from "./subsystem/XRSubsystem";
9
- type FeatureConstructor = new (engine: Engine) => XRFeature;
1
+ /**
2
+ * XRManager located in the main package, its implementation logic is XRManagerExtended in the sub-package engine-xr.
3
+ */
10
4
  export declare class XRManager {
11
- private _engine;
12
- private _provider;
13
- private _features;
14
- private _subsystems;
15
- private _isPaused;
16
- isSupportedMode(mode: EnumXRMode): Promise<void>;
17
- isSupportedTrackingMode(mode: EnumXRTrackingMode): Promise<void>;
18
- isSupportedFeature(feature: EnumXRFeature): Promise<void>;
19
- getFeature<T extends XRFeature>(feature: EnumXRFeature): T;
20
- enableFeature(feature: EnumXRFeature): void;
21
- disableFeature(feature: EnumXRFeature): void;
22
- getSubsystem<T extends XRSubsystem>(subsystem: EnumXRSubsystem): T;
23
- initialize(mode: EnumXRMode, trackingMode: EnumXRTrackingMode, requestFeatures?: EnumXRFeature[]): Promise<void>;
24
- start(): Promise<void>;
25
- pause(): void;
26
- resume(): void;
27
- destroy(): void;
28
- constructor(engine: Engine, type: new (engine: Engine) => XRProvider);
29
5
  }
30
- export declare function registerFeature(feature: EnumXRFeature, dependentSubsystem?: EnumXRSubsystem[]): (featureConstructor: FeatureConstructor) => void;
31
- export {};
@@ -0,0 +1,15 @@
1
+ import { IXRPose } from "@galacean/engine-design";
2
+ import { Matrix, Quaternion, Vector3 } from "@galacean/engine-math";
3
+ /**
4
+ * Data for describing pose in the XR space.
5
+ */
6
+ export declare class XRPose implements IXRPose {
7
+ /** The position of the pose in XR space. */
8
+ position: Vector3;
9
+ /** The rotation of the pose in XR space. */
10
+ rotation: Quaternion;
11
+ /** The matrix of the pose in XR space. */
12
+ matrix: Matrix;
13
+ /** The inverse matrix of the pose in XR space. */
14
+ inverseMatrix: Matrix;
15
+ }