C++遊戲開發擇業前景?
先做個簡單的自我介紹,目前普通二本院校,大四,正在準備找工作。學的課程有CC++、操作系統、計算機組成原理、資料庫等這些主流的計算機課程,大一下學期的時候學習了Win32編程,用Win32做過俄羅斯方塊。然後大二時接觸了Cocos2d-x,學習了有一年左右的時間,開發過好多個手機遊戲,有個別的也已經上線了,下載量上千,不過都是些休閑小遊戲(無奈後來不知怎麼的被豌豆莢下架了。。心累),到了大四開始找工作的時候,發現遊戲公司實在太少了,有校招安排的公司就更少了,拋去騰訊網易這些遊戲大廠來說,剩下的知名遊戲公司也就只有七八個,也都投了簡歷,現在還沒回復。突然覺得Cocos已經沒有以前那麼火了,好多公司招Unity的比較多。現在慢慢的對Cocos的熱愛度已經沒有以前那麼高了,想換一個方向了。自己主要用的就是C++,所以也想以後就算轉行了,也是和C++有關的,不過我發現C++方向的都是和Linux、網路有關的,但是我根本不會Linux、網路也是只勉強沒掛科這種程度(以前一直沒有在意過這方面,一直以為C++就過了,還是我了解太少了),現在就出現了一個抉擇問題:
1.我是繼續做Cocos2d-x嗎?(對Cocos的激情已經不復存在)
2.馬上面臨找工作,是先找cocos的穩定下來,以後再做打算,還是直接放棄Cocos
3.如果以後真的想用C++吃飯,那我現在和以後還需要補充哪些必要的知識
補充:C++有關的書看了有C++primer 4、Effective C++、More Effective C++、深度探索C++對象模型(剛開始)。上面這些書不敢說都會了,裡面大多數的東西我還是掌握了的。然後就是也看了OpenGL方面的知識,LearnOpenGl上面的內容都過了一遍,也算對OpenGL有了基礎的認識了。Lua腳本也了解過一些。
對於演算法,掌握的不是太深,最近也才做完了劍指Offer上面的題,也在LeetCode上面AC了八十多道(一共三百多道)。
感覺你這是幾個問題
1、是cocos引擎的問題
cocos問題確實很多,和維護者經驗有很大關係,但總的來說,是在慢慢變好的。
我覺得,cocos最大的好處就是開源,很多東西改起來很方便。
其次,哪怕是現在開始看cocos的代碼,其實也是能學到很多東西的,遊戲引擎牽涉很廣,現在cocos的很多實現都還比較簡單,優化其實也做得不夠好。
等cocos做到unity這個級別,再開始跟cocos代碼就比較痛苦了。
但cocos確實自己也有些問題,各種bug不斷,給我的感覺是管理比較亂(和他們公司基因有關吧,畢竟不是純做技術,自己做產品也有不錯的收益)。
總之,cocos是值得尊敬的。
用cocos引擎,短期來看,不太可能出現大的職業危機。
2、是c++語言本身的問題
對於c++,我也曾經入魔過,沉迷過很多很「高深」的技術,後來發現這些其實都不重要(炫技而已),現在基本上也就是把c++當一個好用點的c來用。
目前來說,c/c++還是很重要的一門語言,大部分語言都有和c/c++代碼「協作」的方式,效率層面也還是公認具有性價比的。
如果你想在技術上有很大突破,我個人覺得c/c++是迴避不過去的,而且也沒必要迴避,很多知識其實對你去理解別的語言有很大好處。
最後,以你現在的代碼量和經驗,很多東西其實是體會不出來的,上面那批c++的書,我都看了,甚至還看過一批更變態的c++奇淫技巧,幫助肯定是有的,但現在看來覺得用處不大,重要的東西還是只能在項目中不斷遇到問題不斷解決問題才能體會到,當你想盡辦法解決自己以前覺得很難解決的問題時,這個成長才是最有價值的。如果你說的那些東西不含水分,真的都自己做了,理解了,我相信你比cocos引擎組一半的人大學畢業時強。
cocos快倒閉了,早點放棄,你可以去cocos官網看看。
一個遊戲引擎,不談技術(比如vr了,全局光照了,反射特效了),不談使用(比如不寫一行代碼,就可以寫一個小遊戲比如unity的playmaker插件),也不談版本的兼容性(unity 4.x變成5.x,可以利用系統自帶的一鍵升級,cocos2.x轉到3.x,你就等著重寫代碼吧,結構全改了。)
cocos官網在宣傳什麼,js,h5,說實話這東西和資本有關,和技術無關。遊戲引擎還是應該好好做好技術,讓程序員可以更快更好的做成更多更牛逼的遊戲,才是正事。虛幻,unity,哪怕是白鷺都是照著這個路子走的。
你c++基礎好的話,以後就去做伺服器吧,基本都是c++開發的。
做客戶端,基本都是c#,unity和虛幻4都是用c#寫的。(樓下有人評論說虛幻4也是用c++寫的,c#沒人用,不過可能我閱歷有限,我身邊的人還沒有用虛幻找到工作的,所以虛幻方面我暫時提不了建議,請見諒)
伺服器的起薪比客戶端高,但是伺服器的主程沒有客戶端的主程高。
自己看著辦吧,最後說一句,一個引擎有沒有生命力,看看它的官網就都知道了。。。ps://確實虛幻,unity底層都是c++開發的,如果你能進大廠,我以上說的都是廢話~~
做為一個遊戲開發的老鳥,我給樓主一些建議,手機打字好累,我就簡單的說。
1,前端的核心技術不是你說的什麼cocos,也不是什麼Unity,手游沒興起的時候,這兩個玩意兒還是腹中的嬰兒。
2,我認為的遊戲前端核心技術:內存,CPU,渲染,非同步線程,協程,網路。這些都是大塊兒,不在實際中歷練,是沒法有自己的理解的。
3,就遊戲前端來說,想做好,C++必須有深度,你看的那些書很好,特別是作為一個在校學生來說,挺不錯的,當然不知道你理解的深度如何。不過看一下挺好,後續結合實際,可以再讀一遍,理解會不一樣。另外,學習下STL。
4,目前的cocos,確實不適合拿來做商業遊戲了,原因:工具鏈太爛,3D太爛,各種爛!但是,對你這樣的新手來說,拿來自己研究學習,還是很好的。你已經拿來做過遊戲了,那不妨深入一些,去研究一下cocos引擎本身的代碼,看看他怎麼做優化的怎麼管理性能和內存的等等
5,Unity,可以學啊,上手太簡單了啊,一般人拿來看下操作手冊,就可以做Demo了啊。學就是了,別想那麼多。等你熟悉了它,發現了他的問題需要去優化和解決的時候,你就遇到了我在2中說到的那些大塊兒,慢慢學習解決問題,慢慢積累吧
先想明白一個根本問題,你到底是做c++還是做遊戲?想明白這個再回頭看你自己這個問題。
不管做哪個領域,語言都會演變,但是領域內容和問題本身不會變。
和我當年好像.....
二本,c++,cocos
回答你問題:
1. 不做,沒激情了還做什麼
2. 不建議,第一份工作所以的領域其實還是比較重要的
3. 補什麼知識還是看你想去的領域,其實按你的背景要純用c++的公司還是很少的。
看你的描述做的休閒遊戲基本都是俄羅斯方塊, 跑酷, 打飛機的遊戲. 有什麼亮點嗎?
比如這樣的效果可以自己實現一下
SIGHT LIGHT
說實話, 這些休閑小遊戲和我面試的那些從培訓班裡出來的程序基本都是一樣的. 完全體現不出來有什麼區別..基本都是API的搬運工.問一兩個深入一些問題基本就不會了.
我覺得你得先想清楚自己是喜歡做遊戲才去學編程的, 還是喜歡編程碰巧學了cocos, 想繼續做只是覺得有沉沒成本.
可能, 說得有些亂, 見諒
參考回答:如何在遊戲開發領域深入發展? - 韋易笑的回答
遊戲公司N年老員工。
就現在遊戲公司招聘趨勢。 你考研然後熟讀C++基礎 進入遊戲公司成功率最高。
你之所以會問這個問題,是因為你感到很焦慮,焦慮感來源於對未來的不可把控,你擔心C++沒有出路,沒辦法掙到足夠的錢,但現實真是這樣嘛。首先,你要知道不管是學那種編程語言都會有人問這個問題。
所以首先我們要知道 ,你未來的生活過得好不好,根本不是學習那個編程語言的事。不管那種編程語言都有人拿高收入。不信的話,你看看 招聘VBA程序員的,都有開1萬工資的。你未來的收入,取決於很多因素,但最重要的因素,是你的技能水平。而你的能力成長速度,取決於 你所選擇的公司,和你的領導。所以嘛~~~
其他先不說,Linux和網路是科班出身必備技能。
建議儘快補充這兩方面的知識
加油
首先,你是要面向API編程的話,不用了解底層。其次,能把你做的小遊戲的鏈接發出來看看,對你找工作也有幫助
用的什麼語言不重要,重要的是你要做什麼東西,喜歡客戶端轉untiy3d不就行了。記住語言只是工具,不要糾結這個。另外cocos2dx不行,你放棄這個是對的。
數學不知道怎麼樣 可以的話 引擎組啊 你的條件明顯去做引擎了
c++啊,樓主可以直接跨越到虛幻4引擎上來...
既然有遊戲引擎基礎,又懂c++,熟悉幾周虛幻引擎,完全可以投幾個招聘ue4的試試。
Unity雖然招的多,但是招聘要求很多都是要有成熟的項目經驗的
題主我跟你很像,也是普通二本應屆生準備找遊戲開發的崗位,題主交流一下?
推薦閱讀:
※使用cocos2D遊戲引擎開發遊戲的話,是選擇使用cocos2D-x使用C++來編寫,還是使用cocos2D-html5來編程,原因是什麼?
※shell好難學,能用python替代shell嗎?
※學習 C++ linux 開發服務端,有哪些書籍和建議?
※計算機學生想通過造輪子學習伺服器端編程開發請教?
※如何評價可以自動更換 User-Agent 的爬蟲設計?