@galacean/engine-core 0.0.0-experimental-animator-additive.1
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 +24671 -0
- package/dist/main.js.map +1 -0
- package/dist/miniprogram.js +24671 -0
- package/dist/module.js +24554 -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/atlas/FontAtlas.d.ts +1 -0
- package/types/2d/atlas/SpriteAtlas.d.ts +36 -0
- package/types/2d/atlas/types.d.ts +64 -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/SpriteDirtyFlag.d.ts +13 -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/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/ListenerUpdateFlag.d.ts +12 -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/AnimatorStatePlayData.d.ts +1 -0
- package/types/animation/AnimatorStateTransition.d.ts +12 -0
- package/types/animation/AnimatorTransition.d.ts +14 -0
- package/types/animation/AnimatorTransitionBase.d.ts +10 -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/StateMachineState.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/AnimatorPlayableObject.d.ts +23 -0
- package/types/animation/internal/AnimatorStateData.d.ts +1 -0
- package/types/animation/internal/AnimatorStateInfo.d.ts +1 -0
- package/types/animation/internal/AnimatorStateMachineData.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/CrossCurveData.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 +101 -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/fog/EXP2Fog.d.ts +15 -0
- package/types/fog/Fog.d.ts +14 -0
- package/types/fog/LinearFog.d.ts +22 -0
- package/types/fog/index.d.ts +3 -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/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 +57 -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/ShadowMode.d.ts +13 -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/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,119 @@
|
|
|
1
|
+
import { BoundingBox, Matrix, Vector4 } from "@galacean/engine-math";
|
|
2
|
+
import { Component } from "./Component";
|
|
3
|
+
import { RenderContext } from "./RenderPipeline/RenderContext";
|
|
4
|
+
import { TransformModifyFlags } from "./Transform";
|
|
5
|
+
import { Material } from "./material/Material";
|
|
6
|
+
import { ShaderData } from "./shader/ShaderData";
|
|
7
|
+
/**
|
|
8
|
+
* Basis for all renderers.
|
|
9
|
+
* @decorator `@dependentComponents(Transform)`
|
|
10
|
+
*/
|
|
11
|
+
export declare class Renderer extends Component {
|
|
12
|
+
private static _tempVector0;
|
|
13
|
+
private static _receiveShadowMacro;
|
|
14
|
+
private static _localMatrixProperty;
|
|
15
|
+
private static _worldMatrixProperty;
|
|
16
|
+
private static _mvMatrixProperty;
|
|
17
|
+
private static _mvpMatrixProperty;
|
|
18
|
+
private static _mvInvMatrixProperty;
|
|
19
|
+
private static _normalMatrixProperty;
|
|
20
|
+
private static _rendererLayerProperty;
|
|
21
|
+
/** ShaderData related to renderer. */
|
|
22
|
+
readonly shaderData: ShaderData;
|
|
23
|
+
_renderFrameCount: number;
|
|
24
|
+
protected _overrideUpdate: boolean;
|
|
25
|
+
protected _materials: Material[];
|
|
26
|
+
protected _dirtyUpdateFlag: number;
|
|
27
|
+
private _mvMatrix;
|
|
28
|
+
private _mvpMatrix;
|
|
29
|
+
private _mvInvMatrix;
|
|
30
|
+
private _normalMatrix;
|
|
31
|
+
private _materialsInstanced;
|
|
32
|
+
private _priority;
|
|
33
|
+
private _receiveShadows;
|
|
34
|
+
protected _rendererLayer: Vector4;
|
|
35
|
+
/**
|
|
36
|
+
* Whether it is culled in the current frame and does not participate in rendering.
|
|
37
|
+
*/
|
|
38
|
+
get isCulled(): boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Whether receive shadow.
|
|
41
|
+
*/
|
|
42
|
+
get receiveShadows(): boolean;
|
|
43
|
+
set receiveShadows(value: boolean);
|
|
44
|
+
/** Whether cast shadow. */
|
|
45
|
+
castShadows: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Material count.
|
|
48
|
+
*/
|
|
49
|
+
get materialCount(): number;
|
|
50
|
+
set materialCount(value: number);
|
|
51
|
+
/**
|
|
52
|
+
* The bounding volume of the renderer.
|
|
53
|
+
*/
|
|
54
|
+
get bounds(): BoundingBox;
|
|
55
|
+
/**
|
|
56
|
+
* The render priority of the renderer, lower values are rendered first and higher values are rendered last.
|
|
57
|
+
*/
|
|
58
|
+
get priority(): number;
|
|
59
|
+
set priority(value: number);
|
|
60
|
+
/**
|
|
61
|
+
* Get the first instance material.
|
|
62
|
+
* @returns The first instance material
|
|
63
|
+
*/
|
|
64
|
+
getInstanceMaterial(): Material | null;
|
|
65
|
+
/**
|
|
66
|
+
* Get the first instance material by index.
|
|
67
|
+
* @remarks Calling this function for the first time after the material is set will create an instance material to ensure that it is unique to the renderer.
|
|
68
|
+
* @param index - Material index
|
|
69
|
+
* @returns Instance material
|
|
70
|
+
*/
|
|
71
|
+
getInstanceMaterial(index: number): Material | null;
|
|
72
|
+
/**
|
|
73
|
+
* Get the first material.
|
|
74
|
+
* @returns The first material
|
|
75
|
+
*/
|
|
76
|
+
getMaterial(): Material | null;
|
|
77
|
+
/**
|
|
78
|
+
* Get the first material by index.
|
|
79
|
+
* @param index - Material index
|
|
80
|
+
* @returns Material
|
|
81
|
+
*/
|
|
82
|
+
getMaterial(index: number): Material | null;
|
|
83
|
+
/**
|
|
84
|
+
* Set the first material.
|
|
85
|
+
* @param material - The first material
|
|
86
|
+
*/
|
|
87
|
+
setMaterial(material: Material): void;
|
|
88
|
+
/**
|
|
89
|
+
* Set material by index.
|
|
90
|
+
* @param index - Material index
|
|
91
|
+
* @param material - The material
|
|
92
|
+
*/
|
|
93
|
+
setMaterial(index: number, material: Material): void;
|
|
94
|
+
/**
|
|
95
|
+
* Get all instance materials.
|
|
96
|
+
* @remarks Calling this function for the first time after the material is set will create an instance material to ensure that it is unique to the renderer.
|
|
97
|
+
* @returns All instance materials
|
|
98
|
+
*/
|
|
99
|
+
getInstanceMaterials(): Readonly<Material[]>;
|
|
100
|
+
/**
|
|
101
|
+
* Get all materials.
|
|
102
|
+
* @returns All materials
|
|
103
|
+
*/
|
|
104
|
+
getMaterials(): Readonly<Material[]>;
|
|
105
|
+
/**
|
|
106
|
+
* Set all materials.
|
|
107
|
+
* @param materials - All materials
|
|
108
|
+
*/
|
|
109
|
+
setMaterials(materials: Material[]): void;
|
|
110
|
+
update(deltaTime: number): void;
|
|
111
|
+
protected _updateShaderData(context: RenderContext): void;
|
|
112
|
+
protected _updateTransformShaderData(context: RenderContext, worldMatrix: Matrix): void;
|
|
113
|
+
protected _registerEntityTransformListener(): void;
|
|
114
|
+
protected _updateBounds(worldBounds: BoundingBox): void;
|
|
115
|
+
protected _render(context: RenderContext): void;
|
|
116
|
+
private _createInstanceMaterial;
|
|
117
|
+
private _setMaterial;
|
|
118
|
+
protected _onTransformChanged(type: TransformModifyFlags): void;
|
|
119
|
+
}
|
package/types/Scene.d.ts
ADDED
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { Color, Vector3 } from "@galacean/engine-math";
|
|
2
|
+
import { Background } from "./Background";
|
|
3
|
+
import { EngineObject } from "./base";
|
|
4
|
+
import { Engine } from "./Engine";
|
|
5
|
+
import { Entity } from "./Entity";
|
|
6
|
+
import { FogMode } from "./enums/FogMode";
|
|
7
|
+
import { AmbientLight } from "./lighting/AmbientLight";
|
|
8
|
+
import { ShaderData } from "./shader/ShaderData";
|
|
9
|
+
import { ShadowCascadesMode } from "./shadow/enum/ShadowCascadesMode";
|
|
10
|
+
import { ShadowResolution } from "./shadow/enum/ShadowResolution";
|
|
11
|
+
/**
|
|
12
|
+
* Scene.
|
|
13
|
+
*/
|
|
14
|
+
export declare class Scene extends EngineObject {
|
|
15
|
+
private static _fogColorProperty;
|
|
16
|
+
private static _fogParamsProperty;
|
|
17
|
+
/** Scene name. */
|
|
18
|
+
name: string;
|
|
19
|
+
/** The background of the scene. */
|
|
20
|
+
readonly background: Background;
|
|
21
|
+
/** Scene-related shader data. */
|
|
22
|
+
readonly shaderData: ShaderData;
|
|
23
|
+
/** If cast shadows. */
|
|
24
|
+
castShadows: boolean;
|
|
25
|
+
/** The resolution of the shadow maps. */
|
|
26
|
+
shadowResolution: ShadowResolution;
|
|
27
|
+
/** The splits of two cascade distribution. */
|
|
28
|
+
shadowTwoCascadeSplits: number;
|
|
29
|
+
/** The splits of four cascade distribution. */
|
|
30
|
+
shadowFourCascadeSplits: Vector3;
|
|
31
|
+
/** Max Shadow distance. */
|
|
32
|
+
shadowDistance: number;
|
|
33
|
+
private _shadowCascades;
|
|
34
|
+
private _ambientLight;
|
|
35
|
+
private _fogMode;
|
|
36
|
+
private _fogColor;
|
|
37
|
+
private _fogStart;
|
|
38
|
+
private _fogEnd;
|
|
39
|
+
private _fogDensity;
|
|
40
|
+
private _fogParams;
|
|
41
|
+
/**
|
|
42
|
+
* Number of cascades to use for directional light shadows.
|
|
43
|
+
*/
|
|
44
|
+
get shadowCascades(): ShadowCascadesMode;
|
|
45
|
+
set shadowCascades(value: ShadowCascadesMode);
|
|
46
|
+
/**
|
|
47
|
+
* Ambient light.
|
|
48
|
+
*/
|
|
49
|
+
get ambientLight(): AmbientLight;
|
|
50
|
+
set ambientLight(value: AmbientLight);
|
|
51
|
+
/**
|
|
52
|
+
* Fog mode.
|
|
53
|
+
* @remarks
|
|
54
|
+
* If set to `FogMode.None`, the fog will be disabled.
|
|
55
|
+
* If set to `FogMode.Linear`, the fog will be linear and controlled by `fogStart` and `fogEnd`.
|
|
56
|
+
* If set to `FogMode.Exponential`, the fog will be exponential and controlled by `fogDensity`.
|
|
57
|
+
* If set to `FogMode.ExponentialSquared`, the fog will be exponential squared and controlled by `fogDensity`.
|
|
58
|
+
*/
|
|
59
|
+
get fogMode(): FogMode;
|
|
60
|
+
set fogMode(value: FogMode);
|
|
61
|
+
/**
|
|
62
|
+
* Fog color.
|
|
63
|
+
*/
|
|
64
|
+
get fogColor(): Color;
|
|
65
|
+
set fogColor(value: Color);
|
|
66
|
+
/**
|
|
67
|
+
* Fog start.
|
|
68
|
+
*/
|
|
69
|
+
get fogStart(): number;
|
|
70
|
+
set fogStart(value: number);
|
|
71
|
+
/**
|
|
72
|
+
* Fog end.
|
|
73
|
+
*/
|
|
74
|
+
get fogEnd(): number;
|
|
75
|
+
set fogEnd(value: number);
|
|
76
|
+
/**
|
|
77
|
+
* Fog density.
|
|
78
|
+
*/
|
|
79
|
+
get fogDensity(): number;
|
|
80
|
+
set fogDensity(value: number);
|
|
81
|
+
/**
|
|
82
|
+
* Count of root entities.
|
|
83
|
+
*/
|
|
84
|
+
get rootEntitiesCount(): number;
|
|
85
|
+
/**
|
|
86
|
+
* Root entity collection.
|
|
87
|
+
*/
|
|
88
|
+
get rootEntities(): Readonly<Entity[]>;
|
|
89
|
+
/**
|
|
90
|
+
* Create scene.
|
|
91
|
+
* @param engine - Engine
|
|
92
|
+
* @param name - Name
|
|
93
|
+
*/
|
|
94
|
+
constructor(engine: Engine, name?: string);
|
|
95
|
+
/**
|
|
96
|
+
* Create root entity.
|
|
97
|
+
* @param name - Entity name
|
|
98
|
+
* @returns Entity
|
|
99
|
+
*/
|
|
100
|
+
createRootEntity(name?: string): Entity;
|
|
101
|
+
/**
|
|
102
|
+
* Append an entity.
|
|
103
|
+
* @param entity - The root entity to add
|
|
104
|
+
*/
|
|
105
|
+
addRootEntity(entity: Entity): void;
|
|
106
|
+
/**
|
|
107
|
+
* Append an entity.
|
|
108
|
+
* @param index - specified index
|
|
109
|
+
* @param entity - The root entity to add
|
|
110
|
+
*/
|
|
111
|
+
addRootEntity(index: number, entity: Entity): void;
|
|
112
|
+
/**
|
|
113
|
+
* Remove an entity.
|
|
114
|
+
* @param entity - The root entity to remove
|
|
115
|
+
*/
|
|
116
|
+
removeRootEntity(entity: Entity): void;
|
|
117
|
+
/**
|
|
118
|
+
* Get root entity from index.
|
|
119
|
+
* @param index - Index
|
|
120
|
+
* @returns Entity
|
|
121
|
+
*/
|
|
122
|
+
getRootEntity(index?: number): Entity | null;
|
|
123
|
+
/**
|
|
124
|
+
* Find entity globally by name.
|
|
125
|
+
* @param name - Entity name
|
|
126
|
+
* @returns Entity
|
|
127
|
+
*/
|
|
128
|
+
findEntityByName(name: string): Entity | null;
|
|
129
|
+
/**
|
|
130
|
+
* Find entity globally by name,use ‘/’ symbol as a path separator.
|
|
131
|
+
* @param path - Entity's path
|
|
132
|
+
* @returns Entity
|
|
133
|
+
*/
|
|
134
|
+
findEntityByPath(path: string): Entity | null;
|
|
135
|
+
/**
|
|
136
|
+
* Destroy this scene.
|
|
137
|
+
*/
|
|
138
|
+
destroy(): void;
|
|
139
|
+
private _addToRootEntityList;
|
|
140
|
+
private _computeLinearFogParams;
|
|
141
|
+
private _computeExponentialFogParams;
|
|
142
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { AssetPromise } from "./asset/AssetPromise";
|
|
2
|
+
import { Engine } from "./Engine";
|
|
3
|
+
import { Scene } from "./Scene";
|
|
4
|
+
/**
|
|
5
|
+
* Scene manager.
|
|
6
|
+
*/
|
|
7
|
+
export declare class SceneManager {
|
|
8
|
+
readonly engine: Engine;
|
|
9
|
+
/**
|
|
10
|
+
* Get the activated scene.
|
|
11
|
+
*/
|
|
12
|
+
get activeScene(): Scene;
|
|
13
|
+
set activeScene(scene: Scene);
|
|
14
|
+
/**
|
|
15
|
+
* Load and activate scene.
|
|
16
|
+
* @param url - the path of the scene
|
|
17
|
+
* @param destroyOldScene - whether to destroy old scene information
|
|
18
|
+
* @returns scene promise
|
|
19
|
+
*/
|
|
20
|
+
loadScene(url: string, destroyOldScene?: boolean): AssetPromise<Scene>;
|
|
21
|
+
/**
|
|
22
|
+
* Merge the source scene into the target scene.
|
|
23
|
+
* @remarks the global information of destScene will be used after the merge, and the lightingMap information will be merged.
|
|
24
|
+
* @param sourceScene - source scene
|
|
25
|
+
* @param destScene - target scene
|
|
26
|
+
*/
|
|
27
|
+
mergeScenes(sourceScene: Scene, destScene: Scene): void;
|
|
28
|
+
}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { Camera } from "./Camera";
|
|
2
|
+
import { Component } from "./Component";
|
|
3
|
+
import { Pointer } from "./input";
|
|
4
|
+
import { ColliderShape } from "./physics";
|
|
5
|
+
/**
|
|
6
|
+
* Script class, used for logic writing.
|
|
7
|
+
*/
|
|
8
|
+
export declare class Script extends Component {
|
|
9
|
+
_entityScriptsIndex: number;
|
|
10
|
+
_waitHandlingInValid: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Called when be enabled first time, only once.
|
|
13
|
+
*/
|
|
14
|
+
onAwake(): void;
|
|
15
|
+
/**
|
|
16
|
+
* Called when be enabled.
|
|
17
|
+
*/
|
|
18
|
+
onEnable(): void;
|
|
19
|
+
/**
|
|
20
|
+
* Called before the frame-level loop start for the first time, only once.
|
|
21
|
+
*/
|
|
22
|
+
onStart(): void;
|
|
23
|
+
/**
|
|
24
|
+
* The main loop, called frame by frame.
|
|
25
|
+
* @param deltaTime - The deltaTime when the script update.
|
|
26
|
+
*/
|
|
27
|
+
onUpdate(deltaTime: number): void;
|
|
28
|
+
/**
|
|
29
|
+
* Called after the onUpdate finished, called frame by frame.
|
|
30
|
+
* @param deltaTime - The deltaTime when the script update.
|
|
31
|
+
*/
|
|
32
|
+
onLateUpdate(deltaTime: number): void;
|
|
33
|
+
/**
|
|
34
|
+
* Called before camera rendering, called per camera.
|
|
35
|
+
* @param camera - Current camera.
|
|
36
|
+
*/
|
|
37
|
+
onBeginRender(camera: Camera): void;
|
|
38
|
+
/**
|
|
39
|
+
* Called after camera rendering, called per camera.
|
|
40
|
+
* @param camera - Current camera.
|
|
41
|
+
*/
|
|
42
|
+
onEndRender(camera: Camera): void;
|
|
43
|
+
/**
|
|
44
|
+
* Called before physics calculations, the number of times is related to the physical update frequency.
|
|
45
|
+
*/
|
|
46
|
+
onPhysicsUpdate(): void;
|
|
47
|
+
/**
|
|
48
|
+
* Called when the collision enter.
|
|
49
|
+
* @param other - ColliderShape
|
|
50
|
+
*/
|
|
51
|
+
onTriggerEnter(other: ColliderShape): void;
|
|
52
|
+
/**
|
|
53
|
+
* Called when the collision stay.
|
|
54
|
+
* @remarks onTriggerStay is called every frame while the collision stay.
|
|
55
|
+
* @param other - ColliderShape
|
|
56
|
+
*/
|
|
57
|
+
onTriggerExit(other: ColliderShape): void;
|
|
58
|
+
/**
|
|
59
|
+
* Called when the collision exit.
|
|
60
|
+
* @param other - ColliderShape
|
|
61
|
+
*/
|
|
62
|
+
onTriggerStay(other: ColliderShape): void;
|
|
63
|
+
/**
|
|
64
|
+
* Called when the collision enter.
|
|
65
|
+
* @param other - ColliderShape
|
|
66
|
+
*/
|
|
67
|
+
onCollisionEnter(other: ColliderShape): void;
|
|
68
|
+
/**
|
|
69
|
+
* Called when the collision stay.
|
|
70
|
+
* @remarks onTriggerStay is called every frame while the collision stay.
|
|
71
|
+
* @param other - ColliderShape
|
|
72
|
+
*/
|
|
73
|
+
onCollisionExit(other: ColliderShape): void;
|
|
74
|
+
/**
|
|
75
|
+
* Called when the collision exit.
|
|
76
|
+
* @param other - ColliderShape
|
|
77
|
+
*/
|
|
78
|
+
onCollisionStay(other: ColliderShape): void;
|
|
79
|
+
/**
|
|
80
|
+
* Called when the pointer is down while over the ColliderShape.
|
|
81
|
+
* @param pointer - The pointer that triggered
|
|
82
|
+
*/
|
|
83
|
+
onPointerDown(pointer: Pointer): void;
|
|
84
|
+
/**
|
|
85
|
+
* Called when the pointer is up while over the ColliderShape.
|
|
86
|
+
* @param pointer - The pointer that triggered
|
|
87
|
+
*/
|
|
88
|
+
onPointerUp(pointer: Pointer): void;
|
|
89
|
+
/**
|
|
90
|
+
* Called when the pointer is down and up with the same collider.
|
|
91
|
+
* @param pointer - The pointer that triggered
|
|
92
|
+
*/
|
|
93
|
+
onPointerClick(pointer: Pointer): void;
|
|
94
|
+
/**
|
|
95
|
+
* Called when the pointer is enters the ColliderShape.
|
|
96
|
+
* @param pointer - The pointer that triggered
|
|
97
|
+
*/
|
|
98
|
+
onPointerEnter(pointer: Pointer): void;
|
|
99
|
+
/**
|
|
100
|
+
* Called when the pointer is no longer over the ColliderShape.
|
|
101
|
+
* @param pointer - The pointer that triggered
|
|
102
|
+
*/
|
|
103
|
+
onPointerExit(pointer: Pointer): void;
|
|
104
|
+
/**
|
|
105
|
+
* Called when the pointer is down while over the ColliderShape and is still holding down.
|
|
106
|
+
* @param pointer - The pointer that triggered
|
|
107
|
+
* @remarks onPointerDrag is called every frame while the pointer is down.
|
|
108
|
+
*/
|
|
109
|
+
onPointerDrag(pointer: Pointer): void;
|
|
110
|
+
/**
|
|
111
|
+
* Called when be disabled.
|
|
112
|
+
*/
|
|
113
|
+
onDisable(): void;
|
|
114
|
+
/**
|
|
115
|
+
* Called at the end of the destroyed frame.
|
|
116
|
+
*/
|
|
117
|
+
onDestroy(): void;
|
|
118
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Platform } from "./Platform";
|
|
2
|
+
/**
|
|
3
|
+
* System info.
|
|
4
|
+
*/
|
|
5
|
+
export declare class SystemInfo {
|
|
6
|
+
/** The platform is running on. */
|
|
7
|
+
static platform: Platform;
|
|
8
|
+
/** The operating system is running on. */
|
|
9
|
+
static operatingSystem: string;
|
|
10
|
+
/**
|
|
11
|
+
* The pixel ratio of the device.
|
|
12
|
+
*/
|
|
13
|
+
static get devicePixelRatio(): number;
|
|
14
|
+
}
|
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
import { Matrix, Quaternion, Vector3 } from "@galacean/engine-math";
|
|
2
|
+
import { BoolUpdateFlag } from "./BoolUpdateFlag";
|
|
3
|
+
import { Component } from "./Component";
|
|
4
|
+
/**
|
|
5
|
+
* Used to implement transformation related functions.
|
|
6
|
+
*/
|
|
7
|
+
export declare class Transform extends Component {
|
|
8
|
+
private static _tempQuat0;
|
|
9
|
+
private static _tempVec30;
|
|
10
|
+
private static _tempVec31;
|
|
11
|
+
private static _tempVec32;
|
|
12
|
+
private static _tempMat30;
|
|
13
|
+
private static _tempMat31;
|
|
14
|
+
private static _tempMat32;
|
|
15
|
+
private static _tempMat41;
|
|
16
|
+
private static _tempMat42;
|
|
17
|
+
private _position;
|
|
18
|
+
private _rotation;
|
|
19
|
+
private _rotationQuaternion;
|
|
20
|
+
private _scale;
|
|
21
|
+
private _worldPosition;
|
|
22
|
+
private _worldRotation;
|
|
23
|
+
private _worldRotationQuaternion;
|
|
24
|
+
private _lossyWorldScale;
|
|
25
|
+
private _localMatrix;
|
|
26
|
+
private _worldMatrix;
|
|
27
|
+
private _isParentDirty;
|
|
28
|
+
private _parentTransformCache;
|
|
29
|
+
private _dirtyFlag;
|
|
30
|
+
/**
|
|
31
|
+
* Local position.
|
|
32
|
+
*/
|
|
33
|
+
get position(): Vector3;
|
|
34
|
+
set position(value: Vector3);
|
|
35
|
+
/**
|
|
36
|
+
* World position.
|
|
37
|
+
*/
|
|
38
|
+
get worldPosition(): Vector3;
|
|
39
|
+
set worldPosition(value: Vector3);
|
|
40
|
+
/**
|
|
41
|
+
* Local rotation, defining the rotation value in degrees.
|
|
42
|
+
* Rotations are performed around the Y axis, the X axis, and the Z axis, in that order.
|
|
43
|
+
*/
|
|
44
|
+
get rotation(): Vector3;
|
|
45
|
+
set rotation(value: Vector3);
|
|
46
|
+
/**
|
|
47
|
+
* World rotation, defining the rotation value in degrees.
|
|
48
|
+
* Rotations are performed around the Y axis, the X axis, and the Z axis, in that order.
|
|
49
|
+
*/
|
|
50
|
+
get worldRotation(): Vector3;
|
|
51
|
+
set worldRotation(value: Vector3);
|
|
52
|
+
/**
|
|
53
|
+
* Local rotation, defining the rotation by using a unit quaternion.
|
|
54
|
+
*/
|
|
55
|
+
get rotationQuaternion(): Quaternion;
|
|
56
|
+
set rotationQuaternion(value: Quaternion);
|
|
57
|
+
/**
|
|
58
|
+
* World rotation, defining the rotation by using a unit quaternion.
|
|
59
|
+
*/
|
|
60
|
+
get worldRotationQuaternion(): Quaternion;
|
|
61
|
+
set worldRotationQuaternion(value: Quaternion);
|
|
62
|
+
/**
|
|
63
|
+
* Local scaling.
|
|
64
|
+
*/
|
|
65
|
+
get scale(): Vector3;
|
|
66
|
+
set scale(value: Vector3);
|
|
67
|
+
/**
|
|
68
|
+
* Local lossy scaling.
|
|
69
|
+
* @remarks The value obtained may not be correct under certain conditions(for example, the parent node has scaling,
|
|
70
|
+
* and the child node has a rotation), the scaling will be tilted. Vector3 cannot be used to correctly represent the scaling. Must use Matrix3x3.
|
|
71
|
+
*/
|
|
72
|
+
get lossyWorldScale(): Vector3;
|
|
73
|
+
/**
|
|
74
|
+
* Local matrix.
|
|
75
|
+
* @remarks Need to re-assign after modification to ensure that the modification takes effect.
|
|
76
|
+
*/
|
|
77
|
+
get localMatrix(): Matrix;
|
|
78
|
+
set localMatrix(value: Matrix);
|
|
79
|
+
/**
|
|
80
|
+
* World matrix.
|
|
81
|
+
* @remarks Need to re-assign after modification to ensure that the modification takes effect.
|
|
82
|
+
*/
|
|
83
|
+
get worldMatrix(): Matrix;
|
|
84
|
+
set worldMatrix(value: Matrix);
|
|
85
|
+
/**
|
|
86
|
+
* Set local position by X, Y, Z value.
|
|
87
|
+
* @param x - X coordinate
|
|
88
|
+
* @param y - Y coordinate
|
|
89
|
+
* @param z - Z coordinate
|
|
90
|
+
*/
|
|
91
|
+
setPosition(x: number, y: number, z: number): void;
|
|
92
|
+
/**
|
|
93
|
+
* Set local rotation by the X, Y, Z components of the euler angle, unit in degrees.
|
|
94
|
+
* Rotations are performed around the Y axis, the X axis, and the Z axis, in that order.
|
|
95
|
+
* @param x - The angle of rotation around the X axis
|
|
96
|
+
* @param y - The angle of rotation around the Y axis
|
|
97
|
+
* @param z - The angle of rotation around the Z axis
|
|
98
|
+
*/
|
|
99
|
+
setRotation(x: number, y: number, z: number): void;
|
|
100
|
+
/**
|
|
101
|
+
* Set local rotation by the X, Y, Z, and W components of the quaternion.
|
|
102
|
+
* @param x - X component of quaternion
|
|
103
|
+
* @param y - Y component of quaternion
|
|
104
|
+
* @param z - Z component of quaternion
|
|
105
|
+
* @param w - W component of quaternion
|
|
106
|
+
*/
|
|
107
|
+
setRotationQuaternion(x: number, y: number, z: number, w: number): void;
|
|
108
|
+
/**
|
|
109
|
+
* Set local scaling by scaling values along X, Y, Z axis.
|
|
110
|
+
* @param x - Scaling along X axis
|
|
111
|
+
* @param y - Scaling along Y axis
|
|
112
|
+
* @param z - Scaling along Z axis
|
|
113
|
+
*/
|
|
114
|
+
setScale(x: number, y: number, z: number): void;
|
|
115
|
+
/**
|
|
116
|
+
* Set world position by X, Y, Z value.
|
|
117
|
+
* @param x - X coordinate
|
|
118
|
+
* @param y - Y coordinate
|
|
119
|
+
* @param z - Z coordinate
|
|
120
|
+
*/
|
|
121
|
+
setWorldPosition(x: number, y: number, z: number): void;
|
|
122
|
+
/**
|
|
123
|
+
* Set world rotation by the X, Y, Z components of the euler angle, unit in degrees, Yaw/Pitch/Roll sequence.
|
|
124
|
+
* @param x - The angle of rotation around the X axis
|
|
125
|
+
* @param y - The angle of rotation around the Y axis
|
|
126
|
+
* @param z - The angle of rotation around the Z axis
|
|
127
|
+
*/
|
|
128
|
+
setWorldRotation(x: number, y: number, z: number): void;
|
|
129
|
+
/**
|
|
130
|
+
* Set local rotation by the X, Y, Z, and W components of the quaternion.
|
|
131
|
+
* @param x - X component of quaternion
|
|
132
|
+
* @param y - Y component of quaternion
|
|
133
|
+
* @param z - Z component of quaternion
|
|
134
|
+
* @param w - W component of quaternion
|
|
135
|
+
*/
|
|
136
|
+
setWorldRotationQuaternion(x: number, y: number, z: number, w: number): void;
|
|
137
|
+
/**
|
|
138
|
+
* Get the forward direction in world space.
|
|
139
|
+
* @param forward - Forward vector
|
|
140
|
+
* @returns Forward vector
|
|
141
|
+
*/
|
|
142
|
+
getWorldForward(forward: Vector3): Vector3;
|
|
143
|
+
/**
|
|
144
|
+
* Get the right direction in world space.
|
|
145
|
+
* @param right - Right vector
|
|
146
|
+
* @returns Right vector
|
|
147
|
+
*/
|
|
148
|
+
getWorldRight(right: Vector3): Vector3;
|
|
149
|
+
/**
|
|
150
|
+
* Get the up direction in world space.
|
|
151
|
+
* @param up - Up vector
|
|
152
|
+
* @returns Up vector
|
|
153
|
+
*/
|
|
154
|
+
getWorldUp(up: Vector3): Vector3;
|
|
155
|
+
/**
|
|
156
|
+
* Translate in the direction and distance of the translation.
|
|
157
|
+
* @param translation - Direction and distance of translation
|
|
158
|
+
* @param relativeToLocal = `true` - Is relative to the local coordinate system
|
|
159
|
+
*/
|
|
160
|
+
translate(translation: Vector3, relativeToLocal?: boolean): void;
|
|
161
|
+
/**
|
|
162
|
+
* Translate some distance by x along the x axis, y along the y axis, and z along the z axis.
|
|
163
|
+
* @param x - Distance along the x axis
|
|
164
|
+
* @param y - Distance along the y axis
|
|
165
|
+
* @param z - Distance along the z axis
|
|
166
|
+
* @param relativeToLocal = `true` - Is relative to the local coordinate system
|
|
167
|
+
*/
|
|
168
|
+
translate(x: number, y: number, z: number, relativeToLocal?: boolean): void;
|
|
169
|
+
/**
|
|
170
|
+
* Rotate around the passed Vector3.
|
|
171
|
+
* @param rotation - Euler angle in degrees
|
|
172
|
+
* @param relativeToLocal = `true` - Is relative to the local coordinate system
|
|
173
|
+
*/
|
|
174
|
+
rotate(rotation: Vector3, relativeToLocal?: boolean): void;
|
|
175
|
+
/**
|
|
176
|
+
* Rotate around the passed Vector3.
|
|
177
|
+
* @param x - Rotation along x axis, in degrees
|
|
178
|
+
* @param y - Rotation along y axis, in degrees
|
|
179
|
+
* @param z - Rotation along z axis, in degrees
|
|
180
|
+
* @param relativeToLocal = `true` - Is relative to the local coordinate system
|
|
181
|
+
*/
|
|
182
|
+
rotate(x: number, y: number, z: number, relativeToLocal?: boolean): void;
|
|
183
|
+
/**
|
|
184
|
+
* Rotate around the specified axis according to the specified angle.
|
|
185
|
+
* @param axis - Rotate axis
|
|
186
|
+
* @param angle - Rotate angle in degrees
|
|
187
|
+
* @param relativeToLocal = `true` - Relative to local space
|
|
188
|
+
*/
|
|
189
|
+
rotateByAxis(axis: Vector3, angle: number, relativeToLocal?: boolean): void;
|
|
190
|
+
/**
|
|
191
|
+
* Rotate and ensure that the world front vector points to the target world position.
|
|
192
|
+
* @param targetPosition - Target world position
|
|
193
|
+
* @param worldUp - Up direction in world space, default is Vector3(0, 1, 0)
|
|
194
|
+
*/
|
|
195
|
+
lookAt(targetPosition: Vector3, worldUp?: Vector3): void;
|
|
196
|
+
/**
|
|
197
|
+
* Register world transform change flag.
|
|
198
|
+
* @returns Change flag
|
|
199
|
+
*/
|
|
200
|
+
registerWorldChangeFlag(): BoolUpdateFlag;
|
|
201
|
+
/**
|
|
202
|
+
* Get worldMatrix: Will trigger the worldMatrix update of itself and all parent entities.
|
|
203
|
+
* Get worldPosition: Will trigger the worldMatrix, local position update of itself and the worldMatrix update of all parent entities.
|
|
204
|
+
* In summary, any update of related variables will cause the dirty mark of one of the full process (worldMatrix or worldRotationQuaternion) to be false.
|
|
205
|
+
*/
|
|
206
|
+
private _updateWorldPositionFlag;
|
|
207
|
+
/**
|
|
208
|
+
* Get worldMatrix: Will trigger the worldMatrix update of itself and all parent entities.
|
|
209
|
+
* Get worldPosition: Will trigger the worldMatrix, local position update of itself and the worldMatrix update of all parent entities.
|
|
210
|
+
* Get worldRotationQuaternion: Will trigger the world rotation (in quaternion) update of itself and all parent entities.
|
|
211
|
+
* Get worldRotation: Will trigger the world rotation(in euler and quaternion) update of itself and world rotation(in quaternion) update of all parent entities.
|
|
212
|
+
* In summary, any update of related variables will cause the dirty mark of one of the full process (worldMatrix or worldRotationQuaternion) to be false.
|
|
213
|
+
*/
|
|
214
|
+
private _updateWorldRotationFlag;
|
|
215
|
+
/**
|
|
216
|
+
* Get worldMatrix: Will trigger the worldMatrix update of itself and all parent entities.
|
|
217
|
+
* Get worldPosition: Will trigger the worldMatrix, local position update of itself and the worldMatrix update of all parent entities.
|
|
218
|
+
* Get worldRotationQuaternion: Will trigger the world rotation (in quaternion) update of itself and all parent entities.
|
|
219
|
+
* Get worldRotation: Will trigger the world rotation(in euler and quaternion) update of itself and world rotation(in quaternion) update of all parent entities.
|
|
220
|
+
* In summary, any update of related variables will cause the dirty mark of one of the full process (worldMatrix or worldRotationQuaternion) to be false.
|
|
221
|
+
*/
|
|
222
|
+
private _updateWorldPositionAndRotationFlag;
|
|
223
|
+
/**
|
|
224
|
+
* Get worldMatrix: Will trigger the worldMatrix update of itself and all parent entities.
|
|
225
|
+
* Get worldPosition: Will trigger the worldMatrix, local position update of itself and the worldMatrix update of all parent entities.
|
|
226
|
+
* Get worldScale: Will trigger the scaling update of itself and all parent entities.
|
|
227
|
+
* In summary, any update of related variables will cause the dirty mark of one of the full process (worldMatrix) to be false.
|
|
228
|
+
*/
|
|
229
|
+
private _updateWorldScaleFlag;
|
|
230
|
+
/**
|
|
231
|
+
* Get worldMatrix: Will trigger the worldMatrix update of itself and all parent entities.
|
|
232
|
+
* Get worldPosition: Will trigger the worldMatrix, local position update of itself and the worldMatrix update of all parent entities.
|
|
233
|
+
* Get worldScale: Will trigger the scaling update of itself and all parent entities.
|
|
234
|
+
* In summary, any update of related variables will cause the dirty mark of one of the full process (worldMatrix) to be false.
|
|
235
|
+
*/
|
|
236
|
+
private _updateWorldPositionAndScaleFlag;
|
|
237
|
+
/**
|
|
238
|
+
* Update all world transform property dirty flag, the principle is the same as above.
|
|
239
|
+
*/
|
|
240
|
+
private _updateAllWorldFlag;
|
|
241
|
+
private _getParentTransform;
|
|
242
|
+
private _getScaleMatrix;
|
|
243
|
+
private _isContainDirtyFlags;
|
|
244
|
+
private _isContainDirtyFlag;
|
|
245
|
+
private _setDirtyFlagTrue;
|
|
246
|
+
private _setDirtyFlagFalse;
|
|
247
|
+
private _worldAssociatedChange;
|
|
248
|
+
private _rotateByQuat;
|
|
249
|
+
private _translate;
|
|
250
|
+
private _rotateXYZ;
|
|
251
|
+
private _onPositionChanged;
|
|
252
|
+
private _onWorldPositionChanged;
|
|
253
|
+
private _onRotationChanged;
|
|
254
|
+
private _onWorldRotationChanged;
|
|
255
|
+
private _onRotationQuaternionChanged;
|
|
256
|
+
private _onWorldRotationQuaternionChanged;
|
|
257
|
+
private _onScaleChanged;
|
|
258
|
+
}
|