Add a brewfile
[opengl.git] / util.hpp
index 84b2060cd585c7e5aec53a087ada1abb7995c4c6..4ccef53b62cb1371ee6f18bc3738ceaf2c164bb7 100644 (file)
--- a/util.hpp
+++ b/util.hpp
@@ -7,3 +7,27 @@ Program *getUtilProg();
 void drawDebugNode(glm::mat4 transform, glm::vec4 color = {1, 0.5, 1, 1});
 void printMatrix4x4(aiMatrix4x4 m);
 void printVec3(glm::vec3 v);
+
+inline glm::mat4 aiMatrixToMat4(aiMatrix4x4 from) {
+       glm::mat4 to;
+       for (int i = 0; i < 4; i++)
+               for (int j = 0; j < 4; j++)
+                       to[i][j] = from[j][i];
+       return to;
+}
+
+inline aiMatrix4x4 mat4ToaiMatrix(glm::mat4 from) {
+       aiMatrix4x4 to;
+       for (int i = 0; i < 4; i++)
+               for (int j = 0; j < 4; j++)
+                       to[i][j] = from[j][i];
+       return to;
+}
+
+inline glm::vec3 aiVector3DToVec3(aiVector3D from) {
+       return {from[0], from[1], from[2]};
+}
+
+inline aiVector3D vec3ToaiVector3D(glm::vec3 from) {
+       return {from[0], from[1], from[2]};
+}