RTS游戏的寻路算法,如何绕开友军阻挡?

我们在开发游戏的时候经常会遇到这样的问题,当我们寻路的时候,其它人也在寻路,如何避免不从其它人的位置穿过。这个叫做动态避障,目前主流的解决方案就是RVO。本节我们来介绍一些Unity 实现RVO的相关资料,后续在详细的讲解ROV算法的原理。

先給大家介绍一个RVO2 Library 的项目,这个项目实现了动态避障的算法。

RVO2 Libray项目地址如下: https://gamma.cs.unc.edu/RVO2/

它有两个版本,一个是C++版本,一个是C#的版本,所以基本上RVO的这库可以用到任意的游戏客户端或服务端种,比如JAVA的服务端,我们可以用C++的版本来做native调用即可,也可以直接翻译C#代码为Java,这个工作量比较小。具体的大家可以去官网了解一下。

对于Unity开发者而言,基于RVO2项目,做了一个Unity的项目工程与demo, 这个可以作为我们用到游戏种的参考。这个项目的名字是RVO2-Unity,在github上的下载地址是:

https://github.com/warmtrue/RVO2-Unity


你可能感兴趣的:(RTS游戏的寻路算法,如何绕开友军阻挡?)