从这几部分学习
都是用于提供数学计算的
Mathf是结构体,Math是类
Mathf是Math的第二次封装,更适合游戏开发
第一个参数,如果在第二个和第三个参数之间,就是合法的
如果小于第二个参数,则返回第二个参数
如果大于第三个参数,则返回第三个参数
4的2次方,
2的3次方
结果是2,4,8
true
true
false
true
正数是1,负数是-1
有三角函数计算这部分会在后面专门开个部分讲
先快后慢
2)用法二
匀速运动
做跟随运动的时候,有两种方法,一种是先快后慢,一种是匀速运动
第二种
使用需要传入弧度值
通过三角函数得到的值,得到相应的弧度,就是上面这个函数里传入值
Camera组件里的视口坐标系
如果这个向量不是两个点的向量,则是原点到这个点的距离
v
向量 + 向量 = 新向量
位置 + 向量 = 新位置
向量 + 位置 = 新位置
位置 - 位置 = 向量
向量 - 向量 = 向量
位置 - 向量 = 位置
向量 - 位置 没有意义
向量 * / = 向量
向量 * / 正数 = 方向不变,放大缩小模长
向量 * / 正数 = 方向变反,放大缩小模长
向量 * 0,得到零向量
摄像机一直在物体后方4米,向上偏7米的位置
把target拖入
这样位置是没问题,但是没有看向物体
加一句就行
使用Debug的画线方法
给两个物体画一条射线,将终点 换成变量,在ins里拖入
如果有巡逻怪,他有个视野范围,此时需要计算角度,判断是否在这个视野范围内,需要一个计算公式
1) 计算出两物体的单位向量
2) 用反三角函数得出角度
dot中第一个是起点的单位向量,第二个是终点即起点到终点的向量的单位向量
算出的范围在 0- 180度之间
怎么算出他在左右方向,在后面讲
这个API在 unity中提供两个向量夹角的方法
Vector3.Angle
1)首先判断距离
2)再判断角度
也可以直接用API
同时垂直于A向量和B向量
AXB向量垂直于A和B组成的平面
A X B = -( B X A )
使用函数时参数互换的话得到结果相反
1)
右后和左后同理
2)
首先讲欧拉角
把角度分成按X,Y,Z三个轴进行旋转
所以为什么使用四元数
Q = [cos(角度/2),sin(角度/2)n]
第一种方法(一般不用)
第二种方法(简单记这个)
绕Vector3.right 旋转60度
四元素相乘代表旋转四元数
表示按面朝向旋转
表示没有旋转
一般使用Slerp
start要实时更新
代表两个旋转量的叠加,相当于旋转
返回一个新向量,获得旋转对应四元数的旋转向量
相当于获得了新的方向向量
画条线观测一下
实现了1,3
根据鼠标中间输入修改dis的值,从而修改摄像机离物体的距离
实现了2
实现4 .5