Quaternion q2 = new Quaternion(); q.lookAt(cam.getDirection(), cam.getUp()); Matrix3f v = new Matrix3f(); q.toRotationMatrix(v); v.setColumn(1, new Vector3f(0,0,0)); v.setRow(1, new Vector3f(0,1,0)); q2.fromRotationMatrix(v); rootNode.getChild("Player").setLocalRotation(q2);