我正在按照Minicraft的思路创建一款游戏。我在这里发布了一个关于如何制作类似于游戏中的地形的问题,并且名为Quirliom的用户发布了一个答案,指的是所谓的元胞自动机。
我完全不知道它是什么,更不用说怎么做了。我确实查了一下,看看它是什么。但我还没有找到如何做到这一点。有人可以解释一下如何做到这一点以及它是如何工作的,也许是一两个链接,甚至是一些源代码/示例。
有关理论,请查看 http://en.wikipedia.org/wiki/Book:Cellular_Automata。一旦你了解了元胞自动机的一般含义,下一步就是找到它们在景观生成的应用的来源(一种非常非标准但并非闻所未闻的用途);我怀疑最初的理论通读会让你对实现技术有一个很好的了解。
形式上,元胞自动机是动态系统的一个子类,其中空间和时间是离散的。
根据所考虑的模型,某些属性可能适用,也可能不适用:
- 模型的组件通过一个规则图连接,该规则图通过平移、旋转等不变。
- 给定状态空间
S
,更新规则是一个函数F(S^n) -> S
其中S^n
由单元格的邻域给出。 - 所有组件的更新规则都相同。
- 更新规则同时应用于所有单元格,从状态
t
t+1
构建状态。
通常,元胞自动机是模拟动态环境(沙子,布朗运动,野火)的良好模型,因为它们极其简单,因此允许大尺寸和计算速度。
如果你想进入元胞自动机的世界,我建议你查找康威的生命游戏,找到一个教程并实现它。