跳到主要内容

GLDevice

Ploy3D / GLDevice

Class: GLDevice

GL设备。

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new GLDevice(gl)

构造函数。

Parameters

NameType
glWebGL2RenderingContext

Properties

queue

queue: Object

任务队列。

Type declaration

NameType
copyExternalImageToTexture(source: { source: ImageBitmap | HTMLCanvasElement | HTMLVideoElement }, destination: { mipLevel: number ; origin: number[] ; texture: GLTexture }, copySize: number[]) => void
generateMipmap(texture: GLTexture) => void
onSubmittedWorkDone() => Promise<void>
submit(commandBuffers: GLCommandBuffer[]) => void
writeBuffer(buffer: GLBuffer, bufferOffset: number, data: ArrayBuffer, dataOffset?: number, size?: number) => void
writeTexture(destination: { mipLevel: number ; origin: number[] ; texture: GLTexture }, data: ArrayBuffer, dataLayout: { bytesPerRow: number ; offset: number ; rowsPerImage: number }, size: number[]) => void

Methods

createBindGroup

createBindGroup(desc): GLBindGroup

创建资源组绑定对象。

Parameters

NameType
descGLBindGroupDescriptor

Returns

GLBindGroup


createBindGroupLayout

createBindGroupLayout(desc): GLBindGroupLayout

创建资源组布局。

Parameters

NameType
descGLBindGroupLayoutDescriptor

Returns

GLBindGroupLayout


createBuffer

createBuffer(desc): GLBuffer

创建缓存对象。

Parameters

NameType
descGLBufferDescriptor

Returns

GLBuffer


createCommandEncoder

createCommandEncoder(): GLCommandEncoder

创建帧命令编码器。

Returns

GLCommandEncoder


createPipelineLayout

createPipelineLayout(desc): GLPipelineLayout

创建着色器管线布局。

Parameters

NameType
descGLPipelineLayoutDescriptor

Returns

GLPipelineLayout


createRenderPipeline

createRenderPipeline(desc): GLRenderPipeline

创建着色器管线。

Parameters

NameType
descGLRenderPipelineDescriptor

Returns

GLRenderPipeline


createSampler

createSampler(desc): GLSampler

创建贴图采样器。

Parameters

NameType
descGLSamplerDescriptor

Returns

GLSampler


createShaderModule

createShaderModule(desc): GLShaderModule

创建着色器模块。

Parameters

NameType
descObject
desc.codestring
desc.typenumber

Returns

GLShaderModule


createTexture

createTexture(desc): GLTexture

创建贴图对象。

Parameters

NameType
descGLTextureDescriptor

Returns

GLTexture


depthMask

depthMask(confirm): void

设置深度缓存写入状态(在绘制过程中我们可能需要修改该状态)。

Parameters

NameTypeDescription
confirmboolean是否可写入。

Returns

void


destroy

destroy(): void

销毁GL设备。

Returns

void


getContext

getContext(): GLCanvasContext

获取画布上下文。

Returns

GLCanvasContext


readPixels

readPixels(view, x, y, width, height): ArrayBufferView

读取渲染贴图像素。

Parameters

NameType
viewGLTextureView
xnumber
ynumber
widthnumber
heightnumber

Returns

ArrayBufferView