Как прикрепить объект к суставу скелета в RealityKit?IOS

Программируем под IOS
Ответить
Anonymous
 Как прикрепить объект к суставу скелета в RealityKit?

Сообщение Anonymous »

В SceneKit все соединения узла были отдельными узлами, к которым можно было добавлять дочерние узлы, чтобы они синхронизировались с родительской анимацией. Я хотел бы сделать то же самое в RealityKit.
Родительская модель, которая у меня есть, содержит только 5 дочерних объектов, а не соединение, используемое в анимации, но имеет правильное имя соединения и преобразования. Мне нужно синхронизироваться с.
Как добавить дочерний объект в родительское соединение, чтобы дочерний объект следовал правильному пути анимации родительского объекта? И.Е. родительский объект имеет анимацию размахивания мечом и отдельный объект меча, который должен прикрепляться к суставу руки и двигаться вместе с родительской анимацией.
Вот код, который у меня есть. Я могу распечатать перевод, и он перемещается вместе с родителем, но его положение далеко от фактического совместного перехода (я не вижу его на экране). Является ли это предпочтительным способом сделать это?
В SceneKit это было очень просто, просто добавьте SCNNode в качестве SCNNode соединения, наверняка есть простой способ сделать это в RealityKit?< /p>
let playerModel = try! Entity.load(named: "Idle_Normal_SingleSword").findEntity(named: "root") as! ModelEntity
playerModel.scale = SIMD3(x: 0.01, y: 0.01, z: 0.01)

let swordAnchor = AnchorEntity()
let swordModel = try! Entity.load(named: "OHS08_Sword").findEntity(named: "OHS08_Sword_R_geometry") as! ModelEntity
swordModel.scale = SIMD3(x: 0.01, y: 0.01, z: 0.01)
swordModel.orientation = simd_quatf(angle: Float(90.radians), axis: [1, 0, 0])

swordAnchor.addChild(swordModel)

initialScene.addChild(playerModel)
playerModel.addChild(swordAnchor)

let handJointIndex = playerModel.jointNames.firstIndex {
$0.contains("hand_r")
}
$0.scene.subscribe(to: SceneEvents.Update.self) { _ in
swordModel.transform.translation = playerModel.jointTransforms[handJointIndex!].translation
}
.store(in: &cancellables)


Подробнее здесь: https://stackoverflow.com/questions/767 ... realitykit
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»