Transforme o modelMatrix

É fácil configurar o ViewMatrix com glm:

glm::lookAt(Position, Direction, UpVector);

mas se eu tentar usar a função com o modelMatrix, receberei valores desconcertantes (o Model não está na posição correta e também a rotação parece errada). Eu só quero definir um objeto da mesma maneira que configurar a câmera. Posso usar a função lookAt e fazer algumas alterações depois? Ou tenho que programar uma função própria para isso? E se sim, como?

Eu fixei a posição com isso:

m_Orientation = glm::lookAtLH(Position, Direction, UpVector);
m_Orientation[3][0] = -m_Orientation[3][0];
m_Orientation[3][1] = -m_Orientation[3][1];
m_Orientation[3][2] = -m_Orientation[3][2];

também dentro do vertexshader eu uso isso:

gl_Position = CameraMatrix * ModelMatrix * Pos;

onde CameraMatrix é um viewProjectionMatrix, ModelMatrix (meu problema) e Pos é a posição do meu vértice no espaço do modelo