[Unity] 3D滾球遊戲開發心得

更新於 發佈於 閱讀時間約 6 分鐘

【遊戲連結】

[Google Play]

【遊戲名稱】

3D滾球遊戲。

【遊戲簡介】

操控藍色圓球,吃掉所有黃色金幣就能過關了,總共有32關。不同的關卡可能會有不同的機關和陷阱,考驗玩家的操控力和智慧。

【前言】

這個專案是幾年前從教學範例修改而成的,算是適合初學者學習的範例。不過後來沒有做成Android版本,直到最近才改成Android版本發佈。算是在練習開發遊戲吧,因為每次寫程式的動力都一陣一陣的,所以每次都要從基礎重新學習。

[Unity教學範例]

https://learn.unity.com/project/roll-a-ball

【開發過程中遭遇的問題?】

最主要是設計關卡的部分很花時間吧,我一開始是慢慢拉物件,用Unity Editor 6.0內建的對齊功能來方便對齊物件。後來用MAST套件來繪製關卡,不過設計關卡的效率還是很慢,因為要想想看怎麼設計每一道關卡,還要經過測試與除錯。而且MAST套件還有幽靈物件的問題,有時候還必須處理這個問題。

[MAST套件]

raw-image

如何有效率地設計關卡,是開發遊戲的一項挑戰,尤其是大地圖或幾百道關卡一般不會慢慢在那邊畫地圖,而是透過程式或工具來產生全部或局部的地圖,加速開發遊戲的速度。

可以考慮使用的方式:

(1) 模組化關卡設計。

將關卡某些重複性高的區域或組合轉成Prefab或模組,然後在設計關卡過程可以使用這些Prefab或模組來產生關卡的雛型。

(2) 開發地圖編輯器來設計關卡。

有時候地圖物件邏輯比較複雜,在使用MAST來繪製地圖還要點選物件來更改屬性,開發地圖編輯器可以根據自己的需求打造快速繪製地圖的環境。不過開發地圖編輯器也是一項成本,如果你遊戲的關卡不多,而且物件的邏輯比較單純,可能用MAST或其它繪製地圖的套件還比較快。

看一下地圖編輯器好像也能夠直接生成場景中的物件,而不是在遊戲執行過程才產生物件。這樣比較方便開發者做修改。

(3) 透過程式來產生關卡。

如果地圖的邏輯不是很複雜,可以考慮編寫程式或者使用相關工具來產生全部或部分的地圖。尤其大地圖或者幾百道關卡可能要使用(2)或(3)的方式,來快速產生地圖或者地圖的雛型。

Gemini:

  • 如果需要大量相似的模組化地圖,例如地牢或室內環境,MAST 或類似的地圖繪製套件非常適合。
  • 如果需要大型、多樣且自動生成的地形或複雜迷宮,可以考慮投入時間學習和使用 MapMagic 2Dungeon Architect 或自己開發程式化生成演算法。
  • 對於開放世界或需要豐富自然景觀的遊戲,Gaia 等環境工具會很有幫助。

【從開發過程中學到的三件事】

(1) 使用Probuilder來繪製3D物件。

Unity Editor 6.0有內建Probuilder套件來做3D建模,我用這個功能來做金幣、鑰匙、門、按鈕、尖刺等道具或機關,算是蠻方便的。如果是簡單的模型,也可以考慮用現成的,或者用AI來建模,有空再來研究看看。

(2) 使用MAST來繪製3D地圖。

以前製作2D遊戲時有使用過Tilemap工具來繪製2D地圖,所以想說應該有工具可以用來繪製3D地圖,MAST套件雖然有bug,不過還算好用。

(3) 使用Joystick Pack套件來實現虛擬遙桿的功能。

以前做其它專案是使用自己做的按鈕來控制方向,不過很難控制。這次使用Joystick Pack套件來實現虛擬遙桿的功能,還蠻簡單就能夠使用的。

【未來展望】

這個專案再繼續開發下去,可以做許多種遊戲,例如迷宮動動腦、坦克大戰、泡泡龍、炸彈超人等等經典遊戲。想要用較快的速度來開發專案,就要多利用過往開發過的架構或功能,或者拿教學範例或其他人開放原始檔來改。

雖然知道這樣做開發速度會比較快,不過最主要的兩個問題點在於:

(1) 缺乏持續的動力。

最主要我寫程式的動力都是斷斷續續的,很難持續下去,所以學到現在也只能做些簡單的小遊戲。就好比在學習過程中,如果你不能持續地學習,累積知識複利,那麼你學過的東西很快就忘記了,很快就會退回到新手的境界。

(2) 要將開發出來的遊戲變現是一個困難點。

不能做出成績的話,只能夠當成興趣,也不能夠自稱為獨立開發者。開發遊戲就我所知,能夠成功做出成績的很少,網路上也有一堆大佬在勸退。這不太像學習上累積知識複利一樣,可能你投入很多時間或資源都不一定能夠成功,就算這次成功了,下一次也不一定會成功。

【結論】

我寫程式主要還是因為興趣,就跟寫作一樣,雖然希望最終能夠變現,但是不一定能夠成功。一項活動如果沒有興趣的話,是很難堅持下去的,尤其在前期你的付出並不一定會得到回報,看不見未來的曙光之時,很容易選擇放棄。

為什麼要做些會讓自己感到痛苦的事情呢? 耍廢度日不是比較快活嗎? 因為我們或多或少都有一些夢想,儘管遙不可及,但是只要動手開始做,就能夠感受到自己離夢想更近一點。

人生追求的目的為何? 反正我們都會死亡,為什麼要汲汲營營地去追求一些我們渴望的事物,然後陷入不斷追求新目標的享樂迴圈當中? 除了一部分是因為欲望無止盡,我們不懂得知足以外; 另外一部分,我們是在追求「不悔」,也就是在死前,我們能夠坦然地說:「我沒有白活。」

留言
avatar-img
留言分享你的想法!
avatar-img
螞蟻兒的沙龍
7會員
24內容數
這裡是分享個人讀書心得或學習心得的沙龍,請大家多多指教~
你可能也想看
Thumbnail
孩子寫功課時瞇眼?小心近視!這款喜光全光譜TIONE⁺光健康智慧檯燈,獲眼科院長推薦,網路好評不斷!全光譜LED、180cm大照明範圍、5段亮度及色溫調整、350度萬向旋轉,讓孩子學習更舒適、保護眼睛!
Thumbnail
孩子寫功課時瞇眼?小心近視!這款喜光全光譜TIONE⁺光健康智慧檯燈,獲眼科院長推薦,網路好評不斷!全光譜LED、180cm大照明範圍、5段亮度及色溫調整、350度萬向旋轉,讓孩子學習更舒適、保護眼睛!
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
我的如意算盤的確做得到,一次漠視,四次選擇,後續簽下十一項借據。 但我的內心與意志卻不能帶我到那裡。 大概是對手擲出速度不快的直球,身處於虛幻世界的你即使是變化球也無所畏懼呢,毫不考慮地打出去,連選球顯得麻煩。而身處於現實世界的你卻會被壓力與無形的力量給全身纏住,最後三個直球將你的想像一掃而盡。我
Thumbnail
我的如意算盤的確做得到,一次漠視,四次選擇,後續簽下十一項借據。 但我的內心與意志卻不能帶我到那裡。 大概是對手擲出速度不快的直球,身處於虛幻世界的你即使是變化球也無所畏懼呢,毫不考慮地打出去,連選球顯得麻煩。而身處於現實世界的你卻會被壓力與無形的力量給全身纏住,最後三個直球將你的想像一掃而盡。我
Thumbnail
飛行棋 紅、黃、藍及綠色的棋子各四顆將紅=英國領 空、黃=法國、藍=中華民國、綠=美國骰子一個 傳統玩法 ·兩至四人,輪流擲骰子。 •輪至自己時,擲骰子開始,擲到6時才可以「起 飛」(部分版本擲到偶數(即2、4、6)便可起飛)把自己其中一顆棋放到「起飛」處。下一次再擲 便可按骰
Thumbnail
飛行棋 紅、黃、藍及綠色的棋子各四顆將紅=英國領 空、黃=法國、藍=中華民國、綠=美國骰子一個 傳統玩法 ·兩至四人,輪流擲骰子。 •輪至自己時,擲骰子開始,擲到6時才可以「起 飛」(部分版本擲到偶數(即2、4、6)便可起飛)把自己其中一顆棋放到「起飛」處。下一次再擲 便可按骰
Thumbnail
#與孩子同樂 #安心預期 非學校這學期的大專案的主題是:「運動」 我也跟著孩子一起認識幾個新的運動項目 包括 法式滾球、 芬蘭撞木、 五人制棒球。 小乖班群研究「法式滾球」 不但懂運動規則 還要當教練及裁判 帶領另外兩個班群夥伴 認識規則 並且體驗。 更棒的是
Thumbnail
#與孩子同樂 #安心預期 非學校這學期的大專案的主題是:「運動」 我也跟著孩子一起認識幾個新的運動項目 包括 法式滾球、 芬蘭撞木、 五人制棒球。 小乖班群研究「法式滾球」 不但懂運動規則 還要當教練及裁判 帶領另外兩個班群夥伴 認識規則 並且體驗。 更棒的是
Thumbnail
#與孩子同樂 #安心預期 非學校這學期的大專案的主題是:「運動」 我也跟著孩子一起認識幾個新的運動項目 包括 法式滾球、 芬蘭撞木、 五人制棒球。 小乖班群研究「法式滾球」 不但懂運動規則 還要當教練及裁判 帶領另外兩個班群夥伴 認識規則 並且體驗。 更棒的是歡迎
Thumbnail
#與孩子同樂 #安心預期 非學校這學期的大專案的主題是:「運動」 我也跟著孩子一起認識幾個新的運動項目 包括 法式滾球、 芬蘭撞木、 五人制棒球。 小乖班群研究「法式滾球」 不但懂運動規則 還要當教練及裁判 帶領另外兩個班群夥伴 認識規則 並且體驗。 更棒的是歡迎
Thumbnail
不經意在臉書發現這個 ◦ °ₒ 紅球臺南 𝗥𝗲𝗱𝗕𝗮𝗹𝗹 𝗧𝗮𝗶𝗻𝗮𝗻 ₒ° ◦ ◯ ○ ◦ 歷史街區策展行動 ◦ ○ ◯ 一開始只公布六個地方 這個計畫吸引我的注意 感覺是一個很有趣的遊戲 比較可惜的是主辦提早公布 倒是如果不公布可能臺南也會大混亂XD 這個
Thumbnail
不經意在臉書發現這個 ◦ °ₒ 紅球臺南 𝗥𝗲𝗱𝗕𝗮𝗹𝗹 𝗧𝗮𝗶𝗻𝗮𝗻 ₒ° ◦ ◯ ○ ◦ 歷史街區策展行動 ◦ ○ ◯ 一開始只公布六個地方 這個計畫吸引我的注意 感覺是一個很有趣的遊戲 比較可惜的是主辦提早公布 倒是如果不公布可能臺南也會大混亂XD 這個
Thumbnail
今天我們玩了規則比較正式的「飛盤爭奪賽」,正式規則的場地比較大,要跑很遠…
Thumbnail
今天我們玩了規則比較正式的「飛盤爭奪賽」,正式規則的場地比較大,要跑很遠…
Thumbnail
今天是第一次打這麼大的場地,打起來真的很累,因為要一直跑來跑去,但同時也更刺激更好玩了! 規則有很大的差異,和之前玩的規則不一樣,但我比較喜歡這次的規則,因為這樣把別人的盤打到地板上的話就可以交換進攻的人,而且也更需要技巧,所以就不會無腦的丟。 也因為有一對一的規則,所以就很需要默契和阻擋的技巧
Thumbnail
今天是第一次打這麼大的場地,打起來真的很累,因為要一直跑來跑去,但同時也更刺激更好玩了! 規則有很大的差異,和之前玩的規則不一樣,但我比較喜歡這次的規則,因為這樣把別人的盤打到地板上的話就可以交換進攻的人,而且也更需要技巧,所以就不會無腦的丟。 也因為有一對一的規則,所以就很需要默契和阻擋的技巧
Thumbnail
切滾球: 飛少滾多 12法則: 飛滾比 7號桿>1:5(7+5=12) 9號桿>1:3(9+3=12) P桿> 1:2 54°Wedge>1:1 越長桿桿面角度越小,越穩定 掌握桿把,左手低右肩高,肘貼胸肋, 桿身垂直地面(桿頭跟部離地),桿身握短。 像推桿一樣對準方向控制大小
Thumbnail
切滾球: 飛少滾多 12法則: 飛滾比 7號桿>1:5(7+5=12) 9號桿>1:3(9+3=12) P桿> 1:2 54°Wedge>1:1 越長桿桿面角度越小,越穩定 掌握桿把,左手低右肩高,肘貼胸肋, 桿身垂直地面(桿頭跟部離地),桿身握短。 像推桿一樣對準方向控制大小
Thumbnail
建立幾個變數如下,最上面兩個變數值為清單值 接下來分別設定球1位置到左上角落、設定球2位置到右上角落、設定球3位置到左下角落、設定球4位置到右下角落 當螢幕初始化的時候,設定玩家球的X、Y座標和大小,並將玩家球的初始顏色,設定成(變數_顏色清單)中.....
Thumbnail
建立幾個變數如下,最上面兩個變數值為清單值 接下來分別設定球1位置到左上角落、設定球2位置到右上角落、設定球3位置到左下角落、設定球4位置到右下角落 當螢幕初始化的時候,設定玩家球的X、Y座標和大小,並將玩家球的初始顏色,設定成(變數_顏色清單)中.....
Thumbnail
如何訓練投球?就是以下步驟: 1.分析投球動作 2.發現問題 3.分析原因 4.設計修正動作 5.訓練 如何設計投球訓練?就是以下步驟: 1.拆解目標 2.用小目標作為初始訓練 3.將小目標組合成大目標,作為後期訓練 4.設計不同情境,熟練並濃縮投球概念 5.搭配影像回饋正常投球
Thumbnail
如何訓練投球?就是以下步驟: 1.分析投球動作 2.發現問題 3.分析原因 4.設計修正動作 5.訓練 如何設計投球訓練?就是以下步驟: 1.拆解目標 2.用小目標作為初始訓練 3.將小目標組合成大目標,作為後期訓練 4.設計不同情境,熟練並濃縮投球概念 5.搭配影像回饋正常投球
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News