分享一些我在遊戲開發中的踩過的坑和經驗(引擎篇)

哈嘍,這裏是獨立遊戲開發者月籠沙。昨天看着我正在參加Steam新品節的遊戲,有感而發,心裏想起了許多我在開發這款遊戲以及之前的學習歷程中得到的經驗。

今天,我就來淺淺談一下吧!會有很多說得不夠深的地方。以及,各位朋友看過後,一定要結合自身情況,不必一味聽取我的經驗

想說的很多,我就分成幾篇內容吧,這一篇分享關於遊戲引擎方面的經驗。

一、我的遊戲開發歷程

這部分簡短點說,畢竟不是這個系列的重點。

我是從大二時開始學習遊戲開發的,至今已有2年半(警覺)的時間。最開始,我選定了Unity作爲開發引擎,邊學引擎邊學C#。學了一年多後,我開始參加一些GameJam,以及開始構思並開發自己的遊戲,期間經歷了很多由於經驗不足導致的失敗項目。兩個月前,我終於在Steam上架了人生中第一款正式的遊戲,目前還是Demo,正式版仍在開發:

二、應該選擇什麼引擎?

想必各位想要開發遊戲的朋友,第一面臨的難題就是,我應該選擇什麼樣的引擎才最合適呢?

這裏我針對Unity、Godot、虛幻這三個引擎,來談一談該入手哪一個引擎。

Unity

我用了兩年多時間,對它感情最深,但我還是一句話:不推薦遊戲開發新人,選擇Unity作爲開發引擎

爲什麼不推薦呢?其實不是說在做遊戲方面有什麼致命的缺點,相反,Unity用的特別順手,當你瞭解了大部分的功能、開發流程後,這個引擎可謂是到家了一般舒適。加上驚豔的C#作爲編程語言,如虎添翼。

聽起來就是該選擇Unity呀!但請繼續聽我說:如果沒有2023年那次收費政策,以及這些年來Unity騷操作不斷,那我會強烈推薦你選擇Unity。但很可惜,事實不是這樣,這些噁心的操作Unity都幹了,所以我不推薦你用。

那麼,Unity幹了哪些騷操作呢?

|-------

首先是23年震驚宇宙的收費政策風波。那個時候提出了“玩家每安裝一次你的遊戲,你就要交一次錢”的離譜規則,導致了鋪天蓋地的開發者的罵聲。好在最後,開發者們的唾沫海洋將當時的CEO拉下了職位,最終Unity改回了收費標準,這場風波才逐漸平息。但至此之後,信任危機像個刺球般橫亙在了開發者和Unity之間。

收費風波時的收費標準

------

在2025年3月份的時候,有國內開發者反映,無法下載最新的Unity6。這件事引起了大家的擔憂。不久後官方證實,中國國內,無法使用Unity6,如果你真的用了,那不保證不會有法律風險。這是又一大騷操作,國內開發者永遠只能用2022版本,而2022版本是一個不會再添加任何新功能的版本。意味着,普通的小工作室、獨立開發者,只能用一個不再完善和增強的引擎

------

2025年9月,Unity再爆令人心寒的操作:切割資源商店,將其中國地區的商店交由"Unity中國"來管理,兩邊的商店不互通,購買的資產也不互通。中國商店的插件,最終只會向着適配團結引擎而發展,導致無法兼容國際版Unity。

------|

這一切的一切表明,Unity官方正在拋棄中國市場。代之管理中國區的是"Unity中國",而"Unity中國"的心一直在車機領域,遊戲開發方面他們不上心。

總結下來,一個無法進步和完善、隨時可能被拋棄的引擎,我不推薦你選擇

不過如果你是程序員,那麼可以考慮Unity……工作崗位是真的多。但長遠來看,Unity在國內的衰落勢不可擋,或許十幾年後,就很少人用了。

Godot

Godot引擎是一個完全開源免費的後起之秀。

在Unity的23年的收費風波後,這個引擎進入了大衆的視野,很多人第一次開始認識這款引擎,我也是那時候認識的。

這款引擎我用的不多,根據我的實際上手體驗以及觀察到的動向,我來說說它的優點以及缺點。

優點方面

*引擎易上手。因爲引擎內部的中文本地化做得特別好,各種地方都會有其功能說明,完全中文的,非常容易看懂。官方使用文檔也是全中文翻譯,查找起來特別方便。

*開源免費,完全不用擔心任何抽成。

*引擎發展和迭代的速度很快,不到幾個月就更新一次版本,添加各種新功能。

*社區活躍,大家的熱情都比較高。

*引擎的官方編程語言是GDScript,但支持C#作爲編程語言。

缺點方面

*整體上,Godot用的人還是少。在GameJam開發方面,有調查表明其使用人數快與Unity持平。但是實際的商業開發過程中,大部分人還是在使用其他引擎。使用人數少,這也會導致下面的一些問題。

*教程相對來說少。而且大部分教程都停留在3.X版本,跟不上Godot的發展速度。

*遇到Bug後,你能從網上找到解決辦法的概率相對會低些。

*插件生態弱。用的人少,所以目前的插件數量相對少些。而且由於暫未開放正式版的資源商店,插件都是免費的,導致插件作者的更新意願相對收費來說,會動力不足。

插件生態,對於遊戲開發來說,極其重要。

*對於大型項目來說,Godot似乎難以管理龐大的開發結構。

Godot就像常見的搞笑熱血番裏的主角,一開始平平無奇,受人冷落。但最終它一定會過五關斬六將,登上主流引擎的舞臺。

總體來說,Godot是一款潛力巨大的引擎,目前有一些缺點,但對於獨立開發者和小團隊來說,是個很好的選擇,可以先試着開始學習Godot,相信未來的回報會是很值得的。

虛幻

這款引擎我其實沒有太多說的,因爲不是很熟悉。但有以下的建議。

如果你的夢想是開發3A大作,未來想進入大團隊,那麼選這個引擎準沒錯

如果你的目標是開發獨立遊戲,那麼建議選擇Unity或者Godot。原因如下:

------

虛幻很“重”。這種重,指的是引擎體積龐大,開發配置要求高、功能多等。如果你只是開發一個很小型的遊戲,用虛幻恐怕有種“殺雞焉用牛刀”的感覺,你會淹沒在龐大的功能當中,在開發時承擔着許多不必要功能帶來的開銷。

------

虛幻不夠“自由”。爲什麼這麼說?首先,虛幻易上手的開發方式是“藍圖”。藍圖相當於一個一個積木,你可以快速的將各種官方給你配好的積木,搭建成一個看起來不錯的遊戲成品。這一點毋庸置疑是非常友好的。但如果,你找不到想要的積木,或者當前這個積木的形狀不太滿意,該怎麼辦呢?那就得自己造積木,或者改動源代碼進行積木形狀修改。當你真的遇到了這種問題和需求,是非常棘手的。在獨立遊戲開發過程中,我們經常有各種奇思妙想,常常需要非常獨特的系統和機制,那麼,在虛幻引擎中,有更大概率碰到這種問題。

你也可以走代碼開發,自由度高。不過虛幻引擎支持的是C++。學過編程的人應該都知道C++是多麼噩夢般的存在

總結

最後,在引擎方面,總結一下我的觀點。

*如果你是獨立遊戲開發者,推薦程度Godot>Unity>虛幻。其中,不推薦你開發獨立遊戲用虛幻。

*如果你夢想是開發大製作,3A遊戲,未來想進入大廠、大團隊,那麼選擇虛幻準沒錯。

三、該選擇什麼編程語言?

這個問題,需要你選擇好引擎後再來回答。目前遊戲界主流的開發語言,無外乎就是C#和C++。Godot的GDScript也逐漸佔有一席之地。

*如果你選擇了虛幻,那麼用藍圖可以解決大部分開發需求,也就是無需具體學習一門語言。但是終究會走到你更深入開發的那一步,那時候需要學習C++。

*如果你選擇了Unity,那麼絕對要選C#。

*如果你選則了Godot,有2個選擇:C#和GDScript。這裏要分情況討論:

(1)如果你是編程新手,建議從GDScript學起,因爲容易上手。上手後,再考慮嘗試C#,如果能適應,則轉爲C#。

(2)如果你是有C、Java等編程經驗基礎的,選擇C#。

爲什麼推薦你選擇C#呢

*C#是一門發展悠久的成熟開源語言,擁有着優雅的設計與大量語法糖(代碼的簡便寫法),是一門極其驚豔的語言。

*GDScript目前貌似只在Godot內使用,而且還在初步發展階段,沒有那麼成熟。

*C#的應用領域非常多:

而且,不用擔心,說“我選擇了一門語言,如果到頭來發現自己選錯了該怎麼辦?”。其實,語言和語言之間的共性非常大。打個不恰當的比喻,就像黃種人和黑哥們的區別一樣,換了個膚色就別以爲我認不出你是人。總之,如果你上手了一門語言,其他的語言其實花1~2個星期就可以上手。

四、總結

寫到最後啦!引擎篇我想說的內容大概就這些了,肯定有很多見解淺和不對的地方。所以,大家一定要自己思考,多上手體驗,最後選擇出自己的答案。

最後也是最重要的一句話:

請各位想要進入遊戲開發領域的朋友,做好終生學習的準備。沒有什麼技能或知識是可以躺着喫一輩子的,遊戲領域也是互聯網的一部分,風雲變幻非常快,不進則退

希望我的這一篇文章能夠幫到你!敬請期待我的下一篇經驗分享文章!

更多遊戲資訊請關註:電玩幫遊戲資訊專區

電玩幫圖文攻略 www.vgover.com