动态障碍物操作详细解析
2017-08-26 21:13
155 查看
放入一个plan平面并进行烘焙
再设置一个空物体,里面放入三个障碍物
给三个障碍物挂上Nav MeshObstacle组件
建立游戏对象
挂上Nav Mesh Agent组件
publicclassNavigationTest :MonoBehaviour {
privateNavMeshAgent agent;
// Use this for initialization
void Start () {
agent = GetComponent<NavMeshAgent>();
}
// Update is called once per frame
void Update () {
Ray ray =Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
//不多写参数 就让鼠标点到哪走哪
if (Physics.Raycast(ray,out
hit))
{
if (Input.GetMouseButtonDown(0))
{
agent.SetDestination(newVector3(hit.point.x,agent.transform.position.y,hit.point.z));
}
}
}
}
注释:设置障碍物
Move Threshold 移动某个距离进行烘焙
Time To Stationar 物体在某个位置停止一定时间后在烘焙
Carve Only Statio 勾选后不会实时烘焙但是会跟随上面两个条件进行烘焙
再设置一个空物体,里面放入三个障碍物
给三个障碍物挂上Nav MeshObstacle组件
建立游戏对象
挂上Nav Mesh Agent组件
publicclassNavigationTest :MonoBehaviour {
privateNavMeshAgent agent;
// Use this for initialization
void Start () {
agent = GetComponent<NavMeshAgent>();
}
// Update is called once per frame
void Update () {
Ray ray =Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
//不多写参数 就让鼠标点到哪走哪
if (Physics.Raycast(ray,out
hit))
{
if (Input.GetMouseButtonDown(0))
{
agent.SetDestination(newVector3(hit.point.x,agent.transform.position.y,hit.point.z));
}
}
}
}
注释:设置障碍物
Move Threshold 移动某个距离进行烘焙
Time To Stationar 物体在某个位置停止一定时间后在烘焙
Carve Only Statio 勾选后不会实时烘焙但是会跟随上面两个条件进行烘焙
相关文章推荐
- 【转载】Jedis对管道、事务以及Watch的操作详细解析
- C/C++动态分配与释放内存的区别详细解析
- Quartz任务调度存储与持久化操作配置详细解析
- iOS清除缓存详细解析、app文件路径操作,真机沙盒理解
- jquery iframe操作详细解析
- C语言文件操作函数freopen详细解析
- PHP XML操作的各种方法解析(比较详细)
- java动态代理(jdk与cglib)详细解析
- 动态代理举例及详细解析
- Quartz任务调度存储与持久化操作配置详细解析(1)
- C/C++动态分配与释放内存的区别详细解析
- Android:SQLiteOpenHelper类(SQLlite数据库操作)详细解析
- C++中对象的赋值与复制操作详细解析
- C++中对象的赋值与复制操作详细解析
- jquery中的过滤操作详细解析
- iOS清除缓存详细解析、app文件路径操作,自己个人对于沙盒的理解
- Quartz任务调度(3)存储与持久化操作配置详细解析
- PHP XML操作的各种方法解析(比较详细)
- 超详细vim操作解析
- Quartz任务调度(3)存储与持久化操作配置详细解析