Unity旋转时子物体发生形变解决方法

在开发时,我遇到了旋转某个物体的子物体时发生形变的bug,如图
Unity旋转时子物体发生形变解决方法

Unity旋转时子物体发生形变解决方法

显然,这不是我想要的结果
我找到了这样一篇解决方案:
https://blog.csdn.net/qq_15267341/article/details/76730362

可行是可行,不过里面的具体操作过程太麻烦了,要改的模型不止一个,所以我想了其他的方法。
查到导致这个问题的主要原因是父对象有缩放,看了一下还真有
Unity旋转时子物体发生形变解决方法

这就很简单了

新建一个空对象
Unity旋转时子物体发生形变解决方法

把子物体都移过去
Unity旋转时子物体发生形变解决方法

然后把原来那个有缩放的父对象改成1
Unity旋转时子物体发生形变解决方法

再把移动走的子物体移回来,然后把空对象删掉
Unity旋转时子物体发生形变解决方法

搞定~
Unity旋转时子物体发生形变解决方法



追加:父对象的父对象有缩放好像没影响

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
### 回答1: Unity是一个功能强大的游戏引擎,可用于创建各种2D和3D游戏。在Unity中,拖拽旋转物体是一个常见的需求,可以通过以下步骤实现。 首先,通过添加组件将对象转化为可挂接的对象。可以挂接一个刚体组件或是使用物理引擎,也可以使用脚本控制其移动和旋转。 然后,鼠标右键单击对象,选择“3D对象”、“空物体”或“其他”选项。这将创建一个空对象,它将成为控制器。将控制器命名为“旋转控制器”。 接着,将对象拖到旋转控制器上,并将其调整到对象的中心点。这样一来,我们就可以通过拖拽旋转控制器来旋转对象。还可以通过缩放控制器来改变对象的大小,通过移动控制器来移动对象。 最后,在脚本中添加代码来控制旋转控制器。例如,可以编写代码使控制器沿着Y轴旋转,或根据鼠标的拖拽来旋转控制器。还可以使用键盘控制器来旋转控制器。 以上步骤可帮助你在Unity中实现拖拽旋转物体的效果。掌握了这些技能,你将能够创建出更加复杂而精彩的游戏。 ### 回答2: Unity中拖拽旋转物体非常简单。首先,我们需要在场景中创建一个物体,比如一个立方体。然后,我们将其选择并拖拽到层次结构视图中。接着,我们点击场景视图中的立方体,从而选择它。 现在,我们可以在场景视图中看到三个箭头。分别是红、绿和蓝色的箭头,代表了物体在空间中的X、Y和Z轴。我们可以通过拖拽这些箭头来移动物体,也可以通过点击物体旁边的圆圈来旋转物体。我们可以按住鼠标左键来旋转物体,也可以按住鼠标右键来平移物体。按住鼠标中键可以放大和缩小物体。 如果需要更精确的控制,我们可以使用GameObject菜单中的旋转和平移选项,或者使用快捷键W(移动)、E(旋转)和R(缩放)。 总之,Unity的拖拽旋转物体非常方便,可以通过鼠标和快捷键来进行控制,从而快速创建我们需要的场景。 ### 回答3: Unity引擎是一款非常强大的游戏开发引擎,它支持多种交互功能,其中最基本的是拖拽和旋转物体。 拖拽物体需要用到Unity的Transform组件,它是每个游戏物体上都有的组件。拖拽物体,首先需要确保选中了合适的物体,并且该物体的Transform组件被打开。在场景视图中点击选中该物体,然后可以通过点击并拖拽标识该物体的小圆圈,来将物体移动到新的位置。同时,可以在Inspector面板中手动修改该物体的Position属性值来实现位置的修改。 旋转物体也需要用到Transform组件。在场景视图中选中需要旋转物体,在该物体的Transform组件中找到Rotation属性。通过手动修改该属性的值或者直接在场景视图中点击并拖动物体上的小圆球来旋转物体。 需要注意的是,旋转的方向会根据圆球的位置而不同,例如,在圆球上方旋转时,物体会围绕X轴旋转;在圆球左边旋转时,物体会围绕Y轴旋转;在圆球前方旋转时,物体会围绕Z轴旋转。 以上就是Unity拖拽旋转物体的基本操作方法。通过这些方法,可以轻松实现游戏物体的移动和旋转功能,为游戏开发带来更多的交互性和用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值