Я пытался выяснить это уже несколько дней.
Учитывая приложение на основе ARKit, где я отслеживаю лицо пользователя, как я могу получить вращение лица в абсолютном выражении, исходя из егоякорь?
Я могу получить преобразование ARAnchor, который является simd_matrix4x4.Есть много информации о том, как вывести позицию из этой матрицы (это 3-й столбец), но ничего не говорится о повороте!
Я хочу иметь возможность управлять 3D-объектом вне приложения,передача YAW, PITCH и ROLL.
Последнее, что я попробовал, на самом деле работает несколько:
let arFrame = session.currentFrame!
guard let faceAnchor = arFrame.anchors[0] as? ARFaceAnchor else { return }
let faceMatrix = SCNMatrix4.init(faceAnchor.transform)
let node = SCNNode()
node.transform = faceMatrix
let rotation = node.worldOrientation
вращение. x .y и .z имеют значения, которые я мог бы использовать, , нопри перемещении телефона значения меняются .Например, если я поверну на 180˚ и продолжу смотреть на телефон, значения меняются в зависимости от положения телефона.
Я попытался изменить выравнивание мира в ARConfiguration, но это не помоглоразница.
Я читаю неправильные параметры?Это должно было быть намного проще!