8

我在看一些我将来必须做的关于程序生成技术的研究,我想知道你有什么类型的内容:已
开发
帮助开发
看到已实施
尝试开发

以及你使用什么方法/技术/程序来开发它.
如果你觉得大方,也许你甚至可以深入了解它的细节,比如你用来开发它的数据结构和算法。

如果需要将其作为社区 wiki 放置,因为不是我要求解决问题,请告诉我。这不是一个家庭作业线程,因为它是一个我还没有参加的研究单元;)

4

4 回答 4

9

内向软件,游戏 Defcon、Uplink 和 Darwinia(以及其他)的制造商大约一年前开始开发一款广泛使用 PCG 进行城市生成的游戏,这是他们的工作视频,您可以阅读更多关于它的信息在游戏的开发日志上(从页面底部的第一部分开始!)。

这立即让我非常感兴趣,看到游戏的潜力,我立即开始研究这项技术。我已经积累了一个包含 18 个关于该主题的 PDF 的文件夹(研究论文、SIGGRAPH 演示文稿等)。在这里,我为你上传了

主要的方法是使用 L-Systems,然而,我从来没有充分理解这一点来从中做出一些事情。我尝试了其他不太成功的方法,例如使用Voronois,递归地将矩形区域分割成更小的区域,并稍微移动边界以获得一点随机性和多边形划分。

我从 Mike 的 Code Blog 的帖子(这里这里)中得到的最后一种方法。他博客上显示的截图让我流口水,我最大的程序员梦想是得到这样的东西。我给他发了邮件问他是怎么做到的,这是他回复的相关部分,我相信他不会介意我在这里发布这个:

L-Systems 绝对是一种方法,但这不是我正在做的。我的方法的基础是多边形细分。我从一个代表城市整个区域的简单多边形开始。然后,我将它(大致)分成两半,然后将这两个多边形等分开,直到我达到城市街区的大小。那时,我所有的多边形的边缘都代表道路。然后,我使用相同的细分方法将块分解为建筑大小的地块。

当然,魔鬼在细节中,但这是基本方法。

对于一个人来说,我仍然没有设法完全实现我满意的解决方案,但它仍然是我最大的程序员的梦想之一,即使不是我曾经实现过这样的事情。

于 2010-02-10T01:00:57.897 回答
1

Allegorithmic 的产品用于实际的运输标题。这些人专注于纹理生成(离线和运行时)。

他们有一些非常漂亮的截图和演示

于 2010-02-10T03:02:06.880 回答
1

没有人提到只使用程序性东西的演示场景?

所以,开始搜索 Werkkzeug、Kkrieger、MilkyTracker。您还可以访问网站 pouet 并查看制作精良的程序视频的奇迹(是的,程序视频剪辑!带有音乐和图形,所有程序!)

于 2010-02-10T02:38:49.470 回答
1

以下是程序生成的地形(以及较小程度的树叶)中的一些领导者。如果您在这里没有得到有关方法和技术的详细答案,您可能想在他们的论坛中查看/询问。我在那里看到了一些关于技术的讨论。

TerraGen 2

世界建造者

世界机器

自然图形

于 2010-02-10T01:01:42.023 回答