1. 程式人生 > >使用unity製作的一款生存類遊戲demo(一)

使用unity製作的一款生存類遊戲demo(一)

   花了20多天的時間來完成這個demo,主要是為了實現一些自己設想的功能,並未注重關卡和玩法的設計,整體上還不夠完善或者說不夠完整。

   demo中的美術資源均來自asset store和各種資源網站。使用的外掛有NGUI,post progressing stack。

   這篇部落格主要介紹這個demo整體的設計思路和玩法,下一篇部落格再介紹UI系統和每種玩法的實現細節。

玩法/遊戲背景

     背景設定和大多數末日生存遊戲類似,玩家需要在一個因為病毒爆發而周圍充滿喪屍的世界裡生存。主要任務有:

     1蒐集食物,藥品維持生命值,防止被感染。

     2蒐集武器裝備對抗喪屍。

     3蒐集資源建造營地和防禦設施(每隔一段時間會有爆發屍潮)。

     目前設想的有這樣幾個遊戲場景:工業風格場景,小鎮場景,農場場景,小規模城鎮場景,郊區場景。玩家初始時位於郊區場景,且營地必須建造在初始郊區場景。每個場景有各種可選擇的支線任務,完成任務會有獎勵。主要任務是建造堅固的營地以抵禦每次屍潮。目前只設計了一個小鎮場景用來測試每種功能的實現效果。

主選單頁面

      主選單我並沒有採用靜態的UI介面,而是搭建了一個簡單的場景,並給攝像機新增一個迴圈動畫,點選play後非同步載入主場景,並顯示進度條,同時當前場景依舊執行。

揹包系統UI

      揹包系統計劃是做成rust,七日殺這種風格。揹包容量設定有三種,當裝備不同揹包時,揹包容量會自動改變(不可用揹包格子以灰色顯示)

      左邊顯示裝備欄和正面視角的玩家,中間是揹包欄和玩家當前資訊欄(生命值,飢餓值,飢渴值,感染值,護甲值,傷害值),右邊是拾取欄。開啟揹包系統時,背景還會被模糊處理。

完成後的UI風格如下

物品合成系統UI

         物品合成系統暫時只有3個合成例子,以後如果繼續完善的話修改相關程式碼即可,後期我計劃把物品合成的資訊解除安裝配置檔案裡,執行時再讀取。目前寫在程式碼裡只是為了偷懶。

         完成的效果是開啟合成欄時,會先檢測每樣可合成物品所需要的物品在揹包中是否有足夠的數量,如果數量不夠則所需物品數量顯示為紅色否則顯示黑色。合成按鈕的上方有輸入欄可以輸入想要合成的數量,點選按鈕同樣會先檢測所需物品的數量,如果揹包已滿,則關閉合成欄並提示“揹包已滿””,同時合成的物品會在玩家面前掉落(可拾取).

建造系統UI

        建造系統設定是玩家按B會在下方顯示物品建造欄,滑鼠移至物品UI上時會顯示所需物品資訊。點選滑鼠左鍵進行建造,同理也會在點選時先檢測揹包所需物品數量是否足夠。目前建造系統比較簡單,後期計劃實現一個完整的類似於how to survival裡的建造系統(包括營地,房屋,工作臺,營火,護欄,陷阱等等)。

換裝

        當玩家裝備了相應的物品後,角色蒙皮資訊也會隨之變化

攀爬跳躍系統

   

由於人物模型檔案和人物動畫來自不同的資源,重定向後的角色動畫沒辦法完全與原來的動畫匹配,導致仔細看起來人物動作比較奇怪,而且部分動作偏差比較大。

see through效果

    很多上帝視角的這類遊戲都有see through效果,比如《how to survival》。除了這種建築物透視效果,還有一種思路是人物邊緣高亮顯示(邊緣檢測)。

地圖模組

      尚在開發中。。。。。