【问题标题】:Scaling a wheeled car GameObject in Unity3d with Wheels as Configurable Joint在 Unity3d 中使用轮子作为可配置关节缩放轮式汽车游戏对象
【发布时间】:2014-08-23 00:36:08
【问题描述】:

在我的应用程序中,我想在运行时调整汽车的大小。我使用以下命令来做到这一点。

myCar.transform.localScale = new Vector(x,y,z);

在执行上述命令之前,我在 myCar 的子刚体中启用 isKinematic 属性。我的hyrarchy如下。

myCar 是父游戏对象。它的孩子是 Base、Left_Wheel 和 Right_Wheel。

在这个中,Base、Left_Wheel、Right_Wheel 是刚体,但 myCar Gameobject 不是刚体。所以我在调整 myCar 对象的大小之前启用了所有这 3 个的 isKinematic 属性。

base.rigidbody.isKinematic = true;
leftwheel.rigidbody.isKinematic = true;
leftWheel.rigidbody.isKinematic = true;

这样做之后,我正在增加 myCar GameObject 的 localScale 并且整个实体正在按预期重新缩放,但是之后当我禁用刚体中的 isKinematic 属性时,我的两个轮子都转到了默认位置,或者换句话说,它们进入了内部车。

我在 FixUpdate 中进行上述所有操作,但我不明白我在哪里做错了。

任何帮助将不胜感激。请记住,在上面的层次结构中 myCar 游戏对象不是刚体,只有它的子对象是刚体。

谢谢。

【问题讨论】:

    标签: unity3d unityscript gameobject


    【解决方案1】:

    可能关节的锚点没有正确更新。虽然 Unity v4.3.4f 能够根据对象比例更新关节,但我不能保证早期版本能够这样做。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-30
      • 1970-01-01
      • 2019-02-24
      • 1970-01-01
      • 1970-01-01
      • 2016-12-26
      • 2019-06-20
      相关资源
      最近更新 更多