Vertex picking
[opengl.git] / util.hpp
1 #include "program.hpp"
2 #include <glm/ext.hpp>
3 #include <assimp/scene.h>
4
5 void initUtilProg();
6 Program *getUtilProg();
7 void drawDebugNode(glm::mat4 transform, glm::vec4 color = {1, 0.5, 1, 1});
8 void printMatrix4x4(aiMatrix4x4 m);
9 void printVec3(glm::vec3 v);
10
11 inline glm::mat4 aiMatrixToMat4(aiMatrix4x4 from) {
12         glm::mat4 to;
13         for (int i = 0; i < 4; i++)
14                 for (int j = 0; j < 4; j++)
15                         to[i][j] = from[j][i];
16         return to;
17 }
18
19 inline aiMatrix4x4 mat4ToaiMatrix(glm::mat4 from) {
20         aiMatrix4x4 to;
21         for (int i = 0; i < 4; i++)
22                 for (int j = 0; j < 4; j++)
23                         to[i][j] = from[j][i];
24         return to;
25 }
26
27 inline glm::vec3 aiVector3DToMat4(aiVector3D from) {
28         return {from[0], from[1], from[2]};
29 }