From b90658aba863365aba3e4cd35b36a9b14132652b Mon Sep 17 00:00:00 2001 From: Stephen Gutekanst Date: Sat, 16 Jul 2022 20:03:47 -0700 Subject: [PATCH] gpu: add RequestAdapterOptions Signed-off-by: Stephen Gutekanst --- gpu/TODO-webgpu.h | 7 ------- gpu/src/main.zig | 13 ++++++++----- gpu/src/types.zig | 5 +++++ 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/gpu/TODO-webgpu.h b/gpu/TODO-webgpu.h index 7d25efe2..341e7f55 100644 --- a/gpu/TODO-webgpu.h +++ b/gpu/TODO-webgpu.h @@ -1,10 +1,3 @@ -pub const RequestAdapterOptions = extern struct { - next_in_chain: *const ChainedStruct, - compatible_surface: Surface = Surface.none, // nullable - power_preference: PowerPreference, - force_fallback_adapter: bool, -}; - pub const SamplerBindingLayout = extern struct { next_in_chain: *const ChainedStruct, type: SamplerBindingType, diff --git a/gpu/src/main.zig b/gpu/src/main.zig index d01f2e11..908aa498 100644 --- a/gpu/src/main.zig +++ b/gpu/src/main.zig @@ -43,6 +43,7 @@ pub const ChainedStruct = @import("types.zig").ChainedStruct; pub const LoadOp = @import("types.zig").LoadOp; pub const StoreOp = @import("types.zig").StoreOp; pub const RenderPassTimestampLocation = @import("types.zig").RenderPassTimestampLocation; +pub const PowerPreference = @import("types.zig").PowerPreference; pub const ComputePassTimestampWrite = struct { query_set: QuerySet, @@ -64,17 +65,19 @@ pub const RenderPassDepthStencilAttachment = extern struct { stencil_read_only: bool, }; -pub const RenderPassDescriptorMaxDrawCount = extern struct { - chain: ChainedStruct, - max_draw_count: u64, -}; - pub const RenderPassTimestampWrite = extern struct { query_set: QuerySet, query_index: u32, location: RenderPassTimestampLocation, }; +pub const RequestAdapterOptions = extern struct { + next_in_chain: *const ChainedStruct, + compatible_surface: Surface = Surface.none, // nullable + power_preference: PowerPreference, + force_fallback_adapter: bool, +}; + test { refAllDecls(@import("adapter.zig")); refAllDecls(@import("bind_group.zig")); diff --git a/gpu/src/types.zig b/gpu/src/types.zig index 330d99d2..0d5e095a 100644 --- a/gpu/src/types.zig +++ b/gpu/src/types.zig @@ -482,6 +482,11 @@ pub const PrimitiveState = extern struct { cull_mode: CullMode, }; +pub const RenderPassDescriptorMaxDrawCount = extern struct { + chain: ChainedStruct, + max_draw_count: u64, +}; + test "BackendType name" { try testing.expectEqualStrings("Vulkan", BackendType.vulkan.name()); }