Files
libcmo21/LibCmo/VxMath/VxTypes.cpp
2024-12-24 16:49:34 +08:00

60 lines
1.2 KiB
C++

#include "VxTypes.hpp"
namespace LibCmo::VxMath {
#pragma region Patched
namespace NSVxVector {
float DotProduct(const VxVector2& lhs, const VxVector2& rhs) {
return lhs * rhs;
}
float DotProduct(const VxVector3& lhs, const VxVector3& rhs) {
return lhs * rhs;
}
float DotProduct(const VxVector4& lhs, const VxVector4& rhs) {
return lhs * rhs;
}
VxVector3 CrossProduct(const VxVector3& lhs, const VxVector3& rhs) {
return VxVector3(
lhs.y * rhs.z - lhs.z * rhs.y,
lhs.z * rhs.x - lhs.x * rhs.z,
lhs.x * rhs.y - lhs.y * rhs.x
);
}
void Abs(VxVector3& lhs) {
lhs.x = std::fabs(lhs.x);
lhs.y = std::fabs(lhs.y);
lhs.z = std::fabs(lhs.z);
}
}
namespace NSVxMatrix {
void Perspective(VxMatrix& mat, float Fov, float Aspect, float Near_plane, float Far_plane) {
}
void PerspectiveRect(VxMatrix& mat, float Left, float Right, float Top, float Bottom, float Near_plane, float Far_plane) {
}
void Orthographic(VxMatrix& mat, float Zoom, float Aspect, float Near_plane, float Far_plane) {
}
void OrthographicRect(VxMatrix& mat, float Left, float Right, float Top, float Bottom, float Near_plane, float Far_plane) {
}
}
#pragma endregion
}