aboutsummaryrefslogtreecommitdiff
path: root/vendor/libghostty-vt/src/math.zig
diff options
context:
space:
mode:
authorCan Celik <ogulcancelik@gmail.com>2026-04-04 19:22:04 +0300
committerCan Celik <ogulcancelik@gmail.com>2026-04-05 01:23:06 +0300
commit41dd733ca7123c9ac4bfc6c781697a660e95b052 (patch)
tree3fc91815ca139ef2e0b281bba0abda4ef15175f4 /vendor/libghostty-vt/src/math.zig
parent55c138263e190a1e79d4b997bfb9397306c0ec1f (diff)
feat: finish ghostty pane backend integration
Diffstat (limited to 'vendor/libghostty-vt/src/math.zig')
-rw-r--r--vendor/libghostty-vt/src/math.zig15
1 files changed, 15 insertions, 0 deletions
diff --git a/vendor/libghostty-vt/src/math.zig b/vendor/libghostty-vt/src/math.zig
new file mode 100644
index 00000000..000aa97d
--- /dev/null
+++ b/vendor/libghostty-vt/src/math.zig
@@ -0,0 +1,15 @@
+/// Matrix type
+pub const Mat = [4]F32x4;
+pub const F32x4 = @Vector(4, f32);
+
+/// 2D orthographic projection matrix
+pub fn ortho2d(left: f32, right: f32, bottom: f32, top: f32) Mat {
+ const w = right - left;
+ const h = top - bottom;
+ return .{
+ .{ 2 / w, 0, 0, 0 },
+ .{ 0, 2 / h, 0, 0 },
+ .{ 0.0, 0.0, -1.0, 0.0 },
+ .{ -(right + left) / w, -(top + bottom) / h, 0.0, 1.0 },
+ };
+}