@galacean/engine-core 0.0.0-experimental-double11.13 → 0.0.0-experimental-uploadSameBuffer.0

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 (48) hide show
  1. package/dist/main.js +7581 -7031
  2. package/dist/main.js.map +1 -1
  3. package/dist/miniprogram.js +7581 -7031
  4. package/dist/module.js +7582 -7032
  5. package/dist/module.js.map +1 -1
  6. package/package.json +3 -3
  7. package/types/2d/atlas/types.d.ts +3 -0
  8. package/types/2d/enums/SpriteModifyFlags.d.ts +2 -1
  9. package/types/asset/AssetPromise.d.ts +1 -0
  10. package/types/asset/ResourceManager.d.ts +0 -1
  11. package/types/mesh/PrimitiveMesh.d.ts +22 -0
  12. package/types/mesh/SkinnedMeshRenderer.d.ts +1 -1
  13. package/types/particle/modules/EmissionModule.d.ts +0 -1
  14. package/types/particle/modules/MainModule.d.ts +0 -1
  15. package/types/particle/modules/ParticleGradient.d.ts +38 -18
  16. package/types/physics/PhysicsManager.d.ts +2 -4
  17. package/types/shader/Shader.d.ts +1 -1
  18. package/types/2d/data/RenderData2D.d.ts +0 -1
  19. package/types/2d/enums/SpriteDirtyFlag.d.ts +0 -13
  20. package/types/ListenerUpdateFlag.d.ts +0 -12
  21. package/types/RenderPipeline/MeshRenderElement.d.ts +0 -19
  22. package/types/RenderPipeline/SpriteElement.d.ts +0 -15
  23. package/types/RenderPipeline/SpriteMaskElement.d.ts +0 -12
  24. package/types/RenderPipeline/TextRenderElement.d.ts +0 -8
  25. package/types/animation/AnimatorStatePlayData.d.ts +0 -1
  26. package/types/animation/AnimatorStateTransition.d.ts +0 -12
  27. package/types/animation/AnimatorTransitionBase.d.ts +0 -10
  28. package/types/animation/enums/StateMachineState.d.ts +0 -13
  29. package/types/animation/internal/AnimatorPlayableObject.d.ts +0 -23
  30. package/types/animation/internal/AnimatorStateInfo.d.ts +0 -1
  31. package/types/animation/internal/AnimatorStateMachineData.d.ts +0 -1
  32. package/types/animation/internal/CrossCurveData.d.ts +0 -1
  33. package/types/asset/IRefObject.d.ts +0 -2
  34. package/types/asset/RefObject.d.ts +0 -27
  35. package/types/base/Event.d.ts +0 -24
  36. package/types/base/Util.d.ts +0 -14
  37. package/types/fog/EXP2Fog.d.ts +0 -15
  38. package/types/fog/Fog.d.ts +0 -14
  39. package/types/fog/LinearFog.d.ts +0 -22
  40. package/types/fog/index.d.ts +0 -3
  41. package/types/shadow/enum/ShadowMode.d.ts +0 -13
  42. /package/types/RenderPipeline/{index.d.ts → Index.d.ts} +0 -0
  43. /package/types/animation/internal/animationCurveOwner/{Assembler → assembler}/BlendShapeWeightsAnimationCurveOwnerAssembler.d.ts +0 -0
  44. /package/types/animation/internal/animationCurveOwner/{Assembler → assembler}/IAnimationCurveOwnerAssembler.d.ts +0 -0
  45. /package/types/animation/internal/animationCurveOwner/{Assembler → assembler}/PositionAnimationCurveOwnerAssembler.d.ts +0 -0
  46. /package/types/animation/internal/animationCurveOwner/{Assembler → assembler}/RotationAnimationCurveOwnerAssembler.d.ts +0 -0
  47. /package/types/animation/internal/animationCurveOwner/{Assembler → assembler}/ScaleAnimationCurveOwnerAssembler.d.ts +0 -0
  48. /package/types/animation/internal/animationCurveOwner/{Assembler → assembler}/UniversalAnimationCurveOwnerAssembler.d.ts +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@galacean/engine-core",
3
- "version": "0.0.0-experimental-double11.13",
3
+ "version": "0.0.0-experimental-uploadSameBuffer.0",
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": "0.0.0-experimental-double11.13"
18
+ "@galacean/engine-math": "0.0.0-experimental-uploadSameBuffer.0"
19
19
  },
20
20
  "devDependencies": {
21
- "@galacean/engine-design": "0.0.0-experimental-double11.13"
21
+ "@galacean/engine-design": "0.0.0-experimental-uploadSameBuffer.0"
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
  }[];
@@ -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
  }
@@ -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
  /**
@@ -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;
@@ -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
  /**
@@ -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
  }
@@ -9,7 +9,6 @@ export declare class PhysicsManager {
9
9
  private static _collision;
10
10
  private _engine;
11
11
  private _restTime;
12
- private _fixedTimeStep;
13
12
  private _colliders;
14
13
  private _gravity;
15
14
  private _nativePhysicsManager;
@@ -20,14 +19,13 @@ export declare class PhysicsManager {
20
19
  private _onTriggerEnter;
21
20
  private _onTriggerExit;
22
21
  private _onTriggerStay;
22
+ /** The fixed time step in seconds at which physics are performed. */
23
+ fixedTimeStep: number;
23
24
  /**
24
25
  * The gravity of physics scene.
25
26
  */
26
27
  get gravity(): Vector3;
27
28
  set gravity(value: Vector3);
28
- /** The fixed time step in seconds at which physics are performed. */
29
- get fixedTimeStep(): number;
30
- set fixedTimeStep(value: number);
31
29
  constructor(engine: Engine);
32
30
  /**
33
31
  * Casts a ray through the Scene and returns the first hit.
@@ -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 +0,0 @@
1
- export {};
@@ -1,13 +0,0 @@
1
- /**
2
- * Sprite Property Dirty Flag.
3
- */
4
- export declare enum SpritePropertyDirtyFlag {
5
- texture = 1,
6
- size = 2,
7
- atlasRotate = 4,
8
- atlasRegion = 8,
9
- atlasRegionOffset = 16,
10
- region = 32,
11
- pivot = 64,
12
- border = 128
13
- }
@@ -1,12 +0,0 @@
1
- import { UpdateFlag } from "./UpdateFlag";
2
- /**
3
- * Used to update tags.
4
- */
5
- export declare class ListenerUpdateFlag extends UpdateFlag {
6
- /** Listener. */
7
- listener: Function;
8
- /**
9
- * @inheritdoc
10
- */
11
- dispatch(param?: Object): void;
12
- }
@@ -1,19 +0,0 @@
1
- import { Mesh } from "../graphic/Mesh";
2
- import { SubMesh } from "../graphic/SubMesh";
3
- import { Material } from "../material/Material";
4
- import { Renderer } from "../Renderer";
5
- import { ShaderPass } from "../shader/ShaderPass";
6
- import { RenderState } from "../shader/state/RenderState";
7
- import { IPoolElement } from "./IPoolElement";
8
- import { RenderElement } from "./RenderElement";
9
- /**
10
- * Render element.
11
- */
12
- export declare class MeshRenderElement extends RenderElement implements IPoolElement {
13
- /** Mesh. */
14
- mesh: Mesh;
15
- /** Sub mesh. */
16
- subMesh: SubMesh;
17
- setValue(component: Renderer, mesh: Mesh, subMesh: SubMesh, material: Material, renderState: RenderState, shaderPass: ShaderPass): void;
18
- dispose(): void;
19
- }
@@ -1,15 +0,0 @@
1
- import { RenderData2D } from "../2d/data/RenderData2D";
2
- import { Material } from "../material/Material";
3
- import { Renderer } from "../Renderer";
4
- import { ShaderPass } from "../shader";
5
- import { RenderState } from "../shader/state/RenderState";
6
- import { Texture2D } from "../texture";
7
- import { IPoolElement } from "./IPoolElement";
8
- import { RenderElement } from "./RenderElement";
9
- export declare class SpriteElement extends RenderElement implements IPoolElement {
10
- renderData: RenderData2D;
11
- texture: Texture2D;
12
- constructor();
13
- setValue(component: Renderer, renderDate: RenderData2D, material: Material, texture: Texture2D, renderState: RenderState, shaderPass: ShaderPass): void;
14
- dispose(): void;
15
- }
@@ -1,12 +0,0 @@
1
- import { RenderData2D } from "../2d/data/RenderData2D";
2
- import { Material } from "../material/Material";
3
- import { Renderer } from "../Renderer";
4
- import { IPoolElement } from "./IPoolElement";
5
- import { RenderElement } from "./RenderElement";
6
- export declare class SpriteMaskElement extends RenderElement implements IPoolElement {
7
- renderData: RenderData2D;
8
- isAdd: boolean;
9
- constructor();
10
- setValue(component: Renderer, renderData: RenderData2D, material: Material): void;
11
- dispose(): void;
12
- }
@@ -1,8 +0,0 @@
1
- import { IPoolElement } from "./IPoolElement";
2
- import { RenderElement } from "./RenderElement";
3
- import { SpriteElement } from "./SpriteElement";
4
- export declare class TextRenderElement extends RenderElement implements IPoolElement {
5
- charElements: SpriteElement[];
6
- constructor();
7
- dispose(): void;
8
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,12 +0,0 @@
1
- import { AnimatorTransitionBase } from "./AnimatorTransitionBase";
2
- /**
3
- * Transitions define when and how the state machine switch from one state to another. AnimatorStateTransition always originate from an Animator State and have timing parameters.
4
- */
5
- export declare class AnimatorStateTransition extends AnimatorTransitionBase {
6
- /** The duration of the transition. This is represented in normalized time. */
7
- duration: number;
8
- /** The time at which the destination state will start. This is represented in normalized time. */
9
- offset: number;
10
- /** ExitTime represents the exact time at which the transition can take effect. This is represented in normalized time. */
11
- exitTime: number;
12
- }
@@ -1,10 +0,0 @@
1
- import { AnimatorStateMachine } from "./AnimatorStateMachine";
2
- import { AnimatorState } from "./AnimatorState";
3
- /**
4
- * Base class for animator transitions. Transitions define when and how the state machine switches from one state to another.
5
- */
6
- export declare class AnimatorTransitionBase {
7
- /** The destination state of the transition. */
8
- destinationState?: AnimatorState;
9
- destinationStateMachine?: AnimatorStateMachine;
10
- }
@@ -1,13 +0,0 @@
1
- /**
2
- * StateMachine state.
3
- */
4
- export declare enum StateMachineState {
5
- /** Standby state. */
6
- Standby = 0,
7
- /** Playing state. */
8
- Playing = 1,
9
- /** CrossFading state. */
10
- CrossFading = 2,
11
- /** FixedCrossFading state. */
12
- FixedCrossFading = 3
13
- }
@@ -1,23 +0,0 @@
1
- import { AnimatorStateTransition } from "../AnimatorTransition";
2
- export declare class AnimatorPlayableObject {
3
- private _transitions;
4
- /**
5
- * The transitions that are going out of the object.
6
- */
7
- get transitions(): Readonly<AnimatorStateTransition[]>;
8
- /**
9
- * Add an outgoing transition to the destination object.
10
- * @param transition - The transition
11
- */
12
- addTransition(transition: AnimatorStateTransition): void;
13
- /**
14
- * Remove a transition from the object.
15
- * @param transition - The transition
16
- */
17
- removeTransition(transition: AnimatorStateTransition): void;
18
- /**
19
- * Clears all transitions from the object.
20
- */
21
- clearTransitions(): void;
22
- getDuration(): void;
23
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,2 +0,0 @@
1
- export interface IRefObject {
2
- }
@@ -1,27 +0,0 @@
1
- import { EngineObject } from "../base/EngineObject";
2
- import { Engine } from "../Engine";
3
- import { IRefObject } from "./IRefObject";
4
- /**
5
- * The base class of assets, with reference counting capability.
6
- */
7
- export declare abstract class RefObject extends EngineObject implements IRefObject {
8
- /** Whether to ignore the garbage collection check, if it is true, it will not be affected by ResourceManager.gc(). */
9
- isGCIgnored: boolean;
10
- private _refCount;
11
- /**
12
- * Counted by valid references.
13
- */
14
- get refCount(): number;
15
- protected constructor(engine: Engine);
16
- /**
17
- * Destroy self.
18
- * @param force - Whether to force the destruction, if it is false, refCount = 0 can be released successfully.
19
- * @returns Whether the release was successful.
20
- */
21
- destroy(force?: boolean): boolean;
22
- /**
23
- * Called when the resource is destroyed.
24
- * Subclasses can override this function.
25
- */
26
- protected abstract _onDestroy(): void;
27
- }
@@ -1,24 +0,0 @@
1
- import { EventDispatcher } from "./EventDispatcher";
2
- export type Listener = ((e: Event) => any) & {
3
- once?: boolean;
4
- };
5
- /** Event Object. * @class */
6
- export declare class Event {
7
- get propagationStopped(): boolean;
8
- get target(): EventDispatcher;
9
- set target(t: EventDispatcher);
10
- get timeStamp(): number;
11
- get currentTarget(): EventDispatcher;
12
- set currentTarget(t: EventDispatcher);
13
- get bubbles(): boolean;
14
- get type(): string | number;
15
- data: any;
16
- private _timeStamp;
17
- private _target;
18
- private _currentTarget;
19
- private _bubbles;
20
- private _propagationStopped;
21
- private _type;
22
- constructor(type: string | number, target?: EventDispatcher, data?: any, bubbles?: boolean);
23
- stopPropagation(): void;
24
- }
@@ -1,14 +0,0 @@
1
- export declare const Util: {
2
- isArray: (value: any) => boolean;
3
- isArrayLike(x: any): boolean;
4
- clone<T>(obj: T): T;
5
- downloadBlob(blob: Blob, fileName?: string): void;
6
- };
7
- export declare const isArrayLike: <T>(x: any) => x is ArrayLike<T>;
8
- /**
9
- * Fastly remove an element from array.
10
- * @param array - Array
11
- * @param item - Element
12
- */
13
- export declare function removeFromArray(array: any[], item: any): boolean;
14
- export declare function ObjectValues(obj: any): any[];
@@ -1,15 +0,0 @@
1
- import { Entity } from "../Entity";
2
- import { Fog } from "./Fog";
3
- /**
4
- * Exponential fog.
5
- */
6
- export declare class EXP2Fog extends Fog {
7
- private static _densityProperty;
8
- /**
9
- * Density of fog.
10
- */
11
- get density(): number;
12
- set density(value: number);
13
- private _density;
14
- constructor(entity: Entity);
15
- }
@@ -1,14 +0,0 @@
1
- import { Color } from "@oasis-engine/math";
2
- import { Component } from "../Component";
3
- /**
4
- * Fog.
5
- */
6
- export declare class Fog extends Component {
7
- protected static _colorProperty: import("..").ShaderProperty;
8
- /**
9
- * Fog color.
10
- */
11
- get color(): Color;
12
- set color(value: Color);
13
- private _color;
14
- }
@@ -1,22 +0,0 @@
1
- import { Entity } from "../Entity";
2
- import { Fog } from "./Fog";
3
- /**
4
- * Linear fog, according to the distance of the camera linear difference fog density.
5
- */
6
- export declare class LinearFog extends Fog {
7
- private static _nearProperty;
8
- private static _farProperty;
9
- /**
10
- * Start of fog.
11
- */
12
- get near(): number;
13
- set near(value: number);
14
- /**
15
- * End of fog.
16
- */
17
- get far(): number;
18
- set far(value: number);
19
- private _near;
20
- private _far;
21
- constructor(entity: Entity);
22
- }
@@ -1,3 +0,0 @@
1
- export { EXP2Fog } from "./EXP2Fog";
2
- export { Fog } from "./Fog";
3
- export { LinearFog } from "./LinearFog";
@@ -1,13 +0,0 @@
1
- /**
2
- * Determines which type of shadows should be used.
3
- */
4
- export declare enum ShadowMode {
5
- /** Disable Shadows. */
6
- None = 0,
7
- /** Hard Shadows Only. */
8
- Hard = 1,
9
- /** Cast "soft" shadows with low range. */
10
- SoftLow = 2,
11
- /** Cast "soft" shadows with large range. */
12
- SoftHigh = 3
13
- }
File without changes