From 94568052f5ecf7107ac75499a34463d56e0c8e2d Mon Sep 17 00:00:00 2001 From: Stephen Gutekanst Date: Thu, 11 Aug 2022 12:48:48 -0700 Subject: [PATCH] gpu: make RenderPassEncoder.executeBundles API use a slice helper Signed-off-by: Stephen Gutekanst --- gpu/README.md | 2 +- gpu/src/render_pass_encoder.zig | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/gpu/README.md b/gpu/README.md index 555bee45..94a5a869 100644 --- a/gpu/README.md +++ b/gpu/README.md @@ -157,6 +157,7 @@ The slice helpers are: * `CommandEncoder.writeBuffer` * `Queue.writeTexture` * `Queue.writeBuffer` +* `RenderPassEncoder.executeBundles` ### Typed callbacks @@ -221,6 +222,5 @@ The following are definitive candidates for helpers we haven't implemented yet: * `gpu.ComputePassEncoder.setBindGroup` (slice param) * `gpu.Device.enumerateFeatures` (owned slice) * `gpu.RenderBundleEncoder.setBindGroup` (slice param) -* `gpu.RenderPassEncoder.executeBundles` (slice param) * `gpu.RenderPassEncoder.setBindGroup` (slice param) * Other `next_in_chain` extensions (look at dawn.json after the bug to get this documented was fixed) diff --git a/gpu/src/render_pass_encoder.zig b/gpu/src/render_pass_encoder.zig index 331f2531..416d677d 100644 --- a/gpu/src/render_pass_encoder.zig +++ b/gpu/src/render_pass_encoder.zig @@ -43,8 +43,15 @@ pub const RenderPassEncoder = opaque { Impl.renderPassEncoderEndOcclusionQuery(render_pass_encoder); } - pub inline fn executeBundles(render_pass_encoder: *RenderPassEncoder, bundles_count: u32, bundles: [*]const *const RenderBundle) void { - Impl.renderPassEncoderExecuteBundles(render_pass_encoder, bundles_count, bundles); + pub inline fn executeBundles( + render_pass_encoder: *RenderPassEncoder, + bundles: []*const RenderBundle, + ) void { + Impl.renderPassEncoderExecuteBundles( + render_pass_encoder, + @intCast(u32, bundles.len), + bundles.ptr, + ); } pub inline fn insertDebugMarker(render_pass_encoder: *RenderPassEncoder, marker_label: [*:0]const u8) void {