Reorganize and fix
This commit is contained in:
@@ -124,4 +124,22 @@ pub const Vector4 = extern struct {
|
||||
.w = @mulAdd(f32, t, b.w, @mulAdd(f32, -t, a.w, a.w)),
|
||||
};
|
||||
}
|
||||
|
||||
pub inline fn transform(self: Vector4, m: vm.Matrix4x4) Vector4 {
|
||||
return .{
|
||||
.x = self.x * m.ix + self.y * m.jx + self.z * m.kx + self.w * m.tx,
|
||||
.y = self.x * m.iy + self.y * m.jy + self.z * m.ky + self.w * m.ty,
|
||||
.z = self.x * m.iz + self.y * m.jz + self.z * m.kz + self.w * m.tz,
|
||||
.w = self.x * m.iw + self.y * m.jw + self.z * m.kw + self.w * m.tw,
|
||||
};
|
||||
}
|
||||
|
||||
pub inline fn transform_x8(self: Vector4, m: vm.Matrix4x4x8) vm.Vector4x8 {
|
||||
return .{
|
||||
.x = vm.ps(self.x) * m.ix + vm.ps(self.y) * m.jx + vm.ps(self.z) * m.kx + vm.ps(self.w) * m.tx,
|
||||
.y = vm.ps(self.x) * m.iy + vm.ps(self.y) * m.jy + vm.ps(self.z) * m.ky + vm.ps(self.w) * m.ty,
|
||||
.z = vm.ps(self.x) * m.iz + vm.ps(self.y) * m.jz + vm.ps(self.z) * m.kz + vm.ps(self.w) * m.tz,
|
||||
.w = vm.ps(self.x) * m.iw + vm.ps(self.y) * m.jw + vm.ps(self.z) * m.kw + vm.ps(self.w) * m.tw,
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user