gpu: implement RenderPassEncoder.pushDebugGroup
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
parent
9c5cd8b006
commit
b24512b6cf
2 changed files with 27 additions and 4 deletions
|
|
@ -979,6 +979,16 @@ const render_pass_encoder_vtable = RenderPassEncoder.VTable{
|
||||||
c.wgpuRenderPassEncoderInsertDebugMarker(@ptrCast(c.WGPURenderPassEncoder, ptr), marker_label);
|
c.wgpuRenderPassEncoderInsertDebugMarker(@ptrCast(c.WGPURenderPassEncoder, ptr), marker_label);
|
||||||
}
|
}
|
||||||
}).insertDebugMarker,
|
}).insertDebugMarker,
|
||||||
|
.popDebugGroup = (struct {
|
||||||
|
pub fn popDebugGroup(ptr: *anyopaque) void {
|
||||||
|
c.wgpuRenderPassEncoderPopDebugGroup(@ptrCast(c.WGPURenderPassEncoder, ptr));
|
||||||
|
}
|
||||||
|
}).popDebugGroup,
|
||||||
|
.pushDebugGroup = (struct {
|
||||||
|
pub fn pushDebugGroup(ptr: *anyopaque, group_label: [*:0]const u8) void {
|
||||||
|
c.wgpuRenderPassEncoderPushDebugGroup(@ptrCast(c.WGPURenderPassEncoder, ptr), group_label);
|
||||||
|
}
|
||||||
|
}).pushDebugGroup,
|
||||||
};
|
};
|
||||||
|
|
||||||
fn wrapRenderBundleEncoder(enc: c.WGPURenderBundleEncoder) RenderBundleEncoder {
|
fn wrapRenderBundleEncoder(enc: c.WGPURenderBundleEncoder) RenderBundleEncoder {
|
||||||
|
|
|
||||||
|
|
@ -32,8 +32,8 @@ pub const VTable = struct {
|
||||||
end: fn (ptr: *anyopaque) void,
|
end: fn (ptr: *anyopaque) void,
|
||||||
executeBundles: fn (ptr: *anyopaque, bundles: []RenderBundle) void,
|
executeBundles: fn (ptr: *anyopaque, bundles: []RenderBundle) void,
|
||||||
insertDebugMarker: fn (ptr: *anyopaque, marker_label: [*:0]const u8) void,
|
insertDebugMarker: fn (ptr: *anyopaque, marker_label: [*:0]const u8) void,
|
||||||
// WGPU_EXPORT void wgpuRenderPassEncoderPopDebugGroup(WGPURenderPassEncoder renderPassEncoder);
|
popDebugGroup: fn (ptr: *anyopaque) void,
|
||||||
// WGPU_EXPORT void wgpuRenderPassEncoderPushDebugGroup(WGPURenderPassEncoder renderPassEncoder, char const * groupLabel);
|
pushDebugGroup: fn (ptr: *anyopaque, group_label: [*:0]const u8) void,
|
||||||
// WGPU_EXPORT void wgpuRenderPassEncoderSetBindGroup(WGPURenderPassEncoder renderPassEncoder, uint32_t groupIndex, WGPUBindGroup group, uint32_t dynamicOffsetCount, uint32_t const * dynamicOffsets);
|
// WGPU_EXPORT void wgpuRenderPassEncoderSetBindGroup(WGPURenderPassEncoder renderPassEncoder, uint32_t groupIndex, WGPUBindGroup group, uint32_t dynamicOffsetCount, uint32_t const * dynamicOffsets);
|
||||||
// WGPU_EXPORT void wgpuRenderPassEncoderSetBlendConstant(WGPURenderPassEncoder renderPassEncoder, WGPUColor const * color);
|
// WGPU_EXPORT void wgpuRenderPassEncoderSetBlendConstant(WGPURenderPassEncoder renderPassEncoder, WGPUColor const * color);
|
||||||
// WGPU_EXPORT void wgpuRenderPassEncoderSetIndexBuffer(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size);
|
// WGPU_EXPORT void wgpuRenderPassEncoderSetIndexBuffer(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size);
|
||||||
|
|
@ -87,8 +87,8 @@ pub inline fn beginOcclusionQuery(pass: RenderPassEncoder, query_index: u32) voi
|
||||||
pass.vtable.beginOcclusionQuery(pass.ptr, query_index);
|
pass.vtable.beginOcclusionQuery(pass.ptr, query_index);
|
||||||
}
|
}
|
||||||
|
|
||||||
pub inline fn endOcclusionQuery(pass: RenderPassEncoder, query_index: u32) void {
|
pub inline fn endOcclusionQuery(pass: RenderPassEncoder) void {
|
||||||
pass.vtable.endOcclusionQuery(pass.ptr, query_index);
|
pass.vtable.endOcclusionQuery(pass.ptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
pub inline fn end(pass: RenderPassEncoder) void {
|
pub inline fn end(pass: RenderPassEncoder) void {
|
||||||
|
|
@ -103,6 +103,14 @@ pub inline fn insertDebugMarker(pass: RenderPassEncoder, marker_label: [*:0]cons
|
||||||
pass.vtable.insertDebugMarker(pass.ptr, marker_label);
|
pass.vtable.insertDebugMarker(pass.ptr, marker_label);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub inline fn popDebugGroup(pass: RenderPassEncoder) void {
|
||||||
|
pass.vtable.popDebugGroup(pass.ptr);
|
||||||
|
}
|
||||||
|
|
||||||
|
pub inline fn pushDebugGroup(pass: RenderPassEncoder, group_label: [*:0]const u8) void {
|
||||||
|
pass.vtable.pushDebugGroup(pass.ptr, group_label);
|
||||||
|
}
|
||||||
|
|
||||||
pub inline fn setLabel(pass: RenderPassEncoder, label: [:0]const u8) void {
|
pub inline fn setLabel(pass: RenderPassEncoder, label: [:0]const u8) void {
|
||||||
pass.vtable.setLabel(pass.ptr, label);
|
pass.vtable.setLabel(pass.ptr, label);
|
||||||
}
|
}
|
||||||
|
|
@ -128,7 +136,12 @@ test {
|
||||||
_ = drawIndexedIndirect;
|
_ = drawIndexedIndirect;
|
||||||
_ = drawIndirect;
|
_ = drawIndirect;
|
||||||
_ = beginOcclusionQuery;
|
_ = beginOcclusionQuery;
|
||||||
|
_ = endOcclusionQuery;
|
||||||
_ = end;
|
_ = end;
|
||||||
|
_ = executeBundles;
|
||||||
|
_ = insertDebugMarker;
|
||||||
|
_ = popDebugGroup;
|
||||||
|
_ = pushDebugGroup;
|
||||||
_ = setLabel;
|
_ = setLabel;
|
||||||
_ = setPipeline;
|
_ = setPipeline;
|
||||||
_ = Descriptor;
|
_ = Descriptor;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue