想用Unity做一個3D橫版橫版過關遊戲
C#作為Unity內的腳本語言,在初學Unity時並不用太過深入研究,因為這時需要用C#編寫的代碼主要是遊戲邏輯部分。
以手邊的《C#入門經典(第七版)》為例,大約需要看到「第八章:面向對象編程簡介」即可。
但也並不是說直接一口氣看完才能碰引擎,學習最有效率的方式還得是理論與實踐的結合。基本熟悉語法後就可以對照著官方的教學視頻熟悉引擎了,使用過程中遇到問題在回過頭看書,大約是這麼一個節奏:
另一個比較好的學習C#基礎的方法是用控制台做小遊戲。參考:
如果看書覺得很枯燥的話也可以參考咱們的視頻教程:
能看懂語法就行,我先學的unity, 後用的c#。不像c++要記很多特性。不過水深水淺還是看你自己的身高
針對問題,我可以提供一個從零開始,最快達成目的的辦法
首先使用Unity開發遊戲,尤其是獨立開發,有個好處,就是可以利用資源商店裡豐富的資源,這也是官方主推的開發方式。
既然是想做一個3D橫版過關遊戲(其實是2.5D),我推薦一個完美符合要求的插件。
好了,現在實現方案的基礎框架已經有了,省去了很多爬坑的時間。那麼接下來就是研究清楚插件怎麼用和如何進行擴展。
怎麼用
如果有翻牆的能力,可以在官網裡配合視頻里的中文字幕功能慢慢學習,如果沒有翻牆能力,這裡提供一個B站的搬運視頻。
如何擴展
想要擴展就必然需要了解C#語言,這裡我並不推薦上來就硬啃大部頭,對於某些人來說會慢慢磨滅興趣,我推薦先從菜鳥教程看起。
先簡單擼一遍菜鳥教程,然後回頭再去看插件源碼,遇到問題去搜索關鍵詞,慢慢再把基礎補全。然後再去繼續研究源碼,把高級特性也給搞明白。如果期間還是有在菜鳥教程上搞不明白的知識,建議針對性買書去看,最好找到C#和Unity有交集的書,這樣更方便去理解C#在Unity遊戲開發中的應用。
最後當你學會了如何擴展,其實接下來的路你也應該明白要怎麼走了,是補設計模式、引擎基礎、AI、特效等都可以自行選擇。
以上,是我覺得針對2.5D橫版遊戲開發上手最快的路線。
作為教師答一發
如果對編程毫無基礎
那先要學:
1. 變數 (int, float, string, bool)
2. 函數 (如何自定義,如何調用,輸入輸出)
3. 運算符,邏輯符 ( || 等)
4. 條件語句 (if else)
然後就可以做出很多小遊戲了
比如打磚塊,谷歌小恐龍等
在這過程中你會遇到一些比如
transform.position.x
new Vector3
Input.GetKey()
這些可以先記住,會用就好,不用急著理解
後來你會遇到UI的製作
此時你要簡單學習 namespace
玩家死亡後你會需要清除全屏敵人
此時你需要學會循環語句 for, while 和 foreach
以後你還會寫要在一個Class中調用另一個Class的函數
此時你可以學到 static
甚至可以學習 event
基本上能熟練運用 for 和 foreach
已經能開發極多Unity小遊戲了
基礎方面:
引擎方面:
本篇回答暫不涉及到美術,策劃等方面。程序方面做到這些就差不多可以考慮開始開發一款Unity遊戲了,但是開發中依然會遇到各種奇妙的問題,這個只能等開發者自己慢慢踩坑慢慢解決了。