Skip to content

Documentation / device / BaseDevice

Abstract Class: BaseDevice

Defined in: libs/device/src/device.ts:229

Base class for rendering device

Extends

Constructors

Constructor

new BaseDevice(cvs, backend, dpr?): BaseDevice

Defined in: libs/device/src/device.ts:256

Parameters

cvs

HTMLCanvasElement

backend

DeviceBackend

dpr?

number

Returns

BaseDevice

Overrides

Observable<DeviceEventMap>.constructor

Properties

[EventMapType]?

readonly optional [EventMapType]?: DeviceEventMap

Defined in: libs/base/dist/index.d.ts:585

Type-only event map marker.


_dpr

protected _dpr: number

Defined in: libs/device/src/device.ts:230


_canvas

protected _canvas: HTMLCanvasElement

Defined in: libs/device/src/device.ts:231


_canvasClientWidth

protected _canvasClientWidth: number

Defined in: libs/device/src/device.ts:232


_canvasClientHeight

protected _canvasClientHeight: number

Defined in: libs/device/src/device.ts:233


_gpuObjectList

protected _gpuObjectList: GPUObjectList

Defined in: libs/device/src/device.ts:234


_gpuMemCost

protected _gpuMemCost: number

Defined in: libs/device/src/device.ts:235


_disposeObjectList

protected _disposeObjectList: GPUObject<unknown>[]

Defined in: libs/device/src/device.ts:236


_beginFrameTime

protected _beginFrameTime: number

Defined in: libs/device/src/device.ts:237


_endFrameTime

protected _endFrameTime: number

Defined in: libs/device/src/device.ts:238


_fixedFrameTime

protected _fixedFrameTime: number

Defined in: libs/device/src/device.ts:239


_fixedFrameClock

protected _fixedFrameClock: number

Defined in: libs/device/src/device.ts:240


_frameInfo

protected _frameInfo: FrameInfo

Defined in: libs/device/src/device.ts:241


_cpuTimer

protected _cpuTimer: CPUTimer

Defined in: libs/device/src/device.ts:242


_gpuTimer

protected _gpuTimer: ITimer

Defined in: libs/device/src/device.ts:243


_runningLoop

protected _runningLoop: number

Defined in: libs/device/src/device.ts:244


_fpsCounter

protected _fpsCounter: object

Defined in: libs/device/src/device.ts:245

time

time: number

frame

frame: number


_runLoopFunc

protected _runLoopFunc: (device) => void

Defined in: libs/device/src/device.ts:246

Parameters

device

AbstractDevice

Returns

void


_backend

protected _backend: DeviceBackend

Defined in: libs/device/src/device.ts:247


_beginFrameCounter

protected _beginFrameCounter: number

Defined in: libs/device/src/device.ts:248


_programBuilder

protected _programBuilder: ProgramBuilder

Defined in: libs/device/src/device.ts:249


_poolMap

protected _poolMap: Map<string | symbol, Pool>

Defined in: libs/device/src/device.ts:250


_defaultPoolKey

protected _defaultPoolKey: symbol

Defined in: libs/device/src/device.ts:251


_temporalFramebuffer

protected _temporalFramebuffer: boolean

Defined in: libs/device/src/device.ts:252


_vSync

protected _vSync: boolean

Defined in: libs/device/src/device.ts:253

Accessors

clipSpaceZeroToOne

Get Signature

get abstract clipSpaceZeroToOne(): boolean

Defined in: libs/device/src/device.ts:334

Returns

boolean


backend

Get Signature

get backend(): DeviceBackend

Defined in: libs/device/src/device.ts:485

Returns

DeviceBackend


videoMemoryUsage

Get Signature

get videoMemoryUsage(): number

Defined in: libs/device/src/device.ts:488

Returns

number


frameInfo

Get Signature

get frameInfo(): FrameInfo

Defined in: libs/device/src/device.ts:491

Returns

FrameInfo


isRendering

Get Signature

get isRendering(): boolean

Defined in: libs/device/src/device.ts:494

Returns

boolean


canvas

Get Signature

get canvas(): HTMLCanvasElement

Defined in: libs/device/src/device.ts:497

Returns

HTMLCanvasElement


type

Get Signature

get type(): string

Defined in: libs/device/src/device.ts:500

Returns

string


vSync

Get Signature

get vSync(): boolean

Defined in: libs/device/src/device.ts:503

Returns

boolean

Set Signature

set vSync(val): void

Defined in: libs/device/src/device.ts:506

Parameters
val

boolean

Returns

void


fixedFrameTime

Get Signature

get fixedFrameTime(): number

Defined in: libs/device/src/device.ts:509

Returns

number


pool

Get Signature

get pool(): Pool

Defined in: libs/device/src/device.ts:520

Returns

Pool


runLoopFunction

Get Signature

get runLoopFunction(): (device) => void

Defined in: libs/device/src/device.ts:523

Returns

(device) => void


programBuilder

Get Signature

get programBuilder(): ProgramBuilder

Defined in: libs/device/src/device.ts:526

Returns

ProgramBuilder

Methods

on()

on<K>(type, listener, context?): void

Defined in: libs/base/dist/index.d.ts:630

IEventTarget.on

Type Parameters

K

K extends keyof DeviceEventMap

Parameters

type

K

listener

EventListener<DeviceEventMap, K>

context?

unknown

Returns

void

Inherited from

Observable.on


once()

once<K>(type, listener, context?): void

Defined in: libs/base/dist/index.d.ts:634

IEventTarget.once

Type Parameters

K

K extends keyof DeviceEventMap

Parameters

type

K

listener

EventListener<DeviceEventMap, K>

context?

unknown

Returns

void

Inherited from

Observable.once


off()

off<K>(type, listener?, context?): void

Defined in: libs/base/dist/index.d.ts:638

IEventTarget.off

Type Parameters

K

K extends keyof DeviceEventMap

Parameters

type

K

listener?

EventListener<DeviceEventMap>

context?

unknown

Returns

void

Inherited from

Observable.off


dispatchEvent()

dispatchEvent<K>(type, ...args): void

Defined in: libs/base/dist/index.d.ts:642

IEventTarget.dispatchEvent

Type Parameters

K

K extends keyof DeviceEventMap

Parameters

type

K

args

...DeviceEventMap[K]

Returns

void

Inherited from

Observable.dispatchEvent


getScaleX()

getScaleX(): number

Defined in: libs/device/src/device.ts:320

Returns

number


getScaleY()

getScaleY(): number

Defined in: libs/device/src/device.ts:323

Returns

number


getAdapterInfo()

abstract getAdapterInfo(): any

Defined in: libs/device/src/device.ts:326

Returns

any


getFrameBufferSampleCount()

abstract getFrameBufferSampleCount(): number

Defined in: libs/device/src/device.ts:327

Returns

number


isContextLost()

abstract isContextLost(): boolean

Defined in: libs/device/src/device.ts:328

Returns

boolean


getDrawingBufferWidth()

abstract getDrawingBufferWidth(): number

Defined in: libs/device/src/device.ts:329

Returns

number


getDrawingBufferHeight()

abstract getDrawingBufferHeight(): number

Defined in: libs/device/src/device.ts:330

Returns

number


getBackBufferWidth()

abstract getBackBufferWidth(): number

Defined in: libs/device/src/device.ts:331

Returns

number


getBackBufferHeight()

abstract getBackBufferHeight(): number

Defined in: libs/device/src/device.ts:332

Returns

number


getDeviceCaps()

abstract getDeviceCaps(): Immutable<DeviceCaps>

Defined in: libs/device/src/device.ts:333

Returns

Immutable<DeviceCaps>


initContext()

abstract initContext(): Promise<void>

Defined in: libs/device/src/device.ts:335

Returns

Promise<void>


clearFrameBuffer()

abstract clearFrameBuffer(clearColor, clearDepth, clearStencil): void

Defined in: libs/device/src/device.ts:336

Parameters

clearColor

Vector4 | readonly Vector4[]

clearDepth

number

clearStencil

number

Returns

void


createGPUTimer()

abstract createGPUTimer(): ITimer

Defined in: libs/device/src/device.ts:341

Returns

ITimer


createRenderStateSet()

abstract createRenderStateSet(): RenderStateSet

Defined in: libs/device/src/device.ts:342

Returns

RenderStateSet


createBlendingState()

abstract createBlendingState(): BlendingState

Defined in: libs/device/src/device.ts:343

Returns

BlendingState


createColorState()

abstract createColorState(): ColorState

Defined in: libs/device/src/device.ts:344

Returns

ColorState


createRasterizerState()

abstract createRasterizerState(): RasterizerState

Defined in: libs/device/src/device.ts:345

Returns

RasterizerState


createDepthState()

abstract createDepthState(): DepthState

Defined in: libs/device/src/device.ts:346

Returns

DepthState


createStencilState()

abstract createStencilState(): StencilState

Defined in: libs/device/src/device.ts:347

Returns

StencilState


createSampler()

abstract createSampler(options): TextureSampler

Defined in: libs/device/src/device.ts:348

Parameters

options

SamplerOptions

Returns

TextureSampler


createTextureFromMipmapData()

abstract createTextureFromMipmapData<T>(data, sRGB, options?): T

Defined in: libs/device/src/device.ts:349

Type Parameters

T

T extends BaseTexture<unknown>

Parameters

data

TextureMipmapData

sRGB

boolean

options?

TextureCreationOptions

Returns

T


createTexture2D()

abstract createTexture2D(format, width, height, options?): Texture2D<unknown>

Defined in: libs/device/src/device.ts:354

Parameters

format

TextureFormat

width

number

height

number

options?

TextureCreationOptions

Returns

Texture2D<unknown>


createTexture2DFromImage()

abstract createTexture2DFromImage(element, sRGB, options?): Texture2D<unknown>

Defined in: libs/device/src/device.ts:360

Parameters

element

TextureImageElement

sRGB

boolean

options?

TextureCreationOptions

Returns

Texture2D<unknown>


createTexture2DArray()

abstract createTexture2DArray(format, width, height, depth, options?): Texture2DArray<unknown>

Defined in: libs/device/src/device.ts:365

Parameters

format

TextureFormat

width

number

height

number

depth

number

options?

TextureCreationOptions

Returns

Texture2DArray<unknown>


createTexture2DArrayFromImages()

abstract createTexture2DArrayFromImages(elements, sRGB, options?): Texture2DArray<unknown>

Defined in: libs/device/src/device.ts:372

Parameters

elements

TextureImageElement[]

sRGB

boolean

options?

TextureCreationOptions

Returns

Texture2DArray<unknown>


createTexture3D()

abstract createTexture3D(format, width, height, depth, options?): Texture3D<unknown>

Defined in: libs/device/src/device.ts:377

Parameters

format

TextureFormat

width

number

height

number

depth

number

options?

TextureCreationOptions

Returns

Texture3D<unknown>


createCubeTexture()

abstract createCubeTexture(format, size, options?): TextureCube<unknown>

Defined in: libs/device/src/device.ts:384

Parameters

format

TextureFormat

size

number

options?

TextureCreationOptions

Returns

TextureCube<unknown>


createTextureVideo()

abstract createTextureVideo(el, samplerOptions?): TextureVideo

Defined in: libs/device/src/device.ts:389

Parameters

el

HTMLVideoElement

samplerOptions?

SamplerOptions

Returns

TextureVideo


reverseVertexWindingOrder()

abstract reverseVertexWindingOrder(reverse): void

Defined in: libs/device/src/device.ts:390

Parameters

reverse

boolean

Returns

void


isWindingOrderReversed()

abstract isWindingOrderReversed(): boolean

Defined in: libs/device/src/device.ts:391

Returns

boolean


copyTexture2D()

abstract copyTexture2D(src, srcLevel, dst, dstLevel): void

Defined in: libs/device/src/device.ts:392

Parameters

src

Texture2D

srcLevel

number

dst

Texture2D

dstLevel

number

Returns

void


copyFramebufferToTexture2D()

abstract copyFramebufferToTexture2D(src, index, dst, level): void

Defined in: libs/device/src/device.ts:393

Parameters

src

FrameBuffer

index

number

dst

Texture2D

level

number

Returns

void


createGPUProgram()

abstract createGPUProgram(params): GPUProgram

Defined in: libs/device/src/device.ts:395

Parameters

params

GPUProgramConstructParams

Returns

GPUProgram


createBindGroup()

abstract createBindGroup(layout): BindGroup

Defined in: libs/device/src/device.ts:396

Parameters

layout

Immutable<BindGroupLayout>

Returns

BindGroup


createBuffer()

abstract createBuffer(sizeInBytes, options): GPUDataBuffer

Defined in: libs/device/src/device.ts:397

Parameters

sizeInBytes

number

options

BufferCreationOptions

Returns

GPUDataBuffer


copyBuffer()

abstract copyBuffer(sourceBuffer, destBuffer, srcOffset, dstOffset, bytes): void

Defined in: libs/device/src/device.ts:398

Parameters

sourceBuffer

GPUDataBuffer

destBuffer

GPUDataBuffer

srcOffset

number

dstOffset

number

bytes

number

Returns

void


createIndexBuffer()

abstract createIndexBuffer(data, options?): IndexBuffer

Defined in: libs/device/src/device.ts:405

Parameters

data

Uint16Array<ArrayBuffer> | Uint32Array<ArrayBuffer>

options?

BufferCreationOptions

Returns

IndexBuffer


createStructuredBuffer()

abstract createStructuredBuffer(structureType, options, data?): StructuredBuffer

Defined in: libs/device/src/device.ts:409

Parameters

structureType

PBStructTypeInfo

options

BufferCreationOptions

data?

TypedArray

Returns

StructuredBuffer


createVertexLayout()

abstract createVertexLayout(options): VertexLayout

Defined in: libs/device/src/device.ts:414

Parameters

options

VertexLayoutOptions

Returns

VertexLayout


createFrameBuffer()

abstract createFrameBuffer(colorAttachments, depthAttachment, options?): FrameBuffer

Defined in: libs/device/src/device.ts:415

Parameters

colorAttachments

BaseTexture<unknown>[]

depthAttachment

BaseTexture<unknown>

options?

FrameBufferOptions

Returns

FrameBuffer


setViewport()

abstract setViewport(vp): void

Defined in: libs/device/src/device.ts:421

Parameters

vp

Immutable<number[] | DeviceViewport>

Returns

void


getViewport()

abstract getViewport(): Immutable<DeviceViewport>

Defined in: libs/device/src/device.ts:422

Returns

Immutable<DeviceViewport>


setScissor()

abstract setScissor(scissor): void

Defined in: libs/device/src/device.ts:423

Parameters

scissor

Immutable<number[] | DeviceViewport>

Returns

void


getScissor()

abstract getScissor(): Immutable<DeviceViewport>

Defined in: libs/device/src/device.ts:424

Returns

Immutable<DeviceViewport>


setProgram()

abstract setProgram(program): void

Defined in: libs/device/src/device.ts:425

Parameters

program

GPUProgram<unknown>

Returns

void


getProgram()

abstract getProgram(): GPUProgram<unknown>

Defined in: libs/device/src/device.ts:426

Returns

GPUProgram<unknown>


setVertexLayout()

abstract setVertexLayout(vertexData): void

Defined in: libs/device/src/device.ts:427

Parameters

vertexData

VertexLayout<unknown>

Returns

void


getVertexLayout()

abstract getVertexLayout(): VertexLayout<unknown>

Defined in: libs/device/src/device.ts:428

Returns

VertexLayout<unknown>


setRenderStates()

abstract setRenderStates(renderStates): void

Defined in: libs/device/src/device.ts:429

Parameters

renderStates

RenderStateSet

Returns

void


getRenderStates()

abstract getRenderStates(): RenderStateSet

Defined in: libs/device/src/device.ts:430

Returns

RenderStateSet


getFramebuffer()

abstract getFramebuffer(): FrameBuffer<unknown>

Defined in: libs/device/src/device.ts:431

Returns

FrameBuffer<unknown>


setBindGroup()

abstract setBindGroup(index, bindGroup, dynamicOffsets?): void

Defined in: libs/device/src/device.ts:432

Parameters

index

number

bindGroup

BindGroup

dynamicOffsets?

Iterable<number>

Returns

void


getBindGroup()

abstract getBindGroup(index): [BindGroup, Iterable<number, any, any>]

Defined in: libs/device/src/device.ts:437

Parameters

index

number

Returns

[BindGroup, Iterable<number, any, any>]


flush()

abstract flush(): void

Defined in: libs/device/src/device.ts:438

Returns

void


nextFrame()

abstract nextFrame(callback): number

Defined in: libs/device/src/device.ts:439

Parameters

callback

() => void

Returns

number


cancelNextFrame()

abstract cancelNextFrame(handle): void

Defined in: libs/device/src/device.ts:440

Parameters

handle

number

Returns

void


readPixels()

abstract readPixels(index, x, y, w, h, buffer): Promise<void>

Defined in: libs/device/src/device.ts:442

Parameters

index

number

x

number

y

number

w

number

h

number

buffer

TypedArray

Returns

Promise<void>


readPixelsToBuffer()

abstract readPixelsToBuffer(index, x, y, w, h, buffer): void

Defined in: libs/device/src/device.ts:450

Parameters

index

number

x

number

y

number

w

number

h

number

buffer

GPUDataBuffer

Returns

void


beginCapture()

abstract beginCapture(): void

Defined in: libs/device/src/device.ts:458

Returns

void


endCapture()

abstract endCapture(): unknown

Defined in: libs/device/src/device.ts:459

Returns

unknown


looseContext()

abstract looseContext(): void

Defined in: libs/device/src/device.ts:460

Returns

void


restoreContext()

abstract restoreContext(): void

Defined in: libs/device/src/device.ts:461

Returns

void


_executeRenderBundle()

abstract protected _executeRenderBundle(renderBundle): number

Defined in: libs/device/src/device.ts:462

Parameters

renderBundle

unknown

Returns

number


_draw()

abstract protected _draw(primitiveType, first, count): void

Defined in: libs/device/src/device.ts:463

Parameters

primitiveType

PrimitiveType

first

number

count

number

Returns

void


_drawInstanced()

abstract protected _drawInstanced(primitiveType, first, count, numInstances): void

Defined in: libs/device/src/device.ts:464

Parameters

primitiveType

PrimitiveType

first

number

count

number

numInstances

number

Returns

void


_drawIndirect()

abstract protected _drawIndirect(primitiveType, indirectBuffer, indirectOffset): void

Defined in: libs/device/src/device.ts:470

Parameters

primitiveType

PrimitiveType

indirectBuffer

GPUDataBuffer

indirectOffset

number

Returns

void


_drawIndexedIndirect()

abstract protected _drawIndexedIndirect(primitiveType, indirectBuffer, indirectOffset): void

Defined in: libs/device/src/device.ts:475

Parameters

primitiveType

PrimitiveType

indirectBuffer

GPUDataBuffer

indirectOffset

number

Returns

void


_compute()

abstract protected _compute(workgroupCountX, workgroupCountY, workgroupCountZ): void

Defined in: libs/device/src/device.ts:480

Parameters

workgroupCountX

number

workgroupCountY

number

workgroupCountZ

number

Returns

void


setFixedFrameTime()

setFixedFrameTime(ms): void

Defined in: libs/device/src/device.ts:512

Parameters

ms

number

Returns

void


poolExists()

poolExists(key): boolean

Defined in: libs/device/src/device.ts:529

Parameters

key

string | symbol

Returns

boolean


getPool()

getPool(key): Pool

Defined in: libs/device/src/device.ts:532

Parameters

key

string | symbol

Returns

Pool


setFont()

setFont(fontName): void

Defined in: libs/device/src/device.ts:540

Parameters

fontName

string

Returns

void


setTextRenderStates()

setTextRenderStates(renderStates): void

Defined in: libs/device/src/device.ts:543

Parameters

renderStates

RenderStateSet

Returns

void


drawText()

Call Signature

drawText(text, x, y, color): void

Defined in: libs/device/src/device.ts:546

Parameters
text

string

x

number

y

number

color

string | Vector4 | Vector3

Returns

void

Call Signature

drawText(text, rect, color, options?): void

Defined in: libs/device/src/device.ts:547

Parameters
text

string

rect

Immutable<Rect>

color

string | Vector4 | Vector3

options?

DrawTextLayoutOptions

Returns

void


setFramebuffer()

Call Signature

setFramebuffer(rt): void

Defined in: libs/device/src/device.ts:578

Parameters
rt

FrameBuffer<unknown>

Returns

void

Call Signature

setFramebuffer(color, depth?, sampleCount?): void

Defined in: libs/device/src/device.ts:579

Parameters
color

BaseTexture<unknown>[]

depth?

BaseTexture

sampleCount?

number

Returns

void


disposeObject()

disposeObject(obj, remove?): void

Defined in: libs/device/src/device.ts:602

Parameters

obj

GPUObject

remove?

boolean = true

Returns

void


restoreObject()

restoreObject(obj): void

Defined in: libs/device/src/device.ts:614

Parameters

obj

GPUObject

Returns

void


enableGPUTimeRecording()

enableGPUTimeRecording(enable): void

Defined in: libs/device/src/device.ts:620

Parameters

enable

boolean

Returns

void


beginTimestampQuery()

beginTimestampQuery(_label?, _options?): number

Defined in: libs/device/src/device.ts:628

Parameters

_label?

string

_options?

TimestampQueryOptions

Returns

number


endTimestampQuery()

endTimestampQuery(_id): void

Defined in: libs/device/src/device.ts:631

Parameters

_id

number

Returns

void


pollTimestampQuery()

pollTimestampQuery(query): TimestampQueryResult

Defined in: libs/device/src/device.ts:634

Parameters

query

TimestampQueryHandle

Returns

TimestampQueryResult


resolveTimestampQuery()

resolveTimestampQuery(query): Promise<TimestampQueryResult>

Defined in: libs/device/src/device.ts:637

Parameters

query

TimestampQueryHandle

Returns

Promise<TimestampQueryResult>


collectTimestampQueries()

collectTimestampQueries(_filter?): TimestampQueryResult[]

Defined in: libs/device/src/device.ts:640

Parameters

_filter?

TimestampQueryFilter

Returns

TimestampQueryResult[]


beginFrame()

beginFrame(): boolean

Defined in: libs/device/src/device.ts:643

Returns

boolean


endFrame()

endFrame(): void

Defined in: libs/device/src/device.ts:656

Returns

void


inFrame()

inFrame(): boolean

Defined in: libs/device/src/device.ts:666

Returns

boolean


getVertexAttribFormat()

getVertexAttribFormat(semantic, dataType, componentCount): VertexAttribFormat

Defined in: libs/device/src/device.ts:669

Parameters

semantic

VertexSemantic

dataType

DataType

componentCount

number

Returns

VertexAttribFormat


createInterleavedVertexBuffer()

createInterleavedVertexBuffer(attribFormats, data, options?): StructuredBuffer<unknown>

Defined in: libs/device/src/device.ts:672

Parameters

attribFormats

VertexAttribFormat[]

data

TypedArray

options?

BufferCreationOptions

Returns

StructuredBuffer<unknown>


createVertexBuffer()

createVertexBuffer(attribFormat, data, options?): StructuredBuffer<unknown>

Defined in: libs/device/src/device.ts:708

Parameters

attribFormat

VertexAttribFormat

data

TypedArray

options?

BufferCreationOptions

Returns

StructuredBuffer<unknown>


draw()

draw(primitiveType, first, count): void

Defined in: libs/device/src/device.ts:737

Parameters

primitiveType

PrimitiveType

first

number

count

number

Returns

void


drawInstanced()

drawInstanced(primitiveType, first, count, numInstances): void

Defined in: libs/device/src/device.ts:741

Parameters

primitiveType

PrimitiveType

first

number

count

number

numInstances

number

Returns

void


drawIndirect()

drawIndirect(primitiveType, indirectBuffer, indirectOffset?): void

Defined in: libs/device/src/device.ts:745

Parameters

primitiveType

PrimitiveType

indirectBuffer

GPUDataBuffer

indirectOffset?

number = 0

Returns

void


drawIndexedIndirect()

drawIndexedIndirect(primitiveType, indirectBuffer, indirectOffset?): void

Defined in: libs/device/src/device.ts:749

Parameters

primitiveType

PrimitiveType

indirectBuffer

GPUDataBuffer

indirectOffset?

number = 0

Returns

void


executeRenderBundle()

executeRenderBundle(renderBundle): void

Defined in: libs/device/src/device.ts:753

Parameters

renderBundle

unknown

Returns

void


compute()

compute(workgroupCountX, workgroupCountY, workgroupCountZ): void

Defined in: libs/device/src/device.ts:756

Parameters

workgroupCountX

number

workgroupCountY

number

workgroupCountZ

number

Returns

void


runNextFrame()

runNextFrame(f): void

Defined in: libs/device/src/device.ts:760

Parameters

f

() => void

Returns

void


runNextFrameAsync()

runNextFrameAsync(f): Promise<void>

Defined in: libs/device/src/device.ts:765

Parameters

f

() => void | Promise<void>

Returns

Promise<void>


exitLoop()

exitLoop(): void

Defined in: libs/device/src/device.ts:781

Returns

void


runLoop()

runLoop(func): void

Defined in: libs/device/src/device.ts:791

Parameters

func

(device) => void

Returns

void


pushDeviceStates()

pushDeviceStates(): void

Defined in: libs/device/src/device.ts:818

Returns

void


popDeviceStates()

popDeviceStates(): void

Defined in: libs/device/src/device.ts:830

Returns

void


getGPUObjects()

getGPUObjects(): GPUObjectList

Defined in: libs/device/src/device.ts:848

Returns

GPUObjectList


getGPUObjectById()

getGPUObjectById(uid): BaseTexture<unknown> | TextureSampler<unknown> | GPUDataBuffer<unknown> | GPUProgram<unknown> | FrameBuffer<unknown> | VertexLayout<unknown>

Defined in: libs/device/src/device.ts:851

Parameters

uid

number

Returns

BaseTexture<unknown> | TextureSampler<unknown> | GPUDataBuffer<unknown> | GPUProgram<unknown> | FrameBuffer<unknown> | VertexLayout<unknown>


screenXToDevice()

screenXToDevice(val): number

Defined in: libs/device/src/device.ts:868

Parameters

val

number

Returns

number


deviceXToScreen()

deviceXToScreen(val): number

Defined in: libs/device/src/device.ts:871

Parameters

val

number

Returns

number


screenYToDevice()

screenYToDevice(val): number

Defined in: libs/device/src/device.ts:874

Parameters

val

number

Returns

number


deviceYToScreen()

deviceYToScreen(val): number

Defined in: libs/device/src/device.ts:877

Parameters

val

number

Returns

number


buildRenderProgram()

buildRenderProgram(options): GPUProgram<unknown>

Defined in: libs/device/src/device.ts:880

Parameters

options

PBRenderOptions

Returns

GPUProgram<unknown>


buildComputeProgram()

buildComputeProgram(options): GPUProgram<unknown>

Defined in: libs/device/src/device.ts:883

Parameters

options

PBComputeOptions

Returns

GPUProgram<unknown>


getGPUObjectStack()

getGPUObjectStack(obj): string

Defined in: libs/device/src/device.ts:886

Parameters

obj

GPUObject

Returns

string


addGPUObject()

addGPUObject(obj): void

Defined in: libs/device/src/device.ts:889

Parameters

obj

GPUObject

Returns

void


removeGPUObject()

removeGPUObject(obj): void

Defined in: libs/device/src/device.ts:897

Parameters

obj

GPUObject

Returns

void


updateVideoMemoryCost()

updateVideoMemoryCost(delta): void

Defined in: libs/device/src/device.ts:908

Parameters

delta

number

Returns

void


onBeginFrame()

abstract protected onBeginFrame(): boolean

Defined in: libs/device/src/device.ts:911

Returns

boolean


onEndFrame()

abstract protected onEndFrame(): void

Defined in: libs/device/src/device.ts:912

Returns

void


_setFramebuffer()

abstract protected _setFramebuffer(fb): void

Defined in: libs/device/src/device.ts:913

Parameters

fb

FrameBuffer<unknown>

Returns

void


_handleResize()

abstract protected _handleResize(cssWidth, cssHeight, deviceWidth, deviceHeight): void

Defined in: libs/device/src/device.ts:914

Parameters

cssWidth

number

cssHeight

number

deviceWidth

number

deviceHeight

number

Returns

void


initResizer()

protected initResizer(): Promise<void>

Defined in: libs/device/src/device.ts:920

Returns

Promise<void>


invalidateAll()

protected invalidateAll(): void

Defined in: libs/device/src/device.ts:1010

Returns

void


reloadAll()

protected reloadAll(): void

Defined in: libs/device/src/device.ts:1031

Returns

void


parseTextureOptions()

protected parseTextureOptions(options?): number

Defined in: libs/device/src/device.ts:1048

Parameters

options?

TextureCreationOptions

Returns

number


parseBufferOptions()

protected parseBufferOptions(options?, defaultUsage?): number

Defined in: libs/device/src/device.ts:1057

Parameters

options?

BufferCreationOptions

defaultUsage?

BufferUsage

Returns

number

Released under the MIT License.