GLDevice
Ploy3D / GLDevice
Class: GLDevice
GL设备。
Table of contents
Constructors
Properties
Methods
- createBindGroup
- createBindGroupLayout
- createBuffer
- createCommandEncoder
- createPipelineLayout
- createRenderPipeline
- createSampler
- createShaderModule
- createTexture
- depthMask
- destroy
- getContext
- readPixels
Constructors
constructor
• new GLDevice(gl
)
构造函数。
Parameters
Name | Type |
---|---|
gl | WebGL2RenderingContext |
Properties
queue
• queue: Object
任务队列。
Type declaration
Name | Type |
---|---|
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
Name | Type |
---|---|
desc | GLBindGroupDescriptor |
Returns
createBindGroupLayout
▸ createBindGroupLayout(desc
): GLBindGroupLayout
创建资源组布局。
Parameters
Name | Type |
---|---|
desc | GLBindGroupLayoutDescriptor |
Returns
createBuffer
▸ createBuffer(desc
): GLBuffer
创建缓存对象。
Parameters
Name | Type |
---|---|
desc | GLBufferDescriptor |
Returns
createCommandEncoder
▸ createCommandEncoder(): GLCommandEncoder
创建帧命令编码器。
Returns
createPipelineLayout
▸ createPipelineLayout(desc
): GLPipelineLayout
创建着色器管线布局。
Parameters
Name | Type |
---|---|
desc | GLPipelineLayoutDescriptor |
Returns
createRenderPipeline
▸ createRenderPipeline(desc
): GLRenderPipeline
创建着色器管线。
Parameters
Name | Type |
---|---|
desc | GLRenderPipelineDescriptor |
Returns
createSampler
▸ createSampler(desc
): GLSampler
创建贴图采样器。
Parameters
Name | Type |
---|---|
desc | GLSamplerDescriptor |
Returns
createShaderModule
▸ createShaderModule(desc
): GLShaderModule
创建着色器模块。
Parameters
Name | Type |
---|---|
desc | Object |
desc.code | string |
desc.type | number |
Returns
createTexture
▸ createTexture(desc
): GLTexture
创建贴图对象。
Parameters
Name | Type |
---|---|
desc | GLTextureDescriptor |
Returns
depthMask
▸ depthMask(confirm
): void
设置深度缓存写入状态(在绘制过程中我们可能需要修改该状态)。
Parameters
Name | Type | Description |
---|---|---|
confirm | boolean | 是否可写入。 |
Returns
void
destroy
▸ destroy(): void
销毁GL设备。
Returns
void
getContext
▸ getContext(): GLCanvasContext
获取画布上下文。
Returns
readPixels
▸ readPixels(view
, x
, y
, width
, height
): ArrayBufferView
读取渲染贴图像素。
Parameters
Name | Type |
---|---|
view | GLTextureView |
x | number |
y | number |
width | number |
height | number |
Returns
ArrayBufferView