mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-03-15 07:29:17 +01:00
[util] move Matrix4 constructors to header
This commit is contained in:
parent
fb0b11903b
commit
c7271d94c1
@ -2,33 +2,6 @@
|
|||||||
|
|
||||||
namespace dxvk {
|
namespace dxvk {
|
||||||
|
|
||||||
// Identity
|
|
||||||
Matrix4::Matrix4() {
|
|
||||||
data[0] = { 1, 0, 0, 0 };
|
|
||||||
data[1] = { 0, 1, 0, 0 };
|
|
||||||
data[2] = { 0, 0, 1, 0 };
|
|
||||||
data[3] = { 0, 0, 0, 1 };
|
|
||||||
}
|
|
||||||
|
|
||||||
// Produces a scalar matrix, x * Identity
|
|
||||||
Matrix4::Matrix4(float x) {
|
|
||||||
data[0] = { x, 0, 0, 0 };
|
|
||||||
data[1] = { 0, x, 0, 0 };
|
|
||||||
data[2] = { 0, 0, x, 0 };
|
|
||||||
data[3] = { 0, 0, 0, x };
|
|
||||||
}
|
|
||||||
|
|
||||||
Matrix4::Matrix4(
|
|
||||||
const Vector4& v0,
|
|
||||||
const Vector4& v1,
|
|
||||||
const Vector4& v2,
|
|
||||||
const Vector4& v3) {
|
|
||||||
data[0] = v0;
|
|
||||||
data[1] = v1;
|
|
||||||
data[2] = v2;
|
|
||||||
data[3] = v3;
|
|
||||||
}
|
|
||||||
|
|
||||||
Vector4& Matrix4::operator[](size_t index) { return data[index]; }
|
Vector4& Matrix4::operator[](size_t index) { return data[index]; }
|
||||||
const Vector4& Matrix4::operator[](size_t index) const { return data[index]; }
|
const Vector4& Matrix4::operator[](size_t index) const { return data[index]; }
|
||||||
|
|
||||||
|
@ -8,15 +8,32 @@ namespace dxvk {
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
Matrix4(); // Identity
|
// Identity
|
||||||
|
inline Matrix4() {
|
||||||
|
data[0] = { 1, 0, 0, 0 };
|
||||||
|
data[1] = { 0, 1, 0, 0 };
|
||||||
|
data[2] = { 0, 0, 1, 0 };
|
||||||
|
data[3] = { 0, 0, 0, 1 };
|
||||||
|
}
|
||||||
|
|
||||||
explicit Matrix4(float x); // Produces a scalar matrix, x * Identity
|
// Produces a scalar matrix, x * Identity
|
||||||
|
inline explicit Matrix4(float x) {
|
||||||
|
data[0] = { x, 0, 0, 0 };
|
||||||
|
data[1] = { 0, x, 0, 0 };
|
||||||
|
data[2] = { 0, 0, x, 0 };
|
||||||
|
data[3] = { 0, 0, 0, x };
|
||||||
|
}
|
||||||
|
|
||||||
Matrix4(
|
inline Matrix4(
|
||||||
const Vector4& v0,
|
const Vector4& v0,
|
||||||
const Vector4& v1,
|
const Vector4& v1,
|
||||||
const Vector4& v2,
|
const Vector4& v2,
|
||||||
const Vector4& v3);
|
const Vector4& v3) {
|
||||||
|
data[0] = v0;
|
||||||
|
data[1] = v1;
|
||||||
|
data[2] = v2;
|
||||||
|
data[3] = v3;
|
||||||
|
}
|
||||||
|
|
||||||
Matrix4(const Matrix4& other) = default;
|
Matrix4(const Matrix4& other) = default;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user