当前位置: 首页 > news >正文

陕西建设网站电子政务大厅wordpress 安全防护

陕西建设网站电子政务大厅,wordpress 安全防护,东莞服务好的营销型网站建设,购物网站单页模板向量的加减法本文就不再赘述了#xff0c;本文侧重介绍脚本中的向量写法 一、向量的数乘 定义#xff1a;k(x,y,z)(kx,ky,kz) 若向量长度为L#xff0c;k取1/L#xff0c;就恰好能让原向量长度变成1#xff0c;变成了单位向量#xff0c;这称为向量的标准化 。 由于长度…向量的加减法本文就不再赘述了本文侧重介绍脚本中的向量写法 一、向量的数乘 定义k(x,y,z)(kx,ky,kz) 若向量长度为Lk取1/L就恰好能让原向量长度变成1变成了单位向量这称为向量的标准化 。 由于长度为1的向量很适合表示方向因此经常会将向量标准化下面举几个例子: Vector3 anew Vector3(2,1,0); Vector3 naa/a.magnitude; //a.magnitude是a的长度术语叫做“a的模” //以上写法等价于 Vector3 na2a.normalized; // Vector3 na3Vector3.Normalized(a); // Vector na4(1/a.magnitude)*a; 以上代码用到的向量的两个常用属性magnitude模和normalized标准化。 二、向量的点乘 定义a · b|a| · |b|cosα x1,y1,z1) · (x2,y2,z2)x1x2y1y2z1z2 物理意义投影距离 点乘的结果不再是向量而是一个数这点要注意一下。 点乘满足交换律因此ab谁先谁后都一样。 下面介绍相关脚本 Vector3 anew Vector3(2,1,0); Vector3 bnew Vector3(3,0,0); Vector3 dir_bb.normalized; float paVector3.dot(a,dir_b);//dot是点乘函数 三、向量的叉乘 定义|a × b||a||b|sinα 与点乘不同叉乘结果是一个新的向量方向垂直于原来两个向量构成的平面具体结果用左手定则判断用左手还是右手与坐标系有关。 左手定则手掌沿第一个向量放平向第二个向量我全拇指的指向即叉乘方向。如下图 叉乘不满足交换律若交换则叉乘方向变相反。即a×b-b×a 叉乘在游戏开发中的一个重要用途求法线。 在游戏开发中平面要区分正反两面因此法线用向量表示法线方向就是平面方向。一般发现长度固定为1以便计算。 用叉乘可以很方便地获取法线。例如玩家站在地形的一个平面上想要获取平面的法线需要先用启发方法获得平面上的任意两个向量只要这两个向量夹角不为0或180取它们的叉乘就可以获得法线向量对镜脚本写法如下 Vector3 anew Vector3(2,1,1); Vector3 bnew Vector3(3,0,2); Vector3 nVector3.Cross(a,b);//n为ab平面的法线。Cross为叉乘 nn.normalized;//将n标准化 四、Vector3 Vector3属于struct结构体这部分给出Vector3的属性、方法、运算符 Vector3属性 字段或属性说明x,y,z略normalized得到标准化向量单位向量magnitude得到向量的模是标量sqrMagnitude得到模的平方。运算速度比得到模要快因为少一部开方运算。在仅比较两个长度不需要求精确求出长度时非常有用 Vector3方法 方法说明Cross 向量叉乘 Dot向量点乘Project计算向量在另一个向量上的投影Angle返回两个向量的夹角Distance返回两个向量的距离 Vector3的运算符有还有-*/。 五、向量坐标系的转换 在Unity中可以使用transform.TransformPoint方法将局部坐标转换为世界坐标也可以使用transform.InverseTransformPoint方法将世界坐标系转换为局部坐标系。 其实也有向量的坐标系转化函数分别是transform.TransformDirection()和transform.InverseTransformDirection()。 下面举一个实例说明如何通过全局坐标系和局部坐标系改变物体的运动方向 1.创建一个Cube设置旋转的Y为300 2.新建脚本CoordinateLocal.cs,内容如下 using UnityEngine; public class CoordinateLocal:MonoBehaviour{void Update(){transform.Translate(Vector3.forward*Time.deltaTime);} } 将脚本挂在Cube上运行游戏物体会沿着自身的z轴方向慢慢移动 3.新建脚本CoordinateWorld.cs,内容如下 using UnityEngine; public class CoordinateWorld:MonoBehaviour{void Update(){Vector3 vtransform.InverseTransformDirection(Vector3.forward);transform.Translate(v*Time.deltaTime);} } 将新建的脚本挂到Cube上取消勾选原来的脚本运行游戏发现Cube沿着世界坐标系的z轴方向移动了。下面解释一下原因 transform.Translate函数默认是以局部坐标系为基准的因此在脚本1中虽然参数为Vetor3.forward但依然会以局部坐标系的前方为准。 第2个脚本稍微复杂一些。由于Translate默认以局部坐标系为准因此要把世界坐标系的forward转化为局部坐标系的向量v然后用v来作为Translate的参数
http://www.tj-hxxt.cn/news/130412.html

相关文章:

  • 外国个人主页网站欣赏wordpress中文怎么设置中文
  • 空港经济区内的建设工程网站济南wordpress 建站
  • 财政局网站开发合同安徽网站建设系统
  • 长春地区网站建设亚星网站代理
  • 北辰苏州网站建设文化馆的网站怎么建设
  • 进口网站建设重庆江北网站建设公司
  • php模板网站一般使用的分辨率的显示密度是多少dpi?
  • 做网站的群建立网站第一步
  • js网站开发教程网站开发线上
  • 百度安全网站检测北京建王园林工程有限公司
  • 外贸cms建站宣传型商务网站
  • flash企业网站熵网站
  • 北京的网站建设收费标准广推科技(北京)有限公司
  • 做生意在哪个网站做如何分析网站建设
  • 清华大学有关网站建设的书做哪个网站零售最好
  • 可做长图的网站织梦如何做中英文网站
  • 优秀的字体设计网站自建域名
  • 中恒诚信建设有限公司网站360街景地图最新版
  • 大型网站架设需要考虑哪些问题淘宝怎么做引流和推广
  • 做网站电话说辞怎么买到精准客户的电话
  • 滁州做网站的公司微信分销系统有哪些平台
  • 机关网站建设和运行情况汇报电子商务网站建设的难点
  • 网站源码商城网站服务公司有哪些
  • 开题报告旅游网站开发3d建模需要什么学历
  • 决定网站打开的速度吗网站被做站公司贩卖
  • 甘肃机械化建设工程有限公司网站赣州章贡区哪里要招工
  • 网站收录大量下降一个网站建设的课程设计书
  • 招聘网站设计论文网站开发团队投入
  • 在线视频网站开发wordpress超链接颜色
  • 公司对比网站济南软件开发外包公司