万向节锁问题

  • 以前一直听说过万向节锁
  • 当时觉得问题太难就没去认真分析
  • 最近在B站找了一些视频看懂了。
  • 简单来说
  • 旋转是有顺序的,比如transform面板有三个旋转分量,你先调整y,再调整x,最后调整z
  • 按照正常思路来说,调整x轴是在y轴旋转的基础上的。所以应该有三个旋转自由度
  • 但是用户调整顺序和程序运行顺序是不一样的。
  • 程序会等玩家输入完毕后,将所有角度旋转按照他自己的顺序x,y,z作为一个变换,初始状态—>最终状态
  • 无论你怎么调整,x都是相对于初始姿态的旋转Rx,而y轴再对Rx进行旋转90°就把x轴的旋转效果变换到了z轴,这个时候z轴再旋转就和x轴效果重合
  • 损失了一个自由度
举例
  • unity的旋转y-x-z的顺序

  • 先按照y轴旋转20°
    在这里插入图片描述

  • 再按照x轴旋转90度,就把y轴刚才的旋转状态挪动到了z轴
    在这里插入图片描述
    在这里插入图片描述

  • 可以看到这个时候z轴的旋转就和y轴的旋转相同,损失了一个自由度

  • 这个就是万向节锁了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值