How to subscribe to a AnimationController on RealityKit


The following code moves an entity throughout the space when tapped. That works fine but how would I get an event notification (I imagine a AnimationEvents.PlaybackCompleted)for when the animation finishes?

struct ImmersiveGameView: View {
    let model = Utils.generateBall(color: .green)
    let viewModel = ImmersiveGameViewModel()

    var body: some View {
        RealityView { content in
            model.setPosition(SIMD3(0, 1, -0.7), relativeTo: nil)
            content.add(model)
        }
        .gesture(SpatialTapGesture().targetedToAnyEntity().onEnded({ value in
            var transform = Transform()
            transform.translation.z = model.position.z - 10
            transform.translation.x = model.position.x
            transform.translation.y = model.position.y
            value.entity.move(to: transform, relativeTo: nil, duration: 2)
        }))
    }
}

Latest articles

spot_imgspot_img

Related articles

Leave a reply

Please enter your comment!
Please enter your name here

spot_imgspot_img