今天我们进行了周测,下面是我们今天的一些问题。
1、鼠标左键点击一个位置,主角走到那个地方
private NavMeshAgent agent;
//声明一个agent对象
void Start () {
agent =GetComponent <NavMeshAgent >();//获得NavMeshAgent组件
}
void Update () {
if (Input.GetMouseButtonDown(0))//按下鼠标左键
{
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);//定义一条射线
RaycastHit hit;//声明碰撞触发
if (Physics.Raycast(ray, out hit))//做出判断
{
agent.SetDestination(hit.point );//目的地是鼠标点击的地方
}
}
}
2、相机跟随效果
public Transform a;//声明游戏对象a的位置
float smooth = 3f;//声明一个平滑smooth,并给他赋值3
void Update () {
Vector3 pos = a.position + new Vector3(3,3,0);
//声明一个坐标,它等于要跟随的游戏对象a的坐标加上(相机的坐标减去阿德坐标)。
transform.position = Vector3.Lerp(transform.position, pos, smooth * Time.deltaTime);
//摄像机的新位置 调用lerp方法,里面有3个变量,一个是以前的地方,一个是即将到达的地方,还有一个是 平滑过渡
}