Wave Function Collapse(波函數(shù)坍縮wfc)是一個Unity使用波函數(shù)坍縮 算法生成隨機地圖的無限的、按程序生成的城市,使用波函數(shù)折疊算法由塊組裝而成。在游戲領域和人工智能領域有一個隨機生成地圖用的比較多的算法叫做波函數(shù)坍縮 (Wave Collapse Function)算法,這個算法可以根據(jù)自己定制的規(guī)則生成隨機地圖。
玩法說明
目前,沒有游戲,你只能四處走走,看風景。
控制:WASD用于步行,Shift用于跑步,Ctrl用于噴氣背包。
Xbox控制器:左棒用于行走,右棒用于環(huán)視,A用于跳躍,LB用于跑步,RB用于噴氣背包
飛行模式:使用M在飛行模式和正常模式之間切換。在飛行模式下,你可以在沒有任何控制的情況下飛越世界。
退出: alt+F4
編輯說明
編輯模塊集
通過更改模塊集,您可以在不編寫代碼的情況下對世界生成進行一些更改。您可以禁用或啟用模塊,更改它們的生成概率、它們的連接器、它們的鄰居規(guī)則,或者您可以添加新的。這是如何做到的:
1.打開Prototypes場景。
2.編輯場景中的塊。您將主要更改ModulePrototype組件中的值。
3.在層次結(jié)構(gòu)中選擇“原型”游戲?qū)ο蟛⒛母膽玫筋A制件(覆蓋 -> 全部應用)。
4.在資產(chǎn)文件夾中選擇文件“ModuleData”。
5.單擊“創(chuàng)建模塊數(shù)據(jù)”。
6.可選:單擊“簡化模塊數(shù)據(jù)”。這需要一些時間,但會使世界生成速度更快。
7.保存您的工作并返回Game現(xiàn)場。您現(xiàn)在可以使用更新的模塊集。
在編輯器中生成世界
在編輯器中有多種生成世界的方法:
·選擇地圖對象。在MapBehaviour組件中,選擇一個大小,然后單擊“初始化 NxN 區(qū)域”。
·選擇“區(qū)域選擇器”對象。移動并縮放它以選擇一個區(qū)域,然后使用“生成”按鈕生成地圖。
·使用“Slot Inspector”對象顯示單個位置的詳細信息。它向您顯示可以在該位置生成哪些模塊,并允許您手動選擇模塊。
如果您想在不丟失地圖的情況下進入 Play 模式,請禁用“Generate Map Near Player”和“Occlusion culling”腳本。請注意,沒有任何組件會序列化,因此一旦序列化,您就無法更改映射。這意味
著您無法在 Play 模式下更改地圖,除非您在 Play 模式下對其進行了初始化。
使用說明
選擇地圖對象。在MapBehavior組件中,選擇尺寸并單擊“初始化NxN區(qū)域”。
選擇“區(qū)域選擇器”對象。移動并縮放它以選擇一個區(qū)域,然后使用“生成”按鈕生成地圖。
使用“插槽檢查器”對象顯示單個位置的詳細信息。它顯示了哪些模塊可以在該位置生成,并允許您手動選擇模塊。
如果您想在不丟失地圖的情況下進入播放模式,請禁用“在播放器附近生成地圖”和“遮擋消隱”腳本。請注意,沒有任何組件會序列化,因此一旦序列化了映射,就無法更改它。這意味著,除非在播放模式下初始化地圖,否則無法在播放模式下更改地圖。