當前位置:
首頁 > 最新 > 遊戲 AI 可視化:五個實用的範例

遊戲 AI 可視化:五個實用的範例

好的可視化案例

事實上,有三個主要理由說明為何你在項目里開發可視化工具會值回票價:

1.代碼正確性-當你實作新的功能時,即使有了單元測試,用眼睛確認各種檢驗皆為正確仍然是一件很舒服的事。此外複雜的遊戲世界可能出現單元測試沒寫到的特殊案例,有些問題只在後續的關卡設計才被暴露出來。

2.鑒別bug-比起只檢查代碼能否順利運作,可視化能幫忙排除很多狀況來隔離出問題所在,如果我們有一籃子可視化工具,就能很輕易的察覺各種問題,或找出可能的方向。

3.微調參數-到了項目後期,可視化方法在改變關卡設計、遊戲行為時特別有用。

後續的文章包含五種常用來建立遊戲雛形的可視化方法,姑且稱之為RUSHING BASES。請注意這些工具是如何地在項目初期幫助我們建立基礎架構,爾後也幫助我們調整遊戲平衡。

範例1:網格圖(Grid Map)

*傳達什麼信息?

這個特別的2D網格地圖展示了遊戲世界中,可否使用的區域在哪。基本上封閉不可行走的區域以紅色標示。

*如何運作?

網格圖只是一張貼圖,服貼在覆蓋全地圖的除錯專用多邊形之上!網格圖用Z-offset與遊戲地圖的繪製區隔開來,不會交錯。當然也可以運用深度測試(depth test)來隱藏下層的遊戲地圖,以確保網格圖都能被看見。

*為何需要它?

·了解地圖格子精細度對AI決策的影響

·得知封閉或狹小區域所在,來改善關卡設計

範例2:區域網(Area Network)

*傳達什麼信息?

遊戲地圖由一群一群的格子組成,我們將格子群稱為區域(Area),區域和區域之間的關連性則成了勢力圖與路徑搜索演算法的基礎。區域網直接將區域和區域之間的連接方式展現出來。

*如何運作?

程序有一份圓圈物的實體被重複繪製在不同區域的中心點,圓圈縮放大小取決於該區域的大小,圓圈的顏色則由區域編號決定,至於區域間的聯機則用Spline畫出。雖然以前作者使用箭頭來指向連接的對象,這樣繪製效率較高但會稍微難以閱讀。區域的編號則是用數字文貼圖塞給現成的繪圖引擎畫,然後確保Z-offset避免重迭。

*為何需要它?

·了解區域精細化或簡化後的效應

·看出路徑搜索換法與勢力圖運作時的資料依據

·這圖就是那麼酷,可以秀給來辦公室玩的人看

範例3:階層圖(Hierarchical Graph)

*傳達什麼信息?

這是一個抽象的搜索用圖,用在階層式的路徑搜尋(類似某種空間切割來加快搜尋)。階層圖是在區域(Area)上產生的,它的結構特別因此顯示出來較為不同,畫面只顯示了階層圖的邊(Edge),並沒有畫出節點(Node)。

*如何運作?

這種圖是由一堆邊組成,邊的繪製用狹長形的多邊形模擬之,因為不是每個系統在3D繪圖模式都支持線條繪製。圖的節點上面有卷標,卷標則用常見的廣告板(Billboard)技巧顯示。

*為何需要它?

·用以隔離出路徑搜尋演算法出包的地方

·顯示AI找路時,所有可能被考慮的方案

·顯露出被遺忘的路徑,以及潛在關卡設計問題

範例4:勢力圖(Influence Map)

*傳達什麼信息?

勢力圖的可視化很好地傳達了遊戲運行中,地圖每個角落的動態計算數值。用紅、黃色代表高風險區域,可能是敵對物體在附近造成的。而其他顏色則代表安全區域,也許是因為己方物體剛剛才安全通過該處。上述這些意義可以單獨或合併同時顯示在畫面上。

*如何運作?

勢力圖產生方法和網格圖雷同,用一張大貼圖覆蓋全世界,不過在遊戲數值改變後得動態更新貼圖的內容。

*為何需要它?

·幫助了解AI運行戰術決策時的依據

·當做設計者調整AI決策行為的參考數據

·顯示關卡的長期統計數值,用來調整遊戲平衡性

範例5:導引路徑(Navigation Paths)

*傳達什麼信息?

這個檢視畫面表達了程序對遊戲世界內所有角色進行路徑搜索、路徑平整化後的最終結果。每條路徑由一群箭頭首尾銜接而成,每個單獨箭頭各自代表路徑的片段。程序可以同時顯示現在與每個時間點的歷史路徑。

*如何運作?

箭頭一樣用狹長的多邊形模擬之,相異之處在於箭頭必須依照當時的路徑搜索狀態改變。另外這裡有不同的運行條件和程序優化空間,可以減少路徑動態改變時的計算成本,

*為何需要它?

·秀出原始的路徑數據,幫忙debug

·顯示敵我雙方路徑選擇或決策的狀況

·揭露出AI高階行為,用來改善設計或做性能優化

·同時顯示不同時間點的歷史戰術路徑

結論

在作者的遊戲當中,路徑搜索圖是最實用的,因為該遊戲與從障礙物之間尋找戰術路徑有關。可視化可以協助遊戲作者從低階代碼觀察設計內涵,也對優化議題與行為修正方面有幫助。

總的來說,多種可視化工具在不同種情境下都有其用處。這裡有個經驗談:我們花越多工作時間在系統代碼上,就該投資更多時間製作系統的視覺表現。以後你將會感謝自己當時明智的決定!

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 GameKnight 的精彩文章:

遊戲設計的可視化

TAG:GameKnight |