目前大二,因抑鬱休學,20年3月返校.想在此期間學習Unity.並製作出自己的類XCOM遊戲的一個DEMO.僅需要有對戰部分即可.

目前網上的中文教程都是17年的,而Unity的中文版是18年4月.自己有一點C#基礎,JAVA和Python都只能算入門中的入門,數據結構會理論但很少有實戰項目,都是跟著學校學完了但距離通常意義上的入門差很遠.線程什麼的到現在都沒搞懂.大二下學期要學的計算機系統看教材自學也沒弄懂,就很氣.


來不及的,先學會編程再說,把演算法導論看了,跳過證明,把偽代碼抄成C#,並根據xunit test patterns英文版的內容學會寫單元測試。然後再學unity。

設計模式在這不太重要,unity都幫你規劃好了,你在學習unity的過程中留心偷師就行。


把.net學好,Unity就是兩星期的事兒。

至於數據結構嘛,工作五年以內,你基本涉及不到。充其量就是用用鏈表和堆棧。而且C#本就自帶這些東西,也根本不用自己封裝。

演算法嘛。把Unity內置的那些玩熟,再學個A*就足夠了。如果沉迷在演算法部分的學習,你會發現你悶頭學了很久的演算法,居然全都可以用插件分分鐘搞定。

真正需要花大把精力去學的,是安卓和.Net部分。安卓學會接入主流SDK就行了。

.NET部分學會EF,然後寫WebAPI給客戶端調用。

另外,在新版的.NET Core裡面,有個叫SignalR的東西。這玩意可是個神器,可以非常簡單的實現WebSocket通信。雖然傳輸效率比傳統Socket要差,但是簡單方便太多了。

最後,我反對走C++的路子。因為C++並非互聯網語言。它確實是單機時代的霸主,可它根本無法融入互聯網生態圈。而且它也並不能用於Unity。雖然語言本身不難,但會嚴重影響對API的熟悉程度。熟悉C++,卻不熟悉.NET,搞Unity也只能是半吊子水平。

C++在單機遊戲時代積累的那些老本,會逐漸成為歷史。遊戲的未來發展,是基於雲計算的。這也是一些遊戲引擎開始放棄C++,轉向C#的重要原因。


建議不要急功近利,先打好基礎,語言什麼的先精通一種,最好c++,懂得東西在計算機內存是怎麼存儲的,就不容易被引用,指針等東西搞的焦頭爛額。語言的東西,基本上可以互通的。我們大學基礎就是c++,學的透了,其他語言不需要花很大的勁就可以掌握了。

另外,僅僅學習unity是不夠的,你起碼還得學習建模和動畫。推薦使用開源的blender。你不掌握這項技能就只能自己到處去找一些人家弄好的模型,人家綁好的骨架和對應的動畫,那樣很被動的。

如果你希望遊戲畫面也要出彩或者有自己的特色,那麼額外編寫合適的shader也是少不了的了,如果需要寫實的風格,那麼建議去了解pbr,也是unity標準提供的著色風格。如果你需要風格化,可能就需要去了解卡通等npr的內容。

然後你提到了想做戰鬥部分的,你說的遊戲沒深入研究,不過不管是實時戰鬥類還是回合制,動畫的控制邏輯都是少不了的,需要涉及到unity的animator,最新的timeline的功能。用於利用參數來控制對象在不同狀態下應該播放什麼動畫。

然後是ui,這個用自帶的ugui就可以了,一開始不建議直接就用人家的封裝好的ui框架,直接使用最原始的,學習使用一輪有自己的理解後,再慢慢去了解一些ui的框架。

暫時就想到這麼多需要注意的地方,其他的業務邏輯的東西其實就是苦力活,不難,但是煩,要沉下心來做才行。一個人的話,路還挺遠的,加油吧。


如果是自學不是找工作的話我覺得要跟著官方更新的版本走,畢竟相鄰版本也基本上不會發生天翻地覆的變化。然後就是由於現在unity很多功能都需要用packagemanager上下載,所以不要只學習unity本體上的功能和組件。我個人覺得要好好學的大概有:lwrp(適用於手機端畫面表現的渲染管線),hdrp(適用於高端pc的渲染管線),新的inputsystem(新的輸入系統),shadergraph(不用代碼就能寫shader),還有組件化的navmesh。


還學啥米unity喲,趕緊學ue吧


我認為像2018年年末那樣學就可以了。沒必要先焚香沐浴,殺豬宰羊。


推薦閱讀:
相关文章