Logo
Quat.h
1#pragma once
2
3namespace XXSharpKmyMath {
4
5 private value struct Quat {
6
7 public:
8 float x, y, z, w;
9
10 Quat(float x, float y, float z, float w)
11 {
12 this->x = x;
13 this->y = y;
14 this->z = z;
15 this->w = w;
16 }
17
18 Matrix4 convertToMatrix();
19 void setFromMatrix(Matrix4 mtx);
20 void setFromVector(Vector3 axis, f32 angle);
21
22 static Quat identity();
23 static Quat operator*(Quat q1, Quat q2);
24 static Quat slerp(Quat q1, Quat q2, f32 param);
25 };
26}