Options
All
  • Public
  • Public/Protected
  • All
Menu

Class UI

UI 渲染流程

Hierarchy

  • UI

Index

Constructors

constructor

Properties

Private _attributes

_attributes: IGFXAttribute[] = []

Private _batches

Private _bufferBatchPool

_bufferBatchPool: RecyclePool<MeshBuffer> = new RecyclePool(() => {return new MeshBuffer(this);}, 128)

Private _canvasMaterials

_canvasMaterials: Map<number, Map<number, number>> = new Map<number, Map<number, number>>()

Private _currCanvas

_currCanvas: Canvas | null = null

Private _currComponent

_currComponent: UIRenderable | null = null

Private _currMaterial

_currMaterial: Material = this._emptyMaterial

Private _currMeshBuffer

_currMeshBuffer: MeshBuffer | null = null

Private _currSampler

_currSampler: GFXSampler | null = null

Private _currStaticRoot

_currStaticRoot: UIStaticBatch | null = null

Private _currTexture

_currTexture: GFXTexture | null = null

Private _drawBatchPool

_drawBatchPool: Pool<UIDrawBatch>

Private _emptyMaterial

_emptyMaterial: Material = new Material()

Private _meshBufferUseCount

_meshBufferUseCount: number = 0

Private _meshBuffers

_meshBuffers: MeshBuffer[] = []

Private _modelInUse

Private _parentOpacity

_parentOpacity: number = 1

Private _root

_root: Root

Private _scene

_scene: RenderScene

Private _screens

_screens: Canvas[] = []

Private _uiMaterials

_uiMaterials: Map<number, UIMaterial> = new Map<number, UIMaterial>()

Private _uiModelPool

_uiModelPool: Pool<UIBatchModel> | null = null

device

device: GFXDevice

Accessors

currBufferBatch

currStaticRoot

renderScene

  • get renderScene(): RenderScene

Methods

Private applyOpacity

Private createMeshBuffer

Private destroyUIMaterials

  • _destroyUIMaterials(): void

getUIMaterial

  • getUIMaterial(mat: Material): UIMaterial

Private postprocess

  • postprocess(node: Node): void

Private preprocess

  • preprocess(node: Node): void

Private recursiveScreenNode

  • recursiveScreenNode(screen: Node): void

removeUIMaterial

  • removeUIMaterial(hash: number): void

Private renderScreens

  • _renderScreens(): void

Private requireBufferBatch

  • _requireBufferBatch(): void

Private reset

  • _reset(): void

Private screenSort

Private walk

  • walk(node: Node, level?: number): void

addScreen

  • addScreen(comp: Canvas): void

autoMergeBatches

commitComp

  • UI 渲染组件数据提交流程(针对提交的顶点数据是世界坐标的提交流程,例如:除 Graphics 和 UIModel 的大部分 ui 组件)。 此处的数据最终会生成需要提交渲染的 model 数据。

    Parameters

    • comp: UIRenderable

      当前执行组件。

    • Default value frame: GFXTexture | null = null

      当前执行组件贴图。

    • assembler: any

      当前组件渲染数据组装器。

    • Default value sampler: GFXSampler | null = null

    Returns void

commitModel

  • UI 渲染组件数据提交流程(针对例如: Graphics 和 UIModel 等数据量较为庞大的 ui 组件)。

    Parameters

    Returns void

commitStaticBatch

destroy

  • destroy(): void

finishMergeBatches

  • finishMergeBatches(): void

forceMergeBatches

getRenderSceneGetter

  • getRenderSceneGetter(): get

getScreen

  • getScreen(visibility: number): null | Canvas

initialize

  • initialize(): boolean

removeScreen

  • removeScreen(comp: Canvas): void

render

  • render(): void

sortScreens

  • sortScreens(): void

update

  • update(dt: number): void

Generated using TypeDoc