gpt4 book ai didi

ios - 如何在不重置 SCNNode 位置的情况下重置 SCNNode 的 SCNPhysicsBody?

转载 作者:行者123 更新时间:2023-11-29 00:21:14 24 4
gpt4 key购买 nike

我有一个适用于 iOS 的 sceneKit 应用程序。我有一个连接到 SCNNode 的 SCNPhysicsBody。我将 .physicsBody 设置为 nil,对 SCNNode 进行一些更改,然后将 .physicsBody 设置为新的 SCNPhysicsBody 或原始 SCNPhysicsBody 的副本。在任何一种情况下,SCNNode 都会将其位置重置为其初始位置。

如何重置 .physicsBody 并将 SCNNode 保持在相同位置,以便它继续其轨迹?

最佳答案

当您的物理影响节点位置时,其原始位置(分配给节点 position 属性)保持不变,presentation node位置改变了。所有转换(旋转/缩放/平移)都是这样工作的。

所以你可以做一些像这样的伪代码:

// 1. remember position of presentation node
var position = node.presentation.position;
// 2. do some changes on node, physics body, whatever
// 3. restore position (without losing original node position)
your_node.presentation.position = position
// ... or apply presentation position to original position
your_node.position = position

关于ios - 如何在不重置 SCNNode 位置的情况下重置 SCNNode 的 SCNPhysicsBody?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44200094/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com