Hilo3d API - v2.0.0-alpha.3
    Preparing search index...

    Class Camera

    摄像机

    Hierarchy (View Summary)

    Index
    __forceUseParentWorldMatrix: boolean = false

    是否强制使用父元素 worldMatrix,供高级开发者使用

    _listeners: ListenerMap | null = null
    _matrixDirty: boolean = false
    _originName?: string
    _quatDirty: boolean = false
    anim: Animation | null = null

    动画

    animationId: string = ''

    animation 查找 id

    autoUpdateChildWorldMatrix: boolean = true

    是否自动更新子元素世界矩阵

    autoUpdateWorldMatrix: boolean = true

    是否自动更新世界矩阵

    children: Node[]
    className: string = 'Camera'
    clearColor: boolean = true

    Whether this camera clears the color attachment. The base Camera defaults to clearing; Camera2D defaults to preserving prior camera color for overlays.

    clearDepth: boolean = true

    Whether this camera clears depth before drawing.

    clearStencil: boolean = true

    Whether this camera clears stencil before drawing.

    id: string
    isCamera: boolean = true
    isMesh: boolean = false
    isNode: boolean = true
    isOrthographicCamera: boolean = false
    isPerspectiveCamera: boolean = false
    isSkinnedMesh: boolean = false
    jointName: string = ''

    骨骼名称

    layer: number = 1

    Scene-layer bit mask. Bit zero is the default 3D layer.

    Parents do not override a child's layer: visible controls hierarchical visibility, while layer controls per-camera collection for each renderable node.

    matrixVersion: number = 0

    矩阵 version,每次改变会加一

    name: string = ''

    Node 的名字,可以通过 getChildByName 查找

    needCallChildUpdate: boolean = true

    每次更新的时候是否调用子节点的 onUpdate 方法

    onlySyncQuaternion: boolean = false

    只同步四元数,不同步欧拉角

    onUpdate: ((deltaTime: number) => void) | null = null

    update 回调

    parent: Node | null = null

    父节点

    pointerChildren: boolean = true

    子元素是否接受交互事件。

    pointerEnabled: boolean = true

    可视对象是否接受交互事件。默认为接受交互事件,即true。

    projectionMatrix: Matrix4 = ...
    useHandCursor: boolean = false

    是否用鼠标指针

    userData: unknown = null

    用户数据

    viewMatrix: Matrix4 = ...
    viewProjectionMatrix: Matrix4 = ...
    visibility: number = 0xffffffff

    Visibility mask used by shared scene collection and Stage pointer picking.

    The default exposes every 32-bit layer. Use 0 to disable scene collection for a camera.

    visible: boolean = true

    节点是否显示

    worldMatrix: Matrix4
    worldMatrixVersion: number = 0

    世界矩阵 version,每次改变会加一

    TRAVERSE_STOP_ALL: 2 = TRAVERSE_STOP_ALL

    traverse callback 返回值,执行后暂停所有 traverse

    TRAVERSE_STOP_CHILDREN: 1 = TRAVERSE_STOP_CHILDREN

    traverse callback 返回值,执行后暂停子元素 traverse

    TRAVERSE_STOP_NONE: 0 = TRAVERSE_STOP_NONE

    traverse callback 返回值,执行后不暂停 traverse

    typeName: string = 'Camera'
    • get pivotX(): number

      中心点x

      Returns number

    • set pivotX(value: number): void

      中心点x

      Parameters

      • value: number

      Returns void

    • get pivotY(): number

      中心点y

      Returns number

    • set pivotY(value: number): void

      中心点y

      Parameters

      • value: number

      Returns void

    • get pivotZ(): number

      中心点z

      Returns number

    • set pivotZ(value: number): void

      中心点z

      Parameters

      • value: number

      Returns void

    • get priority(): number

      Camera composition priority. Lower values render first and receive pointer input last.

      Returns number

    • set priority(value: number): void

      Parameters

      • value: number

      Returns void

    • get rotationX(): number

      旋转角度 x, 角度制

      Returns number

    • set rotationX(value: number): void

      旋转角度 x, 角度制

      Parameters

      • value: number

      Returns void

    • get rotationY(): number

      旋转角度 y, 角度制

      Returns number

    • set rotationY(value: number): void

      旋转角度 y, 角度制

      Parameters

      • value: number

      Returns void

    • get rotationZ(): number

      旋转角度 z, 角度制

      Returns number

    • set rotationZ(value: number): void

      旋转角度 z, 角度制

      Parameters

      • value: number

      Returns void

    • get scaleX(): number

      缩放比例x

      Returns number

    • set scaleX(value: number): void

      缩放比例x

      Parameters

      • value: number

      Returns void

    • get scaleY(): number

      缩放比例y

      Returns number

    • set scaleY(value: number): void

      缩放比例y

      Parameters

      • value: number

      Returns void

    • get scaleZ(): number

      缩放比例z

      Returns number

    • set scaleZ(value: number): void

      缩放比例z

      Parameters

      • value: number

      Returns void

    • get sortingLayer(): number

      Coarse 2D display layer. Higher values render later.

      Unlike layer, this value does not affect Camera visibility. Sprite and Text2D ordering is stable for equal sortingLayer and zIndex, so scene-tree traversal order remains the final tie breaker.

      Returns number

    • set sortingLayer(value: number): void

      Parameters

      • value: number

      Returns void

    • get x(): number

      x轴坐标

      Returns number

    • set x(value: number): void

      x轴坐标

      Parameters

      • value: number

      Returns void

    • get y(): number

      y轴坐标

      Returns number

    • set y(value: number): void

      y轴坐标

      Parameters

      • value: number

      Returns void

    • get z(): number

      z轴坐标

      Returns number

    • set z(value: number): void

      z轴坐标

      Parameters

      • value: number

      Returns void

    • 将当前元素添加到某个父元素的子元素中

      Parameters

      • parent: Node

        需要添加到的父元素

      Returns this

      this

    • Parameters

      • OptionalisChild: boolean

        是否子节点,子节点不会处理动画及骨骼Mesh,即如果有动画将共享

      Returns Node

      返回clone的Node

    • 获取元素的包围盒信息

      Parameters

      • Optionalparent: Node

        元素相对于哪个祖先元素的包围盒,不传表示世界

      • OptionalcurrentMatrix: Matrix4

        当前计算的矩阵

      • Optionalbounds: Bounds

        当前计算的包围盒信息

      Returns Bounds | undefined

      返回计算的包围盒信息

    • 获取指定name的首个子孙元素

      Parameters

      • name: string

        元素name

      Returns Node | null

      获取的元素

    • 根据 name path 来获取子孙元素

      Parameters

      • path: string[]

        名字数组, e.g., getChildByNamePath(['a', 'b', 'c'])

      Returns Node | null

      返回获取到的子孙元素

    • 将所以子孙元素放到一个对象中,对象key为元素的name,value为该元素

      Returns Record<string, Node>

      返回获取的对象

    • 获取当前元素相对于指定元素的矩阵

      Parameters

      • Optionalancestor: Node

        相对于的元素,需要是当前元素的祖先元素,不传表示获取世界矩阵

      Returns Matrix4

      返回获取的矩阵

    • 获取几何体,子类必须重写

      Parameters

      • forceUpdate: boolean = false

        是否强制更新

      Returns Geometry

    • 获取元素的投影矩阵

      Parameters

      • node: Node

        目标元素

      • Optionalout: Matrix4

        传递将在这个矩阵上做计算,不传将创建一个新的 Matrix4

      Returns Matrix4

      返回获取的矩阵

    • 获取元素相对于当前Camera的矩阵

      Parameters

      • node: Node

        目标元素

      • Optionalout: Matrix4

        传递将在这个矩阵上做计算,不传将创建一个新的 Matrix4

      Returns Matrix4

      返回获取的矩阵

    • Reset this node's previous-frame transform on its next submitted render.

      Call this after a discontinuous teleport, origin shift, camera cut, or animation reset so temporal effects receive previous === current instead of a false motion vector.

      Returns this

      this

    • Return whether this camera can see a node's layer mask.

      Parameters

      • node: Pick<Node, "layer">

        Scene node to test.

      Returns boolean

    • 改变元素的朝向

      Parameters

      • node: { x: number; y: number; z: number }

        需要朝向的元素,或者坐标

      Returns this

      this

    • 获取世界坐标系(三维)中一个点在画布(二维)上的位置

      Parameters

      • vector: Vector3

        点坐标

      • Optionalwidth: number

        画布宽,不传的话返回-1~1

      • Optionalheight: number

        画布高,不传的话返回-1~1

      Returns Vector3

      返回获取的坐标位置,如 { x: 0, y: 0 }

    • 设置中心点

      Parameters

      • x: number

        中心点x

      • y: number

        中心点y

      • z: number

        中心点z

      Returns this

      this

    • 设置元素的位置

      Parameters

      • x: number

        X方向位置

      • y: number

        Y方向位置

      • z: number

        Z方向位置

      Returns this

      this

    • 设置元素的旋转

      Parameters

      • x: number

        X轴旋转角度, 角度制

      • y: number

        Y轴旋转角度, 角度制

      • z: number

        Z轴旋转角度, 角度制

      Returns this

      this

    • 设置元素的缩放比例,如果只有一个参数三个轴等比缩放

      Parameters

      • x: number

        X缩放比例

      • y: number = x

        Y缩放比例

      • z: number = y

        Z缩放比例

      Returns this

      this

    • 遍历调用子孙元素onUpdate方法

      Parameters

      • dt: number

      Returns this

      this

    • 屏幕坐标转换世界坐标系

      Parameters

      • vector: Vector3

        点坐标

      • Optionalwidth: number

        画布宽,传的话vector会认为是屏幕坐标

      • Optionalheight: number

        画布高,传的话vector会认为是屏幕坐标

      Returns Vector3

      返回世界坐标系(三维)中一个点

    • Per-node update hook called by traverseUpdate() before onUpdate.

      Subclasses use this hook for built-in behavior such as sprite animation without consuming the application-owned onUpdate callback. Subclass constructors must call enableUpdateHook() to opt into the traversal hot path.

      Parameters

      • _dt: number

        Elapsed time in milliseconds.

      Returns void

    • 更新世界矩阵

      Parameters

      • Optionalforce: boolean

        是否强制更新

      Returns this

      this

    • 更新投影矩阵,子类必须重载这个方法

      Returns void

    • 更新viewProjectionMatrix

      Returns this

      this