mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-07-14 15:56:13 +03:00
renderer/metal: set valid sampler properties
This commit is contained in:
@ -67,6 +67,22 @@ pub const MTLPurgeableState = enum(c_ulong) {
|
||||
empty = 4,
|
||||
};
|
||||
|
||||
/// https://developer.apple.com/documentation/metal/mtlsamplerminmagfilter?language=objc
|
||||
pub const MTLSamplerMinMagFilter = enum(c_ulong) {
|
||||
nearest = 0,
|
||||
linear = 1,
|
||||
};
|
||||
|
||||
/// https://developer.apple.com/documentation/metal/mtlsampleraddressmode?language=objc
|
||||
pub const MTLSamplerAddressMode = enum(c_ulong) {
|
||||
clamp_to_edge = 0,
|
||||
mirror_clamp_to_edge = 1,
|
||||
repeat = 2,
|
||||
mirror_repeat = 3,
|
||||
clamp_to_zero = 4,
|
||||
clamp_to_border_color = 5,
|
||||
};
|
||||
|
||||
/// https://developer.apple.com/documentation/metal/mtlblendfactor?language=objc
|
||||
pub const MTLBlendFactor = enum(c_ulong) {
|
||||
zero = 0,
|
||||
|
@ -3,6 +3,8 @@ const Allocator = std.mem.Allocator;
|
||||
const assert = std.debug.assert;
|
||||
const objc = @import("objc");
|
||||
|
||||
const mtl = @import("api.zig");
|
||||
|
||||
pub const Sampler = struct {
|
||||
sampler: objc.Object,
|
||||
|
||||
@ -14,6 +16,11 @@ pub const Sampler = struct {
|
||||
break :init id_init;
|
||||
};
|
||||
defer desc.msgSend(void, objc.sel("release"), .{});
|
||||
desc.setProperty("rAddressMode", @intFromEnum(mtl.MTLSamplerAddressMode.clamp_to_edge));
|
||||
desc.setProperty("sAddressMode", @intFromEnum(mtl.MTLSamplerAddressMode.clamp_to_edge));
|
||||
desc.setProperty("tAddressMode", @intFromEnum(mtl.MTLSamplerAddressMode.clamp_to_edge));
|
||||
desc.setProperty("minFilter", @intFromEnum(mtl.MTLSamplerMinMagFilter.linear));
|
||||
desc.setProperty("magFilter", @intFromEnum(mtl.MTLSamplerMinMagFilter.linear));
|
||||
|
||||
const sampler = device.msgSend(
|
||||
objc.Object,
|
||||
|
Reference in New Issue
Block a user