huode
huode
d
实践视频
通过SendMessage可以跟物体内的的组件任意发送
跟物体的父物体发送消息包括自己
SendMessageUpwards("方法名")
跟物体的子物体发送消息包括自己
BroadcastMessage("方法名")
需要自己去测试
测试成功 孙子也能调用
如果使用gameObject.SendMessage("方法名")
发送消息时该方法不存在启动时就会报错
范围很大 一个物体的所有组件含有"方法名"都会被发送消息
gameObject.sendMessage("方法名")
方法重载
SendMessage("方法名",传入的参数 Object)
方法名如果shi
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)