GLRenderPassEncoder
Ploy3D / GLRenderPassEncoder
Class: GLRenderPassEncoder
着色器通道命令编码器。
Table of contents
Constructors
Accessors
Methods
- _clearDepthBuffer
- drawIndexed
- drawVoid
- end
- setBindGroup
- setIndexBuffer
- setPipeline
- setStencilReference
- setTextures
- setVertexBuffer
- setVertexBuffersCache
Constructors
constructor
• new GLRenderPassEncoder(gl
)
构造函数。
Parameters
Name | Type |
---|---|
gl | WebGL2RenderingContext |
Accessors
_vertexLayout
• set
_vertexLayout(vertexLayout
): void
当前顶点属性布局。
Parameters
Name | Type |
---|---|
vertexLayout | GLVertexBufferLayout [] |
Returns
void
Methods
_clearDepthBuffer
▸ _clearDepthBuffer(value
): void
【扩展】用于在GIZMO绘制前清空深度缓存内容。
Parameters
Name | Type |
---|---|
value | number |
Returns
void
drawIndexed
▸ drawIndexed(indexCount
, instanceCount?
): void
逐索引绘制网格图元。
Parameters
Name | Type |
---|---|
indexCount | number |
instanceCount? | number |
Returns
void
drawVoid
▸ drawVoid(count
): void
不绑定网格直接执行着色器。
Parameters
Name | Type |
---|---|
count | number |
Returns
void
end
▸ end(): void
结束渲染通道命令编码。
Returns
void
setBindGroup
▸ setBindGroup(index
, bindGroup
, dynamicOffsets?
): void
设置资源组(GL的实现中,资源组仅绑定缓存,贴图和采样器在着色器管线中绑定)。
Parameters
Name | Type |
---|---|
index | number |
bindGroup | GLBindGroup |
dynamicOffsets? | number [] |
Returns
void
setIndexBuffer
▸ setIndexBuffer(buffer
, indexFormat
, offset
, size
): void
设置索引缓存。
Parameters
Name | Type |
---|---|
buffer | GLBuffer |
indexFormat | "uint16" | "uint32" |
offset | number |
size | number |
Returns
void
setPipeline
▸ setPipeline(pipeline
, subMesh
): boolean
设置着色器管线。
Parameters
Name | Type |
---|---|
pipeline | GLRenderPipeline |
subMesh | number |
Returns
boolean
setStencilReference
▸ setStencilReference(reference
): void
设置模板测试参考值。
Parameters
Name | Type |
---|---|
reference | number |
Returns
void
setTextures
▸ setTextures(samplers
, blockPtr?
): void
设置着色器管线贴图绑定(WebGPU实现在setPipeline中调用)。
Parameters
Name | Type |
---|---|
samplers | [number , number , string , number?][] |
blockPtr? | io_ptr |
Returns
void
setVertexBuffer
▸ setVertexBuffer(slot
, buffer
, offset
, size
): void
设置顶点缓存。
Parameters
Name | Type |
---|---|
slot | number |
buffer | GLBuffer |
offset | number |
size | number |
Returns
void
setVertexBuffersCache
▸ setVertexBuffersCache(cacheID
, layout
, count
, list
, passEncoder
): number
批量应用应用顶点缓存并缓存命令。
Parameters
Name | Type |
---|---|
cacheID | number |
layout | number |
count | number |
list | Mesh_vertex_buffer [] |
passEncoder | GLRenderPassEncoder |
Returns
number