Backlog/lib/sdl3/spvreflect/rect.vert.zig

65 lines
1.9 KiB
Zig

pub const shaderTypes = @import("shaderTypes");
pub const int = shaderTypes.int;
pub const uint = shaderTypes.uint;
pub const vec2 = shaderTypes.vec2;
pub const u8vec4 = shaderTypes.u8vec4;
pub const vec3 = shaderTypes.vec3;
pub const vec4 = shaderTypes.vec4;
pub const mat4 = shaderTypes.mat4;
pub const float = shaderTypes.float;
pub const BufferInfo = shaderTypes.BufferInfo;
pub const Scene = extern struct {
imagePosition: vec2,
imageSize: vec2,
anchorPoint: vec2,
scale: vec2,
alpha: float,
borderWidth: float,
flags: uint,
pad0: [4]c_char = undefined,
baseColor: vec4,
rounding: vec4,
edgeColor: vec4,
pub const Buffer: BufferInfo = .{ .storage = 0 };
pub const FieldDetails: []shaderTypes.FieldDetail = &.{
.{ .name = "imagePosition", .offset = 0, .size = 8 },
.{ .name = "imageSize", .offset = 8, .size = 8 },
.{ .name = "anchorPoint", .offset = 16, .size = 8 },
.{ .name = "scale", .offset = 24, .size = 8 },
.{ .name = "alpha", .offset = 32, .size = 4 },
.{ .name = "borderWidth", .offset = 36, .size = 4 },
.{ .name = "flags", .offset = 40, .size = 4 },
.{ .name = "baseColor", .offset = 48, .size = 16 },
.{ .name = "rounding", .offset = 64, .size = 16 },
.{ .name = "edgeColor", .offset = 80, .size = 16 },
};
};
comptime {
shaderTypes.ValidateGeneratedStruct(Scene);
}
pub const Uniforms = extern struct {
Extents: vec2,
pub const Buffer: BufferInfo = .{ .uniform = 0 };
pub const FieldDetails: []shaderTypes.FieldDetail = &.{
.{ .name = "Extents", .offset = 0, .size = 8 },
};
};
comptime {
shaderTypes.ValidateGeneratedStruct(Uniforms);
}
pub const LoadArgs = shaderTypes.ShaderLoadArgs{
.num_samplers = 0,
.num_storage_textures = 0,
.num_storage_buffers = 1,
.num_uniform_buffers = 1,
};