【第22期】观点:IT 行业加班,到底有没有价值?

Vector3.Dot 与Vector3.Cross

原创 2015年07月10日 17:32:40

Vector3.Dot(点积) :

点积的计算方式为:  a·b=|a|·|b|cos<a,b>; 其中<a,b>和<b,a> 夹角不分顺序;

物理学中点积用来计算力沿物体运动的方向所做的功:W=F*S=|F|*|S|*cosθ;功是数量,故点积又称数量积,无向积等;

通过点积的计算我们可以简单粗略的判断当前物体是否朝向另外一个物体: 只需要计算当前物体的transform.forward向量与 (otherObj.transform.position – transform.position)的点积即可, 大于0则面对,否则则背对着。

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

   Vector3.Dot(transform.forward, target.position)
       返回值为正时,目标在自己的前方,反之在自己的后方


此处AimDirection默认为0.8,即direction<0.8,目标物体不在对面,解锁;


与Vector3.Cross(叉积):

叉积的计算方式为:两个向量的叉积a×b=︱a︱︱b︱sin<a,b> =|c| ;

在物理学里,用叉积表示一个力对一个定点的力矩 M=r×F;︱M︱=︱r︱︱F︱sinθ;力矩M是向量,因此叉积又称向量积,有向积等;c= a×b,c的方向用右手法则:将三个向量a,b,c附着于同一个起点,把右手的拇指顺着a的方向,食指顺着b的方向,则中指的指向就是c的方向。

判断目标在自己的左右方位可以使用叉乘的方法:   Vector3.Cross(transform.forward, target.position);      返回值为正时,目标在自己的右方,反之在自己的左方



            
版权声明:本文为Cxihu田树东原创文章,转载请注明出处。 举报

相关文章推荐

unity3d Vector3.Dot Cross Angle 用法记录

今天为一个角度问题找了很多算法用法资料。结果发现网上几乎全来自一个源头。都是一样的。真的是文章一大抄!操! 找到一篇写得比较实用,正确的: 蓝色问题是我补充的用法 1.已知两个向量dir...

关于Unity3d中Vector3.Dot方法

在网络上关于Vector3.Dot的解释都不清除,其实Vector3.Dot方法很简单。 Vector3.Dot也叫点积,它返回1个-1.0~1.0之间的一个值。网上确实也这么说。但是这个值表示...

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

Unity3D Vector3.Dot 点乘 与 Vector3.Cross 叉乘

一、点积(又称“数量积”、“内积”)     1、理论知识    在数学中,点积的定义为a·b=|a|·|b|cos 【注:粗体小写字母表示向量,表示向量a,b的夹角,取值范围为[0,π]】。从定...

Unity3D之Vector3.Dot和Vector3.Cross的使用

在Unity3D中,Vector3.Dot表示求两个向量的点积;Vector3.Cross表示求两个向量的叉积。   点积计算的结果为数值,而叉积计算的结果为向量。两者要注意区别开来。   在几何...
  • ml3947
  • ml3947
  • 2014-05-30 22:22
  • 8240

Unity3D之Vector3.Dot和Vector3.Cross的使用

原文地址:Unity3D之Vector3.Dot和Vector3.Cross的使用 在unity3D中,Vector3.Dot表示求两个向量的点积;Vector3.Cross表示求两个向量的叉积。 ...

Unity3D Vector3.Dot 点乘 与 Vector3.Cross 叉乘

一、点积(又称“数量积”、“内积”)     1、理论知识    在数学中,点积的定义为a·b=|a|·|b|cos 【注:粗体小写字母表示向量,表示向量a,b的夹角,取值范围为[0,π]...
  • azumia
  • azumia
  • 2015-07-16 13:45
  • 1662

C++实现一个Vector3空间向量类

Vector2,3,4类在DirectX中都有现成的可以调用,不过要实现其中的功能其实也不难,也都是一些简单的数学知识罢了。 本文用C++实现一个简单的Vector3类的功能,暂时有的功能是: 1 + - * /算术运算 2 向量的数量积,又叫:点乘 3 向量的向量积,又叫:叉乘 4 向量...
  • jgsj
  • jgsj
  • 2013-11-23 15:05
  • 77

Unity3D Vector3.Dot 点乘 与 Vector3.Cross 叉乘

一、点积(又称“数量积”、“内积”)     1、理论知识    在数学中,点积的定义为a·b=|a|·|b|cos 【注:粗体小写字母表示向量,表示向量a,b的夹角,取值范围为[0,π]】。从定...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)