Unity3D:详解注视旋转(Quaternion.LookRotation)

Unity3D:详解注视旋转(Quaternion.LookRotation)

  275人阅读  评论(0)  收藏  举报
  分类:
Unity3D(1) 

        在编写怪物位置看到目标点,之前一直认为因该这样写,Quaternion.lookRotation(Target.position)

    坑爹的是,它是错误的写法,怪物不是看到目标点,没有Enemy.postion可以理解Enemy认为自己在原点,但是LookRotation参考的是世界坐标轴,Enemy也不在原点,可证将Enenmy放到世界坐标系[0.Y.0]上。

 

     怪物看到的也是目标点,正确写法是Quaternion.lookRotation(Target.positon-Enemy.position)

                                       

(Unity3d的坐标,相对这张图片X是横轴,Z是竖轴,下面暂时忽略Y)

从世界坐标系[0.0]分别连接点Target,Enemy坐标点得到两个向量(0Target,0→Enemy),绿色向量(EnemyTarget)代表怪物看到目标点。

由向量加减可得,(0Target-0-Enemy=Enemy-Target)。故Quaternion.LookRotation(Target.position-Enemy.position)

【写博客,把自己知道的整理成笔记,分享出去。BY EvilBOX】

猜你喜欢

转载自hypercube.iteye.com/blog/2320466