gpu: implement RenderPassEncoder.setScissorRect
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
parent
2c319d628a
commit
67f77d5a8c
2 changed files with 17 additions and 2 deletions
|
|
@ -1032,6 +1032,17 @@ const render_pass_encoder_vtable = RenderPassEncoder.VTable{
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}).setIndexBuffer,
|
}).setIndexBuffer,
|
||||||
|
.setScissorRect = (struct {
|
||||||
|
pub fn setScissorRect(ptr: *anyopaque, x: u32, y: u32, width: u32, height: u32) void {
|
||||||
|
c.wgpuRenderPassEncoderSetScissorRect(
|
||||||
|
@ptrCast(c.WGPURenderPassEncoder, ptr),
|
||||||
|
x,
|
||||||
|
y,
|
||||||
|
width,
|
||||||
|
height,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}).setScissorRect,
|
||||||
};
|
};
|
||||||
|
|
||||||
fn wrapRenderBundleEncoder(enc: c.WGPURenderBundleEncoder) RenderBundleEncoder {
|
fn wrapRenderBundleEncoder(enc: c.WGPURenderBundleEncoder) RenderBundleEncoder {
|
||||||
|
|
|
||||||
|
|
@ -42,8 +42,7 @@ pub const VTable = struct {
|
||||||
setIndexBuffer: fn (ptr: *anyopaque, buffer: Buffer, format: IndexFormat, offset: u64, size: u64) void,
|
setIndexBuffer: fn (ptr: *anyopaque, buffer: Buffer, format: IndexFormat, offset: u64, size: u64) void,
|
||||||
setLabel: fn (ptr: *anyopaque, label: [:0]const u8) void,
|
setLabel: fn (ptr: *anyopaque, label: [:0]const u8) void,
|
||||||
setPipeline: fn (ptr: *anyopaque, pipeline: RenderPipeline) void,
|
setPipeline: fn (ptr: *anyopaque, pipeline: RenderPipeline) void,
|
||||||
// setScissorRect: fn (ptr: *anyopaque, x: u32, y: u32, width: u32, height: u32) void,
|
setScissorRect: fn (ptr: *anyopaque, x: u32, y: u32, width: u32, height: u32) void,
|
||||||
// WGPU_EXPORT void wgpuRenderPassEncoderSetScissorRect(WGPURenderPassEncoder renderPassEncoder, uint32_t x, uint32_t y, uint32_t width, uint32_t height);
|
|
||||||
// setStencilReference: fn (ptr: *anyopaque, reference: u32) void,
|
// setStencilReference: fn (ptr: *anyopaque, reference: u32) void,
|
||||||
// WGPU_EXPORT void wgpuRenderPassEncoderSetStencilReference(WGPURenderPassEncoder renderPassEncoder, uint32_t reference);
|
// WGPU_EXPORT void wgpuRenderPassEncoderSetStencilReference(WGPURenderPassEncoder renderPassEncoder, uint32_t reference);
|
||||||
// setVertexBuffer: fn (ptr: *anyopaque, slot: u32, buffer: Buffer, offset: u64, size: u64) void,
|
// setVertexBuffer: fn (ptr: *anyopaque, slot: u32, buffer: Buffer, offset: u64, size: u64) void,
|
||||||
|
|
@ -150,6 +149,10 @@ pub inline fn setPipeline(pass: RenderPassEncoder, pipeline: RenderPipeline) voi
|
||||||
pass.vtable.setPipeline(pass.ptr, pipeline);
|
pass.vtable.setPipeline(pass.ptr, pipeline);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub inline fn setScissorRect(pass: RenderPassEncoder, x: u32, y: u32, width: u32, height: u32) void {
|
||||||
|
pass.vtable.setScissorRect(pass.ptr, x, y, width, height);
|
||||||
|
}
|
||||||
|
|
||||||
pub const Descriptor = struct {
|
pub const Descriptor = struct {
|
||||||
label: ?[*:0]const u8 = null,
|
label: ?[*:0]const u8 = null,
|
||||||
color_attachments: []const RenderPassColorAttachment,
|
color_attachments: []const RenderPassColorAttachment,
|
||||||
|
|
@ -178,5 +181,6 @@ test {
|
||||||
_ = setIndexBuffer;
|
_ = setIndexBuffer;
|
||||||
_ = setLabel;
|
_ = setLabel;
|
||||||
_ = setPipeline;
|
_ = setPipeline;
|
||||||
|
_ = setPipeline;
|
||||||
_ = Descriptor;
|
_ = Descriptor;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue