gameObject.SendMessage("方法名")
发送消息给自己 跟调用方法差不多
gameObject.SendMessage("方法名")
发送消息给自己 跟调用方法差不多
间隔检测键盘按下后 只触发一次
Input.GetButtonDown("按键名")
一般和if联合用
也可以直接获取键盘键
input.GetKeyDown("KeyCode.Q")Q键被按下
input.anyKeyDown任意键
修改Getbutton("获取到的按钮") 按钮名可以更改
按钮名跟需要按下的键都可以更改
一般这个监听事件是和if作用的
判断鼠标左右键是否按下
if(GetButton("Fire1"))
{
DeBug.log("鼠标左键按下")
}
if(GetButton("Fire2"))
{鼠标右键
连续监听事件
Input.GetAxis("Mouse X")水平
Input.GetAxis("Mouse Y")垂直
渐变速度
水平Input.GetAxis("Horizontal");
垂直Input.GetAxis("Vertical");
简单的速度
水平:Input.GetAxisRaw("Horizontal")
垂直:Input.GetAxisRaw("Vertical")
Vector2.Lerp 速度 先快后慢
vector2.moveTowards匀速
平滑阻尼
xx.positon=vector2.SmoothDamp(xx.position,xxx.position,ref currentvelocity,1)
1是代表平滑时间
vector2 currentvelocity=new vector2(1,0)
一般使用 vector.moveTowards
xx.position=vector2.MoveTowards(初始位置,末尾位置,0.05f(移动速度) )
创建两个transform变量
将两个物体拖拽进去
在update函数中
修改
需要移动的物体
xx.position=vector2.lerp
(xx.position,xxx.position,0.01f)
两个向量的加减
va+-vb
判断 va==vb是一个向量吗
两个向量有符号角度
vector2.SignedAngle(va,vb)
向量线性插值法
vector2.Lerp(va,vb,0.5f);
不知道
vector2中的静态方法
取两个向量在各个方向上的最大分量组成的新向量
vector2.Max(v1,v2)
同理得 vector2.Min(v1,v2)
有关vector中的静态方法
vector2 v2=new vector2(1,1)
vector2 v22=new vector2(1.0)
两个向量无符号夹角 用 Vector2.Angle(v2,v22)
两点之间的距离是 vector2.Distance(v2,v22)
向量v2 ,v22的点积是 vector.Dot(v2,v22)
给位置赋值
可以用transform.position来接收
transform.position=new vector2(2,2)
相互接收
vector2 vector2=transform.position;
值类型和引用类型
结构体是值类型 值类型是两块内存空间
当yourStruct=mystruct之后再改变yourstruct中的属性 mystruct内属性不会变
class类是引用类型 两个类所处的是一个内存空间
当yourclass=myclass之后改变yourclass的属性
myclass的属性跟着改变
无法单独改变transform.position的一个值
用成员变量来单位化向量 原向量值不变
v2.normalized v2本身值不变
用成员方法来单位化向量 原向量值改变
v2.Normalize() v2值改变
设置v2的值
v2.Set(x,y)
公共函数
判断两个向量是否相等
v2.Equals(new vector2(1,1))
(函数一般首字母大写,成员变量一般首字母小写)
构造函数
vector2 v2=new vector(2,2)
成员变量
向量v2的模长是
v2.magnitude调用成员变量
需要的时候才学 有暖用