From b81e416e02c351f4922c2772f6cd9ee937598bc4 Mon Sep 17 00:00:00 2001 From: Stephen Gutekanst Date: Fri, 8 Sep 2023 16:54:10 -0700 Subject: [PATCH] math: various fixes Signed-off-by: Stephen Gutekanst --- src/math/vec.zig | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/math/vec.zig b/src/math/vec.zig index 8114fa18..b85bcaae 100644 --- a/src/math/vec.zig +++ b/src/math/vec.zig @@ -106,24 +106,24 @@ pub fn Vec(comptime n_value: usize, comptime Scalar: type) type { /// Scalar addition pub inline fn addScalar(a: VecN, s: Scalar) VecN { - return .{ .v = a.v + VecN.splat(s) }; + return .{ .v = a.v + VecN.splat(s).v }; } /// Scalar subtraction pub inline fn subScalar(a: VecN, s: Scalar) VecN { - return .{ .v = a.v - VecN.splat(s) }; + return .{ .v = a.v - VecN.splat(s).v }; } /// Scalar division pub inline fn divScalar(a: VecN, s: Scalar) VecN { - return .{ .v = a.v / VecN.splat(s) }; + return .{ .v = a.v / VecN.splat(s).v }; } /// Scalar multiplication. /// /// See .dot() for the dot product pub inline fn mulScalar(a: VecN, s: Scalar) VecN { - return .{ .v = a.v * VecN.splat(s) }; + return .{ .v = a.v * VecN.splat(s).v }; } /// Returns a vector with all components set to the `scalar` value: @@ -192,7 +192,7 @@ pub fn Vec(comptime n_value: usize, comptime Scalar: type) type { /// a.lerp(b, 1.0) == b /// ``` pub inline fn lerp(a: VecN, b: VecN, amount: Scalar) VecN { - return a.mulScalar(1.0 - amount) + b.mulScalar(amount); + return a.mulScalar(1.0 - amount).add(b.mulScalar(amount)); } /// Calculates the dot product between vector a and b and returns scalar.