当前位置:  开发笔记 > 编程语言 > 正文

在Unity中通过脚本更改铰链的轴

如何解决《在Unity中通过脚本更改铰链的轴》经验,为你挑选了0个好方法。

我试图HingeJoint在Unity游戏引擎中模拟汽车转向(或可配置的关节).

我有4个轮子连接在主体上,接头效果很好.现在我需要用控制器脚本更改关节轴(相对于主体)以使轮子转动.如果我在检查器中更改轴的Z值(相对于主体旋转轴),它会执行我需要的操作,但是当我尝试在脚本中更改Z轴时,事情变得疯狂.在你运行游戏之前,我觉得轴是相对于父体的,但是当你运行它时,轴可能是绝对的或者某种东西.

我试图找到答案很长一段时间,但我找不到任何与轴相关的东西.

我发现的只有TargetRotation(在可配置的关节上),实际上并不是我正在寻找的东西,因为我相信你需要在另一个轴上设置一些限制才能使它工作,从而使已经有弹性的关节更加摆动.显然,我需要尽可能严格的结果.如果你知道如何做到这一点,TargetRotation请告诉我,因为我还不知道它是如何工作的.

我相信问题很简单,但是如果你觉得问题不够明确,请告诉我,所以我会添加一些图片以便更好地解释.

编辑:嗯,建议添加更多信息,所以我们去:

这就是我所拥有的 在此输入图像描述

正如你所看到的那个带有4个气缸的简单盒子,盒子上有可配置的接头.所有元素都在同一根级别并且附加了刚体.

在红色圆圈中,您可以通过在检查员中更改轴Z值(从-1到1)看到不同的轴旋转,这正是我需要通过脚本来操纵车辆.

不幸的是,当我在脚本中添加轴Z控制器时:

        float steering = Input.GetAxis("Horizontal");
        configurableJoint.axis = new Vector3(configurableJoint.axis.x, configurableJoint.axis.y, steering);

它像这样打破: 在此输入图像描述

所以我想知道如何实现这样的功能,以及能够解释我关节轴如何工作的人会很好.

提前感谢您的努力

推荐阅读
低调pasta_730
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有