@galacean/engine-core 0.9.0-beta.80

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 (314) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1 -0
  3. package/dist/main.js +24255 -0
  4. package/dist/main.js.map +1 -0
  5. package/dist/miniprogram.js +24255 -0
  6. package/dist/module.js +24138 -0
  7. package/dist/module.js.map +1 -0
  8. package/package.json +26 -0
  9. package/types/2d/assembler/IAssembler.d.ts +1 -0
  10. package/types/2d/assembler/SimpleSpriteAssembler.d.ts +1 -0
  11. package/types/2d/assembler/SlicedSpriteAssembler.d.ts +1 -0
  12. package/types/2d/assembler/TiledSpriteAssembler.d.ts +1 -0
  13. package/types/2d/atlas/FontAtlas.d.ts +1 -0
  14. package/types/2d/atlas/SpriteAtlas.d.ts +36 -0
  15. package/types/2d/atlas/types.d.ts +53 -0
  16. package/types/2d/data/RenderData2D.d.ts +1 -0
  17. package/types/2d/data/VertexData2D.d.ts +1 -0
  18. package/types/2d/enums/FontStyle.d.ts +11 -0
  19. package/types/2d/enums/SpriteDrawMode.d.ts +9 -0
  20. package/types/2d/enums/SpriteMaskInteraction.d.ts +11 -0
  21. package/types/2d/enums/SpriteMaskLayer.d.ts +71 -0
  22. package/types/2d/enums/SpriteModifyFlags.d.ts +13 -0
  23. package/types/2d/enums/SpriteTileMode.d.ts +11 -0
  24. package/types/2d/enums/TextAlignment.d.ts +22 -0
  25. package/types/2d/enums/TextOverflow.d.ts +9 -0
  26. package/types/2d/index.d.ts +9 -0
  27. package/types/2d/sprite/Sprite.d.ts +97 -0
  28. package/types/2d/sprite/SpriteMask.d.ts +63 -0
  29. package/types/2d/sprite/SpriteRenderer.d.ts +77 -0
  30. package/types/2d/sprite/index.d.ts +3 -0
  31. package/types/2d/text/CharInfo.d.ts +1 -0
  32. package/types/2d/text/CharRenderData.d.ts +1 -0
  33. package/types/2d/text/CharRenderDataPool.d.ts +1 -0
  34. package/types/2d/text/Font.d.ts +26 -0
  35. package/types/2d/text/SubFont.d.ts +1 -0
  36. package/types/2d/text/TextRenderer.d.ts +123 -0
  37. package/types/2d/text/TextUtils.d.ts +1 -0
  38. package/types/2d/text/index.d.ts +2 -0
  39. package/types/Background.d.ts +43 -0
  40. package/types/BoolUpdateFlag.d.ts +12 -0
  41. package/types/Camera.d.ts +206 -0
  42. package/types/Canvas.d.ts +9 -0
  43. package/types/Component.d.ts +32 -0
  44. package/types/ComponentsDependencies.d.ts +17 -0
  45. package/types/ComponentsManager.d.ts +46 -0
  46. package/types/DisorderedArray.d.ts +18 -0
  47. package/types/Engine.d.ts +140 -0
  48. package/types/EngineSettings.d.ts +8 -0
  49. package/types/Entity.d.ts +151 -0
  50. package/types/Layer.d.ts +73 -0
  51. package/types/Platform.d.ts +15 -0
  52. package/types/RenderPipeline/Basic2DBatcher.d.ts +20 -0
  53. package/types/RenderPipeline/BasicRenderPipeline.d.ts +66 -0
  54. package/types/RenderPipeline/ClassPool.d.ts +17 -0
  55. package/types/RenderPipeline/MeshRenderData.d.ts +15 -0
  56. package/types/RenderPipeline/MeshRenderElement.d.ts +17 -0
  57. package/types/RenderPipeline/RenderContext.d.ts +1 -0
  58. package/types/RenderPipeline/RenderData.d.ts +7 -0
  59. package/types/RenderPipeline/RenderElement.d.ts +11 -0
  60. package/types/RenderPipeline/RenderPass.d.ts +55 -0
  61. package/types/RenderPipeline/RenderQueue.d.ts +38 -0
  62. package/types/RenderPipeline/SpriteBatcher.d.ts +1 -0
  63. package/types/RenderPipeline/SpriteElement.d.ts +13 -0
  64. package/types/RenderPipeline/SpriteMaskBatcher.d.ts +10 -0
  65. package/types/RenderPipeline/SpriteMaskElement.d.ts +10 -0
  66. package/types/RenderPipeline/SpriteMaskManager.d.ts +1 -0
  67. package/types/RenderPipeline/SpriteMaskRenderData.d.ts +10 -0
  68. package/types/RenderPipeline/SpriteRenderData.d.ts +12 -0
  69. package/types/RenderPipeline/TextRenderData.d.ts +6 -0
  70. package/types/RenderPipeline/TextRenderElement.d.ts +6 -0
  71. package/types/RenderPipeline/enums/PipelineStage.d.ts +9 -0
  72. package/types/RenderPipeline/index.d.ts +4 -0
  73. package/types/Renderer.d.ts +119 -0
  74. package/types/Scene.d.ts +142 -0
  75. package/types/SceneManager.d.ts +28 -0
  76. package/types/Script.d.ts +118 -0
  77. package/types/SystemInfo.d.ts +14 -0
  78. package/types/Transform.d.ts +258 -0
  79. package/types/UpdateFlag.d.ts +20 -0
  80. package/types/UpdateFlagManager.d.ts +1 -0
  81. package/types/Utils.d.ts +3 -0
  82. package/types/VirtualCamera.d.ts +1 -0
  83. package/types/animation/AnimationClip.d.ts +58 -0
  84. package/types/animation/AnimationClipCurveBinding.d.ts +21 -0
  85. package/types/animation/AnimationEvent.d.ts +11 -0
  86. package/types/animation/Animator.d.ts +86 -0
  87. package/types/animation/AnimatorController.d.ts +32 -0
  88. package/types/animation/AnimatorControllerLayer.d.ts +18 -0
  89. package/types/animation/AnimatorState.d.ts +60 -0
  90. package/types/animation/AnimatorStateMachine.d.ts +37 -0
  91. package/types/animation/AnimatorTransition.d.ts +14 -0
  92. package/types/animation/Keyframe.d.ts +19 -0
  93. package/types/animation/StateMachineScript.d.ts +32 -0
  94. package/types/animation/animationCurve/AnimationArrayCurve.d.ts +7 -0
  95. package/types/animation/animationCurve/AnimationBoolCurve.d.ts +7 -0
  96. package/types/animation/animationCurve/AnimationColorCurve.d.ts +8 -0
  97. package/types/animation/animationCurve/AnimationCurve.d.ts +39 -0
  98. package/types/animation/animationCurve/AnimationFloatArrayCurve.d.ts +12 -0
  99. package/types/animation/animationCurve/AnimationFloatCurve.d.ts +7 -0
  100. package/types/animation/animationCurve/AnimationQuaternionCurve.d.ts +8 -0
  101. package/types/animation/animationCurve/AnimationVector2Curve.d.ts +8 -0
  102. package/types/animation/animationCurve/AnimationVector3Curve.d.ts +8 -0
  103. package/types/animation/animationCurve/AnimationVector4Curve.d.ts +8 -0
  104. package/types/animation/animationCurve/index.d.ts +10 -0
  105. package/types/animation/animationCurve/interfaces/IAnimationCurveCalculator.d.ts +1 -0
  106. package/types/animation/enums/AnimatorConditionMode.d.ts +8 -0
  107. package/types/animation/enums/AnimatorCullingMode.d.ts +9 -0
  108. package/types/animation/enums/AnimatorLayerBlendingMode.d.ts +4 -0
  109. package/types/animation/enums/AnimatorStatePlayState.d.ts +1 -0
  110. package/types/animation/enums/InterpolationType.d.ts +13 -0
  111. package/types/animation/enums/LayerState.d.ts +13 -0
  112. package/types/animation/enums/PlayState.d.ts +13 -0
  113. package/types/animation/enums/WrapMode.d.ts +9 -0
  114. package/types/animation/index.d.ts +21 -0
  115. package/types/animation/internal/AnimationEventHandler.d.ts +1 -0
  116. package/types/animation/internal/AnimatorLayerData.d.ts +1 -0
  117. package/types/animation/internal/AnimatorStateData.d.ts +1 -0
  118. package/types/animation/internal/AnimatorStatePlayData.d.ts +1 -0
  119. package/types/animation/internal/AnimatorTempValue.d.ts +1 -0
  120. package/types/animation/internal/animationCurveOwner/AnimationCurveOwner.d.ts +5 -0
  121. package/types/animation/internal/animationCurveOwner/assembler/BlendShapeWeightsAnimationCurveOwnerAssembler.d.ts +1 -0
  122. package/types/animation/internal/animationCurveOwner/assembler/IAnimationCurveOwnerAssembler.d.ts +1 -0
  123. package/types/animation/internal/animationCurveOwner/assembler/PositionAnimationCurveOwnerAssembler.d.ts +1 -0
  124. package/types/animation/internal/animationCurveOwner/assembler/RotationAnimationCurveOwnerAssembler.d.ts +1 -0
  125. package/types/animation/internal/animationCurveOwner/assembler/ScaleAnimationCurveOwnerAssembler.d.ts +1 -0
  126. package/types/animation/internal/animationCurveOwner/assembler/UniversalAnimationCurveOwnerAssembler.d.ts +1 -0
  127. package/types/asset/AssetPromise.d.ts +56 -0
  128. package/types/asset/AssetType.d.ts +52 -0
  129. package/types/asset/ContentRestorer.d.ts +17 -0
  130. package/types/asset/GraphicsResource.d.ts +9 -0
  131. package/types/asset/IRefObject.d.ts +2 -0
  132. package/types/asset/IReferable.d.ts +2 -0
  133. package/types/asset/LoadItem.d.ts +33 -0
  134. package/types/asset/Loader.d.ts +30 -0
  135. package/types/asset/RefObject.d.ts +27 -0
  136. package/types/asset/ReferResource.d.ts +27 -0
  137. package/types/asset/ResourceManager.d.ts +95 -0
  138. package/types/asset/request.d.ts +25 -0
  139. package/types/base/Constant.d.ts +110 -0
  140. package/types/base/EngineObject.d.ts +24 -0
  141. package/types/base/Event.d.ts +24 -0
  142. package/types/base/EventDispatcher.d.ts +79 -0
  143. package/types/base/Logger.d.ts +11 -0
  144. package/types/base/StaticInterfaceImplement.d.ts +5 -0
  145. package/types/base/Time.d.ts +41 -0
  146. package/types/base/Util.d.ts +14 -0
  147. package/types/base/index.d.ts +7 -0
  148. package/types/clone/CloneManager.d.ts +31 -0
  149. package/types/clone/ComponentCloner.d.ts +14 -0
  150. package/types/clone/enums/CloneMode.d.ts +13 -0
  151. package/types/enums/BackgroundMode.d.ts +9 -0
  152. package/types/enums/BackgroundTextureFillMode.d.ts +8 -0
  153. package/types/enums/CameraClearFlags.d.ts +13 -0
  154. package/types/enums/ColorSpace.d.ts +9 -0
  155. package/types/enums/FogMode.d.ts +13 -0
  156. package/types/env-probe/CubeProbe.d.ts +34 -0
  157. package/types/env-probe/Probe.d.ts +58 -0
  158. package/types/env-probe/index.d.ts +2 -0
  159. package/types/graphic/Buffer.d.ts +105 -0
  160. package/types/graphic/BufferUtil.d.ts +11 -0
  161. package/types/graphic/IndexBufferBinding.d.ts +21 -0
  162. package/types/graphic/Mesh.d.ts +70 -0
  163. package/types/graphic/SubMesh.d.ts +19 -0
  164. package/types/graphic/VertexBufferBinding.d.ts +20 -0
  165. package/types/graphic/VertexElement.d.ts +44 -0
  166. package/types/graphic/enums/BufferBindFlag.d.ts +9 -0
  167. package/types/graphic/enums/BufferUsage.d.ts +11 -0
  168. package/types/graphic/enums/IndexFormat.d.ts +11 -0
  169. package/types/graphic/enums/MeshTopology.d.ts +19 -0
  170. package/types/graphic/enums/SetDataOptions.d.ts +9 -0
  171. package/types/graphic/enums/VertexElementFormat.d.ts +37 -0
  172. package/types/graphic/index.d.ts +13 -0
  173. package/types/index.d.ts +53 -0
  174. package/types/input/InputManager.d.ts +67 -0
  175. package/types/input/enums/Keys.d.ts +398 -0
  176. package/types/input/enums/PointerButton.d.ts +33 -0
  177. package/types/input/enums/PointerPhase.d.ts +15 -0
  178. package/types/input/index.d.ts +5 -0
  179. package/types/input/interface/IInput.d.ts +18 -0
  180. package/types/input/keyboard/KeyboardManager.d.ts +1 -0
  181. package/types/input/pointer/Pointer.d.ts +25 -0
  182. package/types/input/pointer/PointerManager.d.ts +1 -0
  183. package/types/input/wheel/WheelManager.d.ts +1 -0
  184. package/types/lighting/AmbientLight.d.ts +67 -0
  185. package/types/lighting/DirectLight.d.ts +21 -0
  186. package/types/lighting/KHR_lights.d.ts +4 -0
  187. package/types/lighting/Light.d.ts +48 -0
  188. package/types/lighting/LightManager.d.ts +5 -0
  189. package/types/lighting/PointLight.d.ts +18 -0
  190. package/types/lighting/SpotLight.d.ts +36 -0
  191. package/types/lighting/enums/DiffuseMode.d.ts +13 -0
  192. package/types/lighting/index.d.ts +6 -0
  193. package/types/material/BaseMaterial.d.ts +88 -0
  194. package/types/material/BlinnPhongMaterial.d.ts +71 -0
  195. package/types/material/Material.d.ts +51 -0
  196. package/types/material/PBRBaseMaterial.d.ts +101 -0
  197. package/types/material/PBRMaterial.d.ts +36 -0
  198. package/types/material/PBRSpecularMaterial.d.ts +38 -0
  199. package/types/material/UnlitMaterial.d.ts +33 -0
  200. package/types/material/enums/BlendMode.d.ts +9 -0
  201. package/types/material/enums/RenderFace.d.ts +11 -0
  202. package/types/material/enums/TextureCoordinate.d.ts +13 -0
  203. package/types/material/index.d.ts +10 -0
  204. package/types/mesh/BlendShape.d.ts +39 -0
  205. package/types/mesh/BlendShapeFrame.d.ts +22 -0
  206. package/types/mesh/BlendShapeManager.d.ts +1 -0
  207. package/types/mesh/BufferMesh.d.ts +59 -0
  208. package/types/mesh/MeshRenderer.d.ts +30 -0
  209. package/types/mesh/ModelMesh.d.ts +226 -0
  210. package/types/mesh/PrimitiveMesh.d.ts +86 -0
  211. package/types/mesh/PrimitiveMeshRestorer.d.ts +1 -0
  212. package/types/mesh/Skin.d.ts +16 -0
  213. package/types/mesh/SkinnedMeshRenderer.d.ts +62 -0
  214. package/types/mesh/enums/VertexAttribute.d.ts +33 -0
  215. package/types/mesh/index.d.ts +8 -0
  216. package/types/particle/ParticleRenderer.d.ts +235 -0
  217. package/types/particle/index.d.ts +1 -0
  218. package/types/physics/CharacterController.d.ts +53 -0
  219. package/types/physics/Collider.d.ts +29 -0
  220. package/types/physics/Collision.d.ts +4 -0
  221. package/types/physics/DynamicCollider.d.ts +161 -0
  222. package/types/physics/HitResult.d.ts +15 -0
  223. package/types/physics/PhysicsManager.d.ts +95 -0
  224. package/types/physics/PhysicsMaterial.d.ts +37 -0
  225. package/types/physics/StaticCollider.d.ts +7 -0
  226. package/types/physics/enums/ColliderShapeUpAxis.d.ts +11 -0
  227. package/types/physics/enums/ControllerCollisionFlag.d.ts +11 -0
  228. package/types/physics/enums/ControllerNonWalkableMode.d.ts +9 -0
  229. package/types/physics/enums/HingeJointFlag.d.ts +1 -0
  230. package/types/physics/enums/PhysicsMaterialCombineMode.d.ts +13 -0
  231. package/types/physics/enums/index.d.ts +4 -0
  232. package/types/physics/index.d.ts +10 -0
  233. package/types/physics/joint/FixedJoint.d.ts +3 -0
  234. package/types/physics/joint/HingeJoint.d.ts +57 -0
  235. package/types/physics/joint/Joint.d.ts +58 -0
  236. package/types/physics/joint/JointLimits.d.ts +15 -0
  237. package/types/physics/joint/JointMotor.d.ts +13 -0
  238. package/types/physics/joint/SpringJoint.d.ts +42 -0
  239. package/types/physics/joint/index.d.ts +6 -0
  240. package/types/physics/shape/BoxColliderShape.d.ts +15 -0
  241. package/types/physics/shape/CapsuleColliderShape.d.ts +26 -0
  242. package/types/physics/shape/ColliderShape.d.ts +51 -0
  243. package/types/physics/shape/PlaneColliderShape.d.ts +7 -0
  244. package/types/physics/shape/SphereColliderShape.d.ts +13 -0
  245. package/types/physics/shape/index.d.ts +5 -0
  246. package/types/renderingHardwareInterface/IHardwareRenderer.d.ts +6 -0
  247. package/types/renderingHardwareInterface/IPlatformBuffer.d.ts +8 -0
  248. package/types/renderingHardwareInterface/IPlatformRenderTarget.d.ts +20 -0
  249. package/types/renderingHardwareInterface/IPlatformTexture.d.ts +36 -0
  250. package/types/renderingHardwareInterface/IPlatformTexture2D.d.ts +37 -0
  251. package/types/renderingHardwareInterface/IPlatformTexture2DArray.d.ts +40 -0
  252. package/types/renderingHardwareInterface/IPlatformTextureCube.d.ts +41 -0
  253. package/types/renderingHardwareInterface/index.d.ts +6 -0
  254. package/types/shader/Shader.d.ts +72 -0
  255. package/types/shader/ShaderData.d.ts +350 -0
  256. package/types/shader/ShaderMacro.d.ts +10 -0
  257. package/types/shader/ShaderMacroCollection.d.ts +1 -0
  258. package/types/shader/ShaderPart.d.ts +41 -0
  259. package/types/shader/ShaderPass.d.ts +9 -0
  260. package/types/shader/ShaderPool.d.ts +1 -0
  261. package/types/shader/ShaderProgram.d.ts +1 -0
  262. package/types/shader/ShaderProgramPool.d.ts +1 -0
  263. package/types/shader/ShaderProperty.d.ts +13 -0
  264. package/types/shader/ShaderTagKey.d.ts +16 -0
  265. package/types/shader/ShaderUniform.d.ts +1 -0
  266. package/types/shader/ShaderUniformBlock.d.ts +1 -0
  267. package/types/shader/SubShader.d.ts +19 -0
  268. package/types/shader/enums/BlendFactor.d.ts +32 -0
  269. package/types/shader/enums/BlendOperation.d.ts +16 -0
  270. package/types/shader/enums/ColorWriteMask.d.ts +18 -0
  271. package/types/shader/enums/CompareFunction.d.ts +22 -0
  272. package/types/shader/enums/CullMode.d.ts +12 -0
  273. package/types/shader/enums/RenderQueueType.d.ts +11 -0
  274. package/types/shader/enums/ShaderDataGroup.d.ts +13 -0
  275. package/types/shader/enums/ShaderPropertyType.d.ts +27 -0
  276. package/types/shader/enums/StencilOperation.d.ts +22 -0
  277. package/types/shader/index.d.ts +12 -0
  278. package/types/shader/state/BlendState.d.ts +16 -0
  279. package/types/shader/state/DepthState.d.ts +14 -0
  280. package/types/shader/state/RasterState.d.ts +13 -0
  281. package/types/shader/state/RenderState.d.ts +20 -0
  282. package/types/shader/state/RenderTargetBlendState.d.ts +24 -0
  283. package/types/shader/state/StencilState.d.ts +34 -0
  284. package/types/shaderlib/ShaderFactory.d.ts +17 -0
  285. package/types/shaderlib/ShaderLib.d.ts +58 -0
  286. package/types/shaderlib/index.d.ts +1 -0
  287. package/types/shaderlib/pbr/index.d.ts +9 -0
  288. package/types/shaderlib/shadow/index.d.ts +8 -0
  289. package/types/shadow/CascadedShadowCasterPass.d.ts +47 -0
  290. package/types/shadow/ShadowSliceData.d.ts +1 -0
  291. package/types/shadow/ShadowUtils.d.ts +1 -0
  292. package/types/shadow/enum/ShadowCascadesMode.d.ts +11 -0
  293. package/types/shadow/enum/ShadowResolution.d.ts +13 -0
  294. package/types/shadow/enum/ShadowType.d.ts +13 -0
  295. package/types/shadow/index.d.ts +3 -0
  296. package/types/sky/Sky.d.ts +14 -0
  297. package/types/sky/SkyBoxMaterial.d.ts +25 -0
  298. package/types/sky/SkyProceduralMaterial.d.ts +72 -0
  299. package/types/sky/index.d.ts +2 -0
  300. package/types/texture/RenderTarget.d.ts +95 -0
  301. package/types/texture/Texture.d.ts +77 -0
  302. package/types/texture/Texture2D.d.ts +68 -0
  303. package/types/texture/Texture2DArray.d.ts +81 -0
  304. package/types/texture/TextureCube.d.ts +70 -0
  305. package/types/texture/enums/RenderBufferDepthFormat.d.ts +21 -0
  306. package/types/texture/enums/TextureCubeFace.d.ts +17 -0
  307. package/types/texture/enums/TextureDepthCompareFunction.d.ts +21 -0
  308. package/types/texture/enums/TextureFilterMode.d.ts +11 -0
  309. package/types/texture/enums/TextureFormat.d.ts +69 -0
  310. package/types/texture/enums/TextureWrapMode.d.ts +11 -0
  311. package/types/texture/index.d.ts +11 -0
  312. package/types/trail/TrailMaterial.d.ts +5 -0
  313. package/types/trail/TrailRenderer.d.ts +40 -0
  314. package/types/trail/index.d.ts +2 -0
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Describes how physics materials of the colliding objects are combined.
3
+ */
4
+ export declare enum PhysicsMaterialCombineMode {
5
+ /** Averages the friction/bounce of the two colliding materials. */
6
+ Average = 0,
7
+ /** Uses the smaller friction/bounce of the two colliding materials. */
8
+ Minimum = 1,
9
+ /** Multiplies the friction/bounce of the two colliding materials. */
10
+ Multiply = 2,
11
+ /** Uses the larger friction/bounce of the two colliding materials. */
12
+ Maximum = 3
13
+ }
@@ -0,0 +1,4 @@
1
+ export * from "./PhysicsMaterialCombineMode";
2
+ export * from "./ColliderShapeUpAxis";
3
+ export * from "./ControllerCollisionFlag";
4
+ export * from "./ControllerNonWalkableMode";
@@ -0,0 +1,10 @@
1
+ export { HitResult } from "./HitResult";
2
+ export { PhysicsManager } from "./PhysicsManager";
3
+ export { PhysicsMaterial } from "./PhysicsMaterial";
4
+ export { CharacterController } from "./CharacterController";
5
+ export * from "./shape";
6
+ export * from "./joint";
7
+ export * from "./enums";
8
+ export { Collider } from "./Collider";
9
+ export { StaticCollider } from "./StaticCollider";
10
+ export { DynamicCollider, CollisionDetectionMode, DynamicColliderConstraints } from "./DynamicCollider";
@@ -0,0 +1,3 @@
1
+ import { Joint } from "./Joint";
2
+ export declare class FixedJoint extends Joint {
3
+ }
@@ -0,0 +1,57 @@
1
+ import { Joint } from "./Joint";
2
+ import { Vector3 } from "@galacean/engine-math";
3
+ import { JointMotor } from "./JointMotor";
4
+ import { JointLimits } from "./JointLimits";
5
+ /**
6
+ * A joint which behaves in a similar way to a hinge or axle.
7
+ */
8
+ export declare class HingeJoint extends Joint {
9
+ private _axis;
10
+ private _hingeFlags;
11
+ private _useSpring;
12
+ private _jointMonitor;
13
+ private _limits;
14
+ /**
15
+ * The anchor rotation.
16
+ */
17
+ get axis(): Vector3;
18
+ set axis(value: Vector3);
19
+ /**
20
+ * The swing offset.
21
+ */
22
+ get swingOffset(): Vector3;
23
+ set swingOffset(value: Vector3);
24
+ /**
25
+ * The current angle in degrees of the joint relative to its rest position.
26
+ */
27
+ get angle(): number;
28
+ /**
29
+ * The angular velocity of the joint in degrees per second.
30
+ */
31
+ get velocity(): Readonly<Vector3>;
32
+ /**
33
+ * Enables the joint's limits. Disabled by default.
34
+ */
35
+ get useLimits(): boolean;
36
+ set useLimits(value: boolean);
37
+ /**
38
+ * Enables the joint's motor. Disabled by default.
39
+ */
40
+ get useMotor(): boolean;
41
+ set useMotor(value: boolean);
42
+ /**
43
+ * Enables the joint's spring. Disabled by default.
44
+ */
45
+ get useSpring(): boolean;
46
+ set useSpring(value: boolean);
47
+ /**
48
+ * The motor will apply a force up to a maximum force to achieve the target velocity in degrees per second.
49
+ */
50
+ get motor(): JointMotor;
51
+ set motor(value: JointMotor);
52
+ /**
53
+ * Limit of angular rotation (in degrees) on the hinge joint.
54
+ */
55
+ get limits(): JointLimits;
56
+ set limits(value: JointLimits);
57
+ }
@@ -0,0 +1,58 @@
1
+ import { IJoint } from "@galacean/engine-design";
2
+ import { Vector3 } from "@galacean/engine-math";
3
+ import { Component } from "../../Component";
4
+ import { Collider } from "../Collider";
5
+ import { Entity } from "../../Entity";
6
+ /**
7
+ * A base class providing common functionality for joints.
8
+ * @decorator `@dependentComponents(Collider)`
9
+ */
10
+ export declare class Joint extends Component {
11
+ protected _connectedCollider: JointCollider;
12
+ protected _collider: JointCollider;
13
+ protected _nativeJoint: IJoint;
14
+ private _force;
15
+ private _torque;
16
+ /**
17
+ * The connected collider.
18
+ */
19
+ get connectedCollider(): Collider;
20
+ set connectedCollider(value: Collider);
21
+ /**
22
+ * The connected anchor position.
23
+ * @remarks If connectedCollider is set, this anchor is relative offset, or the anchor is world position.
24
+ */
25
+ get connectedAnchor(): Vector3;
26
+ set connectedAnchor(value: Vector3);
27
+ /**
28
+ * The scale to apply to the inverse mass of collider 0 for resolving this constraint.
29
+ */
30
+ get connectedMassScale(): number;
31
+ set connectedMassScale(value: number);
32
+ /**
33
+ * The scale to apply to the inverse inertia of collider0 for resolving this constraint.
34
+ */
35
+ get connectedInertiaScale(): number;
36
+ set connectedInertiaScale(value: number);
37
+ /**
38
+ * The scale to apply to the inverse mass of collider 1 for resolving this constraint.
39
+ */
40
+ get massScale(): number;
41
+ set massScale(value: number);
42
+ /**
43
+ * The scale to apply to the inverse inertia of collider1 for resolving this constraint.
44
+ */
45
+ get inertiaScale(): number;
46
+ set inertiaScale(value: number);
47
+ /**
48
+ * The maximum force the joint can apply before breaking.
49
+ */
50
+ get breakForce(): number;
51
+ set breakForce(value: number);
52
+ /**
53
+ * The maximum torque the joint can apply before breaking.
54
+ */
55
+ get breakTorque(): number;
56
+ set breakTorque(value: number);
57
+ constructor(entity: Entity);
58
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * JointLimits is used to limit the joints angle.
3
+ */
4
+ export declare class JointLimits {
5
+ /** The upper angular limit (in degrees) of the joint. */
6
+ max: number;
7
+ /** The lower angular limit (in degrees) of the joint. */
8
+ min: number;
9
+ /** Distance inside the limit value at which the limit will be considered to be active by the solver. */
10
+ contactDistance: number;
11
+ /** The spring forces used to reach the target position. */
12
+ stiffness: number;
13
+ /** The damper force uses to dampen the spring. */
14
+ damping: number;
15
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * The JointMotor is used to motorize a joint.
3
+ */
4
+ export declare class JointMotor {
5
+ /** The motor will apply a force up to force to achieve targetVelocity. */
6
+ targetVelocity: number;
7
+ /** The force limit.*/
8
+ forceLimit: number;
9
+ /** Gear ration for the motor */
10
+ gearRation: number;
11
+ /** If freeSpin is enabled the motor will only accelerate but never slow down. */
12
+ freeSpin: boolean;
13
+ }
@@ -0,0 +1,42 @@
1
+ import { Joint } from "./Joint";
2
+ import { Vector3 } from "@galacean/engine-math";
3
+ /**
4
+ * A joint that maintains an upper or lower bound (or both) on the distance between two points on different objects.
5
+ */
6
+ export declare class SpringJoint extends Joint {
7
+ private _minDistance;
8
+ private _maxDistance;
9
+ private _tolerance;
10
+ private _stiffness;
11
+ private _damping;
12
+ /**
13
+ * The swing offset.
14
+ */
15
+ get swingOffset(): Vector3;
16
+ set swingOffset(value: Vector3);
17
+ /**
18
+ * The minimum distance.
19
+ */
20
+ get minDistance(): number;
21
+ set minDistance(value: number);
22
+ /**
23
+ * The maximum distance.
24
+ */
25
+ get maxDistance(): number;
26
+ set maxDistance(value: number);
27
+ /**
28
+ * The distance beyond the allowed range at which the joint becomes active.
29
+ */
30
+ get tolerance(): number;
31
+ set tolerance(value: number);
32
+ /**
33
+ * The spring strength of the joint.
34
+ */
35
+ get stiffness(): number;
36
+ set stiffness(value: number);
37
+ /**
38
+ * The degree of damping of the joint spring of the joint.
39
+ */
40
+ get damping(): number;
41
+ set damping(value: number);
42
+ }
@@ -0,0 +1,6 @@
1
+ export { Joint } from "./Joint";
2
+ export { FixedJoint } from "./FixedJoint";
3
+ export { HingeJoint } from "./HingeJoint";
4
+ export { SpringJoint } from "./SpringJoint";
5
+ export { JointLimits } from "./JointLimits";
6
+ export { JointMotor } from "./JointMotor";
@@ -0,0 +1,15 @@
1
+ import { ColliderShape } from "./ColliderShape";
2
+ import { Vector3 } from "@galacean/engine-math";
3
+ /**
4
+ * Physical collider shape for box.
5
+ */
6
+ export declare class BoxColliderShape extends ColliderShape {
7
+ private _size;
8
+ /**
9
+ * Size of box shape.
10
+ */
11
+ get size(): Vector3;
12
+ set size(value: Vector3);
13
+ constructor();
14
+ private _setSize;
15
+ }
@@ -0,0 +1,26 @@
1
+ import { ColliderShape } from "./ColliderShape";
2
+ import { ColliderShapeUpAxis } from "../enums/ColliderShapeUpAxis";
3
+ /**
4
+ * Physical collider shape for capsule.
5
+ */
6
+ export declare class CapsuleColliderShape extends ColliderShape {
7
+ private _radius;
8
+ private _height;
9
+ private _upAxis;
10
+ /**
11
+ * Radius of capsule.
12
+ */
13
+ get radius(): number;
14
+ set radius(value: number);
15
+ /**
16
+ * Height of capsule.
17
+ */
18
+ get height(): number;
19
+ set height(value: number);
20
+ /**
21
+ * Up axis of capsule.
22
+ */
23
+ get upAxis(): ColliderShapeUpAxis;
24
+ set upAxis(value: ColliderShapeUpAxis);
25
+ constructor();
26
+ }
@@ -0,0 +1,51 @@
1
+ import { PhysicsMaterial } from "../PhysicsMaterial";
2
+ import { Vector3 } from "@galacean/engine-math";
3
+ import { Collider } from "../Collider";
4
+ /**
5
+ * Abstract class for collider shapes.
6
+ */
7
+ export declare abstract class ColliderShape {
8
+ private static _idGenerator;
9
+ protected _id: number;
10
+ protected _material: PhysicsMaterial;
11
+ private _isTrigger;
12
+ private _rotation;
13
+ private _position;
14
+ private _contactOffset;
15
+ /**
16
+ * Collider owner of this shape.
17
+ */
18
+ get collider(): Collider;
19
+ /**
20
+ * Unique id for this shape.
21
+ */
22
+ get id(): number;
23
+ /**
24
+ * Contact offset for this shape.
25
+ */
26
+ get contactOffset(): number;
27
+ set contactOffset(value: number);
28
+ /**
29
+ * Physical material.
30
+ */
31
+ get material(): PhysicsMaterial;
32
+ set material(value: PhysicsMaterial);
33
+ /**
34
+ * The local rotation of this ColliderShape.
35
+ */
36
+ get rotation(): Vector3;
37
+ set rotation(value: Vector3);
38
+ /**
39
+ * The local position of this ColliderShape.
40
+ */
41
+ get position(): Vector3;
42
+ set position(value: Vector3);
43
+ /**
44
+ * True for TriggerShape, false for SimulationShape.
45
+ */
46
+ get isTrigger(): boolean;
47
+ set isTrigger(value: boolean);
48
+ protected constructor();
49
+ private _setPosition;
50
+ private _setRotation;
51
+ }
@@ -0,0 +1,7 @@
1
+ import { ColliderShape } from "./ColliderShape";
2
+ /**
3
+ * Physical collider shape plane.
4
+ */
5
+ export declare class PlaneColliderShape extends ColliderShape {
6
+ constructor();
7
+ }
@@ -0,0 +1,13 @@
1
+ import { ColliderShape } from "./ColliderShape";
2
+ /**
3
+ * Physical collider shape for sphere.
4
+ */
5
+ export declare class SphereColliderShape extends ColliderShape {
6
+ private _radius;
7
+ /**
8
+ * Radius of sphere shape.
9
+ */
10
+ get radius(): number;
11
+ set radius(value: number);
12
+ constructor();
13
+ }
@@ -0,0 +1,5 @@
1
+ export { ColliderShape } from "./ColliderShape";
2
+ export { BoxColliderShape } from "./BoxColliderShape";
3
+ export { SphereColliderShape } from "./SphereColliderShape";
4
+ export { PlaneColliderShape } from "./PlaneColliderShape";
5
+ export { CapsuleColliderShape } from "./CapsuleColliderShape";
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Hardware graphics API renderer.
3
+ */
4
+ export interface IHardwareRenderer {
5
+ [key: string]: any;
6
+ }
@@ -0,0 +1,8 @@
1
+ import { SetDataOptions } from "../graphic";
2
+ export interface IPlatformBuffer {
3
+ bind(): void;
4
+ setData(byteLength: number, data: ArrayBuffer | ArrayBufferView, bufferByteOffset?: number, dataOffset?: number, dataLength?: number, options?: SetDataOptions): void;
5
+ getData(data: ArrayBufferView, bufferByteOffset?: number, dataOffset?: number, dataLength?: number): void;
6
+ resize(byteLength: number): void;
7
+ destroy(): void;
8
+ }
@@ -0,0 +1,20 @@
1
+ import { TextureCubeFace } from "../texture";
2
+ /**
3
+ * Off-screen rendering target specification.
4
+ */
5
+ export interface IPlatformRenderTarget {
6
+ /**
7
+ * Set which face and mipLevel of the cube texture to render to.
8
+ * @param faceIndex - Cube texture face
9
+ * @param mipLevel - Set mip level the data want to write
10
+ */
11
+ setRenderTargetInfo(faceIndex: TextureCubeFace, mipLevel: number): void;
12
+ /**
13
+ * Blit FBO.
14
+ */
15
+ blitRenderTarget(): void;
16
+ /**
17
+ * Destroy render target.
18
+ */
19
+ destroy(): void;
20
+ }
@@ -0,0 +1,36 @@
1
+ import { TextureFilterMode, TextureWrapMode } from "../texture";
2
+ import { TextureDepthCompareFunction } from "../texture/enums/TextureDepthCompareFunction";
3
+ /**
4
+ * Texture interface specification.
5
+ */
6
+ export interface IPlatformTexture {
7
+ /**
8
+ * Wrapping mode for texture coordinate S.
9
+ */
10
+ wrapModeU: TextureWrapMode;
11
+ /**
12
+ * Wrapping mode for texture coordinate T.
13
+ */
14
+ wrapModeV: TextureWrapMode;
15
+ /**
16
+ * Filter mode for texture.
17
+ */
18
+ filterMode: TextureFilterMode;
19
+ /**
20
+ * Anisotropic level for texture.
21
+ */
22
+ anisoLevel: number;
23
+ /**
24
+ * Filter mode when texture as depth Texture.
25
+ */
26
+ depthCompareFunction: TextureDepthCompareFunction;
27
+ /**
28
+ * Destroy texture.
29
+ */
30
+ destroy(): void;
31
+ /**
32
+ * Generate multi-level textures based on the 0th level data.
33
+ */
34
+ generateMipmaps(): void;
35
+ setUseDepthCompareMode(value: boolean): any;
36
+ }
@@ -0,0 +1,37 @@
1
+ import { IPlatformTexture } from "./IPlatformTexture";
2
+ /**
3
+ * 2D texture interface specification.
4
+ */
5
+ export interface IPlatformTexture2D extends IPlatformTexture {
6
+ /**
7
+ * Setting pixels data through color buffer data, designated area and texture mipmapping level,it's also applicable to compressed formats.
8
+ * @remarks If it is the WebGL1.0 platform and the texture format is compressed, the first upload must be filled with textures.
9
+ * @param colorBuffer - Color buffer data
10
+ * @param mipLevel - Texture mipmapping level
11
+ * @param x - X coordinate of area start
12
+ * @param y - Y coordinate of area start
13
+ * @param width - Data width. if it's empty, width is the width corresponding to mipLevel minus x , width corresponding to mipLevel is Math.max(1, this.width >> mipLevel)
14
+ * @param height - Data height. if it's empty, height is the height corresponding to mipLevel minus y , height corresponding to mipLevel is Math.max(1, this.height >> mipLevel)
15
+ */
16
+ setPixelBuffer(colorBuffer: ArrayBufferView, mipLevel: number, x: number, y: number, width?: number, height?: number): void;
17
+ /**
18
+ * Setting pixels data through TexImageSource, designated area and texture mipmapping level.
19
+ * @param imageSource - The source of texture
20
+ * @param mipLevel - Texture mipmapping level
21
+ * @param flipY - Whether to flip the Y axis
22
+ * @param premultiplyAlpha - Whether to premultiply the transparent channel
23
+ * @param x - X coordinate of area start
24
+ * @param y - Y coordinate of area start
25
+ */
26
+ setImageSource(imageSource: TexImageSource | OffscreenCanvas, mipLevel: number, flipY: boolean, premultiplyAlpha: boolean, x: number, y: number): void;
27
+ /**
28
+ * Get the pixel color buffer according to the specified area.
29
+ * @param x - X coordinate of area start
30
+ * @param y - Y coordinate of area start
31
+ * @param width - Area width
32
+ * @param height - Area height
33
+ * @param mipLevel - Set mip level the data want to get from
34
+ * @param out - Color buffer
35
+ */
36
+ getPixelBuffer(x: number, y: number, width: number, height: number, mipLevel: number, out: ArrayBufferView): void;
37
+ }
@@ -0,0 +1,40 @@
1
+ import { IPlatformTexture } from "./IPlatformTexture";
2
+ /**
3
+ * 2D texture array interface specification.
4
+ */
5
+ export interface IPlatformTexture2DArray extends IPlatformTexture {
6
+ /**
7
+ * Setting pixels data through color buffer data, designated area and texture mipmapping level,it's also applicable to compressed formats.
8
+ * @param offsetIndex - The texture array element offset index
9
+ * @param colorBuffer - Color buffer data
10
+ * @param mipLevel - Texture mipmapping level
11
+ * @param x - X coordinate of area start
12
+ * @param y - Y coordinate of area start
13
+ * @param width - Data width. if it's empty, width is the width corresponding to mipLevel minus x , width corresponding to mipLevel is Math.max(1, this.width >> mipLevel)
14
+ * @param height - Data height. if it's empty, height is the height corresponding to mipLevel minus y , height corresponding to mipLevel is Math.max(1, this.height >> mipLevel)
15
+ * @param length - Data length.
16
+ */
17
+ setPixelBuffer(offsetIndex: number, colorBuffer: ArrayBufferView, mipLevel: number, x: number, y: number, width?: number, height?: number, length?: number): void;
18
+ /**
19
+ * Setting pixels data through TexImageSource, designated area and texture mipmapping level.
20
+ * @param index - The texture array element index
21
+ * @param imageSource - The source of texture
22
+ * @param mipLevel - Texture mipmapping level
23
+ * @param flipY - Whether to flip the Y axis
24
+ * @param premultiplyAlpha - Whether to premultiply the transparent channel
25
+ * @param x - X coordinate of area start
26
+ * @param y - Y coordinate of area start
27
+ */
28
+ setImageSource(index: number, imageSource: TexImageSource | OffscreenCanvas, mipLevel: number, flipY: boolean, premultiplyAlpha: boolean, x: number, y: number): void;
29
+ /**
30
+ * Get the pixel color buffer according to the specified area.
31
+ * @param elementIndex - The texture array element index
32
+ * @param x - X coordinate of area start
33
+ * @param y - Y coordinate of area start
34
+ * @param width - Area width
35
+ * @param height - Area height
36
+ * @param mipLevel - Set mip level the data want to get from
37
+ * @param out - Color buffer
38
+ */
39
+ getPixelBuffer(elementIndex: number, x: number, y: number, width: number, height: number, mipLevel: number, out: ArrayBufferView): void;
40
+ }
@@ -0,0 +1,41 @@
1
+ import { TextureCubeFace } from "../texture";
2
+ import { IPlatformTexture } from "./IPlatformTexture";
3
+ /**
4
+ * Cube texture interface specification.
5
+ */
6
+ export interface IPlatformTextureCube extends IPlatformTexture {
7
+ /**
8
+ * Setting pixels data through cube face,color buffer data, designated area and texture mipmapping level,it's also applicable to compressed formats.
9
+ * @remarks When compressed texture is in WebGL1, the texture must be filled first before writing the sub-region
10
+ * @param face - Cube face
11
+ * @param colorBuffer - Color buffer data
12
+ * @param mipLevel - Texture mipmapping level
13
+ * @param x - X coordinate of area start
14
+ * @param y - Y coordinate of area start
15
+ * @param width - Data width.if it's empty, width is the width corresponding to mipLevel minus x , width corresponding to mipLevel is Math.max(1, this.width >> mipLevel)
16
+ * @param height - Data height.if it's empty, height is the height corresponding to mipLevel minus y , height corresponding to mipLevel is Math.max(1, this.height >> mipLevel)
17
+ */
18
+ setPixelBuffer(face: TextureCubeFace, colorBuffer: ArrayBufferView, mipLevel: number, x: number, y: number, width?: number, height?: number): void;
19
+ /**
20
+ * Setting pixels data through cube face, TexImageSource, designated area and texture mipmapping level.
21
+ * @param face - Cube face
22
+ * @param imageSource - The source of texture
23
+ * @param mipLevel - Texture mipmapping level
24
+ * @param flipY - Whether to flip the Y axis
25
+ * @param premultiplyAlpha - Whether to premultiply the transparent channel
26
+ * @param x - X coordinate of area start
27
+ * @param y - Y coordinate of area start
28
+ */
29
+ setImageSource(face: TextureCubeFace, imageSource: TexImageSource | OffscreenCanvas, mipLevel: number, flipY: boolean, premultiplyAlpha: boolean, x: number, y: number): void;
30
+ /**
31
+ * Get the pixel color buffer according to the specified cube face and area.
32
+ * @param face - You can choose which cube face to read
33
+ * @param x - X coordinate of area start
34
+ * @param y - Y coordinate of area start
35
+ * @param width - Area width
36
+ * @param height - Area height
37
+ * @param mipLevel - Set mip level the data want to get from
38
+ * @param out - Color buffer
39
+ */
40
+ getPixelBuffer(face: TextureCubeFace, x: number, y: number, width: number, height: number, mipLevel: number, out: ArrayBufferView): void;
41
+ }
@@ -0,0 +1,6 @@
1
+ export type { IHardwareRenderer } from "./IHardwareRenderer";
2
+ export type { IPlatformRenderTarget } from "./IPlatformRenderTarget";
3
+ export type { IPlatformTexture } from "./IPlatformTexture";
4
+ export type { IPlatformTexture2D } from "./IPlatformTexture2D";
5
+ export type { IPlatformTexture2DArray } from "./IPlatformTexture2DArray";
6
+ export type { IPlatformTextureCube } from "./IPlatformTextureCube";
@@ -0,0 +1,72 @@
1
+ import { Engine } from "../Engine";
2
+ import { ShaderMacro } from "./ShaderMacro";
3
+ import { ShaderPass } from "./ShaderPass";
4
+ import { ShaderProperty } from "./ShaderProperty";
5
+ /**
6
+ * Shader for rendering.
7
+ */
8
+ export declare class Shader {
9
+ private static _shaderMap;
10
+ private static _propertyNameMap;
11
+ private static _macroMaskMap;
12
+ private static _macroCounter;
13
+ private static _macroMap;
14
+ /**
15
+ * Create a shader.
16
+ * @param name - Name of the shader
17
+ * @param vertexSource - Vertex source code
18
+ * @param fragmentSource - Fragment source code
19
+ * @returns Shader
20
+ */
21
+ static create(name: string, vertexSource: string, fragmentSource: string): Shader;
22
+ /**
23
+ * Create a shader.
24
+ * @param name - Name of the shader
25
+ * @param shaderPasses - Shader passes
26
+ * @returns Shader
27
+ */
28
+ static create(name: string, shaderPasses: ShaderPass[]): Shader;
29
+ /**
30
+ * Find a shader by name.
31
+ * @param name - Name of the shader
32
+ */
33
+ static find(name: string): Shader;
34
+ /**
35
+ * Get shader macro by name.
36
+ * @param name - Name of the shader macro
37
+ * @returns Shader macro
38
+ */
39
+ static getMacroByName(name: string): ShaderMacro;
40
+ /**
41
+ * Get shader macro by name.
42
+ * @param name - Name of the shader macro
43
+ * @param value - Value of the shader macro
44
+ * @returns Shader macro
45
+ */
46
+ static getMacroByName(name: string, value: string): ShaderMacro;
47
+ /**
48
+ * Get shader property by name.
49
+ * @param name - Name of the shader property
50
+ * @returns Shader property
51
+ */
52
+ static getPropertyByName(name: string): ShaderProperty;
53
+ /** The name of shader. */
54
+ readonly name: string;
55
+ /**
56
+ * Shader passes.
57
+ */
58
+ get passes(): ReadonlyArray<ShaderPass>;
59
+ private _passes;
60
+ private constructor();
61
+ /**
62
+ * Compile shader variant by macro name list.
63
+ *
64
+ * @remarks
65
+ * Usually a shader contains some macros,any combination of macros is called shader variant.
66
+ *
67
+ * @param engine - Engine to which the shader variant belongs
68
+ * @param macros - Macro name list
69
+ * @returns Is the compiled shader variant valid
70
+ */
71
+ compileVariant(engine: Engine, macros: string[]): boolean;
72
+ }