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

    Class Stage<Backend>

    舞台类 Create stages asynchronously with Stage.create().

    const stage = await Hilo3d.Stage.create({
    container:document.body,
    width:innerWidth,
    height:innerHeight
    });

    Type Parameters

    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

    是否自动更新世界矩阵

    cameras: Camera[] = []

    Ordered cameras rendered by tick().

    canvas: HTMLCanvasElement

    canvas

    children: Node[]
    className: string = 'Stage'
    domViewport: { height: number; left: number; top: number; width: number } | null = null
    fog: Fog | null = null

    Scene fog consumed consistently by every renderer backend.

    height: number = 0

    舞台高度

    id: string
    isCamera: boolean = false
    isMesh: boolean = false
    isNode: boolean = true
    isSkinnedMesh: boolean = false
    isStage: boolean = true
    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 方法

    offsetX: number = 0

    偏移值

    offsetY: number = 0

    偏移值

    onlySyncQuaternion: boolean = false

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

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

    update 回调

    parent: Node | null = null

    父节点

    pixelRatio: number = 1

    像素密度

    pointerChildren: boolean = true

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

    pointerEnabled: boolean = true

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

    ready: Promise<void>

    Resolves when the selected graphics backend is ready for rendering.

    renderer: Renderer<Backend>

    渲染器

    rendererHeight: number = 0
    rendererWidth: number = 0
    useHandCursor: boolean = false

    是否用鼠标指针

    userData: unknown = null

    用户数据

    visible: boolean = true

    节点是否显示

    width: number = 0

    舞台宽度

    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 = 'Stage'
    • get camera(): Camera | null

      Legacy primary-camera alias. Assigning replaces the first camera while retaining any additional overlay cameras.

      Returns Camera | null

    • set camera(value: Camera | null): void

      Parameters

      Returns void

    • 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 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

    • get zIndex(): number

      Fine 2D display order within sortingLayer. Higher values render later.

      Returns number

    • set zIndex(value: number): void

      Parameters

      • value: number

      Returns void

    • Append a camera after existing cameras.

      Parameters

      • camera: Camera

        Camera to add.

      Returns this

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

      Parameters

      • parent: Node

        需要添加到的父元素

      Returns this

      this

    • Parameters

      • OptionalisChild: boolean

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

      Returns Node

      返回clone的Node

    • 开启/关闭舞台的DOM事件响应。要让舞台上的可视对象响应用户交互,必须先使用此方法开启舞台的相应事件的响应。

      Parameters

      • types: string | readonly string[]

        要开启/关闭的事件名称或数组。

      • enabled: boolean = true

        指定开启还是关闭。如果不传此参数,则默认为开启。

      Returns this

      舞台本身。链式调用支持。

    • 获取元素的包围盒信息

      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

      返回获取的矩阵

    • 获取指定点的 mesh

      Parameters

      • x: number
      • y: number
      • eventMode: boolean = false

      Returns NodeRaycastInfo | null

    • 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

    • 改变元素的朝向

      Parameters

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

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

      Returns this

      this

    • 释放当前图形后端资源。

      Returns this

      this

    • Remove a camera from the composition.

      Parameters

      • camera: Camera

        Camera to remove.

      Returns this

    • 缩放舞台

      Parameters

      • width: number

        舞台宽

      • height: number

        舞台高

      • OptionalpixelRatio: number

        像素密度

      • Optionalforce: boolean

        是否强制刷新

      Returns this

      舞台本身。链式调用支持。

    • Replace the ordered camera composition.

      Parameters

      • cameras: readonly Camera[]

        Unique Camera instances in back-to-front render order.

      Returns this

    • 设置舞台偏移值

      Parameters

      • x: number

        x

      • y: number

        y

      Returns 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

        Y轴旋转角度, 角度制

      • z: number

        Z轴旋转角度, 角度制

      Returns this

      this

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

      Parameters

      • x: number

        X缩放比例

      • y: number = x

        Y缩放比例

      • z: number = y

        Z缩放比例

      Returns this

      this

    • 渲染一帧

      Parameters

      • dt: number

        间隔时间

      Returns this

      舞台本身。链式调用支持。

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

      Parameters

      • dt: number

      Returns this

      this

    • 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

    • 更新 DOM viewport

      Returns { height: number; left: number; top: number; width: number }

      DOM viewport,格式为 { left, top, right, bottom }

    • 更新世界矩阵

      Parameters

      • Optionalforce: boolean

        是否强制更新

      Returns this

      this

    • 改viewport

      Parameters

      • x: number

        x

      • y: number

        y

      • width: number

        width

      • height: number

        height

      Returns this

      舞台本身。链式调用支持。