Перемещение сущности Reality Composer после загрузки из Xcode? - PullRequest
0 голосов
/ 02 марта 2020

Я использовал Реальность Composer, чтобы построить AR-сцену, в которой на данный момент есть один объект (насколько я понимаю, это сущность). Используя XCode, я загружаю эту сцену Reality Composer, которая функционирует как ожидалось. Однако я хотел бы, чтобы мой пользователь имел возможность масштабировать или перемещать объект, сохраняя при этом все мои анимации и настройки Reality Composer.

Я использую этот код для загрузки моего объекта;

override func viewDidLoad() {
    super.viewDidLoad()

    // Load the "Box" scene from the "Experience" Reality File
    let boxAnchor = try! Experience.loadBox()
    boxAnchor.generateCollisionShapes(recursive: true)

    arView.scene.anchors.append(boxAnchor)

}

Я пытался реализовать традиционные UIPinchGestureRecognizer и UITapGestureRecognizer, но безрезультатно. Я вижу такие варианты, как EntityScaleGestureRecognizer, хотя мне еще предстоит выяснить, как реализовать это соответствующим образом. Из некоторого прочтения я вижу, что моя «сущность» должна соответствовать hasCollision, но, похоже, я что-то упускаю, поскольку я полагаю, что реальность Composer должна предлагать какую-то функциональность взаимодействия, учитывая ее простота построения опыта AR.

Спасибо!

1 Ответ

0 голосов
/ 03 марта 2020
let boxAnchor = try! Experience.loadBox()    
boxAnchor.generateCollisionShapes(recursive: true)
let box = boxAnchor.group as? Entity & HasCollision
arView.installGestures(for: box!)

set Physics for the box in Reality Composer

see https://forums.developer.apple.com/thread/119773
...