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:257

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


_maxFramesInFlight ​

protected _maxFramesInFlight: number

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


_programBuilder ​

protected _programBuilder: ProgramBuilder

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


_poolMap ​

protected _poolMap: Map<string | symbol, Pool>

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


_defaultPoolKey ​

protected _defaultPoolKey: symbol

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


_temporalFramebuffer ​

protected _temporalFramebuffer: boolean

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


_vSync ​

protected _vSync: boolean

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

Accessors ​

clipSpaceZeroToOne ​

Get Signature ​

get abstract clipSpaceZeroToOne(): boolean

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

Returns ​

boolean


backend ​

Get Signature ​

get backend(): DeviceBackend

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

Returns ​

DeviceBackend


videoMemoryUsage ​

Get Signature ​

get videoMemoryUsage(): number

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

Returns ​

number


frameInfo ​

Get Signature ​

get frameInfo(): FrameInfo

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

Returns ​

FrameInfo


maxFramesInFlight ​

Get Signature ​

get maxFramesInFlight(): number

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

Returns ​

number

Set Signature ​

set maxFramesInFlight(value): void

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

Parameters ​
value ​

number

Returns ​

void


isRendering ​

Get Signature ​

get isRendering(): boolean

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

Returns ​

boolean


canvas ​

Get Signature ​

get canvas(): HTMLCanvasElement

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

Returns ​

HTMLCanvasElement


type ​

Get Signature ​

get type(): string

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

Returns ​

string


vSync ​

Get Signature ​

get vSync(): boolean

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

Returns ​

boolean

Set Signature ​

set vSync(val): void

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

Parameters ​
val ​

boolean

Returns ​

void


fixedFrameTime ​

Get Signature ​

get fixedFrameTime(): number

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

Returns ​

number


pool ​

Get Signature ​

get pool(): Pool

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

Returns ​

Pool


runLoopFunction ​

Get Signature ​

get runLoopFunction(): (device) => void

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

Returns ​

(device) => void


programBuilder ​

Get Signature ​

get programBuilder(): ProgramBuilder

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

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:322

Returns ​

number


getScaleY() ​

getScaleY(): number

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

Returns ​

number


getAdapterInfo() ​

abstract getAdapterInfo(): any

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

Returns ​

any


getFrameBufferSampleCount() ​

abstract getFrameBufferSampleCount(): number

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

Returns ​

number


isContextLost() ​

abstract isContextLost(): boolean

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

Returns ​

boolean


getDrawingBufferWidth() ​

abstract getDrawingBufferWidth(): number

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

Returns ​

number


getDrawingBufferHeight() ​

abstract getDrawingBufferHeight(): number

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

Returns ​

number


getBackBufferWidth() ​

abstract getBackBufferWidth(): number

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

Returns ​

number


getBackBufferHeight() ​

abstract getBackBufferHeight(): number

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

Returns ​

number


getDeviceCaps() ​

abstract getDeviceCaps(): Immutable<DeviceCaps>

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

Returns ​

Immutable<DeviceCaps>


initContext() ​

abstract initContext(): Promise<void>

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

Returns ​

Promise<void>


clearFrameBuffer() ​

abstract clearFrameBuffer(clearColor, clearDepth, clearStencil): void

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

Parameters ​

clearColor ​

Vector4 | readonly Vector4[]

clearDepth ​

number

clearStencil ​

number

Returns ​

void


createGPUTimer() ​

abstract createGPUTimer(): ITimer

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

Returns ​

ITimer


createRenderStateSet() ​

abstract createRenderStateSet(): RenderStateSet

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

Returns ​

RenderStateSet


createBlendingState() ​

abstract createBlendingState(): BlendingState

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

Returns ​

BlendingState


createColorState() ​

abstract createColorState(): ColorState

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

Returns ​

ColorState


createRasterizerState() ​

abstract createRasterizerState(): RasterizerState

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

Returns ​

RasterizerState


createDepthState() ​

abstract createDepthState(): DepthState

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

Returns ​

DepthState


createStencilState() ​

abstract createStencilState(): StencilState

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

Returns ​

StencilState


createSampler() ​

abstract createSampler(options): TextureSampler

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

Parameters ​

options ​

SamplerOptions

Returns ​

TextureSampler


createTextureFromMipmapData() ​

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

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

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:356

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:362

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:367

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:374

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:379

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:386

Parameters ​

format ​

TextureFormat

size ​

number

options? ​

TextureCreationOptions

Returns ​

TextureCube<unknown>


createTextureVideo() ​

abstract createTextureVideo(el, samplerOptions?): TextureVideo

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

Parameters ​

el ​

HTMLVideoElement

samplerOptions? ​

SamplerOptions

Returns ​

TextureVideo


reverseVertexWindingOrder() ​

abstract reverseVertexWindingOrder(reverse): void

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

Parameters ​

reverse ​

boolean

Returns ​

void


isWindingOrderReversed() ​

abstract isWindingOrderReversed(): boolean

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

Returns ​

boolean


copyTexture2D() ​

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

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

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:395

Parameters ​

src ​

FrameBuffer

index ​

number

dst ​

Texture2D

level ​

number

Returns ​

void


createGPUProgram() ​

abstract createGPUProgram(params): GPUProgram

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

Parameters ​

params ​

GPUProgramConstructParams

Returns ​

GPUProgram


createBindGroup() ​

abstract createBindGroup(layout): BindGroup

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

Parameters ​

layout ​

Immutable<BindGroupLayout>

Returns ​

BindGroup


createBuffer() ​

abstract createBuffer(sizeInBytes, options): GPUDataBuffer

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

Parameters ​

sizeInBytes ​

number

options ​

BufferCreationOptions

Returns ​

GPUDataBuffer


copyBuffer() ​

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

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

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:407

Parameters ​

data ​

Uint16Array<ArrayBuffer> | Uint32Array<ArrayBuffer>

options? ​

BufferCreationOptions

Returns ​

IndexBuffer


createStructuredBuffer() ​

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

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

Parameters ​

structureType ​

PBStructTypeInfo

options ​

BufferCreationOptions

data? ​

TypedArray

Returns ​

StructuredBuffer


createVertexLayout() ​

abstract createVertexLayout(options): VertexLayout

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

Parameters ​

options ​

VertexLayoutOptions

Returns ​

VertexLayout


createFrameBuffer() ​

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

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

Parameters ​

colorAttachments ​

BaseTexture<unknown>[]

depthAttachment ​

BaseTexture<unknown>

options? ​

FrameBufferOptions

Returns ​

FrameBuffer


setViewport() ​

abstract setViewport(vp): void

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

Parameters ​

vp ​

Immutable<number[] | DeviceViewport>

Returns ​

void


getViewport() ​

abstract getViewport(): Immutable<DeviceViewport>

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

Returns ​

Immutable<DeviceViewport>


setScissor() ​

abstract setScissor(scissor): void

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

Parameters ​

scissor ​

Immutable<number[] | DeviceViewport>

Returns ​

void


getScissor() ​

abstract getScissor(): Immutable<DeviceViewport>

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

Returns ​

Immutable<DeviceViewport>


setProgram() ​

abstract setProgram(program): void

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

Parameters ​

program ​

GPUProgram<unknown>

Returns ​

void


getProgram() ​

abstract getProgram(): GPUProgram<unknown>

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

Returns ​

GPUProgram<unknown>


setVertexLayout() ​

abstract setVertexLayout(vertexData): void

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

Parameters ​

vertexData ​

VertexLayout<unknown>

Returns ​

void


getVertexLayout() ​

abstract getVertexLayout(): VertexLayout<unknown>

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

Returns ​

VertexLayout<unknown>


setRenderStates() ​

abstract setRenderStates(renderStates): void

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

Parameters ​

renderStates ​

RenderStateSet

Returns ​

void


getRenderStates() ​

abstract getRenderStates(): RenderStateSet

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

Returns ​

RenderStateSet


getFramebuffer() ​

abstract getFramebuffer(): FrameBuffer<unknown>

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

Returns ​

FrameBuffer<unknown>


setBindGroup() ​

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

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

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:439

Parameters ​

index ​

number

Returns ​

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


flush() ​

abstract flush(): void

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

Returns ​

void


nextFrame() ​

abstract nextFrame(callback): number

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

Parameters ​

callback ​

() => void

Returns ​

number


cancelNextFrame() ​

abstract cancelNextFrame(handle): void

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

Parameters ​

handle ​

number

Returns ​

void


readPixels() ​

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

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

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:452

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:460

Returns ​

void


endCapture() ​

abstract endCapture(): unknown

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

Returns ​

unknown


looseContext() ​

abstract looseContext(): void

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

Returns ​

void


restoreContext() ​

abstract restoreContext(): void

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

Returns ​

void


_executeRenderBundle() ​

abstract protected _executeRenderBundle(renderBundle): number

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

Parameters ​

renderBundle ​

unknown

Returns ​

number


_draw() ​

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

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

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:466

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:472

Parameters ​

primitiveType ​

PrimitiveType

indirectBuffer ​

GPUDataBuffer

indirectOffset ​

number

Returns ​

void


_drawIndexedIndirect() ​

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

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

Parameters ​

primitiveType ​

PrimitiveType

indirectBuffer ​

GPUDataBuffer

indirectOffset ​

number

Returns ​

void


_compute() ​

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

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

Parameters ​

workgroupCountX ​

number

workgroupCountY ​

number

workgroupCountZ ​

number

Returns ​

void


setFixedFrameTime() ​

setFixedFrameTime(ms): void

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

Parameters ​

ms ​

number

Returns ​

void


poolExists() ​

poolExists(key): boolean

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

Parameters ​

key ​

string | symbol

Returns ​

boolean


getPool() ​

getPool(key): Pool

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

Parameters ​

key ​

string | symbol

Returns ​

Pool


setFont() ​

setFont(fontName): void

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

Parameters ​

fontName ​

string

Returns ​

void


setTextRenderStates() ​

setTextRenderStates(renderStates): void

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

Parameters ​

renderStates ​

RenderStateSet

Returns ​

void


drawText() ​

Call Signature ​

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

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

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:555

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:586

Parameters ​
rt ​

FrameBuffer<unknown>

Returns ​

void

Call Signature ​

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

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

Parameters ​
color ​

BaseTexture<unknown>[]

depth? ​

BaseTexture

sampleCount? ​

number

Returns ​

void


disposeObject() ​

disposeObject(obj, remove?): void

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

Parameters ​

obj ​

GPUObject

remove? ​

boolean = true

Returns ​

void


restoreObject() ​

restoreObject(obj): void

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

Parameters ​

obj ​

GPUObject

Returns ​

void


enableGPUTimeRecording() ​

enableGPUTimeRecording(enable): void

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

Parameters ​

enable ​

boolean

Returns ​

void


beginTimestampQuery() ​

beginTimestampQuery(_label?, _options?): number

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

Parameters ​

_label? ​

string

_options? ​

TimestampQueryOptions

Returns ​

number


endTimestampQuery() ​

endTimestampQuery(_id): void

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

Parameters ​

_id ​

number

Returns ​

void


pollTimestampQuery() ​

pollTimestampQuery(query): TimestampQueryResult

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

Parameters ​

query ​

TimestampQueryHandle

Returns ​

TimestampQueryResult


resolveTimestampQuery() ​

resolveTimestampQuery(query): Promise<TimestampQueryResult>

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

Parameters ​

query ​

TimestampQueryHandle

Returns ​

Promise<TimestampQueryResult>


collectTimestampQueries() ​

collectTimestampQueries(_filter?): TimestampQueryResult[]

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

Parameters ​

_filter? ​

TimestampQueryFilter

Returns ​

TimestampQueryResult[]


beginFrame() ​

beginFrame(): boolean

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

Returns ​

boolean


endFrame() ​

endFrame(): void

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

Returns ​

void


inFrame() ​

inFrame(): boolean

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

Returns ​

boolean


getVertexAttribFormat() ​

getVertexAttribFormat(semantic, dataType, componentCount): VertexAttribFormat

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

Parameters ​

semantic ​

VertexSemantic

dataType ​

DataType

componentCount ​

number

Returns ​

VertexAttribFormat


createInterleavedVertexBuffer() ​

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

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

Parameters ​

attribFormats ​

VertexAttribFormat[]

data ​

TypedArray

options? ​

BufferCreationOptions

Returns ​

StructuredBuffer<unknown>


createVertexBuffer() ​

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

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

Parameters ​

attribFormat ​

VertexAttribFormat

data ​

TypedArray

options? ​

BufferCreationOptions

Returns ​

StructuredBuffer<unknown>


draw() ​

draw(primitiveType, first, count): void

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

Parameters ​

primitiveType ​

PrimitiveType

first ​

number

count ​

number

Returns ​

void


drawInstanced() ​

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

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

Parameters ​

primitiveType ​

PrimitiveType

first ​

number

count ​

number

numInstances ​

number

Returns ​

void


drawIndirect() ​

drawIndirect(primitiveType, indirectBuffer, indirectOffset?): void

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

Parameters ​

primitiveType ​

PrimitiveType

indirectBuffer ​

GPUDataBuffer

indirectOffset? ​

number = 0

Returns ​

void


drawIndexedIndirect() ​

drawIndexedIndirect(primitiveType, indirectBuffer, indirectOffset?): void

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

Parameters ​

primitiveType ​

PrimitiveType

indirectBuffer ​

GPUDataBuffer

indirectOffset? ​

number = 0

Returns ​

void


executeRenderBundle() ​

executeRenderBundle(renderBundle): void

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

Parameters ​

renderBundle ​

unknown

Returns ​

void


compute() ​

compute(workgroupCountX, workgroupCountY, workgroupCountZ): void

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

Parameters ​

workgroupCountX ​

number

workgroupCountY ​

number

workgroupCountZ ​

number

Returns ​

void


runNextFrame() ​

runNextFrame(f): void

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

Parameters ​

f ​

() => void

Returns ​

void


runNextFrameAsync() ​

runNextFrameAsync(f): Promise<void>

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

Parameters ​

f ​

() => void | Promise<void>

Returns ​

Promise<void>


exitLoop() ​

exitLoop(): void

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

Returns ​

void


runLoop() ​

runLoop(func): void

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

Parameters ​

func ​

(device) => void

Returns ​

void


pushDeviceStates() ​

pushDeviceStates(): void

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

Returns ​

void


popDeviceStates() ​

popDeviceStates(): void

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

Returns ​

void


getGPUObjects() ​

getGPUObjects(): GPUObjectList

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

Returns ​

GPUObjectList


getGPUObjectById() ​

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

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

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:890

Parameters ​

val ​

number

Returns ​

number


deviceXToScreen() ​

deviceXToScreen(val): number

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

Parameters ​

val ​

number

Returns ​

number


screenYToDevice() ​

screenYToDevice(val): number

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

Parameters ​

val ​

number

Returns ​

number


deviceYToScreen() ​

deviceYToScreen(val): number

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

Parameters ​

val ​

number

Returns ​

number


buildRenderProgram() ​

buildRenderProgram(options): GPUProgram<unknown>

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

Parameters ​

options ​

PBRenderOptions

Returns ​

GPUProgram<unknown>


buildComputeProgram() ​

buildComputeProgram(options): GPUProgram<unknown>

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

Parameters ​

options ​

PBComputeOptions

Returns ​

GPUProgram<unknown>


getGPUObjectStack() ​

getGPUObjectStack(obj): string

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

Parameters ​

obj ​

GPUObject

Returns ​

string


addGPUObject() ​

addGPUObject(obj): void

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

Parameters ​

obj ​

GPUObject

Returns ​

void


removeGPUObject() ​

removeGPUObject(obj): void

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

Parameters ​

obj ​

GPUObject

Returns ​

void


updateVideoMemoryCost() ​

updateVideoMemoryCost(delta): void

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

Parameters ​

delta ​

number

Returns ​

void


onBeginFrame() ​

abstract protected onBeginFrame(): boolean

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

Returns ​

boolean


onEndFrame() ​

abstract protected onEndFrame(): void

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

Returns ​

void


_setFramebuffer() ​

abstract protected _setFramebuffer(fb): void

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

Parameters ​

fb ​

FrameBuffer<unknown>

Returns ​

void


_handleResize() ​

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

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

Parameters ​

cssWidth ​

number

cssHeight ​

number

deviceWidth ​

number

deviceHeight ​

number

Returns ​

void


initResizer() ​

protected initResizer(): Promise<void>

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

Returns ​

Promise<void>


invalidateAll() ​

protected invalidateAll(): void

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

Returns ​

void


reloadAll() ​

protected reloadAll(): void

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

Returns ​

void


parseTextureOptions() ​

protected parseTextureOptions(options?): number

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

Parameters ​

options? ​

TextureCreationOptions

Returns ​

number


parseBufferOptions() ​

protected parseBufferOptions(options?, defaultUsage?): number

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

Parameters ​

options? ​

BufferCreationOptions

defaultUsage? ​

BufferUsage

Returns ​

number

Released under the MIT License.