diff --git a/gpu/src/TODO b/gpu/src/TODO index 1cd78468..4d4caf84 100644 --- a/gpu/src/TODO +++ b/gpu/src/TODO @@ -374,9 +374,6 @@ typedef struct WGPURenderPassTimestampWrite { WGPURenderPassTimestampLocation location; } WGPURenderPassTimestampWrite; - - - typedef struct WGPURenderPassDepthStencilAttachment { WGPUTextureView view; WGPULoadOp depthLoadOp; @@ -391,12 +388,9 @@ typedef struct WGPURenderPassDepthStencilAttachment { bool stencilReadOnly; } WGPURenderPassDepthStencilAttachment; -typedef struct WGPUStencilFaceState { - WGPUCompareFunction compare; - WGPUStencilOperation failOp; - WGPUStencilOperation depthFailOp; - WGPUStencilOperation passOp; -} WGPUStencilFaceState; + + + typedef struct WGPUVertexAttribute { WGPUVertexFormat format; diff --git a/gpu/src/main.zig b/gpu/src/main.zig index b55ac2a9..ba538265 100644 --- a/gpu/src/main.zig +++ b/gpu/src/main.zig @@ -80,6 +80,7 @@ pub const BlendComponent = @import("structs.zig").BlendComponent; pub const Color = @import("structs.zig").Color; pub const Extent3D = @import("structs.zig").Extent3D; pub const Origin3D = @import("structs.zig").Origin3D; +pub const StencilFaceState = @import("structs.zig").StencilFaceState; // Enumerations pub const Feature = @import("enums.zig").Feature; diff --git a/gpu/src/structs.zig b/gpu/src/structs.zig index 4c8450bb..bc3ee46a 100644 --- a/gpu/src/structs.zig +++ b/gpu/src/structs.zig @@ -1,5 +1,7 @@ const BlendOperation = @import("enums.zig").BlendOperation; const BlendFactor = @import("enums.zig").BlendFactor; +const CompareFunction = @import("enums.zig").CompareFunction; +const StencilOperation = @import("enums.zig").StencilOperation; // TODO: docs pub const Limits = extern struct { @@ -55,3 +57,10 @@ pub const Origin3D = extern struct { y: u32, z: u32, }; + +pub const StencilFaceState = extern struct { + compare: CompareFunction, + fail_op: StencilOperation, + depth_fail_op: StencilOperation, + pass_op: StencilOperation, +};