如何在 SceneKit 中切换物理体类型

问题描述 投票:0回答:0

我的游戏中有一个运动体,当它需要跳跃时我会切换到动态体,这样物理模拟就可以处理重力的所有复杂性。我通过替换节点的entire物理体来做到这一点。但是,这样做也会重置您可以对物理体进行的所有自定义。有没有办法在不创建新节点的情况下更改节点的物理体?或者至少是一种以某种方式“复制”所有值的方式,如恢复原状、角度阻尼等。

到目前为止我尝试了什么:

  1. 更改物理体上的 type 属性,但文档说它应该是一个常量(即使它是一个 get-set 属性???)。我不想违背文档,所以我认为这不应该是正确的方法
  2. 尝试用指针以某种方式复制值。我昨天开始阅读有关指针的内容,所以我不确定这样的功能是否可行,但我正在考虑。
  3. 使用copy()功能,但是,我仍然需要手动复制所有小设置

请告诉我是否有一种方法可以切换物理体类型,同时保留其属性,例如位掩码、物理设置等。

谢谢

ios swift scenekit game-physics
© www.soinside.com 2019 - 2024. All rights reserved.