I dont get my scalars

This commit is contained in:
Yggdrasil75
2025-12-31 14:13:07 -05:00
parent c92b5dc203
commit a9caaeb40f

View File

@@ -294,30 +294,30 @@ public:
// Template friend operators to allow different scalar types // Template friend operators to allow different scalar types
template<typename S> template<typename S>
friend Vec3<T> operator+(S scalar, const Vec3<T>& vec) { friend Vec3<T> operator+(S scalar, const Vec3<T>& vec) {
return Vec3<T>(static_cast<T>(scalar) + vec.x, return Vec3<T>(static_cast<T>(scalar + vec.x),
static_cast<T>(scalar) + vec.y, static_cast<T>(scalar + vec.y),
static_cast<T>(scalar) + vec.z); static_cast<T>(scalar + vec.z));
} }
template<typename S> template<typename S>
friend Vec3<T> operator-(S scalar, const Vec3<T>& vec) { friend Vec3<T> operator-(S scalar, const Vec3<T>& vec) {
return Vec3<T>(static_cast<T>(scalar) - vec.x, return Vec3<T>(static_cast<T>(scalar - vec.x),
static_cast<T>(scalar) - vec.y, static_cast<T>(scalar - vec.y),
static_cast<T>(scalar) - vec.z); static_cast<T>(scalar - vec.z));
} }
template<typename S> template<typename S>
friend Vec3<T> operator*(S scalar, const Vec3<T>& vec) { friend Vec3<T> operator*(S scalar, const Vec3<T>& vec) {
return Vec3<T>(static_cast<T>(scalar) * vec.x, return Vec3<T>(static_cast<T>(scalar * vec.x),
static_cast<T>(scalar) * vec.y, static_cast<T>(scalar * vec.y),
static_cast<T>(scalar) * vec.z); static_cast<T>(scalar * vec.z));
} }
template<typename S> template<typename S>
friend Vec3<T> operator/(S scalar, const Vec3<T>& vec) { friend Vec3<T> operator/(S scalar, const Vec3<T>& vec) {
return Vec3<T>(static_cast<T>(scalar) / vec.x, return Vec3<T>(static_cast<T>(scalar / vec.x),
static_cast<T>(scalar) / vec.y, static_cast<T>(scalar / vec.y),
static_cast<T>(scalar) / vec.z); static_cast<T>(scalar / vec.z));
} }
Vec3 reflect(const Vec3& normal) const { Vec3 reflect(const Vec3& normal) const {