gpu: implement RenderPassEncoder.setPipeline
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
parent
6385981d55
commit
70211c9d38
2 changed files with 13 additions and 0 deletions
|
|
@ -736,6 +736,11 @@ const render_pass_encoder_vtable = RenderPassEncoder.VTable{
|
||||||
c.wgpuRenderPassEncoderSetLabel(@ptrCast(c.WGPURenderPassEncoder, ptr), label);
|
c.wgpuRenderPassEncoderSetLabel(@ptrCast(c.WGPURenderPassEncoder, ptr), label);
|
||||||
}
|
}
|
||||||
}).setLabel,
|
}).setLabel,
|
||||||
|
.setPipeline = (struct {
|
||||||
|
pub fn setPipeline(ptr: *anyopaque, pipeline: RenderPipeline) void {
|
||||||
|
c.wgpuRenderPassEncoderSetPipeline(@ptrCast(c.WGPURenderPassEncoder, ptr), @ptrCast(c.WGPURenderPipeline, pipeline.ptr));
|
||||||
|
}
|
||||||
|
}).setPipeline,
|
||||||
};
|
};
|
||||||
|
|
||||||
fn wrapRenderBundleEncoder(enc: c.WGPURenderBundleEncoder) RenderBundleEncoder {
|
fn wrapRenderBundleEncoder(enc: c.WGPURenderBundleEncoder) RenderBundleEncoder {
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ const QuerySet = @import("QuerySet.zig");
|
||||||
const RenderPassColorAttachment = @import("structs.zig").RenderPassColorAttachment;
|
const RenderPassColorAttachment = @import("structs.zig").RenderPassColorAttachment;
|
||||||
const RenderPassDepthStencilAttachment = @import("structs.zig").RenderPassDepthStencilAttachment;
|
const RenderPassDepthStencilAttachment = @import("structs.zig").RenderPassDepthStencilAttachment;
|
||||||
const RenderPassTimestampWrite = @import("structs.zig").RenderPassTimestampWrite;
|
const RenderPassTimestampWrite = @import("structs.zig").RenderPassTimestampWrite;
|
||||||
|
const RenderPipeline = @import("RenderPipeline.zig");
|
||||||
|
|
||||||
const RenderPassEncoder = @This();
|
const RenderPassEncoder = @This();
|
||||||
|
|
||||||
|
|
@ -30,6 +31,7 @@ pub const VTable = struct {
|
||||||
// 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);
|
||||||
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,
|
||||||
// WGPU_EXPORT void wgpuRenderPassEncoderSetPipeline(WGPURenderPassEncoder renderPassEncoder, WGPURenderPipeline pipeline);
|
// WGPU_EXPORT void wgpuRenderPassEncoderSetPipeline(WGPURenderPassEncoder renderPassEncoder, WGPURenderPipeline pipeline);
|
||||||
// WGPU_EXPORT void wgpuRenderPassEncoderSetScissorRect(WGPURenderPassEncoder renderPassEncoder, uint32_t x, uint32_t y, uint32_t width, uint32_t height);
|
// WGPU_EXPORT void wgpuRenderPassEncoderSetScissorRect(WGPURenderPassEncoder renderPassEncoder, uint32_t x, uint32_t y, uint32_t width, uint32_t height);
|
||||||
// WGPU_EXPORT void wgpuRenderPassEncoderSetStencilReference(WGPURenderPassEncoder renderPassEncoder, uint32_t reference);
|
// WGPU_EXPORT void wgpuRenderPassEncoderSetStencilReference(WGPURenderPassEncoder renderPassEncoder, uint32_t reference);
|
||||||
|
|
@ -50,6 +52,10 @@ pub inline fn setLabel(pass: RenderPassEncoder, label: [:0]const u8) void {
|
||||||
pass.vtable.setLabel(pass.ptr, label);
|
pass.vtable.setLabel(pass.ptr, label);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub inline fn setPipeline(pass: RenderPassEncoder, pipeline: RenderPipeline) void {
|
||||||
|
pass.vtable.setPipeline(pass.ptr, pipeline);
|
||||||
|
}
|
||||||
|
|
||||||
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,
|
||||||
|
|
@ -62,5 +68,7 @@ test "syntax" {
|
||||||
_ = VTable;
|
_ = VTable;
|
||||||
_ = reference;
|
_ = reference;
|
||||||
_ = release;
|
_ = release;
|
||||||
|
_ = setLabel;
|
||||||
|
_ = setPipeline;
|
||||||
_ = Descriptor;
|
_ = Descriptor;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue