Есть две возможные проблемы, которые могут возникнуть при вращении шара:
В сцене Реальность Composer иногда создаются два шара, и вы поворачиваете родительский объект ( узел) для обоих
В вашем приложении есть ошибка (поэтому мы не рассматриваем ее здесь ...)
Обычно код для поворота и масштабирования модели в RealityKit выглядит следующим образом:
let ballAnchor: Experience.Ball = try! Experience.loadBall()
ballAnchor.ball?.orientation = simd_quatf(angle: Float.pi/4,
axis: [0, 1, 0])
ballAnchor.ball?.scale = [9, 9, 9]
arView.scene.anchors.append(ballAnchor)
Где Ball
- это класс publi c, соответствующий протоколу RealityKit.HasAnchoring
и содержащий объект ball
, который на самом деле RealityKit.Entity
.
Поэтому, если вы хотите изменить положение оси X объекта шара, просто используйте:
ballAnchor.ball?.position.x = 0.5
Но не так:
ball?.position.x = 0.5