【问题标题】:Rotating a unity configurable joint to match another game object (copycat)旋转一个统一的可配置关节以匹配另一个游戏对象(模仿)
【发布时间】:2015-10-10 17:48:28
【问题描述】:

我正在尝试将可配置关节驱动到与另一个游戏对象相同的旋转。基本上我是想让一个牵线木偶去影响另一个。

我使用以下代码:

 public GameObject master;
 public GameObject slave;

 void Update (){
     ConfigurableJoint cj = slave.transform.GetComponent(typeof(ConfigurableJoint)) as ConfigurableJoint;
     cj.targetRotation = master.transform.rotation;
 }

但是,我没有从奴隶那里得到任何旋转。谁能解释一下我应该怎么做?

【问题讨论】:

    标签: c# unity3d rotation gameobject


    【解决方案1】:

    你确定你得到了正确的关节吗? cj 是否为空?

    也许试试这条线:

    ConfigurableJoint cj = slave.GetComponent<ConfigurableJoint>();
    

    【讨论】:

    • 嗨,我可以看到现在正在改变目标旋转。但是关节还是不动。我应该以某种方式使用电源吗?
    • @ChrisHeadleand。您是否正确配置了从动接头?检查 Angular XMotion , ,Angular YMotion ,Angular ZMotion 的状态
    • 您还应确保关节的旋转驱动设置正确。这是旋转关节的力。也许你应该从主关节那里拿走它。
    • 对不起,您能解释一下如何使用旋转驱动吗?我想这一定是我缺少的一点
    • 检查 AngularDriveX 和 AngularDriveYZ 的设置。能否请您提供有关关节的屏幕截图?
    【解决方案2】:

    当您处理物理时,您不能将旋转应用于刚体。您可以做的是将本地变换复制并粘贴到另一个与其不包含刚体的 perent 相关的非静态游戏对象。

    所以基本上可配置关节有这么多的选项和参数来设置它以满足您的需要,您需要参加 2 小时的课程。这里没有空间来设置一个简单的答案。我推荐这门免费的旧课程,因为它是目前唯一深入解释的课程:这是一个更一般的答案,但有效。 Unity3 中有一个旧教程解释了设置:

    https://archive.org/details/3dbuzz-archive/unity-fundamentals-part-04/020-physics/013-13-configurable-joint.mp4

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-13
      • 1970-01-01
      • 2021-12-18
      • 1970-01-01
      • 1970-01-01
      • 2020-07-02
      • 1970-01-01
      相关资源
      最近更新 更多