@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.
- package/LICENSE +21 -0
- package/README.md +1 -0
- package/dist/main.js +24255 -0
- package/dist/main.js.map +1 -0
- package/dist/miniprogram.js +24255 -0
- package/dist/module.js +24138 -0
- package/dist/module.js.map +1 -0
- package/package.json +26 -0
- package/types/2d/assembler/IAssembler.d.ts +1 -0
- package/types/2d/assembler/SimpleSpriteAssembler.d.ts +1 -0
- package/types/2d/assembler/SlicedSpriteAssembler.d.ts +1 -0
- package/types/2d/assembler/TiledSpriteAssembler.d.ts +1 -0
- package/types/2d/atlas/FontAtlas.d.ts +1 -0
- package/types/2d/atlas/SpriteAtlas.d.ts +36 -0
- package/types/2d/atlas/types.d.ts +53 -0
- package/types/2d/data/RenderData2D.d.ts +1 -0
- package/types/2d/data/VertexData2D.d.ts +1 -0
- package/types/2d/enums/FontStyle.d.ts +11 -0
- package/types/2d/enums/SpriteDrawMode.d.ts +9 -0
- package/types/2d/enums/SpriteMaskInteraction.d.ts +11 -0
- package/types/2d/enums/SpriteMaskLayer.d.ts +71 -0
- package/types/2d/enums/SpriteModifyFlags.d.ts +13 -0
- package/types/2d/enums/SpriteTileMode.d.ts +11 -0
- package/types/2d/enums/TextAlignment.d.ts +22 -0
- package/types/2d/enums/TextOverflow.d.ts +9 -0
- package/types/2d/index.d.ts +9 -0
- package/types/2d/sprite/Sprite.d.ts +97 -0
- package/types/2d/sprite/SpriteMask.d.ts +63 -0
- package/types/2d/sprite/SpriteRenderer.d.ts +77 -0
- package/types/2d/sprite/index.d.ts +3 -0
- package/types/2d/text/CharInfo.d.ts +1 -0
- package/types/2d/text/CharRenderData.d.ts +1 -0
- package/types/2d/text/CharRenderDataPool.d.ts +1 -0
- package/types/2d/text/Font.d.ts +26 -0
- package/types/2d/text/SubFont.d.ts +1 -0
- package/types/2d/text/TextRenderer.d.ts +123 -0
- package/types/2d/text/TextUtils.d.ts +1 -0
- package/types/2d/text/index.d.ts +2 -0
- package/types/Background.d.ts +43 -0
- package/types/BoolUpdateFlag.d.ts +12 -0
- package/types/Camera.d.ts +206 -0
- package/types/Canvas.d.ts +9 -0
- package/types/Component.d.ts +32 -0
- package/types/ComponentsDependencies.d.ts +17 -0
- package/types/ComponentsManager.d.ts +46 -0
- package/types/DisorderedArray.d.ts +18 -0
- package/types/Engine.d.ts +140 -0
- package/types/EngineSettings.d.ts +8 -0
- package/types/Entity.d.ts +151 -0
- package/types/Layer.d.ts +73 -0
- package/types/Platform.d.ts +15 -0
- package/types/RenderPipeline/Basic2DBatcher.d.ts +20 -0
- package/types/RenderPipeline/BasicRenderPipeline.d.ts +66 -0
- package/types/RenderPipeline/ClassPool.d.ts +17 -0
- package/types/RenderPipeline/MeshRenderData.d.ts +15 -0
- package/types/RenderPipeline/MeshRenderElement.d.ts +17 -0
- package/types/RenderPipeline/RenderContext.d.ts +1 -0
- package/types/RenderPipeline/RenderData.d.ts +7 -0
- package/types/RenderPipeline/RenderElement.d.ts +11 -0
- package/types/RenderPipeline/RenderPass.d.ts +55 -0
- package/types/RenderPipeline/RenderQueue.d.ts +38 -0
- package/types/RenderPipeline/SpriteBatcher.d.ts +1 -0
- package/types/RenderPipeline/SpriteElement.d.ts +13 -0
- package/types/RenderPipeline/SpriteMaskBatcher.d.ts +10 -0
- package/types/RenderPipeline/SpriteMaskElement.d.ts +10 -0
- package/types/RenderPipeline/SpriteMaskManager.d.ts +1 -0
- package/types/RenderPipeline/SpriteMaskRenderData.d.ts +10 -0
- package/types/RenderPipeline/SpriteRenderData.d.ts +12 -0
- package/types/RenderPipeline/TextRenderData.d.ts +6 -0
- package/types/RenderPipeline/TextRenderElement.d.ts +6 -0
- package/types/RenderPipeline/enums/PipelineStage.d.ts +9 -0
- package/types/RenderPipeline/index.d.ts +4 -0
- package/types/Renderer.d.ts +119 -0
- package/types/Scene.d.ts +142 -0
- package/types/SceneManager.d.ts +28 -0
- package/types/Script.d.ts +118 -0
- package/types/SystemInfo.d.ts +14 -0
- package/types/Transform.d.ts +258 -0
- package/types/UpdateFlag.d.ts +20 -0
- package/types/UpdateFlagManager.d.ts +1 -0
- package/types/Utils.d.ts +3 -0
- package/types/VirtualCamera.d.ts +1 -0
- package/types/animation/AnimationClip.d.ts +58 -0
- package/types/animation/AnimationClipCurveBinding.d.ts +21 -0
- package/types/animation/AnimationEvent.d.ts +11 -0
- package/types/animation/Animator.d.ts +86 -0
- package/types/animation/AnimatorController.d.ts +32 -0
- package/types/animation/AnimatorControllerLayer.d.ts +18 -0
- package/types/animation/AnimatorState.d.ts +60 -0
- package/types/animation/AnimatorStateMachine.d.ts +37 -0
- package/types/animation/AnimatorTransition.d.ts +14 -0
- package/types/animation/Keyframe.d.ts +19 -0
- package/types/animation/StateMachineScript.d.ts +32 -0
- package/types/animation/animationCurve/AnimationArrayCurve.d.ts +7 -0
- package/types/animation/animationCurve/AnimationBoolCurve.d.ts +7 -0
- package/types/animation/animationCurve/AnimationColorCurve.d.ts +8 -0
- package/types/animation/animationCurve/AnimationCurve.d.ts +39 -0
- package/types/animation/animationCurve/AnimationFloatArrayCurve.d.ts +12 -0
- package/types/animation/animationCurve/AnimationFloatCurve.d.ts +7 -0
- package/types/animation/animationCurve/AnimationQuaternionCurve.d.ts +8 -0
- package/types/animation/animationCurve/AnimationVector2Curve.d.ts +8 -0
- package/types/animation/animationCurve/AnimationVector3Curve.d.ts +8 -0
- package/types/animation/animationCurve/AnimationVector4Curve.d.ts +8 -0
- package/types/animation/animationCurve/index.d.ts +10 -0
- package/types/animation/animationCurve/interfaces/IAnimationCurveCalculator.d.ts +1 -0
- package/types/animation/enums/AnimatorConditionMode.d.ts +8 -0
- package/types/animation/enums/AnimatorCullingMode.d.ts +9 -0
- package/types/animation/enums/AnimatorLayerBlendingMode.d.ts +4 -0
- package/types/animation/enums/AnimatorStatePlayState.d.ts +1 -0
- package/types/animation/enums/InterpolationType.d.ts +13 -0
- package/types/animation/enums/LayerState.d.ts +13 -0
- package/types/animation/enums/PlayState.d.ts +13 -0
- package/types/animation/enums/WrapMode.d.ts +9 -0
- package/types/animation/index.d.ts +21 -0
- package/types/animation/internal/AnimationEventHandler.d.ts +1 -0
- package/types/animation/internal/AnimatorLayerData.d.ts +1 -0
- package/types/animation/internal/AnimatorStateData.d.ts +1 -0
- package/types/animation/internal/AnimatorStatePlayData.d.ts +1 -0
- package/types/animation/internal/AnimatorTempValue.d.ts +1 -0
- package/types/animation/internal/animationCurveOwner/AnimationCurveOwner.d.ts +5 -0
- package/types/animation/internal/animationCurveOwner/assembler/BlendShapeWeightsAnimationCurveOwnerAssembler.d.ts +1 -0
- package/types/animation/internal/animationCurveOwner/assembler/IAnimationCurveOwnerAssembler.d.ts +1 -0
- package/types/animation/internal/animationCurveOwner/assembler/PositionAnimationCurveOwnerAssembler.d.ts +1 -0
- package/types/animation/internal/animationCurveOwner/assembler/RotationAnimationCurveOwnerAssembler.d.ts +1 -0
- package/types/animation/internal/animationCurveOwner/assembler/ScaleAnimationCurveOwnerAssembler.d.ts +1 -0
- package/types/animation/internal/animationCurveOwner/assembler/UniversalAnimationCurveOwnerAssembler.d.ts +1 -0
- package/types/asset/AssetPromise.d.ts +56 -0
- package/types/asset/AssetType.d.ts +52 -0
- package/types/asset/ContentRestorer.d.ts +17 -0
- package/types/asset/GraphicsResource.d.ts +9 -0
- package/types/asset/IRefObject.d.ts +2 -0
- package/types/asset/IReferable.d.ts +2 -0
- package/types/asset/LoadItem.d.ts +33 -0
- package/types/asset/Loader.d.ts +30 -0
- package/types/asset/RefObject.d.ts +27 -0
- package/types/asset/ReferResource.d.ts +27 -0
- package/types/asset/ResourceManager.d.ts +95 -0
- package/types/asset/request.d.ts +25 -0
- package/types/base/Constant.d.ts +110 -0
- package/types/base/EngineObject.d.ts +24 -0
- package/types/base/Event.d.ts +24 -0
- package/types/base/EventDispatcher.d.ts +79 -0
- package/types/base/Logger.d.ts +11 -0
- package/types/base/StaticInterfaceImplement.d.ts +5 -0
- package/types/base/Time.d.ts +41 -0
- package/types/base/Util.d.ts +14 -0
- package/types/base/index.d.ts +7 -0
- package/types/clone/CloneManager.d.ts +31 -0
- package/types/clone/ComponentCloner.d.ts +14 -0
- package/types/clone/enums/CloneMode.d.ts +13 -0
- package/types/enums/BackgroundMode.d.ts +9 -0
- package/types/enums/BackgroundTextureFillMode.d.ts +8 -0
- package/types/enums/CameraClearFlags.d.ts +13 -0
- package/types/enums/ColorSpace.d.ts +9 -0
- package/types/enums/FogMode.d.ts +13 -0
- package/types/env-probe/CubeProbe.d.ts +34 -0
- package/types/env-probe/Probe.d.ts +58 -0
- package/types/env-probe/index.d.ts +2 -0
- package/types/graphic/Buffer.d.ts +105 -0
- package/types/graphic/BufferUtil.d.ts +11 -0
- package/types/graphic/IndexBufferBinding.d.ts +21 -0
- package/types/graphic/Mesh.d.ts +70 -0
- package/types/graphic/SubMesh.d.ts +19 -0
- package/types/graphic/VertexBufferBinding.d.ts +20 -0
- package/types/graphic/VertexElement.d.ts +44 -0
- package/types/graphic/enums/BufferBindFlag.d.ts +9 -0
- package/types/graphic/enums/BufferUsage.d.ts +11 -0
- package/types/graphic/enums/IndexFormat.d.ts +11 -0
- package/types/graphic/enums/MeshTopology.d.ts +19 -0
- package/types/graphic/enums/SetDataOptions.d.ts +9 -0
- package/types/graphic/enums/VertexElementFormat.d.ts +37 -0
- package/types/graphic/index.d.ts +13 -0
- package/types/index.d.ts +53 -0
- package/types/input/InputManager.d.ts +67 -0
- package/types/input/enums/Keys.d.ts +398 -0
- package/types/input/enums/PointerButton.d.ts +33 -0
- package/types/input/enums/PointerPhase.d.ts +15 -0
- package/types/input/index.d.ts +5 -0
- package/types/input/interface/IInput.d.ts +18 -0
- package/types/input/keyboard/KeyboardManager.d.ts +1 -0
- package/types/input/pointer/Pointer.d.ts +25 -0
- package/types/input/pointer/PointerManager.d.ts +1 -0
- package/types/input/wheel/WheelManager.d.ts +1 -0
- package/types/lighting/AmbientLight.d.ts +67 -0
- package/types/lighting/DirectLight.d.ts +21 -0
- package/types/lighting/KHR_lights.d.ts +4 -0
- package/types/lighting/Light.d.ts +48 -0
- package/types/lighting/LightManager.d.ts +5 -0
- package/types/lighting/PointLight.d.ts +18 -0
- package/types/lighting/SpotLight.d.ts +36 -0
- package/types/lighting/enums/DiffuseMode.d.ts +13 -0
- package/types/lighting/index.d.ts +6 -0
- package/types/material/BaseMaterial.d.ts +88 -0
- package/types/material/BlinnPhongMaterial.d.ts +71 -0
- package/types/material/Material.d.ts +51 -0
- package/types/material/PBRBaseMaterial.d.ts +101 -0
- package/types/material/PBRMaterial.d.ts +36 -0
- package/types/material/PBRSpecularMaterial.d.ts +38 -0
- package/types/material/UnlitMaterial.d.ts +33 -0
- package/types/material/enums/BlendMode.d.ts +9 -0
- package/types/material/enums/RenderFace.d.ts +11 -0
- package/types/material/enums/TextureCoordinate.d.ts +13 -0
- package/types/material/index.d.ts +10 -0
- package/types/mesh/BlendShape.d.ts +39 -0
- package/types/mesh/BlendShapeFrame.d.ts +22 -0
- package/types/mesh/BlendShapeManager.d.ts +1 -0
- package/types/mesh/BufferMesh.d.ts +59 -0
- package/types/mesh/MeshRenderer.d.ts +30 -0
- package/types/mesh/ModelMesh.d.ts +226 -0
- package/types/mesh/PrimitiveMesh.d.ts +86 -0
- package/types/mesh/PrimitiveMeshRestorer.d.ts +1 -0
- package/types/mesh/Skin.d.ts +16 -0
- package/types/mesh/SkinnedMeshRenderer.d.ts +62 -0
- package/types/mesh/enums/VertexAttribute.d.ts +33 -0
- package/types/mesh/index.d.ts +8 -0
- package/types/particle/ParticleRenderer.d.ts +235 -0
- package/types/particle/index.d.ts +1 -0
- package/types/physics/CharacterController.d.ts +53 -0
- package/types/physics/Collider.d.ts +29 -0
- package/types/physics/Collision.d.ts +4 -0
- package/types/physics/DynamicCollider.d.ts +161 -0
- package/types/physics/HitResult.d.ts +15 -0
- package/types/physics/PhysicsManager.d.ts +95 -0
- package/types/physics/PhysicsMaterial.d.ts +37 -0
- package/types/physics/StaticCollider.d.ts +7 -0
- package/types/physics/enums/ColliderShapeUpAxis.d.ts +11 -0
- package/types/physics/enums/ControllerCollisionFlag.d.ts +11 -0
- package/types/physics/enums/ControllerNonWalkableMode.d.ts +9 -0
- package/types/physics/enums/HingeJointFlag.d.ts +1 -0
- package/types/physics/enums/PhysicsMaterialCombineMode.d.ts +13 -0
- package/types/physics/enums/index.d.ts +4 -0
- package/types/physics/index.d.ts +10 -0
- package/types/physics/joint/FixedJoint.d.ts +3 -0
- package/types/physics/joint/HingeJoint.d.ts +57 -0
- package/types/physics/joint/Joint.d.ts +58 -0
- package/types/physics/joint/JointLimits.d.ts +15 -0
- package/types/physics/joint/JointMotor.d.ts +13 -0
- package/types/physics/joint/SpringJoint.d.ts +42 -0
- package/types/physics/joint/index.d.ts +6 -0
- package/types/physics/shape/BoxColliderShape.d.ts +15 -0
- package/types/physics/shape/CapsuleColliderShape.d.ts +26 -0
- package/types/physics/shape/ColliderShape.d.ts +51 -0
- package/types/physics/shape/PlaneColliderShape.d.ts +7 -0
- package/types/physics/shape/SphereColliderShape.d.ts +13 -0
- package/types/physics/shape/index.d.ts +5 -0
- package/types/renderingHardwareInterface/IHardwareRenderer.d.ts +6 -0
- package/types/renderingHardwareInterface/IPlatformBuffer.d.ts +8 -0
- package/types/renderingHardwareInterface/IPlatformRenderTarget.d.ts +20 -0
- package/types/renderingHardwareInterface/IPlatformTexture.d.ts +36 -0
- package/types/renderingHardwareInterface/IPlatformTexture2D.d.ts +37 -0
- package/types/renderingHardwareInterface/IPlatformTexture2DArray.d.ts +40 -0
- package/types/renderingHardwareInterface/IPlatformTextureCube.d.ts +41 -0
- package/types/renderingHardwareInterface/index.d.ts +6 -0
- package/types/shader/Shader.d.ts +72 -0
- package/types/shader/ShaderData.d.ts +350 -0
- package/types/shader/ShaderMacro.d.ts +10 -0
- package/types/shader/ShaderMacroCollection.d.ts +1 -0
- package/types/shader/ShaderPart.d.ts +41 -0
- package/types/shader/ShaderPass.d.ts +9 -0
- package/types/shader/ShaderPool.d.ts +1 -0
- package/types/shader/ShaderProgram.d.ts +1 -0
- package/types/shader/ShaderProgramPool.d.ts +1 -0
- package/types/shader/ShaderProperty.d.ts +13 -0
- package/types/shader/ShaderTagKey.d.ts +16 -0
- package/types/shader/ShaderUniform.d.ts +1 -0
- package/types/shader/ShaderUniformBlock.d.ts +1 -0
- package/types/shader/SubShader.d.ts +19 -0
- package/types/shader/enums/BlendFactor.d.ts +32 -0
- package/types/shader/enums/BlendOperation.d.ts +16 -0
- package/types/shader/enums/ColorWriteMask.d.ts +18 -0
- package/types/shader/enums/CompareFunction.d.ts +22 -0
- package/types/shader/enums/CullMode.d.ts +12 -0
- package/types/shader/enums/RenderQueueType.d.ts +11 -0
- package/types/shader/enums/ShaderDataGroup.d.ts +13 -0
- package/types/shader/enums/ShaderPropertyType.d.ts +27 -0
- package/types/shader/enums/StencilOperation.d.ts +22 -0
- package/types/shader/index.d.ts +12 -0
- package/types/shader/state/BlendState.d.ts +16 -0
- package/types/shader/state/DepthState.d.ts +14 -0
- package/types/shader/state/RasterState.d.ts +13 -0
- package/types/shader/state/RenderState.d.ts +20 -0
- package/types/shader/state/RenderTargetBlendState.d.ts +24 -0
- package/types/shader/state/StencilState.d.ts +34 -0
- package/types/shaderlib/ShaderFactory.d.ts +17 -0
- package/types/shaderlib/ShaderLib.d.ts +58 -0
- package/types/shaderlib/index.d.ts +1 -0
- package/types/shaderlib/pbr/index.d.ts +9 -0
- package/types/shaderlib/shadow/index.d.ts +8 -0
- package/types/shadow/CascadedShadowCasterPass.d.ts +47 -0
- package/types/shadow/ShadowSliceData.d.ts +1 -0
- package/types/shadow/ShadowUtils.d.ts +1 -0
- package/types/shadow/enum/ShadowCascadesMode.d.ts +11 -0
- package/types/shadow/enum/ShadowResolution.d.ts +13 -0
- package/types/shadow/enum/ShadowType.d.ts +13 -0
- package/types/shadow/index.d.ts +3 -0
- package/types/sky/Sky.d.ts +14 -0
- package/types/sky/SkyBoxMaterial.d.ts +25 -0
- package/types/sky/SkyProceduralMaterial.d.ts +72 -0
- package/types/sky/index.d.ts +2 -0
- package/types/texture/RenderTarget.d.ts +95 -0
- package/types/texture/Texture.d.ts +77 -0
- package/types/texture/Texture2D.d.ts +68 -0
- package/types/texture/Texture2DArray.d.ts +81 -0
- package/types/texture/TextureCube.d.ts +70 -0
- package/types/texture/enums/RenderBufferDepthFormat.d.ts +21 -0
- package/types/texture/enums/TextureCubeFace.d.ts +17 -0
- package/types/texture/enums/TextureDepthCompareFunction.d.ts +21 -0
- package/types/texture/enums/TextureFilterMode.d.ts +11 -0
- package/types/texture/enums/TextureFormat.d.ts +69 -0
- package/types/texture/enums/TextureWrapMode.d.ts +11 -0
- package/types/texture/index.d.ts +11 -0
- package/types/trail/TrailMaterial.d.ts +5 -0
- package/types/trail/TrailRenderer.d.ts +40 -0
- package/types/trail/index.d.ts +2 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Color, Vector4 } from "@galacean/engine-math";
|
|
2
|
+
import { Engine } from "../Engine";
|
|
3
|
+
import { Texture2D } from "../texture/Texture2D";
|
|
4
|
+
import { BaseMaterial } from "./BaseMaterial";
|
|
5
|
+
/**
|
|
6
|
+
* Unlit Material.
|
|
7
|
+
*/
|
|
8
|
+
export declare class UnlitMaterial 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
|
+
* Tiling and offset of main textures.
|
|
21
|
+
*/
|
|
22
|
+
get tilingOffset(): Vector4;
|
|
23
|
+
set tilingOffset(value: Vector4);
|
|
24
|
+
/**
|
|
25
|
+
* Create a unlit material instance.
|
|
26
|
+
* @param engine - Engine to which the material belongs
|
|
27
|
+
*/
|
|
28
|
+
constructor(engine: Engine);
|
|
29
|
+
/**
|
|
30
|
+
* @override
|
|
31
|
+
*/
|
|
32
|
+
clone(): UnlitMaterial;
|
|
33
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { BaseMaterial } from "./BaseMaterial";
|
|
2
|
+
export { BlinnPhongMaterial } from "./BlinnPhongMaterial";
|
|
3
|
+
export { BlendMode } from "./enums/BlendMode";
|
|
4
|
+
export { RenderFace } from "./enums/RenderFace";
|
|
5
|
+
export { TextureCoordinate } from "./enums/TextureCoordinate";
|
|
6
|
+
export { Material } from "./Material";
|
|
7
|
+
export { PBRBaseMaterial } from "./PBRBaseMaterial";
|
|
8
|
+
export { PBRMaterial } from "./PBRMaterial";
|
|
9
|
+
export { PBRSpecularMaterial } from "./PBRSpecularMaterial";
|
|
10
|
+
export { UnlitMaterial } from "./UnlitMaterial";
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Vector3 } from "@galacean/engine-math";
|
|
2
|
+
import { BlendShapeFrame } from "./BlendShapeFrame";
|
|
3
|
+
/**
|
|
4
|
+
* BlendShape.
|
|
5
|
+
*/
|
|
6
|
+
export declare class BlendShape {
|
|
7
|
+
/** Name of BlendShape. */
|
|
8
|
+
name: string;
|
|
9
|
+
private _dataChangeManager;
|
|
10
|
+
private _frames;
|
|
11
|
+
/**
|
|
12
|
+
* Frames of BlendShape.
|
|
13
|
+
*/
|
|
14
|
+
get frames(): Readonly<BlendShapeFrame[]>;
|
|
15
|
+
/**
|
|
16
|
+
* Create a BlendShape.
|
|
17
|
+
* @param name - BlendShape name.
|
|
18
|
+
*/
|
|
19
|
+
constructor(name: string);
|
|
20
|
+
/**
|
|
21
|
+
* Add a BlendShapeFrame by weight, deltaPositions, deltaNormals and deltaTangents.
|
|
22
|
+
* @param weight - Weight of BlendShapeFrame
|
|
23
|
+
* @param deltaPositions - Delta positions for the frame being added
|
|
24
|
+
* @param deltaNormals - Delta normals for the frame being added
|
|
25
|
+
* @param deltaTangents - Delta tangents for the frame being added
|
|
26
|
+
*/
|
|
27
|
+
addFrame(weight: number, deltaPositions: Vector3[], deltaNormals?: Vector3[], deltaTangents?: Vector3[]): BlendShapeFrame;
|
|
28
|
+
/**
|
|
29
|
+
* Add a BlendShapeFrame.
|
|
30
|
+
* @param frame - The BlendShapeFrame.
|
|
31
|
+
*/
|
|
32
|
+
addFrame(frame: BlendShapeFrame): void;
|
|
33
|
+
/**
|
|
34
|
+
* Clear all frames.
|
|
35
|
+
*/
|
|
36
|
+
clearFrames(): void;
|
|
37
|
+
private _addFrame;
|
|
38
|
+
private _updateUseNormalAndTangent;
|
|
39
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Vector3 } from "@galacean/engine-math";
|
|
2
|
+
/**
|
|
3
|
+
* BlendShapeFrame.
|
|
4
|
+
*/
|
|
5
|
+
export declare class BlendShapeFrame {
|
|
6
|
+
/** Weight of BlendShapeFrame. */
|
|
7
|
+
readonly weight: number;
|
|
8
|
+
/** Delta positions for the frame being added. */
|
|
9
|
+
readonly deltaPositions: Readonly<Readonly<Vector3>[]>;
|
|
10
|
+
/** Delta normals for the frame being added. */
|
|
11
|
+
readonly deltaNormals: Readonly<Readonly<Vector3[]> | null>;
|
|
12
|
+
/** Delta tangents for the frame being added. */
|
|
13
|
+
readonly deltaTangents: Readonly<Readonly<Vector3[]> | null>;
|
|
14
|
+
/**
|
|
15
|
+
* Create a BlendShapeFrame.
|
|
16
|
+
* @param weight - Weight of BlendShapeFrame
|
|
17
|
+
* @param deltaPositions - Delta positions for the frame being added
|
|
18
|
+
* @param deltaNormals - Delta normals for the frame being added
|
|
19
|
+
* @param deltaTangents - Delta tangents for the frame being added
|
|
20
|
+
*/
|
|
21
|
+
constructor(weight: number, deltaPositions: Vector3[], deltaNormals?: Vector3[], deltaTangents?: Vector3[]);
|
|
22
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { IndexBufferBinding, IndexFormat, Mesh, Buffer, VertexBufferBinding, VertexElement } from "../graphic";
|
|
2
|
+
/**
|
|
3
|
+
* BufferMesh.
|
|
4
|
+
*/
|
|
5
|
+
export declare class BufferMesh extends Mesh {
|
|
6
|
+
/**
|
|
7
|
+
* Instanced count, disable instanced drawing when set zero.
|
|
8
|
+
*/
|
|
9
|
+
get instanceCount(): number;
|
|
10
|
+
set instanceCount(value: number);
|
|
11
|
+
/**
|
|
12
|
+
* Vertex buffer binding collection.
|
|
13
|
+
*/
|
|
14
|
+
get vertexBufferBindings(): Readonly<VertexBufferBinding[]>;
|
|
15
|
+
/**
|
|
16
|
+
* Index buffer binding.
|
|
17
|
+
*/
|
|
18
|
+
get indexBufferBinding(): IndexBufferBinding;
|
|
19
|
+
/**
|
|
20
|
+
* Vertex element collection.
|
|
21
|
+
*/
|
|
22
|
+
get vertexElements(): Readonly<VertexElement[]>;
|
|
23
|
+
/**
|
|
24
|
+
* Set vertex elements.
|
|
25
|
+
* @param elements - Vertex element collection
|
|
26
|
+
*/
|
|
27
|
+
setVertexElements(elements: VertexElement[]): void;
|
|
28
|
+
/**
|
|
29
|
+
* Set vertex buffer binding.
|
|
30
|
+
* @param vertexBufferBindings - Vertex buffer binding
|
|
31
|
+
* @param index - Vertex buffer index, the default value is 0
|
|
32
|
+
*/
|
|
33
|
+
setVertexBufferBinding(vertexBufferBindings: VertexBufferBinding, index?: number): void;
|
|
34
|
+
/**
|
|
35
|
+
* Set vertex buffer binding.
|
|
36
|
+
* @param vertexBuffer - Vertex buffer
|
|
37
|
+
* @param stride - Vertex buffer data stride
|
|
38
|
+
* @param index - Vertex buffer index, the default value is 0
|
|
39
|
+
*/
|
|
40
|
+
setVertexBufferBinding(vertexBuffer: Buffer, stride: number, index?: number): void;
|
|
41
|
+
/**
|
|
42
|
+
* Set vertex buffer binding.
|
|
43
|
+
* @param vertexBufferBindings - Vertex buffer binding
|
|
44
|
+
* @param firstIndex - First vertex buffer index, the default value is 0
|
|
45
|
+
*/
|
|
46
|
+
setVertexBufferBindings(vertexBufferBindings: VertexBufferBinding[], firstIndex?: number): void;
|
|
47
|
+
/**
|
|
48
|
+
* Set index buffer binding.
|
|
49
|
+
* @param buffer - Index buffer
|
|
50
|
+
* @param format - Index buffer format
|
|
51
|
+
*/
|
|
52
|
+
setIndexBufferBinding(buffer: Buffer, format: IndexFormat): void;
|
|
53
|
+
/**
|
|
54
|
+
* Set index buffer binding.
|
|
55
|
+
* @param bufferBinding - Index buffer binding
|
|
56
|
+
* @remarks When bufferBinding is null, it will clear IndexBufferBinding
|
|
57
|
+
*/
|
|
58
|
+
setIndexBufferBinding(bufferBinding: IndexBufferBinding | null): void;
|
|
59
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { BoundingBox } from "@galacean/engine-math";
|
|
2
|
+
import { ICustomClone } from "../clone/ComponentCloner";
|
|
3
|
+
import { Mesh } from "../graphic/Mesh";
|
|
4
|
+
import { Renderer } from "../Renderer";
|
|
5
|
+
import { RenderContext } from "../RenderPipeline/RenderContext";
|
|
6
|
+
/**
|
|
7
|
+
* MeshRenderer Component.
|
|
8
|
+
*/
|
|
9
|
+
export declare class MeshRenderer extends Renderer implements ICustomClone {
|
|
10
|
+
private static _uvMacro;
|
|
11
|
+
private static _uv1Macro;
|
|
12
|
+
private static _normalMacro;
|
|
13
|
+
private static _tangentMacro;
|
|
14
|
+
private static _vertexColorMacro;
|
|
15
|
+
/**
|
|
16
|
+
* Mesh assigned to the renderer.
|
|
17
|
+
*/
|
|
18
|
+
get mesh(): Mesh;
|
|
19
|
+
set mesh(value: Mesh);
|
|
20
|
+
/**
|
|
21
|
+
* @override
|
|
22
|
+
*/
|
|
23
|
+
protected _updateBounds(worldBounds: BoundingBox): void;
|
|
24
|
+
/**
|
|
25
|
+
* @override
|
|
26
|
+
*/
|
|
27
|
+
protected _render(context: RenderContext): void;
|
|
28
|
+
private _setMesh;
|
|
29
|
+
private _onMeshChanged;
|
|
30
|
+
}
|
|
@@ -0,0 +1,226 @@
|
|
|
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
|
+
/**
|
|
9
|
+
* Mesh containing common vertex elements of the model.
|
|
10
|
+
*/
|
|
11
|
+
export declare class ModelMesh extends Mesh {
|
|
12
|
+
private static _tempVec0;
|
|
13
|
+
private static _tempVec1;
|
|
14
|
+
private static _tempVec2;
|
|
15
|
+
private static _tempVec3;
|
|
16
|
+
private static _tempVec4;
|
|
17
|
+
private _vertexCount;
|
|
18
|
+
private _accessible;
|
|
19
|
+
private _verticesFloat32;
|
|
20
|
+
private _verticesUint8;
|
|
21
|
+
private _indices;
|
|
22
|
+
private _indicesFormat;
|
|
23
|
+
private _indicesChangeFlag;
|
|
24
|
+
private _positions;
|
|
25
|
+
private _normals;
|
|
26
|
+
private _colors;
|
|
27
|
+
private _tangents;
|
|
28
|
+
private _uv;
|
|
29
|
+
private _uv1;
|
|
30
|
+
private _uv2;
|
|
31
|
+
private _uv3;
|
|
32
|
+
private _uv4;
|
|
33
|
+
private _uv5;
|
|
34
|
+
private _uv6;
|
|
35
|
+
private _uv7;
|
|
36
|
+
private _boneWeights;
|
|
37
|
+
private _boneIndices;
|
|
38
|
+
private _bufferStrides;
|
|
39
|
+
private _vertexBufferUpdateFlag;
|
|
40
|
+
private _vertexDataUpdateFlag;
|
|
41
|
+
private _vertexElementsUpdate;
|
|
42
|
+
private _customVertexElements;
|
|
43
|
+
private _vertexCountChanged;
|
|
44
|
+
/**
|
|
45
|
+
* Whether to access data of the mesh.
|
|
46
|
+
*/
|
|
47
|
+
get accessible(): boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Vertex count of current mesh.
|
|
50
|
+
*/
|
|
51
|
+
get vertexCount(): number;
|
|
52
|
+
/**
|
|
53
|
+
* Vertex element collection.
|
|
54
|
+
*/
|
|
55
|
+
get vertexElements(): Readonly<VertexElement[]>;
|
|
56
|
+
/**
|
|
57
|
+
* Vertex buffer binding collection.
|
|
58
|
+
*/
|
|
59
|
+
get vertexBufferBindings(): Readonly<VertexBufferBinding[]>;
|
|
60
|
+
/**
|
|
61
|
+
* BlendShapes of this ModelMesh.
|
|
62
|
+
*/
|
|
63
|
+
get blendShapes(): Readonly<BlendShape[]>;
|
|
64
|
+
/**
|
|
65
|
+
* BlendShape count of this ModelMesh.
|
|
66
|
+
*/
|
|
67
|
+
get blendShapeCount(): number;
|
|
68
|
+
/**
|
|
69
|
+
* Create a model mesh.
|
|
70
|
+
* @param engine - Engine to which the mesh belongs
|
|
71
|
+
* @param name - Mesh name
|
|
72
|
+
*/
|
|
73
|
+
constructor(engine: Engine, name?: string);
|
|
74
|
+
/**
|
|
75
|
+
* Set positions for the mesh.
|
|
76
|
+
* @param positions - The positions for the mesh.
|
|
77
|
+
*/
|
|
78
|
+
setPositions(positions: Vector3[] | null): void;
|
|
79
|
+
/**
|
|
80
|
+
* Get positions for the mesh.
|
|
81
|
+
* @remarks Please call the setPositions() method after modification to ensure that the modification takes effect.
|
|
82
|
+
*/
|
|
83
|
+
getPositions(): Vector3[] | null;
|
|
84
|
+
/**
|
|
85
|
+
* Set per-vertex normals for the mesh.
|
|
86
|
+
* @param normals - The normals for the mesh.
|
|
87
|
+
*/
|
|
88
|
+
setNormals(normals: Vector3[] | null): void;
|
|
89
|
+
/**
|
|
90
|
+
* Get normals for the mesh.
|
|
91
|
+
* @remarks Please call the setNormals() method after modification to ensure that the modification takes effect.
|
|
92
|
+
*/
|
|
93
|
+
getNormals(): Vector3[] | null;
|
|
94
|
+
/**
|
|
95
|
+
* Set per-vertex colors for the mesh.
|
|
96
|
+
* @param colors - The colors for the mesh.
|
|
97
|
+
*/
|
|
98
|
+
setColors(colors: Color[] | null): void;
|
|
99
|
+
/**
|
|
100
|
+
* Get colors for the mesh.
|
|
101
|
+
* @remarks Please call the setColors() method after modification to ensure that the modification takes effect.
|
|
102
|
+
*/
|
|
103
|
+
getColors(): Color[] | null;
|
|
104
|
+
/**
|
|
105
|
+
* Set per-vertex bone weights for the mesh.
|
|
106
|
+
* @param boneWeights - The bone weights for the mesh.
|
|
107
|
+
*/
|
|
108
|
+
setBoneWeights(boneWeights: Vector4[] | null): void;
|
|
109
|
+
/**
|
|
110
|
+
* Get weights for the mesh.
|
|
111
|
+
* @remarks Please call the setWeights() method after modification to ensure that the modification takes effect.
|
|
112
|
+
*/
|
|
113
|
+
getBoneWeights(): Vector4[] | null;
|
|
114
|
+
/**
|
|
115
|
+
* Set per-vertex bone indices for the mesh.
|
|
116
|
+
* @param boneIndices - The bone indices for the mesh.
|
|
117
|
+
*/
|
|
118
|
+
setBoneIndices(boneIndices: Vector4[] | null): void;
|
|
119
|
+
/**
|
|
120
|
+
* Get joints for the mesh.
|
|
121
|
+
* @remarks Please call the setBoneIndices() method after modification to ensure that the modification takes effect.
|
|
122
|
+
*/
|
|
123
|
+
getBoneIndices(): Vector4[] | null;
|
|
124
|
+
/**
|
|
125
|
+
* Set per-vertex tangents for the mesh.
|
|
126
|
+
* @param tangents - The tangents for the mesh.
|
|
127
|
+
*/
|
|
128
|
+
setTangents(tangents: Vector4[] | null): void;
|
|
129
|
+
/**
|
|
130
|
+
* Get tangents for the mesh.
|
|
131
|
+
* @remarks Please call the setTangents() method after modification to ensure that the modification takes effect.
|
|
132
|
+
*/
|
|
133
|
+
getTangents(): Vector4[] | null;
|
|
134
|
+
/**
|
|
135
|
+
* Set per-vertex uv for the mesh.
|
|
136
|
+
* @param uv - The uv for the mesh.
|
|
137
|
+
*/
|
|
138
|
+
setUVs(uv: Vector2[] | null): void;
|
|
139
|
+
/**
|
|
140
|
+
* Set per-vertex uv for the mesh by channelIndex.
|
|
141
|
+
* @param uv - The uv for the mesh.
|
|
142
|
+
* @param channelIndex - The index of uv channels, in [0 ~ 7] range.
|
|
143
|
+
*/
|
|
144
|
+
setUVs(uv: Vector2[] | null, channelIndex: number): void;
|
|
145
|
+
/**
|
|
146
|
+
* Get uv for the mesh.
|
|
147
|
+
* @remarks Please call the setUV() method after modification to ensure that the modification takes effect.
|
|
148
|
+
*/
|
|
149
|
+
getUVs(): Vector2[] | null;
|
|
150
|
+
/**
|
|
151
|
+
* Get uv for the mesh by channelIndex.
|
|
152
|
+
* @param channelIndex - The index of uv channels, in [0 ~ 7] range.
|
|
153
|
+
* @remarks Please call the setUV() method after modification to ensure that the modification takes effect.
|
|
154
|
+
*/
|
|
155
|
+
getUVs(channelIndex: number): Vector2[] | null;
|
|
156
|
+
/**
|
|
157
|
+
* Set indices for the mesh.
|
|
158
|
+
* @param indices - The indices for the mesh.
|
|
159
|
+
*/
|
|
160
|
+
setIndices(indices: Uint8Array | Uint16Array | Uint32Array): void;
|
|
161
|
+
/**
|
|
162
|
+
* Get indices for the mesh.
|
|
163
|
+
*/
|
|
164
|
+
getIndices(): Uint8Array | Uint16Array | Uint32Array;
|
|
165
|
+
/**
|
|
166
|
+
* @beta
|
|
167
|
+
* @todo Update buffer should support custom vertex elements.
|
|
168
|
+
* Set vertex elements.
|
|
169
|
+
* @param elements - Vertex element collection
|
|
170
|
+
*/
|
|
171
|
+
setVertexElements(elements: VertexElement[]): void;
|
|
172
|
+
/**
|
|
173
|
+
* @beta
|
|
174
|
+
* Set vertex buffer binding.
|
|
175
|
+
* @param vertexBufferBindings - Vertex buffer binding
|
|
176
|
+
* @param index - Vertex buffer index, the default value is 0
|
|
177
|
+
*/
|
|
178
|
+
setVertexBufferBinding(vertexBufferBindings: VertexBufferBinding, index?: number): void;
|
|
179
|
+
/**
|
|
180
|
+
* @beta
|
|
181
|
+
* Set vertex buffer binding.
|
|
182
|
+
* @param vertexBuffer - Vertex buffer
|
|
183
|
+
* @param stride - Vertex buffer data stride
|
|
184
|
+
* @param index - Vertex buffer index, the default value is 0
|
|
185
|
+
*/
|
|
186
|
+
setVertexBufferBinding(vertexBuffer: Buffer, stride: number, index?: number): void;
|
|
187
|
+
/**
|
|
188
|
+
* Set vertex buffer binding.
|
|
189
|
+
* @param vertexBufferBindings - Vertex buffer binding
|
|
190
|
+
* @param firstIndex - First vertex buffer index, the default value is 0
|
|
191
|
+
*/
|
|
192
|
+
setVertexBufferBindings(vertexBufferBindings: VertexBufferBinding[], firstIndex?: number): void;
|
|
193
|
+
/**
|
|
194
|
+
* Add a BlendShape for this ModelMesh.
|
|
195
|
+
* @param blendShape - The BlendShape
|
|
196
|
+
*/
|
|
197
|
+
addBlendShape(blendShape: BlendShape): void;
|
|
198
|
+
/**
|
|
199
|
+
* Clear all BlendShapes.
|
|
200
|
+
*/
|
|
201
|
+
clearBlendShapes(): void;
|
|
202
|
+
/**
|
|
203
|
+
* Get name of BlendShape by given index.
|
|
204
|
+
* @param index - The index of BlendShape
|
|
205
|
+
* @returns The name of BlendShape
|
|
206
|
+
*/
|
|
207
|
+
getBlendShapeName(index: number): string;
|
|
208
|
+
/**
|
|
209
|
+
* Upload Mesh Data to GPU.
|
|
210
|
+
* @param noLongerAccessible - Whether to access data later. If true, you'll never access data anymore (free memory cache)
|
|
211
|
+
*/
|
|
212
|
+
uploadData(noLongerAccessible: boolean): void;
|
|
213
|
+
/**
|
|
214
|
+
* Calculate mesh tangent.
|
|
215
|
+
* @remark need to set positions(with or not with indices), normals, uv before calculation.
|
|
216
|
+
* @remark based on http://foundationsofgameenginedev.com/FGED2-sample.pdf
|
|
217
|
+
*/
|
|
218
|
+
calculateTangents(): void;
|
|
219
|
+
private _supplementaryVertexElements;
|
|
220
|
+
private _updateVertexElements;
|
|
221
|
+
private _updateVertices;
|
|
222
|
+
private _insertVertexAttribute;
|
|
223
|
+
private _getAttributeFormat;
|
|
224
|
+
private _getAttributeByteLength;
|
|
225
|
+
private _releaseCache;
|
|
226
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Engine } from "../Engine";
|
|
2
|
+
import { ModelMesh } from "./ModelMesh";
|
|
3
|
+
/**
|
|
4
|
+
* Used to generate common primitive meshes.
|
|
5
|
+
*/
|
|
6
|
+
export declare class PrimitiveMesh {
|
|
7
|
+
/**
|
|
8
|
+
* Create a sphere mesh.
|
|
9
|
+
* @param engine - Engine
|
|
10
|
+
* @param radius - Sphere radius
|
|
11
|
+
* @param segments - Number of segments
|
|
12
|
+
* @param noLongerAccessible - No longer access the vertices of the mesh after creation
|
|
13
|
+
* @returns Sphere model mesh
|
|
14
|
+
*/
|
|
15
|
+
static createSphere(engine: Engine, radius?: number, segments?: number, noLongerAccessible?: boolean): ModelMesh;
|
|
16
|
+
/**
|
|
17
|
+
* Create a cuboid mesh.
|
|
18
|
+
* @param engine - Engine
|
|
19
|
+
* @param width - Cuboid width
|
|
20
|
+
* @param height - Cuboid height
|
|
21
|
+
* @param depth - Cuboid depth
|
|
22
|
+
* @param noLongerAccessible - No longer access the vertices of the mesh after creation
|
|
23
|
+
* @returns Cuboid model mesh
|
|
24
|
+
*/
|
|
25
|
+
static createCuboid(engine: Engine, width?: number, height?: number, depth?: number, noLongerAccessible?: boolean): ModelMesh;
|
|
26
|
+
/**
|
|
27
|
+
* Create a plane mesh.
|
|
28
|
+
* @param engine - Engine
|
|
29
|
+
* @param width - Plane width
|
|
30
|
+
* @param height - Plane height
|
|
31
|
+
* @param horizontalSegments - Plane horizontal segments
|
|
32
|
+
* @param verticalSegments - Plane vertical segments
|
|
33
|
+
* @param noLongerAccessible - No longer access the vertices of the mesh after creation
|
|
34
|
+
* @returns Plane model mesh
|
|
35
|
+
*/
|
|
36
|
+
static createPlane(engine: Engine, width?: number, height?: number, horizontalSegments?: number, verticalSegments?: number, noLongerAccessible?: boolean): ModelMesh;
|
|
37
|
+
/**
|
|
38
|
+
* Create a cylinder mesh.
|
|
39
|
+
* @param engine - Engine
|
|
40
|
+
* @param radiusTop - The radius of top cap
|
|
41
|
+
* @param radiusBottom - The radius of bottom cap
|
|
42
|
+
* @param height - The height of torso
|
|
43
|
+
* @param radialSegments - Cylinder radial segments
|
|
44
|
+
* @param heightSegments - Cylinder height segments
|
|
45
|
+
* @param noLongerAccessible - No longer access the vertices of the mesh after creation
|
|
46
|
+
* @returns Cylinder model mesh
|
|
47
|
+
*/
|
|
48
|
+
static createCylinder(engine: Engine, radiusTop?: number, radiusBottom?: number, height?: number, radialSegments?: number, heightSegments?: number, noLongerAccessible?: boolean): ModelMesh;
|
|
49
|
+
/**
|
|
50
|
+
* Create a torus mesh.
|
|
51
|
+
* @param engine - Engine
|
|
52
|
+
* @param radius - Torus radius
|
|
53
|
+
* @param tubeRadius - Torus tube
|
|
54
|
+
* @param radialSegments - Torus radial segments
|
|
55
|
+
* @param tubularSegments - Torus tubular segments
|
|
56
|
+
* @param arc - Central angle
|
|
57
|
+
* @param noLongerAccessible - No longer access the vertices of the mesh after creation
|
|
58
|
+
* @returns Torus model mesh
|
|
59
|
+
*/
|
|
60
|
+
static createTorus(engine: Engine, radius?: number, tubeRadius?: number, radialSegments?: number, tubularSegments?: number, arc?: number, noLongerAccessible?: boolean): ModelMesh;
|
|
61
|
+
/**
|
|
62
|
+
* Create a cone mesh.
|
|
63
|
+
* @param engine - Engine
|
|
64
|
+
* @param radius - The radius of cap
|
|
65
|
+
* @param height - The height of torso
|
|
66
|
+
* @param radialSegments - Cylinder radial segments
|
|
67
|
+
* @param heightSegments - Cylinder height segments
|
|
68
|
+
* @param noLongerAccessible - No longer access the vertices of the mesh after creation
|
|
69
|
+
* @returns Cone model mesh
|
|
70
|
+
*/
|
|
71
|
+
static createCone(engine: Engine, radius?: number, height?: number, radialSegments?: number, heightSegments?: number, noLongerAccessible?: boolean): ModelMesh;
|
|
72
|
+
/**
|
|
73
|
+
* Create a capsule mesh.
|
|
74
|
+
* @param engine - Engine
|
|
75
|
+
* @param radius - The radius of the two hemispherical ends
|
|
76
|
+
* @param height - The height of the cylindrical part, measured between the centers of the hemispherical ends
|
|
77
|
+
* @param radialSegments - Hemispherical end radial segments
|
|
78
|
+
* @param heightSegments - Cylindrical part height segments
|
|
79
|
+
* @param noLongerAccessible - No longer access the vertices of the mesh after creation
|
|
80
|
+
* @returns Capsule model mesh
|
|
81
|
+
*/
|
|
82
|
+
static createCapsule(engine: Engine, radius?: number, height?: number, radialSegments?: number, heightSegments?: number, noLongerAccessible?: boolean): ModelMesh;
|
|
83
|
+
private static _initialize;
|
|
84
|
+
private static _generateIndices;
|
|
85
|
+
private static _createCapsuleCap;
|
|
86
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Matrix } from "@galacean/engine-math";
|
|
2
|
+
import { EngineObject } from "../base/EngineObject";
|
|
3
|
+
/**
|
|
4
|
+
* Mesh skin data, equal glTF skins define
|
|
5
|
+
*/
|
|
6
|
+
export declare class Skin extends EngineObject {
|
|
7
|
+
name: string;
|
|
8
|
+
inverseBindMatrices: Matrix[];
|
|
9
|
+
joints: string[];
|
|
10
|
+
skeleton: string;
|
|
11
|
+
/**
|
|
12
|
+
* Constructor of skin
|
|
13
|
+
* @param name - name
|
|
14
|
+
*/
|
|
15
|
+
constructor(name: string);
|
|
16
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
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 _tempMatrix;
|
|
11
|
+
private static _jointCountProperty;
|
|
12
|
+
private static _jointSamplerProperty;
|
|
13
|
+
private static _jointMatrixProperty;
|
|
14
|
+
private _hasInitSkin;
|
|
15
|
+
private _jointDataCreateCache;
|
|
16
|
+
private _skin;
|
|
17
|
+
private _blendShapeWeights;
|
|
18
|
+
private _maxVertexUniformVectors;
|
|
19
|
+
private _rootBone;
|
|
20
|
+
private _localBounds;
|
|
21
|
+
private _jointMatrices;
|
|
22
|
+
private _jointTexture;
|
|
23
|
+
private _jointEntities;
|
|
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
|
+
* Skin Object.
|
|
32
|
+
*/
|
|
33
|
+
get skin(): Skin;
|
|
34
|
+
set skin(value: Skin);
|
|
35
|
+
/**
|
|
36
|
+
* Local bounds.
|
|
37
|
+
*/
|
|
38
|
+
get localBounds(): BoundingBox;
|
|
39
|
+
set localBounds(value: BoundingBox);
|
|
40
|
+
/**
|
|
41
|
+
* Root bone.
|
|
42
|
+
*/
|
|
43
|
+
get rootBone(): Entity;
|
|
44
|
+
set rootBone(value: Entity);
|
|
45
|
+
/**
|
|
46
|
+
* @override
|
|
47
|
+
*/
|
|
48
|
+
protected _updateShaderData(context: RenderContext): void;
|
|
49
|
+
/**
|
|
50
|
+
* @override
|
|
51
|
+
*/
|
|
52
|
+
protected _registerEntityTransformListener(): void;
|
|
53
|
+
/**
|
|
54
|
+
* @override
|
|
55
|
+
*/
|
|
56
|
+
protected _updateBounds(worldBounds: BoundingBox): void;
|
|
57
|
+
private _initSkin;
|
|
58
|
+
private _computeApproximateBindMatrix;
|
|
59
|
+
private _findByEntityName;
|
|
60
|
+
private _checkBlendShapeWeightLength;
|
|
61
|
+
private _onLocalBoundsChanged;
|
|
62
|
+
}
|
|
@@ -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,8 @@
|
|
|
1
|
+
export { ModelMesh } from "./ModelMesh";
|
|
2
|
+
export { Skin } from "./Skin";
|
|
3
|
+
export { MeshRenderer } from "./MeshRenderer";
|
|
4
|
+
export { SkinnedMeshRenderer } from "./SkinnedMeshRenderer";
|
|
5
|
+
export { PrimitiveMesh } from "./PrimitiveMesh";
|
|
6
|
+
export { BufferMesh } from "./BufferMesh";
|
|
7
|
+
export { BlendShape } from "./BlendShape";
|
|
8
|
+
export { BlendShapeFrame } from "./BlendShapeFrame";
|