Unity - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(197评价)
价格: 4431.00元
如何实现2d游戏中不同单位不同路径的寻路
grf123发起了问答2017-06-14
5
回复
2067
浏览

如题,想要做一个类似三国志10那样的游戏,大地图寻路,需求是主角可以在大路上移动,然后如果玩家鼠标点击,也可以在没有路的山、水、林、草原之类地形上寻路,以做探险任务之类的。

同时,军队会同时寻路,但是军队只能走大路。另外其他的NPC也会同时寻路,其他NPC也会有走小路和大路的情况。

我是用navmesh2d这个插件来做的,但是遇到问题是一次只能基于一个设置的情况来bake,bake之后只能要么满足主角的寻路方案,要么满足军队的寻路方案。

考虑下来,我的场景并不需要动态烘焙的情况,毕竟场景就是一个场景。主要是同时满足多套寻路方案。也不是动态修改障碍物的情况,如果动态修改障碍物,那么满足了主角的寻路方案的同时,也会破坏军队的寻路方案。找了好几个寻路插件,都是基于以上两个思路来做的。

自己的一个思路是是否能够将烘焙出来的方案存储,在实际中根据游戏物体的不同加载不同的寻路方案就好了?就像常见的那种,飞机是一个寻路方案,坦克是一个寻路方案,小兵是一个寻路方案之类的。

我觉得如果用A*应该也可以实现,但是觉得A*实现起来有些麻烦。也没有仔细研究过。所以请教下老师,我这个需求,有什么方便的方法能够实现吗?简单一些的……实在没有,复杂的方案也勉强可以接受啦。。。。

还有个情况忘记说了:

就是主角的寻路,如果玩家点击的地方大路不可达,则先大路寻路到最近位置,然后才直线移动。而不能按照大地图小路可达的情况直接走直线过去。同样如果玩家位于大路不可达的地方,寻路到其他地方也是一样,要先走到大路上,然后再通过大路的寻路到目的地,而不是直接直线就冲过去了。

如果没有现成的插件,也请老师给个思路如何实现上述需求吧,拜谢!

 

 

 

 

 

所有回复
  • siki 2017-06-14

    https://www.assetstore.unity3d.com/en/#!/content/87744

    这个插件支持动态的导航,你可以试下,切换导航的种类的时候,就重新生成下导航,具体可以研究下

    • grf123 2017-06-15

      太感谢了,老师果然牛逼。这个插件确实能实现我的需求。

      (0) 回复
    • grf123 2017-06-15

      这个插件太强大了,再次感谢老师!!!

      (0) 回复
    还有-3条回复,点击查看
    你还没有登录,请先登录注册
  • sdhexu 2017-06-14

    这个貌似分层就可以吧。。

    • grf123 2017-06-14

      分层在3d中才可以用,2d中游戏物体加了sprite render。3d导航需要mesh render,这两个冲突。

      (0) 回复
    还有-4条回复,点击查看
    你还没有登录,请先登录注册
发表回复
你还没有登录,请先 登录或 注册!