Wave Function Collapse(波函数坍缩wfc)是一个Unity使用波函数坍缩 算法生成随机地图的无限的、按程序生成的城市,使用波函数折叠算法由块组装而成。在游戏领域和人工智能领域有一个随机生成地图用的比较多的算法叫做波函数坍缩 (Wave Collapse Function)算法,这个算法可以根据自己定制的规则生成随机地图。
玩法说明
目前,没有游戏,你只能四处走走,看风景。
控制:WASD用于步行,Shift用于跑步,Ctrl用于喷气背包。
Xbox控制器:左棒用于行走,右棒用于环视,A用于跳跃,LB用于跑步,RB用于喷气背包
飞行模式:使用M在飞行模式和正常模式之间切换。在飞行模式下,你可以在没有任何控制的情况下飞越世界。
退出: alt+F4
编辑说明
编辑模块集
通过更改模块集,您可以在不编写代码的情况下对世界生成进行一些更改。您可以禁用或启用模块,更改它们的生成概率、它们的连接器、它们的邻居规则,或者您可以添加新的。这是如何做到的:
1.打开Prototypes场景。
2.编辑场景中的块。您将主要更改ModulePrototype组件中的值。
3.在层次结构中选择“原型”游戏对象并将您的更改应用到预制件(覆盖 -> 全部应用)。
4.在资产文件夹中选择文件“ModuleData”。
5.单击“创建模块数据”。
6.可选:单击“简化模块数据”。这需要一些时间,但会使世界生成速度更快。
7.保存您的工作并返回Game现场。您现在可以使用更新的模块集。
在编辑器中生成世界
在编辑器中有多种生成世界的方法:
·选择地图对象。在MapBehaviour组件中,选择一个大小,然后单击“初始化 NxN 区域”。
·选择“区域选择器”对象。移动并缩放它以选择一个区域,然后使用“生成”按钮生成地图。
·使用“Slot Inspector”对象显示单个位置的详细信息。它向您显示可以在该位置生成哪些模块,并允许您手动选择模块。
如果您想在不丢失地图的情况下进入 Play 模式,请禁用“Generate Map Near Player”和“Occlusion culling”脚本。请注意,没有任何组件会序列化,因此一旦序列化,您就无法更改映射。这意味
着您无法在 Play 模式下更改地图,除非您在 Play 模式下对其进行了初始化。
使用说明
选择地图对象。在MapBehavior组件中,选择尺寸并单击“初始化NxN区域”。
选择“区域选择器”对象。移动并缩放它以选择一个区域,然后使用“生成”按钮生成地图。
使用“插槽检查器”对象显示单个位置的详细信息。它显示了哪些模块可以在该位置生成,并允许您手动选择模块。
如果您想在不丢失地图的情况下进入播放模式,请禁用“在播放器附近生成地图”和“遮挡消隐”脚本。请注意,没有任何组件会序列化,因此一旦序列化了映射,就无法更改它。这意味着,除非在播放模式下初始化地图,否则无法在播放模式下更改地图。