@galacean/engine-core 1.6.8 → 1.6.9

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 (403) hide show
  1. package/dist/main.js +37541 -0
  2. package/dist/main.js.map +1 -0
  3. package/dist/module.js +37259 -0
  4. package/dist/module.js.map +1 -0
  5. package/package.json +3 -3
  6. package/types/2d/assembler/ISpriteAssembler.d.ts +11 -0
  7. package/types/2d/assembler/ISpriteRenderer.d.ts +16 -0
  8. package/types/2d/assembler/SimpleSpriteAssembler.d.ts +13 -0
  9. package/types/2d/assembler/SlicedSpriteAssembler.d.ts +15 -0
  10. package/types/2d/assembler/TiledSpriteAssembler.d.ts +17 -0
  11. package/types/2d/atlas/FontAtlas.d.ts +1 -0
  12. package/types/2d/atlas/SpriteAtlas.d.ts +32 -0
  13. package/types/2d/atlas/types.d.ts +69 -0
  14. package/types/2d/enums/FontStyle.d.ts +11 -0
  15. package/types/2d/enums/SpriteDrawMode.d.ts +11 -0
  16. package/types/2d/enums/SpriteMaskInteraction.d.ts +11 -0
  17. package/types/2d/enums/SpriteModifyFlags.d.ts +23 -0
  18. package/types/2d/enums/SpriteTileMode.d.ts +11 -0
  19. package/types/2d/enums/TextAlignment.d.ts +22 -0
  20. package/types/2d/enums/TextOverflow.d.ts +9 -0
  21. package/types/2d/index.d.ts +16 -0
  22. package/types/2d/sprite/Sprite.d.ts +106 -0
  23. package/types/2d/sprite/SpriteMask.d.ts +70 -0
  24. package/types/2d/sprite/SpriteRenderer.d.ts +95 -0
  25. package/types/2d/sprite/index.d.ts +3 -0
  26. package/types/2d/text/CharInfo.d.ts +1 -0
  27. package/types/2d/text/CharRenderInfo.d.ts +1 -0
  28. package/types/2d/text/Font.d.ts +21 -0
  29. package/types/2d/text/ITextRenderer.d.ts +8 -0
  30. package/types/2d/text/SubFont.d.ts +1 -0
  31. package/types/2d/text/TextRenderer.d.ts +122 -0
  32. package/types/2d/text/TextUtils.d.ts +1 -0
  33. package/types/2d/text/index.d.ts +5 -0
  34. package/types/Background.d.ts +53 -0
  35. package/types/BasicResources.d.ts +2 -0
  36. package/types/BoolUpdateFlag.d.ts +12 -0
  37. package/types/Camera.d.ts +321 -0
  38. package/types/Canvas.d.ts +19 -0
  39. package/types/Component.d.ts +27 -0
  40. package/types/ComponentsDependencies.d.ts +22 -0
  41. package/types/ComponentsManager.d.ts +52 -0
  42. package/types/Engine.d.ts +150 -0
  43. package/types/EngineSettings.d.ts +5 -0
  44. package/types/Entity.d.ts +170 -0
  45. package/types/Layer.d.ts +73 -0
  46. package/types/Platform.d.ts +15 -0
  47. package/types/Polyfill.d.ts +1 -0
  48. package/types/RenderPipeline/BasicRenderPipeline.d.ts +55 -0
  49. package/types/RenderPipeline/BatchUtils.d.ts +1 -0
  50. package/types/RenderPipeline/BatcherManager.d.ts +1 -0
  51. package/types/RenderPipeline/Blitter.d.ts +28 -0
  52. package/types/RenderPipeline/CullingResults.d.ts +1 -0
  53. package/types/RenderPipeline/DepthOnlyPass.d.ts +1 -0
  54. package/types/RenderPipeline/MaskManager.d.ts +1 -0
  55. package/types/RenderPipeline/OpaqueTexturePass.d.ts +1 -0
  56. package/types/RenderPipeline/PipelinePass.d.ts +16 -0
  57. package/types/RenderPipeline/PipelineUtils.d.ts +1 -0
  58. package/types/RenderPipeline/PrimitiveChunk.d.ts +1 -0
  59. package/types/RenderPipeline/PrimitiveChunkManager.d.ts +1 -0
  60. package/types/RenderPipeline/RenderContext.d.ts +1 -0
  61. package/types/RenderPipeline/RenderElement.d.ts +12 -0
  62. package/types/RenderPipeline/RenderQueue.d.ts +1 -0
  63. package/types/RenderPipeline/SubPrimitiveChunk.d.ts +1 -0
  64. package/types/RenderPipeline/SubRenderElement.d.ts +22 -0
  65. package/types/RenderPipeline/VertexArea.d.ts +1 -0
  66. package/types/RenderPipeline/enums/PipelineStage.d.ts +11 -0
  67. package/types/RenderPipeline/enums/RenderQueueMaskType.d.ts +1 -0
  68. package/types/RenderPipeline/index.d.ts +5 -0
  69. package/types/Renderer.d.ts +135 -0
  70. package/types/Scene.d.ts +183 -0
  71. package/types/SceneManager.d.ts +51 -0
  72. package/types/Script.d.ts +144 -0
  73. package/types/SystemInfo.d.ts +27 -0
  74. package/types/Transform.d.ts +304 -0
  75. package/types/UpdateFlag.d.ts +20 -0
  76. package/types/UpdateFlagManager.d.ts +1 -0
  77. package/types/Utils.d.ts +37 -0
  78. package/types/VirtualCamera.d.ts +1 -0
  79. package/types/animation/AnimationClip.d.ts +87 -0
  80. package/types/animation/AnimationClipCurveBinding.d.ts +30 -0
  81. package/types/animation/AnimationEvent.d.ts +11 -0
  82. package/types/animation/Animator.d.ts +154 -0
  83. package/types/animation/AnimatorCondition.d.ts +13 -0
  84. package/types/animation/AnimatorController.d.ts +72 -0
  85. package/types/animation/AnimatorControllerLayer.d.ts +21 -0
  86. package/types/animation/AnimatorControllerParameter.d.ts +14 -0
  87. package/types/animation/AnimatorLayerMask.d.ts +45 -0
  88. package/types/animation/AnimatorState.d.ts +69 -0
  89. package/types/animation/AnimatorStateMachine.d.ts +85 -0
  90. package/types/animation/AnimatorStateTransition.d.ts +59 -0
  91. package/types/animation/AnimatorStateTransitionCollection.d.ts +1 -0
  92. package/types/animation/Keyframe.d.ts +20 -0
  93. package/types/animation/LayerPathMask.d.ts +16 -0
  94. package/types/animation/StateMachineScript.d.ts +32 -0
  95. package/types/animation/animationCurve/AnimationArrayCurve.d.ts +7 -0
  96. package/types/animation/animationCurve/AnimationBoolCurve.d.ts +7 -0
  97. package/types/animation/animationCurve/AnimationColorCurve.d.ts +8 -0
  98. package/types/animation/animationCurve/AnimationCurve.d.ts +39 -0
  99. package/types/animation/animationCurve/AnimationFloatArrayCurve.d.ts +11 -0
  100. package/types/animation/animationCurve/AnimationFloatCurve.d.ts +7 -0
  101. package/types/animation/animationCurve/AnimationQuaternionCurve.d.ts +8 -0
  102. package/types/animation/animationCurve/AnimationRectCurve.d.ts +8 -0
  103. package/types/animation/animationCurve/AnimationRefCurve.d.ts +8 -0
  104. package/types/animation/animationCurve/AnimationStringCurve.d.ts +7 -0
  105. package/types/animation/animationCurve/AnimationVector2Curve.d.ts +8 -0
  106. package/types/animation/animationCurve/AnimationVector3Curve.d.ts +8 -0
  107. package/types/animation/animationCurve/AnimationVector4Curve.d.ts +8 -0
  108. package/types/animation/animationCurve/index.d.ts +13 -0
  109. package/types/animation/animationCurve/interfaces/IAnimationCurveCalculator.d.ts +1 -0
  110. package/types/animation/enums/AnimatorConditionMode.d.ts +17 -0
  111. package/types/animation/enums/AnimatorCullingMode.d.ts +9 -0
  112. package/types/animation/enums/AnimatorLayerBlendingMode.d.ts +4 -0
  113. package/types/animation/enums/AnimatorStatePlayState.d.ts +1 -0
  114. package/types/animation/enums/InterpolationType.d.ts +13 -0
  115. package/types/animation/enums/LayerState.d.ts +15 -0
  116. package/types/animation/enums/PlayState.d.ts +13 -0
  117. package/types/animation/enums/WrapMode.d.ts +9 -0
  118. package/types/animation/index.d.ts +25 -0
  119. package/types/animation/internal/AnimationCurveLayerOwner.d.ts +1 -0
  120. package/types/animation/internal/AnimationEventHandler.d.ts +1 -0
  121. package/types/animation/internal/AnimatorLayerData.d.ts +1 -0
  122. package/types/animation/internal/AnimatorStateData.d.ts +1 -0
  123. package/types/animation/internal/AnimatorStatePlayData.d.ts +1 -0
  124. package/types/animation/internal/AnimatorTempValue.d.ts +1 -0
  125. package/types/animation/internal/animationCurveOwner/AnimationCurveOwner.d.ts +5 -0
  126. package/types/animation/internal/animationCurveOwner/assembler/BlendShapeWeightsAnimationCurveOwnerAssembler.d.ts +1 -0
  127. package/types/animation/internal/animationCurveOwner/assembler/IAnimationCurveOwnerAssembler.d.ts +1 -0
  128. package/types/animation/internal/animationCurveOwner/assembler/PositionAnimationCurveOwnerAssembler.d.ts +1 -0
  129. package/types/animation/internal/animationCurveOwner/assembler/RotationAnimationCurveOwnerAssembler.d.ts +1 -0
  130. package/types/animation/internal/animationCurveOwner/assembler/ScaleAnimationCurveOwnerAssembler.d.ts +1 -0
  131. package/types/animation/internal/animationCurveOwner/assembler/UniversalAnimationCurveOwnerAssembler.d.ts +1 -0
  132. package/types/asset/AssetPromise.d.ts +88 -0
  133. package/types/asset/AssetType.d.ts +66 -0
  134. package/types/asset/ContentRestorer.d.ts +17 -0
  135. package/types/asset/GraphicsResource.d.ts +9 -0
  136. package/types/asset/IReferable.d.ts +2 -0
  137. package/types/asset/LoadItem.d.ts +40 -0
  138. package/types/asset/Loader.d.ts +37 -0
  139. package/types/asset/ReferResource.d.ts +23 -0
  140. package/types/asset/ResourceManager.d.ts +121 -0
  141. package/types/asset/request.d.ts +36 -0
  142. package/types/audio/AudioClip.d.ts +24 -0
  143. package/types/audio/AudioManager.d.ts +1 -0
  144. package/types/audio/AudioSource.d.ts +72 -0
  145. package/types/audio/index.d.ts +3 -0
  146. package/types/base/Constant.d.ts +116 -0
  147. package/types/base/EngineObject.d.ts +25 -0
  148. package/types/base/EventDispatcher.d.ts +66 -0
  149. package/types/base/Logger.d.ts +11 -0
  150. package/types/base/StaticInterfaceImplement.d.ts +5 -0
  151. package/types/base/Time.d.ts +44 -0
  152. package/types/base/index.d.ts +5 -0
  153. package/types/clone/CloneManager.d.ts +31 -0
  154. package/types/clone/ComponentCloner.d.ts +17 -0
  155. package/types/clone/enums/CloneMode.d.ts +13 -0
  156. package/types/enums/ActiveChangeFlag.d.ts +6 -0
  157. package/types/enums/AntiAliasing.d.ts +7 -0
  158. package/types/enums/BackgroundMode.d.ts +9 -0
  159. package/types/enums/BackgroundTextureFillMode.d.ts +8 -0
  160. package/types/enums/CameraClearFlags.d.ts +13 -0
  161. package/types/enums/CameraModifyFlags.d.ts +17 -0
  162. package/types/enums/CameraType.d.ts +1 -0
  163. package/types/enums/DepthTextureMode.d.ts +7 -0
  164. package/types/enums/Downsampling.d.ts +11 -0
  165. package/types/enums/EntityModifyFlags.d.ts +9 -0
  166. package/types/enums/FogMode.d.ts +13 -0
  167. package/types/enums/MSAASamples.d.ts +13 -0
  168. package/types/enums/ReplacementFailureStrategy.d.ts +9 -0
  169. package/types/enums/SpriteMaskLayer.d.ts +73 -0
  170. package/types/env-probe/CubeProbe.d.ts +27 -0
  171. package/types/env-probe/Probe.d.ts +52 -0
  172. package/types/env-probe/index.d.ts +2 -0
  173. package/types/graphic/Buffer.d.ts +114 -0
  174. package/types/graphic/BufferUtil.d.ts +12 -0
  175. package/types/graphic/IndexBufferBinding.d.ts +21 -0
  176. package/types/graphic/Mesh.d.ts +58 -0
  177. package/types/graphic/Primitive.d.ts +1 -0
  178. package/types/graphic/SubMesh.d.ts +8 -0
  179. package/types/graphic/SubPrimitive.d.ts +19 -0
  180. package/types/graphic/VertexBufferBinding.d.ts +20 -0
  181. package/types/graphic/VertexElement.d.ts +48 -0
  182. package/types/graphic/enums/BufferBindFlag.d.ts +9 -0
  183. package/types/graphic/enums/BufferUsage.d.ts +11 -0
  184. package/types/graphic/enums/IndexFormat.d.ts +11 -0
  185. package/types/graphic/enums/MeshTopology.d.ts +19 -0
  186. package/types/graphic/enums/SetDataOptions.d.ts +9 -0
  187. package/types/graphic/enums/VertexElementFormat.d.ts +37 -0
  188. package/types/graphic/index.d.ts +15 -0
  189. package/types/index.d.ts +68 -0
  190. package/types/input/InputManager.d.ts +65 -0
  191. package/types/input/enums/Keys.d.ts +398 -0
  192. package/types/input/enums/PointerButton.d.ts +33 -0
  193. package/types/input/enums/PointerPhase.d.ts +15 -0
  194. package/types/input/index.d.ts +8 -0
  195. package/types/input/interface/IInput.d.ts +10 -0
  196. package/types/input/keyboard/KeyboardManager.d.ts +1 -0
  197. package/types/input/pointer/Pointer.d.ts +31 -0
  198. package/types/input/pointer/PointerEventData.d.ts +12 -0
  199. package/types/input/pointer/PointerManager.d.ts +9 -0
  200. package/types/input/pointer/emitter/IHitResult.d.ts +1 -0
  201. package/types/input/pointer/emitter/PhysicsPointerEventEmitter.d.ts +1 -0
  202. package/types/input/pointer/emitter/PointerEventEmitter.d.ts +30 -0
  203. package/types/input/wheel/WheelManager.d.ts +1 -0
  204. package/types/lighting/AmbientLight.d.ts +70 -0
  205. package/types/lighting/DirectLight.d.ts +32 -0
  206. package/types/lighting/KHR_lights.d.ts +4 -0
  207. package/types/lighting/Light.d.ts +45 -0
  208. package/types/lighting/LightManager.d.ts +12 -0
  209. package/types/lighting/PointLight.d.ts +26 -0
  210. package/types/lighting/SpotLight.d.ts +45 -0
  211. package/types/lighting/ambientOcclusion/AmbientOcclusion.d.ts +79 -0
  212. package/types/lighting/ambientOcclusion/ScalableAmbientObscurancePass.d.ts +1 -0
  213. package/types/lighting/ambientOcclusion/index.d.ts +2 -0
  214. package/types/lighting/enums/AmbientOcclusionQuality.d.ts +11 -0
  215. package/types/lighting/enums/DiffuseMode.d.ts +13 -0
  216. package/types/lighting/index.d.ts +7 -0
  217. package/types/material/BaseMaterial.d.ts +88 -0
  218. package/types/material/BlinnPhongMaterial.d.ts +68 -0
  219. package/types/material/Material.d.ts +52 -0
  220. package/types/material/PBRMaterial.d.ts +311 -0
  221. package/types/material/UnlitMaterial.d.ts +33 -0
  222. package/types/material/enums/BlendMode.d.ts +9 -0
  223. package/types/material/enums/Refraction.d.ts +9 -0
  224. package/types/material/enums/RenderFace.d.ts +11 -0
  225. package/types/material/enums/TextureCoordinate.d.ts +13 -0
  226. package/types/material/index.d.ts +9 -0
  227. package/types/material/utils/PrefilteredDFG.d.ts +7 -0
  228. package/types/mesh/BlendShape.d.ts +39 -0
  229. package/types/mesh/BlendShapeFrame.d.ts +44 -0
  230. package/types/mesh/BlendShapeManager.d.ts +1 -0
  231. package/types/mesh/BufferMesh.d.ts +59 -0
  232. package/types/mesh/MeshRenderer.d.ts +25 -0
  233. package/types/mesh/ModelMesh.d.ts +254 -0
  234. package/types/mesh/PrimitiveMesh.d.ts +112 -0
  235. package/types/mesh/PrimitiveMeshRestorer.d.ts +1 -0
  236. package/types/mesh/Skin.d.ts +35 -0
  237. package/types/mesh/SkinnedMeshRenderer.d.ts +50 -0
  238. package/types/mesh/enums/VertexAttribute.d.ts +33 -0
  239. package/types/mesh/index.d.ts +9 -0
  240. package/types/particle/ParticleBufferUtils.d.ts +1 -0
  241. package/types/particle/ParticleGenerator.d.ts +94 -0
  242. package/types/particle/ParticleMaterial.d.ts +38 -0
  243. package/types/particle/ParticleRenderer.d.ts +47 -0
  244. package/types/particle/enums/ParticleCurveMode.d.ts +9 -0
  245. package/types/particle/enums/ParticleGradientMode.d.ts +9 -0
  246. package/types/particle/enums/ParticleRandomSubSeeds.d.ts +1 -0
  247. package/types/particle/enums/ParticleRenderMode.d.ts +17 -0
  248. package/types/particle/enums/ParticleScaleMode.d.ts +11 -0
  249. package/types/particle/enums/ParticleSimulationSpace.d.ts +9 -0
  250. package/types/particle/enums/ParticleStopMode.d.ts +6 -0
  251. package/types/particle/enums/attributes/BillboardParticleVertexAttribute.d.ts +1 -0
  252. package/types/particle/enums/attributes/MeshParticleVertexAttribute.d.ts +5 -0
  253. package/types/particle/enums/attributes/ParticleInstanceVertexAttribute.d.ts +1 -0
  254. package/types/particle/index.d.ts +22 -0
  255. package/types/particle/modules/Burst.d.ts +14 -0
  256. package/types/particle/modules/ColorOverLifetimeModule.d.ts +20 -0
  257. package/types/particle/modules/EmissionModule.d.ts +48 -0
  258. package/types/particle/modules/ForceOverLifetimeModule.d.ts +51 -0
  259. package/types/particle/modules/MainModule.d.ts +104 -0
  260. package/types/particle/modules/ParticleCompositeCurve.d.ts +81 -0
  261. package/types/particle/modules/ParticleCompositeGradient.d.ts +55 -0
  262. package/types/particle/modules/ParticleCurve.d.ts +63 -0
  263. package/types/particle/modules/ParticleGeneratorModule.d.ts +17 -0
  264. package/types/particle/modules/ParticleGradient.d.ts +114 -0
  265. package/types/particle/modules/RotationOverLifetimeModule.d.ts +34 -0
  266. package/types/particle/modules/SizeOverLifetimeModule.d.ts +52 -0
  267. package/types/particle/modules/TextureSheetAnimationModule.d.ts +39 -0
  268. package/types/particle/modules/VelocityOverLifetimeModule.d.ts +54 -0
  269. package/types/particle/modules/shape/BaseShape.d.ts +22 -0
  270. package/types/particle/modules/shape/BoxShape.d.ts +17 -0
  271. package/types/particle/modules/shape/CircleShape.d.ts +35 -0
  272. package/types/particle/modules/shape/ConeShape.d.ts +45 -0
  273. package/types/particle/modules/shape/HemisphereShape.d.ts +14 -0
  274. package/types/particle/modules/shape/MeshShape.d.ts +21 -0
  275. package/types/particle/modules/shape/ShapeUtils.d.ts +1 -0
  276. package/types/particle/modules/shape/SphereShape.d.ts +14 -0
  277. package/types/particle/modules/shape/enums/ParticleShapeArcMode.d.ts +9 -0
  278. package/types/particle/modules/shape/enums/ParticleShapeType.d.ts +17 -0
  279. package/types/particle/modules/shape/index.d.ts +8 -0
  280. package/types/physics/CharacterController.d.ts +51 -0
  281. package/types/physics/Collider.d.ts +43 -0
  282. package/types/physics/Collision.d.ts +22 -0
  283. package/types/physics/ContactPoint.d.ts +14 -0
  284. package/types/physics/DynamicCollider.d.ts +192 -0
  285. package/types/physics/HitResult.d.ts +18 -0
  286. package/types/physics/PhysicsMaterial.d.ts +42 -0
  287. package/types/physics/PhysicsScene.d.ts +276 -0
  288. package/types/physics/StaticCollider.d.ts +7 -0
  289. package/types/physics/enums/ColliderShapeChangeFlag.d.ts +1 -0
  290. package/types/physics/enums/ColliderShapeUpAxis.d.ts +11 -0
  291. package/types/physics/enums/ControllerCollisionFlag.d.ts +11 -0
  292. package/types/physics/enums/ControllerNonWalkableMode.d.ts +9 -0
  293. package/types/physics/enums/HingeJointFlag.d.ts +1 -0
  294. package/types/physics/enums/PhysicsMaterialCombineMode.d.ts +13 -0
  295. package/types/physics/enums/index.d.ts +4 -0
  296. package/types/physics/index.d.ts +12 -0
  297. package/types/physics/joint/FixedJoint.d.ts +4 -0
  298. package/types/physics/joint/HingeJoint.d.ts +61 -0
  299. package/types/physics/joint/Joint.d.ts +81 -0
  300. package/types/physics/joint/JointLimits.d.ts +39 -0
  301. package/types/physics/joint/JointMotor.d.ts +32 -0
  302. package/types/physics/joint/SpringJoint.d.ts +38 -0
  303. package/types/physics/joint/index.d.ts +6 -0
  304. package/types/physics/shape/BoxColliderShape.d.ts +16 -0
  305. package/types/physics/shape/CapsuleColliderShape.d.ts +27 -0
  306. package/types/physics/shape/ColliderShape.d.ts +61 -0
  307. package/types/physics/shape/PlaneColliderShape.d.ts +9 -0
  308. package/types/physics/shape/SphereColliderShape.d.ts +14 -0
  309. package/types/physics/shape/index.d.ts +5 -0
  310. package/types/postProcess/FinalPass.d.ts +1 -0
  311. package/types/postProcess/PostProcess.d.ts +64 -0
  312. package/types/postProcess/PostProcessEffect.d.ts +26 -0
  313. package/types/postProcess/PostProcessEffectParameter.d.ts +119 -0
  314. package/types/postProcess/PostProcessManager.d.ts +38 -0
  315. package/types/postProcess/PostProcessPass.d.ts +50 -0
  316. package/types/postProcess/PostProcessUberPass.d.ts +25 -0
  317. package/types/postProcess/effects/BloomEffect.d.ts +50 -0
  318. package/types/postProcess/effects/TonemappingEffect.d.ts +25 -0
  319. package/types/postProcess/effects/index.d.ts +2 -0
  320. package/types/postProcess/index.d.ts +8 -0
  321. package/types/renderingHardwareInterface/IPlatformBuffer.d.ts +7 -0
  322. package/types/renderingHardwareInterface/IPlatformRenderTarget.d.ts +20 -0
  323. package/types/renderingHardwareInterface/IPlatformTexture.d.ts +36 -0
  324. package/types/renderingHardwareInterface/IPlatformTexture2D.d.ts +37 -0
  325. package/types/renderingHardwareInterface/IPlatformTexture2DArray.d.ts +40 -0
  326. package/types/renderingHardwareInterface/IPlatformTextureCube.d.ts +41 -0
  327. package/types/renderingHardwareInterface/index.d.ts +6 -0
  328. package/types/shader/Shader.d.ts +119 -0
  329. package/types/shader/ShaderData.d.ts +350 -0
  330. package/types/shader/ShaderMacro.d.ts +26 -0
  331. package/types/shader/ShaderMacroCollection.d.ts +1 -0
  332. package/types/shader/ShaderPart.d.ts +46 -0
  333. package/types/shader/ShaderPass.d.ts +25 -0
  334. package/types/shader/ShaderPool.d.ts +1 -0
  335. package/types/shader/ShaderProgram.d.ts +1 -0
  336. package/types/shader/ShaderProgramPool.d.ts +1 -0
  337. package/types/shader/ShaderProperty.d.ts +20 -0
  338. package/types/shader/ShaderTagKey.d.ts +16 -0
  339. package/types/shader/ShaderUniform.d.ts +1 -0
  340. package/types/shader/ShaderUniformBlock.d.ts +1 -0
  341. package/types/shader/SubShader.d.ts +18 -0
  342. package/types/shader/enums/BlendFactor.d.ts +32 -0
  343. package/types/shader/enums/BlendOperation.d.ts +16 -0
  344. package/types/shader/enums/ColorWriteMask.d.ts +18 -0
  345. package/types/shader/enums/CompareFunction.d.ts +22 -0
  346. package/types/shader/enums/CullMode.d.ts +12 -0
  347. package/types/shader/enums/RenderQueueType.d.ts +11 -0
  348. package/types/shader/enums/RenderStateElementKey.d.ts +60 -0
  349. package/types/shader/enums/ShaderDataGroup.d.ts +15 -0
  350. package/types/shader/enums/ShaderLanguage.d.ts +9 -0
  351. package/types/shader/enums/ShaderPropertyType.d.ts +27 -0
  352. package/types/shader/enums/StencilOperation.d.ts +22 -0
  353. package/types/shader/index.d.ts +19 -0
  354. package/types/shader/state/BlendState.d.ts +16 -0
  355. package/types/shader/state/DepthState.d.ts +14 -0
  356. package/types/shader/state/RasterState.d.ts +13 -0
  357. package/types/shader/state/RenderState.d.ts +21 -0
  358. package/types/shader/state/RenderTargetBlendState.d.ts +24 -0
  359. package/types/shader/state/StencilState.d.ts +34 -0
  360. package/types/shader/state/index.d.ts +6 -0
  361. package/types/shaderlib/ShaderFactory.d.ts +20 -0
  362. package/types/shaderlib/ShaderLib.d.ts +73 -0
  363. package/types/shaderlib/index.d.ts +1 -0
  364. package/types/shaderlib/particle/index.d.ts +15 -0
  365. package/types/shaderlib/pbr/index.d.ts +11 -0
  366. package/types/shaderlib/shadow/index.d.ts +8 -0
  367. package/types/shadow/CascadedShadowCasterPass.d.ts +45 -0
  368. package/types/shadow/ShadowSliceData.d.ts +1 -0
  369. package/types/shadow/ShadowUtils.d.ts +1 -0
  370. package/types/shadow/enum/ShadowCascadesMode.d.ts +11 -0
  371. package/types/shadow/enum/ShadowResolution.d.ts +13 -0
  372. package/types/shadow/enum/ShadowType.d.ts +13 -0
  373. package/types/shadow/index.d.ts +3 -0
  374. package/types/sky/Sky.d.ts +22 -0
  375. package/types/sky/SkyBoxMaterial.d.ts +43 -0
  376. package/types/sky/SkyProceduralMaterial.d.ts +72 -0
  377. package/types/sky/index.d.ts +3 -0
  378. package/types/texture/RenderTarget.d.ts +91 -0
  379. package/types/texture/Texture.d.ts +87 -0
  380. package/types/texture/Texture2D.d.ts +71 -0
  381. package/types/texture/Texture2DArray.d.ts +82 -0
  382. package/types/texture/TextureCube.d.ts +71 -0
  383. package/types/texture/TextureUtils.d.ts +1 -0
  384. package/types/texture/enums/RenderBufferDepthFormat.d.ts +23 -0
  385. package/types/texture/enums/TextureCubeFace.d.ts +17 -0
  386. package/types/texture/enums/TextureDepthCompareFunction.d.ts +21 -0
  387. package/types/texture/enums/TextureFilterMode.d.ts +11 -0
  388. package/types/texture/enums/TextureFormat.d.ts +87 -0
  389. package/types/texture/enums/TextureUsage.d.ts +9 -0
  390. package/types/texture/enums/TextureWrapMode.d.ts +11 -0
  391. package/types/texture/index.d.ts +13 -0
  392. package/types/trail/TrailMaterial.d.ts +5 -0
  393. package/types/trail/TrailRenderer.d.ts +35 -0
  394. package/types/trail/index.d.ts +2 -0
  395. package/types/ui/IUICanvas.d.ts +1 -0
  396. package/types/ui/UIUtils.d.ts +12 -0
  397. package/types/utils/ClearableObjectPool.d.ts +16 -0
  398. package/types/utils/DisorderedArray.d.ts +70 -0
  399. package/types/utils/ObjectPool.d.ts +16 -0
  400. package/types/utils/ReturnableObjectPool.d.ts +16 -0
  401. package/types/utils/SafeLoopArray.d.ts +46 -0
  402. package/types/utils/index.d.ts +4 -0
  403. package/types/xr/XRManager.d.ts +5 -0
@@ -0,0 +1,254 @@
1
+ import { Color, Vector2, Vector3, Vector4 } from "@galacean/engine-math";
2
+ import { Engine } from "../Engine";
3
+ import { Buffer } from "../graphic/Buffer";
4
+ import { Mesh } from "../graphic/Mesh";
5
+ import { VertexBufferBinding } from "../graphic/VertexBufferBinding";
6
+ import { VertexElement } from "../graphic/VertexElement";
7
+ import { BlendShape } from "./BlendShape";
8
+ import { VertexAttribute } from "./enums/VertexAttribute";
9
+ /**
10
+ * Mesh containing common vertex elements of the model.
11
+ */
12
+ export declare class ModelMesh extends Mesh {
13
+ private static _tempVec0;
14
+ private static _tempVec1;
15
+ private static _tempVec2;
16
+ private static _tempVec3;
17
+ private static _tempVec4;
18
+ private _vertexCount;
19
+ private _vertexCountDirty;
20
+ private _dataVersionCounter;
21
+ private _positions;
22
+ private _normals;
23
+ private _colors;
24
+ private _tangents;
25
+ private _uv;
26
+ private _uv1;
27
+ private _uv2;
28
+ private _uv3;
29
+ private _uv4;
30
+ private _uv5;
31
+ private _uv6;
32
+ private _uv7;
33
+ private _boneWeights;
34
+ private _boneIndices;
35
+ private _advancedElementUpdateFlag;
36
+ private _advancedDataUpdateFlag;
37
+ private _advancedVertexDataVersions;
38
+ private _advancedDataSyncToBuffer;
39
+ private _internalVertexBufferStride;
40
+ private _internalVertexBufferCreatedInfo;
41
+ private _internalVertexElementsOffset;
42
+ private _internalVertexElementsFlags;
43
+ private _vertexBufferInfos;
44
+ private _indices;
45
+ private _indicesFormat;
46
+ private _indicesChangeFlag;
47
+ /**
48
+ * Vertex count of mesh.
49
+ */
50
+ get vertexCount(): number;
51
+ /**
52
+ * Vertex element collection.
53
+ */
54
+ get vertexElements(): Readonly<VertexElement[]>;
55
+ /**
56
+ * Vertex buffer binding collection.
57
+ */
58
+ get vertexBufferBindings(): ReadonlyArray<VertexBufferBinding>;
59
+ /**
60
+ * BlendShapes of this ModelMesh.
61
+ */
62
+ get blendShapes(): Readonly<BlendShape[]>;
63
+ /**
64
+ * BlendShape count of this ModelMesh.
65
+ */
66
+ get blendShapeCount(): number;
67
+ /**
68
+ * Create a model mesh.
69
+ * @param engine - Engine to which the mesh belongs
70
+ * @param name - Mesh name
71
+ */
72
+ constructor(engine: Engine, name?: string);
73
+ /**
74
+ * Set positions for the mesh.
75
+ * @param positions - The positions for the mesh
76
+ */
77
+ setPositions(positions: Vector3[] | null): void;
78
+ /**
79
+ * Get positions for the mesh.
80
+ * @remarks Please call the setPositions() method after modification to ensure that the modification takes effect.
81
+ */
82
+ getPositions(): Vector3[] | null;
83
+ /**
84
+ * Set per-vertex normals for the mesh.
85
+ * @param normals - The normals for the mesh
86
+ */
87
+ setNormals(normals: Vector3[] | null): void;
88
+ /**
89
+ * Get normals for the mesh.
90
+ * @remarks Please call the setNormals() method after modification to ensure that the modification takes effect.
91
+ */
92
+ getNormals(): Vector3[] | null;
93
+ /**
94
+ * Set per-vertex colors for the mesh.
95
+ * @param colors - The colors for the mesh
96
+ */
97
+ setColors(colors: Color[] | null): void;
98
+ /**
99
+ * Get colors for the mesh.
100
+ * @remarks Please call the setColors() method after modification to ensure that the modification takes effect.
101
+ */
102
+ getColors(): Color[] | null;
103
+ /**
104
+ * Set per-vertex bone weights for the mesh.
105
+ * @param boneWeights - The bone weights for the mesh
106
+ */
107
+ setBoneWeights(boneWeights: Vector4[] | null): void;
108
+ /**
109
+ * Get bone weights for the mesh.
110
+ * @remarks Please call the setWeights() method after modification to ensure that the modification takes effect.
111
+ */
112
+ getBoneWeights(): Vector4[] | null;
113
+ /**
114
+ * Set per-vertex bone indices for the mesh.
115
+ * @param boneIndices - The bone indices for the mesh
116
+ */
117
+ setBoneIndices(boneIndices: Vector4[] | null): void;
118
+ /**
119
+ * Get bone indices for the mesh.
120
+ * @remarks Please call the setBoneIndices() method after modification to ensure that the modification takes effect.
121
+ */
122
+ getBoneIndices(): Vector4[] | null;
123
+ /**
124
+ * Set per-vertex tangents for the mesh.
125
+ * @param tangents - The tangents for the mesh
126
+ */
127
+ setTangents(tangents: Vector4[] | null): void;
128
+ /**
129
+ * Get tangents for the mesh.
130
+ * @remarks Please call the setTangents() method after modification to ensure that the modification takes effect.
131
+ */
132
+ getTangents(): Vector4[] | null;
133
+ /**
134
+ * Set per-vertex uv for the mesh.
135
+ * @param uv - The uv for the mesh
136
+ */
137
+ setUVs(uv: Vector2[] | null): void;
138
+ /**
139
+ * Set per-vertex uv for the mesh by channelIndex.
140
+ * @param uv - The uv for the mesh
141
+ * @param channelIndex - The index of uv channels, in [0 ~ 7] range
142
+ */
143
+ setUVs(uv: Vector2[] | null, channelIndex: number): void;
144
+ /**
145
+ * Get uv for the mesh.
146
+ * @remarks Please call the setUV() method after modification to ensure that the modification takes effect.
147
+ */
148
+ getUVs(): Vector2[] | null;
149
+ /**
150
+ * Get uv for the mesh by channelIndex.
151
+ * @param channelIndex - The index of uv channels, in [0 ~ 7] range.
152
+ * @remarks Please call the setUV() method after modification to ensure that the modification takes effect.
153
+ */
154
+ getUVs(channelIndex: number): Vector2[] | null;
155
+ /**
156
+ * Set indices for the mesh.
157
+ * @param indices - The indices for the mesh
158
+ */
159
+ setIndices(indices: Uint8Array | Uint16Array | Uint32Array): void;
160
+ /**
161
+ * Get indices for the mesh.
162
+ */
163
+ getIndices(): Uint8Array | Uint16Array | Uint32Array;
164
+ /**
165
+ * Set vertex elements.
166
+ * @param elements - Vertex element collection
167
+ *
168
+ * @remarks
169
+ * Call this method will clear the vertex data set by the setPositions(), setNormals(), setColors(), setBoneWeights(), setBoneIndices(), setTangents(), setUVs() methods.
170
+ */
171
+ setVertexElements(elements: VertexElement[]): void;
172
+ /**
173
+ * Set vertex buffer binding.
174
+ * @param vertexBufferBinding - Vertex buffer binding
175
+ * @param index - Vertex buffer index, the default value is 0
176
+ */
177
+ setVertexBufferBinding(vertexBufferBinding: VertexBufferBinding, index?: number): void;
178
+ /**
179
+ * Set vertex buffer binding.
180
+ * @param vertexBuffer - Vertex buffer
181
+ * @param stride - Vertex buffer data stride
182
+ * @param index - Vertex buffer index, the default value is 0
183
+ */
184
+ setVertexBufferBinding(vertexBuffer: Buffer, stride: number, index?: number): void;
185
+ /**
186
+ * Set vertex buffer binding.
187
+ * @param vertexBufferBindings - Vertex buffer binding
188
+ * @param firstIndex - First vertex buffer index, the default value is 0
189
+ */
190
+ setVertexBufferBindings(vertexBufferBindings: VertexBufferBinding[], firstIndex?: number): void;
191
+ /**
192
+ * Get `VertexElement` by attribute.
193
+ * @param attribute - Vertex attribute
194
+ * @returns Vertex element
195
+ */
196
+ getVertexElement(attribute: VertexAttribute): VertexElement | null;
197
+ /**
198
+ * Add a BlendShape for this ModelMesh.
199
+ * @param blendShape - The BlendShape
200
+ */
201
+ addBlendShape(blendShape: BlendShape): void;
202
+ /**
203
+ * Clear all BlendShapes.
204
+ */
205
+ clearBlendShapes(): void;
206
+ /**
207
+ * Get name of BlendShape by given index.
208
+ * @param index - The index of BlendShape
209
+ * @returns The name of BlendShape
210
+ */
211
+ getBlendShapeName(index: number): string;
212
+ /**
213
+ * Upload data to GPU set by `setPositions()`, `setNormals()`, `setColors()`, `setBoneWeights()`, `setBoneIndices()`, `setTangents()`, `setUVs()`, `setIndices()` methods.
214
+ * This method will be auto generate vertex element and vertex buffer binding if needed.
215
+ *
216
+ * @param releaseData - Whether to release the data cache, release data can reduce memory usage.
217
+ */
218
+ uploadData(releaseData: boolean): void;
219
+ /**
220
+ * Calculate mesh tangent.
221
+ * @remark need to set positions(with or not with indices), normals, uv before calculation.
222
+ * @remark based on http://foundationsofgameenginedev.com/FGED2-sample.pdf
223
+ */
224
+ calculateTangents(): void;
225
+ private _getVertexElementData;
226
+ private _beforeSetAdvancedVertexData;
227
+ private _updateAdvancedVertexDataMarks;
228
+ private _updateInternalVertexBuffer;
229
+ private _readVector2VertexData;
230
+ private _readVector3VertexData;
231
+ private _readVector4VertexData;
232
+ private _readColorVertexData;
233
+ private _readVertexData;
234
+ private _updateAdvancedVertexElement;
235
+ private _updateAdvancedVertexElements;
236
+ private _updateVertexElements;
237
+ private _writeVector2AdvancedVertexData;
238
+ private _writeVector3AdvancedVertexData;
239
+ private _writeVector4AdvancedVertexData;
240
+ private _writeColorAdvancedVertexData;
241
+ private _writeAdvancedVertexData;
242
+ private _updateAdvancedVertices;
243
+ private _getInternalVertexBufferIndex;
244
+ private _getAttributeFormat;
245
+ private _getAttributeByteLength;
246
+ private _releaseCache;
247
+ /** @deprecated */
248
+ private _accessible;
249
+ /**
250
+ * @deprecated
251
+ * Whether to access data of the mesh.
252
+ */
253
+ get accessible(): boolean;
254
+ }
@@ -0,0 +1,112 @@
1
+ import { Engine } from "../Engine";
2
+ import { Buffer } from "../graphic/Buffer";
3
+ import { ModelMesh } from "./ModelMesh";
4
+ /**
5
+ * Used to generate common primitive meshes.
6
+ */
7
+ export declare class PrimitiveMesh {
8
+ private static _tempVec30;
9
+ private static readonly _sphereSeedPositions;
10
+ private static readonly _sphereSeedCells;
11
+ private static _sphereEdgeIdx;
12
+ private static _spherePoleIdx;
13
+ /**
14
+ * Create a sphere mesh.
15
+ * @param engine - Engine
16
+ * @param radius - Sphere radius
17
+ * @param segments - Number of segments
18
+ * @param noLongerAccessible - No longer access the vertices of the mesh after creation
19
+ * @returns Sphere model mesh
20
+ */
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;
32
+ /**
33
+ * Create a cuboid mesh.
34
+ * @param engine - Engine
35
+ * @param width - Cuboid width
36
+ * @param height - Cuboid height
37
+ * @param depth - Cuboid depth
38
+ * @param noLongerAccessible - No longer access the vertices of the mesh after creation
39
+ * @returns Cuboid model mesh
40
+ */
41
+ static createCuboid(engine: Engine, width?: number, height?: number, depth?: number, noLongerAccessible?: boolean): ModelMesh;
42
+ /**
43
+ * Create a plane mesh.
44
+ * @param engine - Engine
45
+ * @param width - Plane width
46
+ * @param height - Plane height
47
+ * @param horizontalSegments - Plane horizontal segments
48
+ * @param verticalSegments - Plane vertical segments
49
+ * @param noLongerAccessible - No longer access the vertices of the mesh after creation
50
+ * @returns Plane model mesh
51
+ */
52
+ static createPlane(engine: Engine, width?: number, height?: number, horizontalSegments?: number, verticalSegments?: number, noLongerAccessible?: boolean): ModelMesh;
53
+ /**
54
+ * Create a cylinder mesh.
55
+ * @param engine - Engine
56
+ * @param radiusTop - The radius of top cap
57
+ * @param radiusBottom - The radius of bottom cap
58
+ * @param height - The height of torso
59
+ * @param radialSegments - Cylinder radial segments
60
+ * @param heightSegments - Cylinder height segments
61
+ * @param noLongerAccessible - No longer access the vertices of the mesh after creation
62
+ * @returns Cylinder model mesh
63
+ */
64
+ static createCylinder(engine: Engine, radiusTop?: number, radiusBottom?: number, height?: number, radialSegments?: number, heightSegments?: number, noLongerAccessible?: boolean): ModelMesh;
65
+ /**
66
+ * Create a torus mesh.
67
+ * @param engine - Engine
68
+ * @param radius - Torus radius
69
+ * @param tubeRadius - Torus tube
70
+ * @param radialSegments - Torus radial segments
71
+ * @param tubularSegments - Torus tubular segments
72
+ * @param arc - Central angle
73
+ * @param noLongerAccessible - No longer access the vertices of the mesh after creation
74
+ * @returns Torus model mesh
75
+ */
76
+ static createTorus(engine: Engine, radius?: number, tubeRadius?: number, radialSegments?: number, tubularSegments?: number, arc?: number, noLongerAccessible?: boolean): ModelMesh;
77
+ /**
78
+ * Create a cone mesh.
79
+ * @param engine - Engine
80
+ * @param radius - The radius of cap
81
+ * @param height - The height of torso
82
+ * @param radialSegments - Cone radial segments
83
+ * @param heightSegments - Cone height segments
84
+ * @param noLongerAccessible - No longer access the vertices of the mesh after creation
85
+ * @returns Cone model mesh
86
+ */
87
+ static createCone(engine: Engine, radius?: number, height?: number, radialSegments?: number, heightSegments?: number, noLongerAccessible?: boolean): ModelMesh;
88
+ /**
89
+ * Create a capsule mesh.
90
+ * @param engine - Engine
91
+ * @param radius - The radius of the two hemispherical ends
92
+ * @param height - The height of the cylindrical part, measured between the centers of the hemispherical ends
93
+ * @param radialSegments - Hemispherical end radial segments
94
+ * @param heightSegments - Cylindrical part height segments
95
+ * @param noLongerAccessible - No longer access the vertices of the mesh after creation
96
+ * @returns Capsule model mesh
97
+ */
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;
107
+ static _setCylinderData(cylinderMesh: ModelMesh, radiusTop: number, radiusBottom: number, height: number, radialSegments: number, heightSegments: number, noLongerAccessible: boolean, isRestoreMode: boolean, restoreVertexBuffer?: Buffer): void;
108
+ static _setCapsuleData(capsuleMesh: ModelMesh, radius: number, height: number, radialSegments: number, heightSegments: number, noLongerAccessible: boolean, isRestoreMode: boolean, restoreVertexBuffer?: Buffer): void;
109
+ private static _initialize;
110
+ private static _generateIndices;
111
+ private static _createCapsuleCap;
112
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,35 @@
1
+ import { Matrix } from "@galacean/engine-math";
2
+ import { Entity } from "../Entity";
3
+ import { EngineObject } from "../base/EngineObject";
4
+ import { IComponentCustomClone } from "../clone/ComponentCloner";
5
+ /**
6
+ * Skin used for skinned mesh renderer.
7
+ */
8
+ export declare class Skin extends EngineObject implements IComponentCustomClone {
9
+ name: string;
10
+ /** Inverse bind matrices. */
11
+ inverseBindMatrices: Matrix[];
12
+ private _rootBone;
13
+ private _bones;
14
+ private _updateMark;
15
+ /**
16
+ * Root bone.
17
+ */
18
+ get rootBone(): Entity;
19
+ set rootBone(value: Entity);
20
+ /**
21
+ * Bones of the skin.
22
+ */
23
+ get bones(): ReadonlyArray<Entity>;
24
+ set bones(value: ReadonlyArray<Entity>);
25
+ constructor(name: string);
26
+ /** @deprecated Please use `bones` instead. */
27
+ joints: string[];
28
+ /** @deprecated Please use `rootBone` instead. */
29
+ get skeleton(): string;
30
+ set skeleton(value: string);
31
+ }
32
+ export declare enum SkinUpdateFlag {
33
+ BoneCountChanged = 0,
34
+ RootBoneChanged = 1
35
+ }
@@ -0,0 +1,50 @@
1
+ import { BoundingBox } from "@galacean/engine-math";
2
+ import { Entity } from "../Entity";
3
+ import { RenderContext } from "../RenderPipeline/RenderContext";
4
+ import { MeshRenderer } from "./MeshRenderer";
5
+ import { Skin } from "./Skin";
6
+ /**
7
+ * SkinnedMeshRenderer.
8
+ */
9
+ export declare class SkinnedMeshRenderer extends MeshRenderer {
10
+ private static _jointCountProperty;
11
+ private static _jointSamplerProperty;
12
+ private static _jointMatrixProperty;
13
+ private _localBounds;
14
+ private _jointDataCreateCache;
15
+ private _blendShapeWeights;
16
+ private _maxVertexUniformVectors;
17
+ private _jointTexture;
18
+ private _skin;
19
+ /**
20
+ * Skin of the SkinnedMeshRenderer.
21
+ */
22
+ get skin(): Skin;
23
+ set skin(value: Skin);
24
+ /**
25
+ * The weights of the BlendShapes.
26
+ * @remarks Array index is BlendShape index.
27
+ */
28
+ get blendShapeWeights(): Float32Array;
29
+ set blendShapeWeights(value: Float32Array);
30
+ /**
31
+ * Local bounds.
32
+ */
33
+ get localBounds(): BoundingBox;
34
+ set localBounds(value: BoundingBox);
35
+ protected _update(context: RenderContext): void;
36
+ private _checkBlendShapeWeightLength;
37
+ private _onLocalBoundsChanged;
38
+ private _onSkinUpdated;
39
+ private _applySkin;
40
+ /**
41
+ * @deprecated use {@link SkinnedMeshRenderer.skin.rootBone} instead.
42
+ */
43
+ get rootBone(): Entity;
44
+ set rootBone(value: Entity);
45
+ /**
46
+ * @deprecated use {@link SkinnedMeshRenderer.skin.bones} instead.
47
+ */
48
+ get bones(): Readonly<Entity[]>;
49
+ set bones(value: Readonly<Entity[]>);
50
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Vertex attribute types of a vertex in a ModelMesh.
3
+ */
4
+ export declare enum VertexAttribute {
5
+ /** Vertex position. */
6
+ Position = "POSITION",
7
+ /** Vertex normal. */
8
+ Normal = "NORMAL",
9
+ /** Vertex color. */
10
+ Color = "COLOR_0",
11
+ /** Vertex tangent. */
12
+ Tangent = "TANGENT",
13
+ /** Vertex bone weight. */
14
+ BoneWeight = "WEIGHTS_0",
15
+ /** Vertex bone index. */
16
+ BoneIndex = "JOINTS_0",
17
+ /** Vertex UV. */
18
+ UV = "TEXCOORD_0",
19
+ /** Vertex UV1. */
20
+ UV1 = "TEXCOORD_1",
21
+ /** Vertex UV2. */
22
+ UV2 = "TEXCOORD_2",
23
+ /** Vertex UV3. */
24
+ UV3 = "TEXCOORD_3",
25
+ /** Vertex UV4. */
26
+ UV4 = "TEXCOORD_4",
27
+ /** Vertex UV5. */
28
+ UV5 = "TEXCOORD_5",
29
+ /** Vertex UV6. */
30
+ UV6 = "TEXCOORD_6",
31
+ /** Vertex UV7. */
32
+ UV7 = "TEXCOORD_7"
33
+ }
@@ -0,0 +1,9 @@
1
+ export { BlendShape } from "./BlendShape";
2
+ export { BlendShapeFrame } from "./BlendShapeFrame";
3
+ export { BufferMesh } from "./BufferMesh";
4
+ export { MeshRenderer } from "./MeshRenderer";
5
+ export { ModelMesh } from "./ModelMesh";
6
+ export { PrimitiveMesh } from "./PrimitiveMesh";
7
+ export { Skin } from "./Skin";
8
+ export { SkinnedMeshRenderer } from "./SkinnedMeshRenderer";
9
+ export { VertexAttribute } from "./enums/VertexAttribute";
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,94 @@
1
+ import { ParticleStopMode } from "./enums/ParticleStopMode";
2
+ import { ColorOverLifetimeModule } from "./modules/ColorOverLifetimeModule";
3
+ import { EmissionModule } from "./modules/EmissionModule";
4
+ import { ForceOverLifetimeModule } from "./modules/ForceOverLifetimeModule";
5
+ import { MainModule } from "./modules/MainModule";
6
+ import { RotationOverLifetimeModule } from "./modules/RotationOverLifetimeModule";
7
+ import { SizeOverLifetimeModule } from "./modules/SizeOverLifetimeModule";
8
+ import { TextureSheetAnimationModule } from "./modules/TextureSheetAnimationModule";
9
+ import { VelocityOverLifetimeModule } from "./modules/VelocityOverLifetimeModule";
10
+ /**
11
+ * Particle Generator.
12
+ */
13
+ export declare class ParticleGenerator {
14
+ private static _tempVector20;
15
+ private static _tempVector21;
16
+ private static _tempVector22;
17
+ private static _tempVector30;
18
+ private static _tempVector31;
19
+ private static _tempMat;
20
+ private static _tempColor0;
21
+ private static _tempParticleRenderers;
22
+ private static readonly _particleIncreaseCount;
23
+ private static readonly _transformedBoundsIncreaseCount;
24
+ /** Use auto random seed. */
25
+ useAutoRandomSeed: boolean;
26
+ /** Main module. */
27
+ readonly main: MainModule;
28
+ /** Emission module. */
29
+ readonly emission: EmissionModule;
30
+ /** Velocity over lifetime module. */
31
+ readonly velocityOverLifetime: VelocityOverLifetimeModule;
32
+ /** Force over lifetime module. */
33
+ readonly forceOverLifetime: ForceOverLifetimeModule;
34
+ /** Size over lifetime module. */
35
+ readonly sizeOverLifetime: SizeOverLifetimeModule;
36
+ /** Rotation over lifetime module. */
37
+ readonly rotationOverLifetime: RotationOverLifetimeModule;
38
+ /** Color over lifetime module. */
39
+ readonly colorOverLifetime: ColorOverLifetimeModule;
40
+ /** Texture sheet animation module. */
41
+ readonly textureSheetAnimation: TextureSheetAnimationModule;
42
+ private _isPlaying;
43
+ private _instanceBufferResized;
44
+ private _waitProcessRetiredElementCount;
45
+ private _instanceVertexBufferBinding;
46
+ private _instanceVertices;
47
+ private _randomSeed;
48
+ private _transformedBoundsArray;
49
+ private _transformedBoundsCount;
50
+ private _firstActiveTransformedBoundingBox;
51
+ private _firstFreeTransformedBoundingBox;
52
+ private _playStartDelay;
53
+ /**
54
+ * Whether the particle generator is contain alive or is still creating particles.
55
+ */
56
+ get isAlive(): boolean;
57
+ /**
58
+ * Random seed.
59
+ *
60
+ * @remarks
61
+ * If `useAutoRandomSeed` is true, this value will be random changed when play.
62
+ * If you set this value custom, `useAutoRandomSeed` will be false.
63
+ */
64
+ get randomSeed(): number;
65
+ set randomSeed(value: number);
66
+ /**
67
+ * Start emitting particles.
68
+ * @param withChildren - Whether to start the particle generator of the child entity
69
+ */
70
+ play(withChildren?: boolean): void;
71
+ /**
72
+ * Stop emitting particles.
73
+ * @param withChildren - Whether to stop the particle generator of the child entity
74
+ * @param stopMode - Stop mode
75
+ */
76
+ stop(withChildren?: boolean, stopMode?: ParticleStopMode): void;
77
+ /**
78
+ * Manually emit certain number of particles immediately.
79
+ * @param count - Number of particles to emit
80
+ */
81
+ emit(count: number): void;
82
+ private _addNewParticle;
83
+ private _retireActiveParticles;
84
+ private _freeRetiredParticles;
85
+ private _addActiveParticlesToVertexBuffer;
86
+ private _addVertexBufferBindingsFilterDuplicate;
87
+ private _resizeTransformedBoundsArray;
88
+ private _retireTransformedBounds;
89
+ private _calculateGeneratorBounds;
90
+ private _mergeTransformedBounds;
91
+ private _calculateTransformedBounds;
92
+ private _addGravityToBounds;
93
+ private _getExtremeValueFromZero;
94
+ }
@@ -0,0 +1,38 @@
1
+ import { Color } from "@galacean/engine-math";
2
+ import { Engine } from "../Engine";
3
+ import { BaseMaterial } from "../material/BaseMaterial";
4
+ import { Texture2D } from "../texture/Texture2D";
5
+ /**
6
+ * Particle Material.
7
+ */
8
+ export declare class ParticleMaterial extends BaseMaterial {
9
+ /**
10
+ * Base color.
11
+ */
12
+ get baseColor(): Color;
13
+ set baseColor(value: Color);
14
+ /**
15
+ * Base texture.
16
+ */
17
+ get baseTexture(): Texture2D;
18
+ set baseTexture(value: Texture2D);
19
+ /**
20
+ * Emissive color.
21
+ */
22
+ get emissiveColor(): Color;
23
+ set emissiveColor(value: Color);
24
+ /**
25
+ * Emissive texture.
26
+ */
27
+ get emissiveTexture(): Texture2D;
28
+ set emissiveTexture(value: Texture2D);
29
+ /**
30
+ * Create a unlit material instance.
31
+ * @param engine - Engine to which the material belongs
32
+ */
33
+ constructor(engine: Engine);
34
+ /**
35
+ * @inheritdoc
36
+ */
37
+ clone(): ParticleMaterial;
38
+ }
@@ -0,0 +1,47 @@
1
+ import { BoundingBox, Vector3 } from "@galacean/engine-math";
2
+ import { RenderContext } from "../RenderPipeline/RenderContext";
3
+ import { Renderer } from "../Renderer";
4
+ import { ModelMesh } from "../mesh/ModelMesh";
5
+ import { ParticleGenerator } from "./ParticleGenerator";
6
+ import { ParticleRenderMode } from "./enums/ParticleRenderMode";
7
+ /**
8
+ * Particle Renderer Component.
9
+ */
10
+ export declare class ParticleRenderer extends Renderer {
11
+ private static readonly _billboardModeMacro;
12
+ private static readonly _stretchedBillboardModeMacro;
13
+ private static readonly _horizontalBillboardModeMacro;
14
+ private static readonly _verticalBillboardModeMacro;
15
+ private static readonly _renderModeMeshMacro;
16
+ private static readonly _pivotOffsetProperty;
17
+ private static readonly _lengthScale;
18
+ private static readonly _speedScale;
19
+ private static readonly _currentTime;
20
+ /** Particle generator. */
21
+ readonly generator: ParticleGenerator;
22
+ /** Specifies how much particles stretch depending on their velocity. */
23
+ velocityScale: number;
24
+ /** How much are the particles stretched in their direction of motion, defined as the length of the particle compared to its width. */
25
+ lengthScale: number;
26
+ /** The pivot of particle. */
27
+ pivot: Vector3;
28
+ private _renderMode;
29
+ private _currentRenderModeMacro;
30
+ private _mesh;
31
+ private _supportInstancedArrays;
32
+ /**
33
+ * Specifies how particles are rendered.
34
+ */
35
+ get renderMode(): ParticleRenderMode;
36
+ set renderMode(value: ParticleRenderMode);
37
+ /**
38
+ * The mesh of particle.
39
+ * @remarks Valid when `renderMode` is `Mesh`.
40
+ */
41
+ get mesh(): ModelMesh;
42
+ set mesh(value: ModelMesh);
43
+ protected _updateBounds(worldBounds: BoundingBox): void;
44
+ protected _update(context: RenderContext): void;
45
+ protected _render(context: RenderContext): void;
46
+ protected _onDestroy(): void;
47
+ }