diff --git a/src/math/Vector2Int.zig b/src/math/Vector2Int.zig index bf420da..d05382c 100644 --- a/src/math/Vector2Int.zig +++ b/src/math/Vector2Int.zig @@ -162,6 +162,14 @@ pub const Vector2Int = extern struct { return .{ .vector = @mod(self.vector, scalar_vector) }; } + pub inline fn abs(self: Vector2Int) Vector2Int { + return .{ .vector = @intCast(@abs(self.vector)) }; + } + + pub inline fn sign(self: Vector2Int) Vector2Int { + return .{ .vector = std.math.sign(self.vector) }; + } + // --- SWIZZLE --- pub inline fn swizzle2(self: Vector2Int, comptime mask: [2]Mask) Vector2Int { diff --git a/src/math/Vector3Int.zig b/src/math/Vector3Int.zig index f15ef88..af90f5e 100644 --- a/src/math/Vector3Int.zig +++ b/src/math/Vector3Int.zig @@ -174,6 +174,14 @@ pub const Vector3Int = extern struct { return .{ .vector = @mod(self.vector, scalar_vector) }; } + pub inline fn abs(self: Vector3Int) Vector3Int { + return .{ .vector = @intCast(@abs(self.vector)) }; + } + + pub inline fn sign(self: Vector3Int) Vector3Int { + return .{ .vector = std.math.sign(self.vector) }; + } + // --- SWIZZLE --- pub inline fn swizzle2(self: Vector3Int, comptime mask: [2]Mask) Vector2Int {