算法或发电机或例子道路车道/和网络

问题描述:

我想生成赛车游戏的道路,例如算法或发电机或例子道路车道/和网络

(x = 0, y = 0), (x = 0, y = 5), (x = 0, y = 10) ... (x = 0, y = 100) 其垂直车道。

(x = 0, y = 0), (x = 5, y = 0), (x = 10, y = 0)其水平车道。

我需要的大车道(500点为例)与转弯和乐队的例子。手动生成每个乐队并平稳转弯的道路非常困难。如果有任何生成器/示例/算法做到这一点更简单?我想有一组形成线道路的点(点依次连接,一个接一个地)

+1

你不必担心道路相交的自己?即玩家是否只从驾驶角度观看道路而不是地图?如果他们没有看到地图,他们很可能不会注意到,如果道路实际上是循环回来并相交,只要您只在当前位置前后提供一定数量 – samgak

+0

现在我需要设置车道。现在每个车道 - 点数据集 – Naduxa

你点的定义可以保持相对较短。如果这只是一个平滑渲染的问题,那么你可以使用像bezier surface这样的东西来从点定义渲染平滑曲面。

也有变化,以弯曲表面,例如NURBS。看看这个OpenGL的tutorial渲染NURBS曲面(当然这取决于你用什么;哪个框架等,如果是只有纯算法然后贝塞尔曲线仍然是有效的,虽然)。

+0

是否准备好使用它的工具/仪器?我不需要非常准确,现在我测试我的赛车行为,并手动生成它非常可怕 – Naduxa

+0

它将从可视化的形式(从手动例如一个车道手动绘制)从可视化内衬到2-D点格式转换,真的很好这不是服务吗? – Naduxa

+0

@Naduxa你需要在这里更具体。这不是真正的工具或仪器的主题,因为您的问题是关于算法。 –

此使用插值看到

所以每个直 “通道” 将仅积2分,无论大小。最重要的是,你可以通过创建路径:

  1. 手动编辑

    你可以用鼠标这样的事情很容易地编辑:follow mouse和FIR滤波器(平均)平滑点。

  2. 随机路径

    我会选择要么喜欢你开始与一些位置和方向的图形龟。添加点,然后随机移动,前进的移动将有最大的概率,转向的概率较小。

    或者另一种选择预设的多边形路径,并把它添加随机噪声的开始... ...这是类似的路径循环更好。见:

    如果你想要的东西寻找现实然后创建随机地形高度图所示:

    一些然后选择随机启动合理的海拔,只需跟随eleva (所以道路将有+/-相同的高度,直到某个死角被击中(小山......),然后决定上升或下降,直到再次击中“平坦”区域并再次跟随该高程。它类似于此:

    地形方法具有可以使用它作为网为您的游戏利益。

    终于可以在一起的方法混合...