@galacean/engine-core 2.0.0-alpha.43 → 2.0.0-alpha.45

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 (238) hide show
  1. package/dist/main.js +3 -3
  2. package/dist/main.js.map +1 -1
  3. package/dist/module.js +3 -3
  4. package/dist/module.js.map +1 -1
  5. package/package.json +3 -3
  6. package/types/2d/atlas/FontAtlas.d.ts +23 -1
  7. package/types/2d/atlas/SpriteAtlas.d.ts +8 -0
  8. package/types/2d/sprite/Sprite.d.ts +27 -1
  9. package/types/2d/sprite/SpriteMask.d.ts +43 -0
  10. package/types/2d/sprite/SpriteRenderer.d.ts +29 -0
  11. package/types/2d/text/CharInfo.d.ts +20 -1
  12. package/types/2d/text/CharRenderInfo.d.ts +15 -1
  13. package/types/2d/text/Font.d.ts +10 -0
  14. package/types/2d/text/SubFont.d.ts +35 -1
  15. package/types/2d/text/TextRenderer.d.ts +53 -0
  16. package/types/2d/text/TextUtils.d.ts +89 -1
  17. package/types/Background.d.ts +17 -0
  18. package/types/BasicResources.d.ts +52 -0
  19. package/types/Camera.d.ts +71 -1
  20. package/types/Canvas.d.ts +13 -0
  21. package/types/Component.d.ts +33 -0
  22. package/types/ComponentsDependencies.d.ts +34 -1
  23. package/types/ComponentsManager.d.ts +17 -0
  24. package/types/Engine.d.ts +106 -2
  25. package/types/Entity.d.ts +88 -0
  26. package/types/Polyfill.d.ts +12 -1
  27. package/types/RenderPipeline/BasicRenderPipeline.d.ts +3 -0
  28. package/types/RenderPipeline/BatcherManager.d.ts +23 -1
  29. package/types/RenderPipeline/CullingResults.d.ts +17 -1
  30. package/types/RenderPipeline/DepthOnlyPass.d.ts +18 -1
  31. package/types/RenderPipeline/InstanceBuffer.d.ts +28 -1
  32. package/types/RenderPipeline/MaskManager.d.ts +36 -1
  33. package/types/RenderPipeline/OpaqueTexturePass.d.ts +16 -1
  34. package/types/RenderPipeline/PipelineUtils.d.ts +11 -1
  35. package/types/RenderPipeline/PrimitiveChunk.d.ts +27 -1
  36. package/types/RenderPipeline/PrimitiveChunkManager.d.ts +16 -1
  37. package/types/RenderPipeline/RenderContext.d.ts +46 -1
  38. package/types/RenderPipeline/RenderElement.d.ts +9 -0
  39. package/types/RenderPipeline/RenderQueue.d.ts +23 -1
  40. package/types/RenderPipeline/RenderTargetPool.d.ts +17 -1
  41. package/types/RenderPipeline/SubPrimitiveChunk.d.ts +14 -1
  42. package/types/RenderPipeline/VertexArea.d.ts +10 -1
  43. package/types/RenderPipeline/VertexMergeBatcher.d.ts +11 -1
  44. package/types/RenderPipeline/enums/RenderQueueMaskType.d.ts +9 -1
  45. package/types/RenderPipeline/index.d.ts +2 -0
  46. package/types/Renderer.d.ts +58 -0
  47. package/types/Scene.d.ts +28 -0
  48. package/types/SceneManager.d.ts +13 -0
  49. package/types/Script.d.ts +40 -0
  50. package/types/SystemInfo.d.ts +10 -0
  51. package/types/Transform.d.ts +13 -0
  52. package/types/UpdateFlag.d.ts +3 -0
  53. package/types/UpdateFlagManager.d.ts +41 -1
  54. package/types/Utils.d.ts +20 -0
  55. package/types/VirtualCamera.d.ts +16 -1
  56. package/types/animation/AnimationClip.d.ts +5 -0
  57. package/types/animation/AnimationClipCurveBinding.d.ts +16 -1
  58. package/types/animation/Animator.d.ts +25 -0
  59. package/types/animation/AnimatorController.d.ts +17 -0
  60. package/types/animation/AnimatorControllerLayer.d.ts +9 -0
  61. package/types/animation/AnimatorControllerParameter.d.ts +4 -0
  62. package/types/animation/AnimatorState.d.ts +44 -0
  63. package/types/animation/AnimatorStateInstance.d.ts +8 -0
  64. package/types/animation/AnimatorStateMachine.d.ts +14 -0
  65. package/types/animation/AnimatorStateTransition.d.ts +9 -0
  66. package/types/animation/AnimatorStateTransitionCollection.d.ts +23 -1
  67. package/types/animation/StateMachineScript.d.ts +2 -0
  68. package/types/animation/animationCurve/AnimationArrayCurve.d.ts +39 -0
  69. package/types/animation/animationCurve/AnimationBoolCurve.d.ts +39 -0
  70. package/types/animation/animationCurve/AnimationColorCurve.d.ts +39 -0
  71. package/types/animation/animationCurve/AnimationCurve.d.ts +8 -0
  72. package/types/animation/animationCurve/AnimationFloatArrayCurve.d.ts +38 -0
  73. package/types/animation/animationCurve/AnimationFloatCurve.d.ts +39 -0
  74. package/types/animation/animationCurve/AnimationQuaternionCurve.d.ts +41 -0
  75. package/types/animation/animationCurve/AnimationRectCurve.d.ts +18 -0
  76. package/types/animation/animationCurve/AnimationRefCurve.d.ts +18 -0
  77. package/types/animation/animationCurve/AnimationStringCurve.d.ts +39 -0
  78. package/types/animation/animationCurve/AnimationVector2Curve.d.ts +39 -0
  79. package/types/animation/animationCurve/AnimationVector3Curve.d.ts +43 -0
  80. package/types/animation/animationCurve/AnimationVector4Curve.d.ts +39 -0
  81. package/types/animation/animationCurve/interfaces/IAnimationCurveCalculator.d.ts +18 -1
  82. package/types/animation/enums/AnimatorStatePlayState.d.ts +8 -1
  83. package/types/animation/internal/AnimationCurveLayerOwner.d.ts +15 -1
  84. package/types/animation/internal/AnimationEventHandler.d.ts +8 -1
  85. package/types/animation/internal/AnimatorLayerData.d.ts +28 -1
  86. package/types/animation/internal/AnimatorStateData.d.ts +14 -1
  87. package/types/animation/internal/AnimatorStatePlayData.d.ts +27 -1
  88. package/types/animation/internal/AnimatorTempValue.d.ts +12 -1
  89. package/types/animation/internal/animationCurveOwner/AnimationCurveOwner.d.ts +39 -0
  90. package/types/animation/internal/animationCurveOwner/assembler/BlendShapeWeightsAnimationCurveOwnerAssembler.d.ts +12 -1
  91. package/types/animation/internal/animationCurveOwner/assembler/IAnimationCurveOwnerAssembler.d.ts +10 -1
  92. package/types/animation/internal/animationCurveOwner/assembler/PositionAnimationCurveOwnerAssembler.d.ts +13 -1
  93. package/types/animation/internal/animationCurveOwner/assembler/RotationAnimationCurveOwnerAssembler.d.ts +13 -1
  94. package/types/animation/internal/animationCurveOwner/assembler/ScaleAnimationCurveOwnerAssembler.d.ts +13 -1
  95. package/types/animation/internal/animationCurveOwner/assembler/UniversalAnimationCurveOwnerAssembler.d.ts +23 -1
  96. package/types/asset/GraphicsResource.d.ts +10 -0
  97. package/types/asset/IReferable.d.ts +8 -0
  98. package/types/asset/ReferResource.d.ts +28 -0
  99. package/types/asset/RenderingStatistics.d.ts +8 -0
  100. package/types/asset/ResourceManager.d.ts +94 -4
  101. package/types/audio/AudioClip.d.ts +8 -0
  102. package/types/audio/AudioManager.d.ts +14 -0
  103. package/types/audio/AudioSource.d.ts +17 -0
  104. package/types/base/EngineObject.d.ts +4 -0
  105. package/types/base/Time.d.ts +13 -0
  106. package/types/clone/CloneDecorators.d.ts +20 -0
  107. package/types/clone/CloneUtil.d.ts +30 -1
  108. package/types/clone/ComponentCloner.d.ts +11 -1
  109. package/types/enums/CameraType.d.ts +9 -1
  110. package/types/env-probe/CubeProbe.d.ts +2 -0
  111. package/types/graphic/Buffer.d.ts +10 -0
  112. package/types/graphic/BufferUtil.d.ts +5 -0
  113. package/types/graphic/IndexBufferBinding.d.ts +4 -0
  114. package/types/graphic/Mesh.d.ts +54 -0
  115. package/types/graphic/Primitive.d.ts +50 -1
  116. package/types/graphic/TransformFeedback.d.ts +46 -1
  117. package/types/graphic/TransformFeedbackPrimitive.d.ts +67 -1
  118. package/types/graphic/TransformFeedbackSimulator.d.ts +55 -1
  119. package/types/graphic/VertexBufferBinding.d.ts +4 -0
  120. package/types/input/InputManager.d.ts +19 -0
  121. package/types/input/enums/PointerButton.d.ts +8 -0
  122. package/types/input/keyboard/KeyboardManager.d.ts +41 -1
  123. package/types/input/pointer/Pointer.d.ts +36 -0
  124. package/types/input/pointer/PointerEventData.d.ts +4 -0
  125. package/types/input/pointer/PointerManager.d.ts +58 -0
  126. package/types/input/pointer/emitter/IHitResult.d.ts +11 -1
  127. package/types/input/pointer/emitter/PhysicsPointerEventEmitter.d.ts +20 -1
  128. package/types/input/wheel/WheelManager.d.ts +34 -1
  129. package/types/lighting/AmbientLight.d.ts +9 -0
  130. package/types/lighting/DirectLight.d.ts +17 -0
  131. package/types/lighting/Light.d.ts +2 -0
  132. package/types/lighting/LightManager.d.ts +57 -0
  133. package/types/lighting/PointLight.d.ts +17 -0
  134. package/types/lighting/SpotLight.d.ts +17 -0
  135. package/types/lighting/ambientOcclusion/AmbientOcclusion.d.ts +4 -0
  136. package/types/lighting/ambientOcclusion/ScalableAmbientObscurancePass.d.ts +38 -1
  137. package/types/material/BaseMaterial.d.ts +4 -0
  138. package/types/material/Material.d.ts +2 -0
  139. package/types/mesh/BlendShape.d.ts +13 -0
  140. package/types/mesh/BlendShapeFrame.d.ts +7 -0
  141. package/types/mesh/BlendShapeManager.d.ts +101 -1
  142. package/types/mesh/MeshRenderer.d.ts +37 -0
  143. package/types/mesh/ModelMesh.d.ts +18 -0
  144. package/types/mesh/PrimitiveMesh.d.ts +31 -3
  145. package/types/mesh/PrimitiveMeshRestorer.d.ts +107 -0
  146. package/types/mesh/Skin.d.ts +10 -0
  147. package/types/mesh/SkinnedMeshRenderer.d.ts +21 -0
  148. package/types/particle/ParticleBufferUtils.d.ts +26 -1
  149. package/types/particle/ParticleGenerator.d.ts +102 -0
  150. package/types/particle/ParticleRenderer.d.ts +55 -0
  151. package/types/particle/ParticleTransformFeedbackSimulator.d.ts +52 -1
  152. package/types/particle/enums/ParticleRandomSubSeeds.d.ts +25 -1
  153. package/types/particle/enums/attributes/BillboardParticleVertexAttribute.d.ts +6 -1
  154. package/types/particle/enums/attributes/ParticleFeedbackVertexAttribute.d.ts +8 -1
  155. package/types/particle/enums/attributes/ParticleInstanceVertexAttribute.d.ts +17 -1
  156. package/types/particle/modules/ColorOverLifetimeModule.d.ts +12 -0
  157. package/types/particle/modules/CustomDataModule.d.ts +5 -0
  158. package/types/particle/modules/EmissionModule.d.ts +28 -0
  159. package/types/particle/modules/ForceOverLifetimeModule.d.ts +16 -1
  160. package/types/particle/modules/LimitVelocityOverLifetimeModule.d.ts +20 -1
  161. package/types/particle/modules/MainModule.d.ts +33 -1
  162. package/types/particle/modules/NoiseModule.d.ts +12 -1
  163. package/types/particle/modules/ParticleCompositeCurve.d.ts +37 -0
  164. package/types/particle/modules/ParticleCurve.d.ts +28 -0
  165. package/types/particle/modules/ParticleGeneratorModule.d.ts +7 -0
  166. package/types/particle/modules/ParticleGradient.d.ts +16 -0
  167. package/types/particle/modules/RotationOverLifetimeModule.d.ts +12 -0
  168. package/types/particle/modules/SizeOverLifetimeModule.d.ts +16 -0
  169. package/types/particle/modules/SubEmitter.d.ts +3 -0
  170. package/types/particle/modules/SubEmittersModule.d.ts +17 -0
  171. package/types/particle/modules/TextureSheetAnimationModule.d.ts +14 -1
  172. package/types/particle/modules/VelocityOverLifetimeModule.d.ts +28 -1
  173. package/types/particle/modules/shape/BaseShape.d.ts +33 -1
  174. package/types/particle/modules/shape/BoxShape.d.ts +13 -1
  175. package/types/particle/modules/shape/CircleShape.d.ts +13 -0
  176. package/types/particle/modules/shape/ConeShape.d.ts +13 -0
  177. package/types/particle/modules/shape/HemisphereShape.d.ts +13 -0
  178. package/types/particle/modules/shape/MeshShape.d.ts +17 -0
  179. package/types/particle/modules/shape/ShapeUtils.d.ts +13 -1
  180. package/types/particle/modules/shape/SphereShape.d.ts +13 -0
  181. package/types/physics/CharacterController.d.ts +21 -0
  182. package/types/physics/Collider.d.ts +39 -0
  183. package/types/physics/Collision.d.ts +3 -0
  184. package/types/physics/DynamicCollider.d.ts +14 -0
  185. package/types/physics/PhysicsMaterial.d.ts +3 -0
  186. package/types/physics/PhysicsScene.d.ts +51 -0
  187. package/types/physics/StaticCollider.d.ts +5 -0
  188. package/types/physics/enums/ColliderShapeChangeFlag.d.ts +8 -1
  189. package/types/physics/enums/HingeJointFlag.d.ts +14 -1
  190. package/types/physics/joint/HingeJoint.d.ts +4 -0
  191. package/types/physics/joint/Joint.d.ts +20 -0
  192. package/types/physics/joint/JointLimits.d.ts +3 -0
  193. package/types/physics/joint/JointMotor.d.ts +3 -0
  194. package/types/physics/shape/ColliderShape.d.ts +17 -0
  195. package/types/physics/shape/MeshColliderShape.d.ts +4 -0
  196. package/types/postProcess/FinalPass.d.ts +19 -1
  197. package/types/postProcess/PostProcess.d.ts +2 -0
  198. package/types/postProcess/PostProcessEffect.d.ts +4 -0
  199. package/types/postProcess/PostProcessEffectParameter.d.ts +4 -0
  200. package/types/postProcess/PostProcessManager.d.ts +43 -0
  201. package/types/postProcess/effects/BloomEffect.d.ts +25 -0
  202. package/types/postProcess/effects/TonemappingEffect.d.ts +3 -0
  203. package/types/renderingHardwareInterface/IPlatformTransformFeedback.d.ts +36 -1
  204. package/types/renderingHardwareInterface/IPlatformTransformFeedbackPrimitive.d.ts +40 -1
  205. package/types/shader/Shader.d.ts +22 -0
  206. package/types/shader/ShaderBlockProperty.d.ts +19 -1
  207. package/types/shader/ShaderData.d.ts +29 -0
  208. package/types/shader/ShaderFactory.d.ts +23 -0
  209. package/types/shader/ShaderMacro.d.ts +15 -0
  210. package/types/shader/ShaderMacroCollection.d.ts +57 -1
  211. package/types/shader/ShaderMacroProcessor.d.ts +72 -1
  212. package/types/shader/ShaderPass.d.ts +38 -0
  213. package/types/shader/ShaderProgram.d.ts +91 -1
  214. package/types/shader/ShaderProgramMap.d.ts +20 -1
  215. package/types/shader/ShaderProperty.d.ts +17 -0
  216. package/types/shader/ShaderTagKey.d.ts +2 -0
  217. package/types/shader/ShaderUniform.d.ts +49 -1
  218. package/types/shader/ShaderUniformBlock.d.ts +9 -1
  219. package/types/shader/enums/ConstantBufferBindingPoint.d.ts +7 -1
  220. package/types/shader/state/BlendState.d.ts +14 -0
  221. package/types/shader/state/DepthState.d.ts +14 -0
  222. package/types/shader/state/RasterState.d.ts +17 -0
  223. package/types/shader/state/RenderState.d.ts +11 -0
  224. package/types/shader/state/StencilState.d.ts +13 -0
  225. package/types/shadow/CascadedShadowCasterPass.d.ts +5 -0
  226. package/types/shadow/ShadowSliceData.d.ts +13 -1
  227. package/types/shadow/ShadowUtils.d.ts +43 -1
  228. package/types/sky/Sky.d.ts +9 -0
  229. package/types/texture/RenderTarget.d.ts +21 -0
  230. package/types/texture/Texture.d.ts +21 -0
  231. package/types/texture/Texture2D.d.ts +4 -0
  232. package/types/texture/Texture2DArray.d.ts +4 -0
  233. package/types/texture/TextureCube.d.ts +4 -0
  234. package/types/texture/TextureUtils.d.ts +16 -1
  235. package/types/trail/TrailRenderer.d.ts +5 -0
  236. package/types/ui/IUICanvas.d.ts +16 -1
  237. package/types/utils/DisorderedArray.d.ts +2 -0
  238. package/types/xr/XRManager.d.ts +28 -0
@@ -1,16 +1,23 @@
1
1
  import { DataObject } from "../../base/DataObject";
2
2
  import { ShaderData, ShaderMacro } from "../../shader";
3
+ import { ParticleGenerator } from "../ParticleGenerator";
3
4
  import { ParticleCompositeCurve } from "./ParticleCompositeCurve";
4
5
  /**
5
6
  * Particle generator module.
6
7
  */
7
8
  export declare abstract class ParticleGeneratorModule extends DataObject {
9
+ /** @internal */
10
+ _generator: ParticleGenerator;
8
11
  protected _enabled: boolean;
9
12
  /**
10
13
  * Specifies whether the module is enabled or not.
11
14
  */
12
15
  get enabled(): boolean;
13
16
  set enabled(value: boolean);
17
+ /**
18
+ * @internal
19
+ */
20
+ constructor(generator: ParticleGenerator);
14
21
  protected _enableMacro(shaderData: ShaderData, lastEnableMacro: ShaderMacro, enableMacro: ShaderMacro): ShaderMacro;
15
22
  protected _onCompositeCurveChange(lastValue: ParticleCompositeCurve, value: ParticleCompositeCurve): void;
16
23
  }
@@ -62,6 +62,18 @@ export declare class ParticleGradient extends DataObject {
62
62
  * @param alphaKeys - The alpha keys
63
63
  */
64
64
  setKeys(colorKeys: GradientColorKey[], alphaKeys: GradientAlphaKey[]): void;
65
+ /**
66
+ * @internal
67
+ */
68
+ _getColorTypeArray(): Float32Array;
69
+ /**
70
+ * @internal
71
+ */
72
+ _getAlphaTypeArray(): Float32Array;
73
+ /**
74
+ * @internal
75
+ */
76
+ _evaluate(time: number, out: Color): void;
65
77
  private _addKey;
66
78
  private _removeKey;
67
79
  private _setColorTypeArrayDirty;
@@ -71,6 +83,8 @@ export declare class ParticleGradient extends DataObject {
71
83
  * The color key of the particle gradient.
72
84
  */
73
85
  export declare class GradientColorKey extends DataObject {
86
+ /** @internal */
87
+ _onValueChanged: () => void;
74
88
  private _time;
75
89
  private _color;
76
90
  /**
@@ -94,6 +108,8 @@ export declare class GradientColorKey extends DataObject {
94
108
  * The alpha key of the particle gradient.
95
109
  */
96
110
  export declare class GradientAlphaKey extends DataObject {
111
+ /** @internal */
112
+ _onValueChanged: () => void;
97
113
  private _time;
98
114
  private _alpha;
99
115
  /**
@@ -1,3 +1,5 @@
1
+ import { Rand } from "@galacean/engine-math";
2
+ import { ShaderData } from "../../shader/ShaderData";
1
3
  import { ShaderMacro } from "../../shader/ShaderMacro";
2
4
  import { ShaderProperty } from "../../shader/ShaderProperty";
3
5
  import { ParticleCompositeCurve } from "./ParticleCompositeCurve";
@@ -26,9 +28,19 @@ export declare class RotationOverLifetimeModule extends ParticleGeneratorModule
26
28
  rotationY: ParticleCompositeCurve;
27
29
  /** Rotation over lifetime for z axis, in degrees. */
28
30
  rotationZ: ParticleCompositeCurve;
31
+ /** @internal */
32
+ _rotationRand: Rand;
29
33
  private _rotationMinConstant;
30
34
  private _rotationMaxConstant;
31
35
  private _enableSeparateMacro;
32
36
  private _modeMacro;
33
37
  private _isRandomTwoMacro;
38
+ /**
39
+ * @internal
40
+ */
41
+ _updateShaderData(shaderData: ShaderData): void;
42
+ /**
43
+ * @internal
44
+ */
45
+ _resetRandomSeed(seed: number): void;
34
46
  }
@@ -1,3 +1,5 @@
1
+ import { Rand } from "@galacean/engine-math";
2
+ import { ShaderData } from "../../shader/ShaderData";
1
3
  import { ShaderMacro } from "../../shader/ShaderMacro";
2
4
  import { ShaderProperty } from "../../shader/ShaderProperty";
3
5
  import { ParticleGenerator } from "../ParticleGenerator";
@@ -16,6 +18,8 @@ export declare class SizeOverLifetimeModule extends ParticleGeneratorModule {
16
18
  static readonly _maxCurveXProperty: ShaderProperty;
17
19
  static readonly _maxCurveYProperty: ShaderProperty;
18
20
  static readonly _maxCurveZProperty: ShaderProperty;
21
+ /** @internal */
22
+ _sizeRand: Rand;
19
23
  private _separateAxes;
20
24
  private _sizeX;
21
25
  private _sizeY;
@@ -49,4 +53,16 @@ export declare class SizeOverLifetimeModule extends ParticleGeneratorModule {
49
53
  get size(): ParticleCompositeCurve;
50
54
  set size(value: ParticleCompositeCurve);
51
55
  constructor(generator: ParticleGenerator);
56
+ /**
57
+ * @internal
58
+ */
59
+ _updateShaderData(shaderData: ShaderData): void;
60
+ /**
61
+ * @internal
62
+ */
63
+ _isRandomCurveMode(): boolean;
64
+ /**
65
+ * @internal
66
+ */
67
+ _resetRandomSeed(seed: number): void;
52
68
  }
@@ -2,6 +2,7 @@ import { DataObject } from "../../base/DataObject";
2
2
  import { ParticleRenderer } from "../ParticleRenderer";
3
3
  import { ParticleSubEmitterInheritProperty } from "../enums/ParticleSubEmitterInheritProperty";
4
4
  import { ParticleSubEmitterType } from "../enums/ParticleSubEmitterType";
5
+ import type { SubEmittersModule } from "./SubEmittersModule";
5
6
  /**
6
7
  * One slot in `SubEmittersModule.subEmitters`. Configures which sub-emitter
7
8
  * fires, on which parent event, with what inheritance, probability, and count.
@@ -13,6 +14,8 @@ export declare class SubEmitter extends DataObject {
13
14
  emitProbability: number;
14
15
  /** Number of sub particles emitted per parent event. */
15
16
  emitCount: number;
17
+ /** @internal */
18
+ _module: SubEmittersModule;
16
19
  private _emitter;
17
20
  private _type;
18
21
  /**
@@ -1,3 +1,4 @@
1
+ import { Color, Vector3 } from "@galacean/engine-math";
1
2
  import { ParticleSubEmitterInheritProperty } from "../enums/ParticleSubEmitterInheritProperty";
2
3
  import { ParticleSubEmitterType } from "../enums/ParticleSubEmitterType";
3
4
  import { ParticleRenderer } from "../ParticleRenderer";
@@ -37,4 +38,20 @@ export declare class SubEmittersModule extends ParticleGeneratorModule {
37
38
  clear(): void;
38
39
  get enabled(): boolean;
39
40
  set enabled(value: boolean);
41
+ /**
42
+ * @internal
43
+ */
44
+ _dispatchEvent(type: ParticleSubEmitterType, worldPosition: Vector3, parentColor: Color, parentSize: Vector3, parentRotation: Vector3, worldDirection?: Vector3): void;
45
+ /**
46
+ * @internal
47
+ */
48
+ _resetRandomSeed(seed: number): void;
49
+ /**
50
+ * @internal
51
+ */
52
+ _hasSubEmitterOfType(type: ParticleSubEmitterType): boolean;
53
+ /**
54
+ * @internal
55
+ */
56
+ _validateEmitter(emitter: ParticleRenderer): void;
40
57
  }
@@ -1,4 +1,5 @@
1
- import { Vector2 } from "@galacean/engine-math";
1
+ import { Rand, Vector2, Vector3 } from "@galacean/engine-math";
2
+ import { ShaderData } from "../../shader/ShaderData";
2
3
  import { ParticleCompositeCurve } from "./ParticleCompositeCurve";
3
4
  import { ParticleGeneratorModule } from "./ParticleGeneratorModule";
4
5
  import { ParticleGenerator } from "../ParticleGenerator";
@@ -18,6 +19,10 @@ export declare class TextureSheetAnimationModule extends ParticleGeneratorModule
18
19
  type: TextureSheetAnimationType;
19
20
  /** Cycle count. */
20
21
  cycleCount: number;
22
+ /** @internal */
23
+ _tillingInfo: Vector3;
24
+ /** @internal */
25
+ _frameOverTimeRand: Rand;
21
26
  private _tiling;
22
27
  private _frameCurveMacro;
23
28
  /**
@@ -26,6 +31,14 @@ export declare class TextureSheetAnimationModule extends ParticleGeneratorModule
26
31
  get tiling(): Vector2;
27
32
  set tiling(value: Vector2);
28
33
  constructor(generator: ParticleGenerator);
34
+ /**
35
+ * @internal
36
+ */
37
+ _updateShaderData(shaderData: ShaderData): void;
38
+ /**
39
+ * @internal
40
+ */
41
+ _resetRandomSeed(randomSeed: number): void;
29
42
  private _onTilingChanged;
30
43
  }
31
44
  /**
@@ -1,5 +1,6 @@
1
- import { Vector3 } from "@galacean/engine-math";
1
+ import { Rand, Vector3 } from "@galacean/engine-math";
2
2
  import { ShaderMacro } from "../../shader";
3
+ import { ShaderData } from "../../shader/ShaderData";
3
4
  import { ShaderProperty } from "../../shader/ShaderProperty";
4
5
  import { ParticleSimulationSpace } from "../enums/ParticleSimulationSpace";
5
6
  import { ParticleGenerator } from "../ParticleGenerator";
@@ -40,6 +41,8 @@ export declare class VelocityOverLifetimeModule extends ParticleGeneratorModule
40
41
  static readonly _radialMinCurveProperty: ShaderProperty;
41
42
  static readonly _radialMaxCurveProperty: ShaderProperty;
42
43
  static readonly _offsetProperty: ShaderProperty;
44
+ /** @internal */
45
+ _velocityRand: Rand;
43
46
  private _velocityMinConstant;
44
47
  private _velocityMaxConstant;
45
48
  private _velocityMacro;
@@ -112,5 +115,29 @@ export declare class VelocityOverLifetimeModule extends ParticleGeneratorModule
112
115
  get enabled(): boolean;
113
116
  set enabled(value: boolean);
114
117
  constructor(generator: ParticleGenerator);
118
+ /**
119
+ * @internal
120
+ */
121
+ _updateShaderData(shaderData: ShaderData): void;
122
+ /**
123
+ * @internal
124
+ */
125
+ _resetRandomSeed(seed: number): void;
126
+ /**
127
+ * @internal
128
+ */
129
+ _needTransformFeedback(): boolean;
130
+ /**
131
+ * @internal
132
+ */
133
+ _isOrbitalActive(): boolean;
134
+ /**
135
+ * @internal
136
+ */
137
+ _isRadialActive(): boolean;
138
+ /**
139
+ * @internal
140
+ */
141
+ _isRandomMode(): boolean;
115
142
  private _onOrbitalRadialChange;
116
143
  }
@@ -1,4 +1,4 @@
1
- import { Rand, Vector3 } from "@galacean/engine-math";
1
+ import { BoundingBox, Rand, Vector2, Vector3 } from "@galacean/engine-math";
2
2
  import { UpdateFlagManager } from "../../../UpdateFlagManager";
3
3
  import { DataObject } from "../../../base/DataObject";
4
4
  import { ParticleShapeType } from "./enums/ParticleShapeType";
@@ -6,6 +6,14 @@ import { ParticleShapeType } from "./enums/ParticleShapeType";
6
6
  * Base class for all particle shapes.
7
7
  */
8
8
  export declare abstract class BaseShape extends DataObject {
9
+ /** @internal */
10
+ static _tempVector20: Vector2;
11
+ /** @internal */
12
+ static _tempVector21: Vector2;
13
+ /** @internal */
14
+ static _tempVector30: Vector3;
15
+ /** @internal */
16
+ static _tempVector31: Vector3;
9
17
  private static _tempQuaternion;
10
18
  /** The type of shape to emit particles from. */
11
19
  abstract readonly shapeType: ParticleShapeType;
@@ -44,6 +52,30 @@ export declare abstract class BaseShape extends DataObject {
44
52
  get scale(): Vector3;
45
53
  set scale(value: Vector3);
46
54
  constructor();
55
+ /**
56
+ * @internal
57
+ */
58
+ _registerOnValueChanged(listener: () => void): void;
59
+ /**
60
+ * @internal
61
+ */
62
+ _unRegisterOnValueChanged(listener: () => void): void;
63
+ /**
64
+ * @internal
65
+ */
66
+ _destroy(): void;
67
+ /**
68
+ * @internal
69
+ */
70
+ _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void;
71
+ /**
72
+ * @internal
73
+ */
74
+ _getPositionRange(bounds: BoundingBox): void;
75
+ /**
76
+ * @internal
77
+ */
78
+ _getDirectionRange(outMin: Vector3, outMax: Vector3): void;
47
79
  protected abstract _generateLocalPositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void;
48
80
  protected abstract _getLocalPositionRange(outMin: Vector3, outMax: Vector3): void;
49
81
  protected abstract _getLocalDirectionRange(outMin: Vector3, outMax: Vector3): void;
@@ -1,4 +1,4 @@
1
- import { Vector3 } from "@galacean/engine-math";
1
+ import { Rand, Vector3 } from "@galacean/engine-math";
2
2
  import { BaseShape } from "./BaseShape";
3
3
  import { ParticleShapeType } from "./enums/ParticleShapeType";
4
4
  /**
@@ -13,4 +13,16 @@ export declare class BoxShape extends BaseShape {
13
13
  get size(): Vector3;
14
14
  set size(value: Vector3);
15
15
  constructor();
16
+ /**
17
+ * @internal
18
+ */
19
+ _generateLocalPositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void;
20
+ /**
21
+ * @internal
22
+ */
23
+ _getLocalDirectionRange(outMin: Vector3, outMax: Vector3): void;
24
+ /**
25
+ * @internal
26
+ */
27
+ _getLocalPositionRange(outMin: Vector3, outMax: Vector3): void;
16
28
  }
@@ -1,3 +1,4 @@
1
+ import { Rand, Vector3 } from "@galacean/engine-math";
1
2
  import { BaseShape } from "./BaseShape";
2
3
  import { ParticleShapeArcMode } from "./enums/ParticleShapeArcMode";
3
4
  import { ParticleShapeType } from "./enums/ParticleShapeType";
@@ -30,5 +31,17 @@ export declare class CircleShape extends BaseShape {
30
31
  */
31
32
  get arcSpeed(): number;
32
33
  set arcSpeed(value: number);
34
+ /**
35
+ * @internal
36
+ */
37
+ _generateLocalPositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void;
38
+ /**
39
+ * @internal
40
+ */
41
+ _getLocalDirectionRange(outMin: Vector3, outMax: Vector3): void;
42
+ /**
43
+ * @internal
44
+ */
45
+ _getLocalPositionRange(outMin: Vector3, outMax: Vector3): void;
33
46
  private _getUnitArcRange;
34
47
  }
@@ -1,3 +1,4 @@
1
+ import { Rand, Vector3 } from "@galacean/engine-math";
1
2
  import { BaseShape } from "./BaseShape";
2
3
  import { ParticleShapeType } from "./enums/ParticleShapeType";
3
4
  /**
@@ -29,6 +30,18 @@ export declare class ConeShape extends BaseShape {
29
30
  */
30
31
  get emitType(): ConeEmitType;
31
32
  set emitType(value: ConeEmitType);
33
+ /**
34
+ * @internal
35
+ */
36
+ _generateLocalPositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void;
37
+ /**
38
+ * @internal
39
+ */
40
+ _getLocalDirectionRange(outMin: Vector3, outMax: Vector3): void;
41
+ /**
42
+ * @internal
43
+ */
44
+ _getLocalPositionRange(outMin: Vector3, outMax: Vector3): void;
32
45
  }
33
46
  /**
34
47
  * Cone emitter type.
@@ -1,3 +1,4 @@
1
+ import { Rand, Vector3 } from "@galacean/engine-math";
1
2
  import { BaseShape } from "./BaseShape";
2
3
  import { ParticleShapeType } from "./enums/ParticleShapeType";
3
4
  /**
@@ -11,4 +12,16 @@ export declare class HemisphereShape extends BaseShape {
11
12
  */
12
13
  get radius(): number;
13
14
  set radius(value: number);
15
+ /**
16
+ * @internal
17
+ */
18
+ _generateLocalPositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void;
19
+ /**
20
+ * @internal
21
+ */
22
+ _getLocalDirectionRange(outMin: Vector3, outMax: Vector3): void;
23
+ /**
24
+ * @internal
25
+ */
26
+ _getLocalPositionRange(outMin: Vector3, outMax: Vector3): void;
14
27
  }
@@ -1,3 +1,4 @@
1
+ import { Rand, Vector3 } from "@galacean/engine-math";
1
2
  import type { ICloneHook } from "../../../clone/ICloneHook";
2
3
  import { ModelMesh } from "../../../mesh";
3
4
  import { BaseShape } from "./BaseShape";
@@ -17,6 +18,22 @@ export declare class MeshShape extends BaseShape implements ICloneHook<MeshShape
17
18
  */
18
19
  get mesh(): ModelMesh;
19
20
  set mesh(value: ModelMesh);
21
+ /**
22
+ * @internal
23
+ */
24
+ _destroy(): void;
25
+ /**
26
+ * @internal
27
+ */
28
+ _generateLocalPositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void;
29
+ /**
30
+ * @internal
31
+ */
32
+ _getLocalPositionRange(outMin: Vector3, outMax: Vector3): void;
33
+ /**
34
+ * @internal
35
+ */
36
+ _getLocalDirectionRange(outMin: Vector3, outMax: Vector3): void;
20
37
  private _getAttributeBuffer;
21
38
  private _onMeshChanged;
22
39
  /**
@@ -1 +1,13 @@
1
- export {};
1
+ import { Rand, Vector2, Vector3 } from "@galacean/engine-math";
2
+ /**
3
+ * @internal
4
+ */
5
+ export declare class ShapeUtils {
6
+ static randomPointUnitArcCircle(arc: number, out: Vector2, rand: Rand): void;
7
+ static randomPointInsideUnitArcCircle(arc: number, out: Vector2, rand: Rand): void;
8
+ static randomPointUnitCircle(out: Vector2, rand: Rand): void;
9
+ static randomPointInsideUnitCircle(out: Vector2, rand: Rand): void;
10
+ static _randomPointUnitSphere(out: Vector3, rand: Rand): void;
11
+ static _randomPointInsideUnitSphere(out: Vector3, rand: Rand): void;
12
+ static _randomPointInsideHalfUnitBox(out: Vector3, rand?: Rand): void;
13
+ }
@@ -1,3 +1,4 @@
1
+ import { Rand, Vector3 } from "@galacean/engine-math";
1
2
  import { BaseShape } from "./BaseShape";
2
3
  import { ParticleShapeType } from "./enums/ParticleShapeType";
3
4
  /**
@@ -11,4 +12,16 @@ export declare class SphereShape extends BaseShape {
11
12
  */
12
13
  get radius(): number;
13
14
  set radius(value: number);
15
+ /**
16
+ * @internal
17
+ */
18
+ _generateLocalPositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void;
19
+ /**
20
+ * @internal
21
+ */
22
+ _getLocalDirectionRange(outMin: Vector3, outMax: Vector3): void;
23
+ /**
24
+ * @internal
25
+ */
26
+ _getLocalPositionRange(outMin: Vector3, outMax: Vector3): void;
14
27
  }
@@ -1,4 +1,5 @@
1
1
  import { Vector3 } from "@galacean/engine-math";
2
+ import { Entity } from "../Entity";
2
3
  import { Collider } from "./Collider";
3
4
  import { ControllerNonWalkableMode } from "./enums/ControllerNonWalkableMode";
4
5
  import { ColliderShape } from "./shape";
@@ -32,6 +33,10 @@ export declare class CharacterController extends Collider {
32
33
  */
33
34
  get slopeLimit(): number;
34
35
  set slopeLimit(value: number);
36
+ /**
37
+ * @internal
38
+ */
39
+ constructor(entity: Entity);
35
40
  /**
36
41
  * Moves the character using a "collide-and-slide" algorithm.
37
42
  * @param disp - Displacement vector
@@ -45,6 +50,22 @@ export declare class CharacterController extends Collider {
45
50
  * @param shape - Collider shape
46
51
  */
47
52
  addShape(shape: ColliderShape): void;
53
+ /**
54
+ * @internal
55
+ */
56
+ _onUpdate(): void;
57
+ /**
58
+ * @internal
59
+ */
60
+ _onLateUpdate(): void;
61
+ /**
62
+ * @internal
63
+ */
64
+ _onEnableInScene(): void;
65
+ /**
66
+ * @internal
67
+ */
68
+ _onDisableInScene(): void;
48
69
  protected _syncNative(): void;
49
70
  private _syncWorldPositionFromPhysicalSpace;
50
71
  private _setUpDirection;
@@ -1,13 +1,20 @@
1
+ import { ICollider } from "@galacean/engine-design";
1
2
  import { BoolUpdateFlag } from "../BoolUpdateFlag";
2
3
  import type { ICloneHook } from "../clone/ICloneHook";
3
4
  import { Component } from "../Component";
5
+ import { Entity } from "../Entity";
4
6
  import { Layer } from "../Layer";
5
7
  import { ColliderShape } from "./shape/ColliderShape";
8
+ import { ColliderShapeChangeFlag } from "./enums/ColliderShapeChangeFlag";
6
9
  /**
7
10
  * Base class for all colliders.
8
11
  * @decorator `@dependentComponents(Transform, DependentMode.CheckOnly)`
9
12
  */
10
13
  export declare class Collider extends Component implements ICloneHook<Collider> {
14
+ /** @internal */
15
+ _index: number;
16
+ /** @internal */
17
+ _nativeCollider: ICollider;
11
18
  protected _updateFlag: BoolUpdateFlag;
12
19
  protected _shapes: ColliderShape[];
13
20
  protected _collisionLayerIndex: number;
@@ -22,6 +29,10 @@ export declare class Collider extends Component implements ICloneHook<Collider>
22
29
  */
23
30
  get collisionLayer(): Layer;
24
31
  set collisionLayer(value: Layer);
32
+ /**
33
+ * @internal
34
+ */
35
+ constructor(entity: Entity);
25
36
  /**
26
37
  * Add collider shape on this collider.
27
38
  * @remarks If the shape belongs to another Collider, it is moved to this Collider.
@@ -37,11 +48,39 @@ export declare class Collider extends Component implements ICloneHook<Collider>
37
48
  * Remove all shape attached.
38
49
  */
39
50
  clearShapes(): void;
51
+ /**
52
+ * @internal
53
+ */
54
+ _onUpdate(): void;
55
+ /**
56
+ * @internal
57
+ */
58
+ _onLateUpdate(): void;
59
+ /**
60
+ * @internal
61
+ */
62
+ _onEnableInScene(): void;
63
+ /**
64
+ * @internal
65
+ */
66
+ _onDisableInScene(): void;
40
67
  /**
41
68
  * @inheritdoc
42
69
  */
43
70
  _onClone(target: Collider): void;
71
+ /**
72
+ * @internal
73
+ */
74
+ _handleShapesChanged(changeType: ColliderShapeChangeFlag): void;
75
+ /**
76
+ * @internal
77
+ */
78
+ _setNativeShapeAttached(shape: ColliderShape, attached: boolean): void;
44
79
  protected _syncNative(): void;
80
+ /**
81
+ * @internal
82
+ */
83
+ protected _onDestroy(): void;
45
84
  protected _addNativeShape(shape: ColliderShape): void;
46
85
  protected _removeNativeShape(shape: ColliderShape): void;
47
86
  private _setCollisionLayer;
@@ -1,9 +1,12 @@
1
1
  import { ContactPoint } from "./ContactPoint";
2
2
  import { ColliderShape } from "./shape";
3
+ import { ICollision } from "@galacean/engine-design";
3
4
  /**
4
5
  * Collision information between two shapes when they collide.
5
6
  */
6
7
  export declare class Collision {
8
+ /** @internal */
9
+ _nativeCollision: ICollision;
7
10
  /** The target shape be collided. */
8
11
  shape: ColliderShape;
9
12
  /**
@@ -1,5 +1,7 @@
1
1
  import { Quaternion, Vector3 } from "@galacean/engine-math";
2
+ import { Entity } from "../Entity";
2
3
  import { Collider } from "./Collider";
4
+ import { ColliderShapeChangeFlag } from "./enums/ColliderShapeChangeFlag";
3
5
  import { ColliderShape } from "./shape/ColliderShape";
4
6
  /**
5
7
  * A dynamic collider can act with self-defined movement or physical force.
@@ -115,6 +117,10 @@ export declare class DynamicCollider extends Collider {
115
117
  */
116
118
  get collisionDetectionMode(): CollisionDetectionMode;
117
119
  set collisionDetectionMode(value: CollisionDetectionMode);
120
+ /**
121
+ * @internal
122
+ */
123
+ constructor(entity: Entity);
118
124
  /**
119
125
  * Apply a force to the DynamicCollider.
120
126
  * @param force - The force make the collider move
@@ -170,10 +176,18 @@ export declare class DynamicCollider extends Collider {
170
176
  * @inheritdoc
171
177
  */
172
178
  addShape(shape: ColliderShape): void;
179
+ /**
180
+ * @internal
181
+ */
182
+ _onLateUpdate(): void;
173
183
  /**
174
184
  * @inheritdoc
175
185
  */
176
186
  _onClone(target: DynamicCollider): void;
187
+ /**
188
+ * @internal
189
+ */
190
+ _handleShapesChanged(changeType: ColliderShapeChangeFlag): void;
177
191
  protected _syncNative(): void;
178
192
  private _setMassAndUpdateInertia;
179
193
  private _setLinearVelocity;
@@ -1,3 +1,4 @@
1
+ import { IPhysicsMaterial } from "@galacean/engine-design";
1
2
  import { PhysicsMaterialCombineMode } from "./enums/PhysicsMaterialCombineMode";
2
3
  /**
3
4
  * Material class to represent a set of surface properties.
@@ -9,6 +10,8 @@ export declare class PhysicsMaterial {
9
10
  private _bounceCombine;
10
11
  private _frictionCombine;
11
12
  private _destroyed;
13
+ /** @internal */
14
+ _nativeMaterial: IPhysicsMaterial;
12
15
  constructor();
13
16
  /**
14
17
  * The coefficient of bounciness, ranging from 0 to 1.