@galacean/engine-core 2.0.0-alpha.44 → 2.0.0-alpha.46

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 +105 -30
  2. package/dist/main.js.map +1 -1
  3. package/dist/module.js +105 -30
  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 +38 -1
  23. package/types/ComponentsManager.d.ts +17 -0
  24. package/types/Engine.d.ts +106 -2
  25. package/types/Entity.d.ts +91 -1
  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 +19 -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 +28 -0
  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,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.
@@ -1,6 +1,8 @@
1
1
  import { Ray, Vector3, Quaternion } from "@galacean/engine-math";
2
2
  import { Layer } from "../Layer";
3
3
  import { Scene } from "../Scene";
4
+ import { CharacterController } from "./CharacterController";
5
+ import { Collider } from "./Collider";
4
6
  import { HitResult } from "./HitResult";
5
7
  import { ColliderShape } from "./shape";
6
8
  /**
@@ -265,6 +267,55 @@ export declare class PhysicsScene {
265
267
  * @returns The collider shapes overlapping with the capsule
266
268
  */
267
269
  overlapCapsuleAll(center: Vector3, radius: number, height: number, orientation?: Quaternion, layerMask?: Layer, shapes?: ColliderShape[]): ColliderShape[];
270
+ /**
271
+ * Call on every frame to update pose of objects.
272
+ * @internal
273
+ */
274
+ _update(deltaTime: number): void;
275
+ /**
276
+ * Add collider into the manager.
277
+ * @param collider - StaticCollider or DynamicCollider.
278
+ * @internal
279
+ */
280
+ _addCollider(collider: Collider): void;
281
+ /**
282
+ * Add character controller into the manager.
283
+ * @param controller - Character Controller.
284
+ * @internal
285
+ */
286
+ _addCharacterController(controller: CharacterController): void;
287
+ /**
288
+ * Remove collider.
289
+ * @param collider - StaticCollider or DynamicCollider.
290
+ * @internal
291
+ */
292
+ _removeCollider(collider: Collider): void;
293
+ /**
294
+ * Remove collider.
295
+ * @param controller - Character Controller.
296
+ * @internal
297
+ */
298
+ _removeCharacterController(controller: CharacterController): void;
299
+ /**
300
+ * @internal
301
+ */
302
+ _addContactEventConsumer(delta: 1 | -1): void;
303
+ /**
304
+ * @internal
305
+ */
306
+ _callColliderOnUpdate(): void;
307
+ /**
308
+ * @internal
309
+ */
310
+ _callColliderOnLateUpdate(): void;
311
+ /**
312
+ * @internal
313
+ */
314
+ _gc(): void;
315
+ /**
316
+ * @internal
317
+ */
318
+ _destroy(): void;
268
319
  private _dispatchEvents;
269
320
  private _setGravity;
270
321
  private _createPreFilter;
@@ -1,7 +1,12 @@
1
+ import { Entity } from "../Entity";
1
2
  import { Collider } from "./Collider";
2
3
  /**
3
4
  * A static collider component that will not move.
4
5
  * @remarks Mostly used for object which always stays at the same place and never moves around.
5
6
  */
6
7
  export declare class StaticCollider extends Collider {
8
+ /**
9
+ * @internal
10
+ */
11
+ constructor(entity: Entity);
7
12
  }
@@ -1 +1,8 @@
1
- export {};
1
+ /**
2
+ * @internal
3
+ */
4
+ export declare enum ColliderShapeChangeFlag {
5
+ Property = 1,
6
+ Count = 2,
7
+ Both = 3
8
+ }
@@ -1 +1,14 @@
1
- export {};
1
+ /**
2
+ * Flags specific to the Hinge Joint.
3
+ * @internal
4
+ */
5
+ export declare enum HingeJointFlag {
6
+ /** None. */
7
+ None = 0,
8
+ /** Enable the limit. */
9
+ LimitEnabled = 1,
10
+ /** Enable the drive. */
11
+ DriveEnabled = 2,
12
+ /** If the existing velocity is beyond the drive velocity, do not add force. */
13
+ DriveFreeSpin = 4
14
+ }
@@ -53,6 +53,10 @@ export declare class HingeJoint extends Joint {
53
53
  get limits(): JointLimits;
54
54
  set limits(value: JointLimits);
55
55
  constructor(entity: Entity);
56
+ /**
57
+ * @internal
58
+ */
59
+ _onDisableInScene(): void;
56
60
  protected _createJoint(): void;
57
61
  protected _syncNative(): void;
58
62
  private _onMotorChanged;
@@ -1,3 +1,4 @@
1
+ import { DataObject } from "../../base/DataObject";
1
2
  import { IJoint } from "@galacean/engine-design";
2
3
  import { Vector3 } from "@galacean/engine-math";
3
4
  import { Component } from "../../Component";
@@ -70,6 +71,14 @@ export declare abstract class Joint extends Component {
70
71
  get breakTorque(): number;
71
72
  set breakTorque(value: number);
72
73
  constructor(entity: Entity);
74
+ /**
75
+ * @internal
76
+ */
77
+ _onEnableInScene(): void;
78
+ /**
79
+ * @internal
80
+ */
81
+ _onDisableInScene(): void;
73
82
  protected abstract _createJoint(): void;
74
83
  protected _syncNative(): void;
75
84
  private _calculateConnectedAnchor;
@@ -79,3 +88,14 @@ export declare abstract class Joint extends Component {
79
88
  private _updateRotation;
80
89
  private _updateActualAnchor;
81
90
  }
91
+ /**
92
+ * @internal
93
+ */
94
+ declare class JointColliderInfo extends DataObject {
95
+ collider: Collider;
96
+ anchor: Vector3;
97
+ actualAnchor: Vector3;
98
+ massScale: number;
99
+ inertiaScale: number;
100
+ }
101
+ export {};
@@ -1,8 +1,11 @@
1
1
  import { DataObject } from "../../base/DataObject";
2
+ import { UpdateFlagManager } from "../../UpdateFlagManager";
2
3
  /**
3
4
  * JointLimits is used to limit the joints angle.
4
5
  */
5
6
  export declare class JointLimits extends DataObject {
7
+ /** @internal */
8
+ _updateFlagManager: UpdateFlagManager;
6
9
  private _max;
7
10
  private _min;
8
11
  private _contactDistance;
@@ -1,8 +1,11 @@
1
1
  import { DataObject } from "../../base/DataObject";
2
+ import { UpdateFlagManager } from "../../UpdateFlagManager";
2
3
  /**
3
4
  * The JointMotor is used to motorize a joint.
4
5
  */
5
6
  export declare class JointMotor extends DataObject {
7
+ /** @internal */
8
+ _updateFlagManager: UpdateFlagManager;
6
9
  private _targetVelocity;
7
10
  private _forceLimit;
8
11
  private _gearRatio;