• 判断物体相对自己的方位


    判断目标相对自身的方位

     

    1.判断目标在自己的前后方位可以使用下面的方法:

       Vector3.Dot(transform.forward, target.position)

           返回值为正时,目标在自己的前方,反之在自己的后方

    2.判断目标在机子的左右方位可以使用下面的方法:

       Vector3.Cross(transform.forward, target.position).y

          返回值为正时,目标在自己的右方,反之在自己的左方

     

    3.在这里顺便解说下关于空间向量的点积和叉积:

    A.点积 
      点积的计算方式为:  a·b=|a|·|b|cos<a,b>  其中|a|和|b|表示向量的模,<a,b>表示两个向量的夹角。另外在 点积 中,<a,b>和<b,a> 夹角是不分顺序的。 
      所以通过点积,我们其实是可以计算两个向量的夹角的。 
      另外通过点积的计算我们可以简单粗略的判断当前物体是否朝向另外一个物体: 只需要计算当前物体的transform.forward向量与 otherObj.transform.position 的点积即可, 大于0则在前方,否则在后方。

    B.叉积 
      叉积的定义: c =a x b  其中a,b,c均为向量。即两个向量的叉积得到的还是向量! 
      性质1: c⊥a,c⊥b,即向量c垂直与向量a,b所在的平面 。 
      性质2: 模长|c|=|a||b|sin<a,b> 
      性质3: 满足右手法则 。从这点我们有axb ≠ bxa,而axb = – bxa。所以我们可以使用叉积的正负值来判断向量a,b的相对位置,即向量b是处于向量a的顺时针方向还是逆时针方向

     

  • 相关阅读:
    利用Delegator模式保护javascript程序的核心与提高执行性能 (转)
    工作流
    蓝色垂直滑动效果的CSS导航
    JavaScript 多级联动浮动菜单 (第二版) (转)
    虚线效果水平CSS菜单
    红色玻璃效果水平CSS菜单
    CSS绿色水平多级下拉菜单
    ASP.NET中的Path(转)
    黑色与红色形成的水平CSS导航菜单
    紫罗兰水平CSS菜单
  • 原文地址:https://www.cnblogs.com/leesymbol/p/5896841.html
Copyright © 2020-2023  润新知