Unity3D游戏开发之自动寻径等.docx

Unity3D游戏开发之自动寻径等.docx

ID:52323020

大小:302.31 KB

页数:11页

时间:2020-03-26

Unity3D游戏开发之自动寻径等.docx_第1页
Unity3D游戏开发之自动寻径等.docx_第2页
Unity3D游戏开发之自动寻径等.docx_第3页
Unity3D游戏开发之自动寻径等.docx_第4页
Unity3D游戏开发之自动寻径等.docx_第5页
资源描述:

《Unity3D游戏开发之自动寻径等.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Unity3D游戏开发之自动寻径等自动寻径指的就是点击场景上的一个位置,角色就会自动寻路过去。中间可能会有很多的障碍物,角色会自动绕过障碍物,最终达到终点。 Navigation:定位,导航 首先先来实现巨魔自动寻径的功能,先在视图中创建地形和障碍物(障碍物可以用cube来代替),然后倒入巨魔。【狗刨学习网】然后点击window---Navigation,这样在属性栏的旁边就会出现Navigation栏。然后设置各个物体的属性:地面和障碍物:然后烘培寻路网格:巨魔:    最后给巨魔添加脚本,代码如下:1.    NavMeshAgentag

2、ent;2.    voidStart(){3.        agent=GetComponent();4.              }5.6.    voidUpdate(){7.        RaycastHithit;8.        if(Input.GetMouseButtonDown(0)){9.            Rayray=Camera.main.ScreenPointToRay(Input.mousePosition);10.            if(Physics.Raycas

3、t(ray,outhit)){11.                agent.SetDestination(hit.point);12.                            }13.                    }14.           }还可以实现巨魔的走和跑,在代码中添加:1.Animatoranim;2.voidStart(){3.       anim=GetComponent();4.    }5.voidUpdate(){6.        if(agent.remaining

4、Distance==0)  7.        {  8.            AnimationToIdle();  9.        }  10.        else  11.        {  12.            AnimationToWalk();  13.        }  14.      }15.publicvoidAnimationToIdle(){16.        anim.SetFloat("idle",1F);17.        anim.SetFloat("walk",0.0F);18.  

5、      anim.SetFloat("run",0F);19.    }20.publicvoidAnimationToWalk(){21.        anim.SetFloat("run",0.0F);22.        anim.SetFloat("idle",0F);23.        anim.SetFloat("walk",1.0F);24.    }25.}最后把脚本拖放到巨魔上。宠物跟随在游戏中,主角的身边总是跟着自己的魔宠,我们也来实验一下,下面我用球来代替魔宠。代码如下:1.publicTransformtarg

6、et;2.    privateNavMeshAgentagent;3.    voidStart(){4.        agent=GetComponent();5.    }1.    voidUpdate(){2.        if(target!=null){3.            agent.destination=target.position;4.        }5.    }把脚本拖放到魔宠上,并且给魔宠添加NavMeshAgent设置障碍物 如图,在添加一个cube充当障碍物设置cube

7、的属性:       这样在巨魔到达障碍物时就走不过去。高空下落游戏中经常有从山上或者是墙上跳下的人物,我也来实验一下这功能。选中要跳落的地点,点击障碍物,在右侧栏中进行设置:  设置完成后出现如下场景:寻路网格层把Navigation里面Bake的Drop Height的值设为0,取消勾选Navigation里面Object的OffMeshLink Generatic,点击Bake;在Navigation里面Layers创建两个Layers(LayersUp,LayersDown)-->Bake设置巨魔属性:一定要注意,创建了两个Layer

8、s,选中两条路径,所选的路径的Navigation里面的Navigation Layer也要改变:这样才能实现巨魔有选择性的寻路。NavMeshAgent属性解释:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。