1.物体的直接旋转

transform.Rotate();这个函数是在当前状态下网某个方向旋转。并且这里可以设置为世界空间或者自身空间。

transform.rotation;这里可以通过直接定义一个quaternion变量然后赋值。

2.协同旋转

首先定义父亲物体以z轴为轴心旋转,子物体以自身空间的x轴旋转,并且两者的旋转角度数要一致,或者有某种函数关系。此时如果用rotate会因为要使用deltaTime导致相当麻烦,所以这里用欧拉角构建quaterni变量赋值rotation。但是如果用quaternion会发现父亲物体和子物体的旋转会发生错误,因为子物体除了自身旋转还要应用父亲物体的旋转,所以为子物体构建由rotation01之后,用父亲物体的rotation02取乘以rotation01,即rotation=rotation02*rotation01,结果rotation才是子物体正确的rotation。注意这里的乘以顺序不能颠倒,不同的去看一百遍线性代数。

3.旋转的角度值问题

获取的欧拉角的值实在0到360度之间。vector3获得的两个向量的有符号角度是-180到180。inspector显示的角度值如果代码或者场景控制物体旋转,显示的时0到180,但是手动控制可以是任何值。

转载于:https://www.cnblogs.com/xiaoahui/p/10995578.html

Unity旋转问题的总结相关推荐

  1. Unity旋转之四元数(开关车门,第一人称控制器)

    在Unity中,常用的旋转方式有三种,分别是transform.Rotate(参数),欧拉角旋转,和今天我们要聊的四元数.虽然四元数理解起来不如欧拉角那么直观,但是它却能很好的避免了万向锁问题,而且在 ...

  2. Unity旋转值Quaternion交换旋转轴

    最近项目上用到一款AR眼镜,其陀螺仪的给出的旋转值与预期有差异.如戴上眼镜左右转动头部时,视角却是沿着脸部朝前的轴旋转的.经过整理发现陀螺仪与Unity相机各轴正确对应关系如下: x(陀)->- ...

  3. unity 旋转欧拉角 万向锁 解释

    万向锁 一直困惑我很久....原因出在这里,我以为欧拉角旋转是以模型坐标(齐次坐标系)为旋转轴.问题就来了,无论旋转那个轴,其它两个轴也会相应的变化,下面看图: 根据上面的说明两个旋转面(圆圈)怎么会 ...

  4. Unity旋转之左手坐标系

    几何坐标系分为左手坐标系和右手坐标系,分别适用左手法则和右手法则. 左手坐标系和右手坐标系 上图分别是左手坐标系和右手坐标系 二维坐标系我们习惯X轴朝右,Y轴向上,所以左手坐标系和右手坐标系也可以是 ...

  5. Unity 旋转欧拉角及万向锁问题

    先说明unity 3D欧拉角的旋转顺序(父子关系)是y-x-z.即旋转y轴x和z轴都变,旋转x轴只有z轴变化,旋转z轴其它轴不变. 模型坐标系 又称物体坐标系. 与特定的物体关联,每个物体都有自己特定 ...

  6. Unity 旋转人物在设定的角度看向镜头(平滑转动)

    Head注释正前方 实现Unity 3D人物展示 Palyer看向正面 using AUCommunication; using ChangeParts; using UnityEngine; usi ...

  7. Unity旋转基础——二维旋转与三维旋转

    Steven M. LaValle 的 Virtual Reality 这本书中讲了关于几何模型变换以及显示的知识,跟网上的资料比这本书里讲的比较简洁,于是想做一个总结.本博客参考了<Virtu ...

  8. 解决Unity旋转改变局部坐标问题

    摘要:当我们制作游戏角色控制器的时候,经常会编写角色的旋转,但我们运用欧拉角.四元数旋转的时候,经常会出现按我们所不希望的局部坐标旋转,又或者想要在角度的世界坐标系和自身坐标系之间灵活转换使用,为此我 ...

  9. Unity旋转到指定角度和旋转到指定向量的问题,Z轴方向向量为V1,Y轴方向向量为V2

    有一个物体,现在我们需要将它的Z轴方向向量为V1,Y轴方向向量为V2. 前提V1垂直V2. 如何实现呢,看代码. transform.forward = V1; float angle = Vecto ...

最新文章

  1. 制造企业数字化转型的这些大坑不避开,上岸有点悬!
  2. UVa 10603 Fill (BFS+优先队列)
  3. python英文语义角色标注_【顶会100秒】基于相似词计算的旅游词汇语义分析
  4. ERP流程入门_从会计分录理解企业基本流程[转]
  5. 虚幻的东西_世间一切皆为虚幻
  6. 垃圾回收机制GC知识再总结兼谈如何用好GC(转)
  7. python中编完类后到实例编写_Python 和 JavaScript 的区别是什么?
  8. mmh学长的实验器材
  9. TurboMail 邮件系统V5.2.0新品发布会盛况直击
  10. matlab中找不到指定的模块,Matlab装好后启动提示找不到指定模块如何解决?很急...
  11. VB2010(17)_消息对话框MessageBox
  12. 【预测模型】基于VMD结合Elman神经网络预测数据matlab代码
  13. 由内而外全面造就自己(七)
  14. IDM下载出现503错误
  15. [阿毛]Ubuntu 16安装CH340串口驱动
  16. java flyway,Flyway详解及Springboot集成Flyway的详细教程
  17. win10文件资源管理器卡死未响应的完美解决方法
  18. 一份价值百万的大数据分析报告如何炼成?
  19. “Word文件设置了多级列表,却还是不能创建目录”的解决办法
  20. hash路由实现微信登陆后的重定向

热门文章

  1. maven私有库搭建
  2. 数据恢复:解决ORA-600[kghstack_free2][kghstack_err+0068]一例
  3. pip安装模块警告InsecurePlatformWarning: A true SSLContext object is not available.
  4. IntelliJ 创建main函数快捷
  5. Random类(Java中的随机类)
  6. 40岁后才明白的道理:人一生奋斗余地很有限--转载
  7. 用 PHP 和 MySQL 保存和输出图片
  8. Android 分享机顶盒项目的封装类《GridView》
  9. hadoop分布式集群搭建
  10. 【干货】史上最全的Tensorflow学习资源汇总,速藏!