[S15_BCC] 資工一甲 403261601 post

班級:資工一甲

 

小組成員有 : 李松原 401272199

                    王翔   403261601

 

第幾組 : 26

 

報告順序為 : 14

 

主題為 : Unity3D-3D塔防遊戲

 

主題背景:

    運用unity5編輯、套用unity asset store模組、用JavaScript製作

 

動機:

   喜歡玩遊戲,想試試看遊戲是怎麼製做出來的,所以這次的主題就用選了unity。

 

簡介:

   全景以3D立體模式建構,在怪物進攻的路線旁建立起防禦塔,防止怪物進入據點

  除了可以用第三人稱自由建立防禦塔外,還能用第一人稱視角操控據點前的機槍擊倒怪物

 

討論過程:

  一開始不知道unity是什麼,也不會使用,正好老師貼出來unity5,就進去下載免費版來玩玩看,兩個人就一起探索界面,新增物件、大小、坐標位置、 角度、光源、風……等功能,接著我們發現unity模組不好拼,便去搜尋了可以和unity相容的模組製作程式,便找了blender,試了幾下之後,發 現製作模組太需要技術了,不是短短時間就可以練起來的,最後決定去找看看有沒有人家做好的免費模組來用。

  接著就討論我們要製作的主題,目標是不要太簡單但也不能做不出來,畢竟我們都是製作遊戲的新手,接著就在網路上搜尋別人用unity做出來的作品,很多都 是3D立體第一人稱冒險遊戲,但以我們目前的技術做不來,再來我們發現蠻多人做平面的遊戲,於是找看看類似的平面遊戲,我這時突然想到塔防遊戲,看起來比 較好上手,去youtube看看別人做的是什麼樣子,發現到幾乎都是平面的,也比較偏手機遊戲,這時就想到把它變成3D的模式感覺會更高級,再加上其他元 素的話,就能有別於一般塔防遊戲了,至此這次的專題雛型慢慢出來了。

 

首先塔防遊戲需要的元素

 

元素1.怪物進入點

元素2.怪物固定經過的路線

元素3.路線旁可以設置防守物打擊怪物

元素4.怪物最終會攻進的據點

 

而這樣和一般第三人稱的塔防遊戲沒兩樣,只能不斷蓋塔讓他自動射擊,這樣被動的玩法容易覺得單調,那何不加入主動的元素呢?於是就想到剛剛看到的第一人稱視角的FPS遊戲,這麼熱血的遊戲玩法加進去應該會提升不少樂趣吧!

 

元素5.在聚點前架設可自由選定目標射擊的武器做為最後的防線

 

如此一來,以前常常覺得那些笨笨的塔應該先打哪隻後打哪隻的苦惱就解除了,可以自己手動決定要先清除哪個目標

這樣我們的遊戲的基本架構就出來了。

 

遇到問題時,我們會一起討論可能可以解決的辦法,再由李松原來修改腳本,由於我們的電腦都是桌電,也很難分開製作後在合起來,因為我們分配的任務會互相引想而隨時做修改,所以基本上主程式是在李松原那,而我就負責在我的電腦嘗試一些新設計,如果覺得不錯再照著一樣的設定重新設置在李松原的電腦,而他也會因為某些目前沒辦法解決問題而不能符合設計時,我也會順勢修正設計,盡量取得平衡,我們討論的方式是由skype通話,以及分享電腦畫面來討論,這個方法真的蠻實用的,不用拿著電腦湊在一起製作,只要約個時間就能邊討論編製作。

 

作品方面:

設計構想:

  • 以第三人稱視角建立防禦塔 : 被動防禦
  • 切換到第一人稱視角射擊姿態 : 主動攻擊
  • 擊殺怪物可得獎金,並投資在防禦工事上
  •  
  • 被動防禦 : 防禦塔-分為

                       (1)射擊間隔短、射程進、攻擊力較低,建造費便宜

                       (2)射擊間隔長、射程遠、攻擊力較高,建造費較高

  • 主動防禦 : 大型砲台,可自由攻擊地圖上所有目標(一次攻擊一個)

                 威力最高,攻擊間隔最長,也可投資升級攻擊威力

怪物進攻模式

  • 共分3波
  • 每波有10隻
  • 第一波有9小隻,第10隻為大隻的
  • 第二波為2小1大出現,最後一隻為大
  • 第三波為1小2大出現,最後一隻為大

 

進入實做部分後都是李松原在執行腳本製作,而我主要在場景模組設計和配合我們能做到的與做不到的進行架構調整

 

靜態的物件就到unity asset store 免費模組裡找,用了塔、房子、樹、蜘蛛、機槍、紋路素材,這些比較符合我們場景的免費素材,也因為大部分的素材要收費,所以像是原本要用的大砲也改成使用機槍

 

地面的部分配合木製房屋的樣式做成草原的樣子

屋前的通道也以木板的樣式呈現一體感

加上幾棵椰子樹有南方的氣息

 

動態部分就要靠寫腳本讓他動了,這才是困難的開始

這部分是由李松原用JavaScript編寫

1.蜘蛛的移動,在每個木棧道轉角設置碰撞器,使他碰到就轉彎

2.蜘蛛的行走動作,這個模組有動作,但實際套用上去沒顯示,目前找不到原因

3.砲台的設置,這遇到的問題蠻大的,因為一開始沒有設定方格,所以變成哪裡都可以蓋,而且會有重疊的情形,最後有設定出限制可以建設的範圍區塊

4.控制面板,參考Unity3D 手機開發遊戲實戰 這本書做的,這本書對我們幫助還蠻大的,許多概念是從他衍伸出來的,不過由於這本書是用c#寫的,所以許多腳本必須自己刻出來,所以還有蠻多地方需要再調整

5.機槍的設置,可以經由面板切換到機槍視角並控制,但還不能做出傷害

6.砲台的攻擊,原本已經可以做出傷害,但後來可能程式衝突到,變成無法攻擊,還在研究原因

7.血條設置,有做出據點的血條了,但怪物的還沒設置完成

 

主畫面

 

怪物出現

 

 03

建立防禦塔

 

 04

第一視角機槍射擊

 

以外觀上來看,已經有做出原來構想的樣子,但許多內部的細節還沒設置完成,希望我之後學會程式之後,能回來把這作品完成

 

 

心得:

這次很感謝可以跟李松原一組,因為我還不會寫程式,所以這方面都由他包辦,我們的角色是有點像設計師與工程師吧,一般這兩個會蠻水火不容的,但這次我嘗試以能做出來為主來不斷修改設計,而他也會盡量想辦法做出來,雖然還有很多問題沒解決,合作的過程還蠻融洽的。

 

結論:

雖然一開始就知道做游戲其實沒想像中容易,但所需要的技術遠遠超過想像之上,但我依然覺得做遊戲其實是一件好玩的事,因為自己創造了新的元素,再去解決新的問題,然後完成一件新的作品的感覺真的很好,但要達到這個境界還是需要深厚的底子才能做到,不然光是為了解決不知從何下手的問題就會讓製做遊戲變成一個很累的事情了。