|
@樑偉國 說的很好,但我覺得2,3條也不是沒必要的,特別是做3D遊戲。我現在就在專門研究Cg和圖形學的東西。自己在工作之餘還折騰出了幾個插件 ,放在Unity商店裏賣着玩,每個月還能搞個上百美刀。
Asset Store
從題主的問題中可以看出題主的一點迷茫,就像一年前的我,我也就比你多一年Unity經驗。從一個打工者的角度來跟你探討一下,也跟大家都探討一下,不光探討Unity技術,也探討一下以後的方向。這裏說一下我自己對這個行業的思考。
現在Unity流行了,只要會寫幾行C#代碼的人都能進個遊戲公司寫點邏輯,但真正精通的人不多。我當初C#都沒學過,只會Java,都進了個小遊戲公司,花了個把月的時間就參與開發了,當然也就是搞點優化,改改BUG,寫點邏輯之類。現在越來越多的人用Unity了,我甚至可以預料,未來的幾年內Unity會更加流行,說不定會到處是培訓機構。到時候會有一大波人涌入這個行業,就像現在的Java開發SSH三大框架之類的。
我們面臨的問題:Unity入門門檻低,註定以後的Unity從業者會越來越多,競爭會越來越激烈。
我剛畢業的時候待過一個比較大的公司,做銀行的信貸系統。那時剛開始學java,自己工作之餘也看一下書充電,項目經理卻跟我說,技術不重要,重要的是實現。後來我才知道,我當時是做一個工廠流水線工人,碼農一個,技術確實不重要。公司巴不得我什麼都不懂,只會if else,解決邏輯的問題,發一點微薄的薪水就行了。
於是我明白了,不想做產線工人,首先要脫離當前層次。要做到公司少了你不行!
這個時候你必須掌握一些門檻高的技術,你才能拔尖。
有些技術是靠經驗堆積的,比如整個框架的設計,設計模式的運用。我倒覺得這個能力只要你平時留心,掌握它們只是個時間的問題。
而有些技術,是要去實打實鑽研的,不看透幾本英文原版書,不逛遍幾個論壇,你永遠不能get it。
越是難的東西,越能拉開你跟別人的距離。
比如學Cg,很多資料都是英文的,像Cg的官方教程
The Cg Tutorial,還有這個
Cg Programming/Unity,不看這些書,根本入不了門吧。 還有最著名的《Real-Time Rendering》,都是英文的,還需要很多數學知識。像線性代數裏的矩陣變換,這些東西雖然大學都有學過,但在這裏才真正用上。在開發的過程中遇到問題了,要上網查吧。我跟你打賭,你要是碰到個C#的問題,去stackoverflow分分鐘就能查出來(甚至去百度都能查出來)。但要是你碰到個shader上的問題,可就不好查了。Unity裏面很多東西都是沒資料查的,你只能去論壇裏跟人交流,去看源碼,去看UnityCG.cginc,去看AutoLight.cginc。總而言之,就是不好弄啊。等你深入的去研究這些的時候,慢慢的你就發現,好像公司裏就你在弄這個,別人都不懂。這個時候你就牛逼了啊。
以後手機的性能越來越好,高品質的3D手遊會越來越多,雖然可能現在國內大部分公司做的手遊是2D的,但以後一定會有更多的3D手遊涌現。
我相信手遊拼3D特效的時代馬上就要到來了! 所以我感覺學圖形學的東西還是比較有前途的。
當然這也跟你自己的愛好有關吧。反正我是覺得,如果以後要跳槽,面試的時候,你拿着一個遊戲說,這個遊戲框架是你搭的,可能面試的人很難確定,誰知道你這框架搭得好不好。但如果你說這個遊戲的所有3D特效和Shader都是你寫的,這就一目瞭然了。 |
|