I’m trying to set an ofNode transform from another glm::mat4 object. Here’s my code:

```
#include "glm/gtx/matrix_decompose.hpp"
#include "ofNode.h"
inline void setOfNodeTransformMatrix(ofNode * node, const glm::mat4 & m44)
{
glm::vec3 scale;
glm::quat orientation;
glm::vec3 translation;
glm::vec3 skew;
glm::vec4 perspective;
glm::decompose(m44, scale, orientation, translation, skew, perspective);
node->setOrientation(orientation);
node->setPosition(translation);
node->setScale(scale);
}
```

I’m ignoring skew and perspective because it’s a rigid transform. In any case, the resulting matrix has the orientation flipped on X and Y axis. And the resulting ofNode::localTransformMatrix does not match the incoming m44.

Any ideas why this may happen?

Here’s a snapshot of the method’s resulting ofNode: