我正在研究将来要做的一些与程序生成技术有关的研究,我想知道你有什么类型的内容:
的开发
帮助发展
见过实施了
试图发展
以及你用它来开发它的方法/技巧/程序
如果您感到慷慨,也许您甚至可以详细介绍它,例如您用来开发它的数据结构广告算法。
如果需要将其作为社区维基,因为我不是要求解决问题,请告诉我。 这不是一个作业线程,因为它是一个我还没有参加的研究单位;)
答案 0 :(得分:9)
Introversion软件,游戏制造商Defcon,Uplink和Darwinia(以及其他)已经开始大约一年前开始制作游戏,广泛使用PCG进行城市生成,here is a video of their work,你可以阅读更多关于它在the development diary of the game上(从页面底部的第一部分开始!)。
这让我立刻感兴趣,看到游戏的潜力,我立即开始研究这项技术。我已经收集了18个关于这个主题的PDF文件夹(研究论文,SIGGRAPH演示文稿等)。 Here, I uploaded it for you
主要的方法是使用L-Systems,但是,我从来没有充分了解这一点来制造出一些东西。我尝试了其他不太成功的方法,比如使用Voronois,递归地将矩形区域分割成更小的区域,并稍微移动边界以获得一点随机性和多边形划分。
我从Mike的代码博客帖子(here和here)获得的最后一种方法。他博客上显示的屏幕截图让我流口水,这是我最大的程序员的梦想,可以获得看起来像这样的东西。我通过电子邮件询问他是怎么做到的,这是他回复的相关部分,我相信他不会介意我在这里发帖:
L-Systems绝对是一种方法,但这不是我正在做的事情。我的方法的基础是多边形细分。我从一个简单的多边形开始,代表整个城市区域。然后,我将它(大致)分成两半,然后拆分这两个多边形等,直到我达到城市街区的大小。此时,我所有多边形的边缘代表道路。然后我使用相同的细分方法将块分解为建筑物大小的批次。
当然,魔鬼在细节中,但这是基本方法。
我仍然没有完全实现我满意的解决方案,但它仍然是我唯一的最大程序员的梦想之一,以实现这样的目标。
答案 1 :(得分:1)
以下是程序生成的地形(以及较小程度的树叶)中的一些领导者。如果您在这里没有得到关于方法和技术的详细答案,您可能希望在他们的论坛中查看/询问。我在那里看到了一些关于技术的讨论。
答案 2 :(得分:1)
没有人提到只使用程序性东西的demoscene?
所以,去搜索Werkkzeug,Kkrieger,MilkyTracker开始吧。你也可以访问网站pouet,看看做得好的程序视频的奇迹(是的,程序性的视频片段!有音乐和图形,所有程序!)
答案 3 :(得分:1)
Allegorithmic的products用于实际的运送标题。这些人专注于纹理生成(离线和运行时)。
他们有一些非常漂亮{{3}}。