我刚刚发布了 Infinite Lands 0.9,它添加了一个 新贝塞尔曲线系统 以直接在程序设计出来的世界中生成道路和路径:
- 在 Terrain 上连接点没有距离限制
- 自动在周围展平
- 提取Density Maps,以在纹理融合、对象放置或其他需求中使用它们
- 使用 Catmull-Rom 插值或线性采样进行平滑曲线
贝塞尔曲线可以使用 A*系统,通过 Burst 优化,以在 Terrain 上找到可行的路线标记。可以标记不允许进入的区域,以让路线绕过它们(不在水下,某些山脉上);生成额外的成本地图,以使区域更昂贵穿过(湿润,靠近敌方据点,首选某些生物群落);或仅使用高度地图,偏好最小垂直移动。
在幕后,贝塞尔曲线的边界使用了 R-Tree 进行高效查找和采样。
Infinite Lands 0.9 中有很多其他改进:
- 图重写: 从递归结构中移除。 这提高了性能,简化了调试,使得支持更复杂的图。
- 图编辑器改进: 网格锁定,新的快捷键,清晰错误,更好的输出,和一般的易用性升级
- 运行时世界采样: 使用新世界数据存储,在世界坐标中查询图,知道玩家恰好在哪个生物群落或数据中。
- 新节点: 切换点的位置,旋转或缩放;使它们与地形沿线;在它们周围生成更多!
- 还有很多其他改变!
如果有关于实现任何疑问,请尽管问。如果你喜欢自己试验,以下是连接:
评论 (0)