A. 游戲程序員主要是干什麼的當一個游戲程序員需要學習哪幾方面的知識另外需要學習會用哪些程序。
游戲程序員主要是為游戲產品的實現服務的,包含了前端UI、後端開發等方面的內容。
主要學的內容如下:
1.游戲程序設計:C++程序設計入門;基本數據類型和輸入輸出;流程式控制制語句;數組、指針和引用、函數;程序結構和書寫規;范結構體和聯合體、類;繼承與多態;異常處理與程序調試。
2.演算法與數據結構:演算法分析;數據結構;基本演算法;STL的概念與使用;靜態庫與動態庫;XML庫的使用。
3.Win32程序設計:Windows程序入門;Windows消息;GDI繪圖游戲工具與MFC;網路編程基礎。
4.游戲數學和智能應用:游戲中的坐標系;矢量、矩陣;幾何碰撞;物理模擬;人工智慧與尋路演算法。
5.2D游戲技術與應用:2D游戲技術概論;游戲地圖系統;GUI系統;戰斗系統設計;任務系統;優秀的聲音引擎BASS;Cocos2D-X引擎;Box2D物理引擎。
想要系統學習,你可以考察對比一下開設有相關專業的熱門學校,好的學校擁有根據當下企業需求自主研發課程的能力,能夠在校期間取得大專或本科學歷,中博軟體學院、南京課工場、南京北大青鳥等開設相關專業的學校都是不錯的,建議實地考察對比一下。
祝你學有所成,望採納。
B. 游戲程序員的工作是怎樣的
注意抓重點,游戲程序員也是程序員的一種。日常工作無疑也與大部分程序員一樣,都是碼代碼。
除了這些,還有非常重要的一點就是加班!與所有的程序員一樣,加班是永遠都逃不了的。而且,對於游戲程序員來說,自己參與設計的游戲就像自己的孩子,再辛苦也要養大啊!而且一般來說,在人物造型美工、游戲界面和具體的代碼實施過程中,程序員會不停地被要求修改代碼。因為這三方的矛盾是永遠存在的,而且無論最後聽誰的,最辛苦的都是程序員。
所以說,入行需謹慎,需謹慎!
C. 游戲行業的程序員一般有哪幾類分工
游戲程序員也是有分工的,比如說圖形程序、邏輯程序、工具程序等等
圖形程序主要負責游戲畫面的顯示,對於3D游戲來說,圖形渲染包括模型、材質、貼圖的顯示,光照和陰影的效果等等,這可以說是游戲編程中技術含量最高的部分。從事圖形程序需要良好的3D數學訓練,線性代數、圖形學是需要主要攻克的課程,現在業界主流使用DirectX作為底層庫,這也是比較基礎的技能。
邏輯程序員對於外行人來說其實是個比較抽象的概念,其實就是控制游戲世界的規則,我舉個簡單的例子,比如說俄羅斯方塊里,一個規則是如果一個方塊落下之後發現有行滿了,就會消掉這些行,然後上面沒有被消掉的行會按位置下降。在游戲世界中,你能看到的一切gameplay都要依賴邏輯程序來控制,在絕大多數情況下,邏輯程序在代碼數量上占據了游戲程序的主體。
業界主流的發展越來越傾向於這樣一個認識,策劃創造游戲的玩法,美術創造游戲的畫面,而程序的職責是為他們提供幫助。這種幫助主要就是提供給他們工具,在游戲開發流水線越來越進化的今天,工具的好壞對游戲的質量起著決定性的作用。一些典型的工具包括地形編輯器、場景編輯器、腳本編輯器、粒子編輯器等等。對程序員來說,編寫工具程序往往需要掌握Windows(或其他操作系統)編程的能力。
當然還有很多很多其他的分工,比如AI程序員負責編寫怪物和BOSS的行為,角色的尋路,UI程序員負責編寫游戲的界面,比如各種菜單、狀態的顯示,服務端程序員負責編寫伺服器端的邏輯程序等等。鑒於答者的工作,這種分類其實主要是按照3D網游來講的,其他不同平台不同類型的游戲當然會有不同的分工,不過大體上差不多。而且這些分工很多都是有交集的,並沒有選了其中一種就不會做別的這種事,分開來講只是希望能有個大概的印象。
D. 有哪些適合程序員做的兼職
做兼職副業,一定要選擇一個安全、靠譜有做的價值的平台,選擇好很重要! 與其每天浪費時間刷抖音,刷朋友圈,玩著無聊的游戲打發時間,還不如做點有意義的事,既充實了自己也賺了錢! 利用碎片化時間,變成每天源源不斷的收益! 推薦兩款外快軟體,一款是淘寶天貓的優惠券+傭金(真正全程無任何費用,安全、無套路、講誠信,自己省錢,還可以賺錢,每天都有收入),另一款看新聞就能賺錢,都是我正在做的項目,安全有保障,可以放心使用!
E. 游戲程序員如何進行職業規劃
作為一個游戲程序員,我來分享我的經驗。
做好這個項目的成功,至少在短期內你會增加的收益。找到自己的方向(技術)現在是一個信息爆炸的世界,過濾掉無用的信息,不要讓自己過於分散,你可能沒有什麼,更多的掌握基本理論和一些有用的和不太容易改變的,不受歡迎的技術,學習一些花哨的容易改變(有很多這樣的作為游戲引擎卻可以掌握圖形技術來改變現狀,而最好的掌握一個或兩個流行的引擎)
計劃好每一天,好好利用時間碎片。協調工作和生活,和家庭相處,畢竟工作只是生活的一部分,大多數人都是生活中的一員。
F. 我想成為游戲開發程序員,要學些什麼
1.圖形引擎 2.聲音引擎 3.物理引擎 4.游戲引擎 5.人工智慧或游戲邏輯 6.游戲GUI界面(菜單) 7.游戲開發工具 8.支持區域網對戰的網路引擎開發 9.支持互聯網對戰的網路引擎開發 下面逐一介紹每個部分: 1.圖形引擎主要包含游戲中的場景(室內或室外)管理與渲染,角色的動作管理繪制,特效管理與渲染(粒子系統,自然模擬(如水紋,植物等模擬)),光照和材質處理,LOD(Level Object Detail)管理等,另外還有圖形數據轉換工具開發,這些工具主要用於把美工用DCC軟體(如3DS Max,Maya,Soft XSI,Soft Image3D等)軟體製作的模型和動作數據以及用Photo shop或painter等工具製作的貼圖,轉化成游戲程序中用的資源文件。 2.聲音引擎主要包含音效(Sound Effect簡稱SE),語音(VOICE),背景音樂(Background music簡稱BGM)的播放。SE是指那些在游戲中頻繁播放,而且播放時間比較短,但要求能及時無延遲的播放,VOICE是指游戲中的語音或人聲,這部分對聲音品質要求比較高,基本上用比較高的采樣率錄制和回放聲音,但和SE一樣要求能及時無延遲的播放,SE在有的時候因為內存容量的問題,在不影響效果的前提下,可能會降低采樣率,但VOICE由於降低采樣率對效果影響比較大,所以一般VOICE不採用降低采樣率的做法。BGM是指游戲中一長段循環播放(也有不循環,只播放一次)的背景音樂,正是由於BGM的這種特性,一般游戲的背景音樂是讀盤(光碟或硬碟)來播放。另外一些高級聲音特效,如EAX,數字影院系統(DTS5.1),數字杜比環繞等。 3.物理引擎主要包含游戲世界中的物體之間、物體和場景之間發生碰撞後的力學模擬, 以及發生碰撞後的物體骨骼運動的力學模擬(比較著名的物理引擎有havok公司的game dynamics sdk,還有open source 的ODE—Open Dynamics Engine)。 4.游戲引擎主要是把圖形引擎、聲音引擎、物理引擎整合起來,主要針對某個游戲製作一個游戲系統,其包含游戲關卡編輯器,主要用途是可以可視化的對場景進行調整,光照效果和霧化等效果調整,事件設置,道具擺放,NPC設置,另外還有角色編輯器,主要用於編輯角色的屬性和檢查動作數據的正確性。一般日本游戲公司的做法,他們會把關卡編輯器和角色編輯器直接做到游戲中,所有的參數調整都在游戲中通過調試菜單來進行編輯,所以一般他們把這部分調試菜單的功能做的很強大,同時在屏幕上實時的顯示一些重要的信息,這樣做的好處是關卡編輯器調整的效果直接就是游戲的效果,但是對於程序的重用性來說可能不是很好,比如說要用到另外一個游戲項目中就比較難,除非兩個游戲類型相同,只要把場景和角色數據換一下,還有做下一代產品也沒有問題,只要根據式樣增加調試菜單的功能就可以了。 5.人工智慧和游戲邏輯開發,這部分日本和歐美的游戲開發模式也有很大不同,在歐美游戲公司中運用腳本語言開發很普遍,所以這部分程序開發主要是用腳本語言編寫,而且腳本程序和游戲程序的耦合性很低,有單獨的編輯、編譯和調試環境,這樣比較利於游戲程序和關卡設計開發分開,同時並行開發,所以一般他們都會有專門做關卡設計的程序員崗位。而日本游戲公司腳本語言一般和游戲的耦合性比較高,一般通過一些語言的宏功能和一些編譯器的特定功能來完成一個簡單的腳本系統,所以一般這些腳本程序只能在游戲程序中進行調試,而不能在一個單獨的腳本編輯,編譯環境中進行開發。 6.游戲GUI界面(菜單),主要是指那些游戲中用戶界面設計,有做的復雜,有簡單的,做的簡單就是2D GUI界面,做的復雜有3D GUI界面。 7.游戲開發工具主要包含關卡編輯器,角色編輯器,資源打包管理,DCC軟體的插件工具等開發。 8.支持區域網對戰的網路引擎開發,主要解決區域網網路發包和延遲處理,通訊同步的問題,有同步通訊和非同步通訊兩種做法,非同步通訊用於那些對運行幀速要求比較高的游戲,同步通訊相對非同步通訊來說效率相對低,但是同步通訊的編程模型相對非同步通訊來得簡單一些。 9.支持互聯網對戰的網路引擎開發,目前大部分網游都是C/S結構的,伺服器端軟體配置管理,伺服器程序的最優化,還有游戲大廳、組隊、游戲邏輯處理、道具管理、收費系統等。另外還有一些網路系統是C/S和P2P兩種結構混合的,如XBOX Live等。 程序員在游戲公司中的崗位在日本游戲公司和歐美的游戲公司有些不同,日本游戲公司中程序員的崗位主要有技術監督(Director),主程序員(Main Programmer),程序員(Programmer),在日本游戲公司里負責游戲項目開發的程序員,一般不會專門根據工作內容劃分程序員,除了獨立的系統研究室和聲音系統製作部門(這兩個部門是比較獨立的,往往同時給好幾個項目服務),負責每個游戲項目開發的程序員,隨時都可能一人多職,比如說主程序員除了負責整個游戲系統以外,可能還要負責圖形或聲音引擎開發等,程序員除了人工智慧以外還有菜單製作等。這種情況在歐美的游戲公司比較少見,他們分工的比較細,一般有圖形程序員,聲音程序員,人工智慧或游戲關卡程序員,物理程序員,每個組中可能還會有一個Leader。 這一點,日本公司和歐美公司也有些不同。日本公司一般喜歡從一些高校中招聘一些應屆優秀畢業生,一方面比招聘有經驗的人要來的成本低,另方面新人是一張白紙,容易培養,像SEGA、KONAMI等都是按這種原則招聘員工的,所以想進入日本游戲公司,你要學好你的軟體課程。而歐美公司希望招聘進來,能馬上進入項目的開發中去,所以他們一般希望招聘有工作經驗的人,即使不是行業中,在相關行業中工作2、3年的也可以,所以想進入歐美游戲公司你的工作經歷很重要。 我覺的一個游戲軟體程序員,最起碼的要求是熟練掌握計算機本科專業所學的知識,主要包括C語言或C++語言,數據結構,編譯原理,演算法等,另外線性代數、微積分、牛頓力學在圖形和物理引擎開發方面用途也很廣泛,如果要提高的話還有必要了解硬體相關的知識如計算機體系結構、匯編語言,這些對我們學習一個新的硬體平台、編寫最優化代碼、提高自己游戲的競爭力都是非常有益的。另外,保持有恆心、不怕苦(比如說通宵加班)的心態,對游戲的熱情也是非常重要的。對於那些想進入游戲行業,但缺乏軟體開發知識的人,可以通過參加游戲開發培訓來 現在有很多人,計算機本科畢業,學了很多軟體開發的知識,但是一旦要用到實際的項目開發時,感覺無從下手,這主要是在學校里運用知識的機會太少了。所以學習游戲編程最好的方法是能實際參與到一個好的游戲項目中和有豐富開發經驗的人一起開發游戲,可能學到很多你從書本上學不到知識和技能。但有時候你一時還沒有機會參與到一個好項目中,沒有機會進入一家好的游戲公司,但是你對游戲開發有一腔熱情,很希望學習游戲開發的技能,那你就應該去參加專門的游戲開發培訓,因為游戲開發培訓班中的老師都是一些有豐富開發經驗的老師,一般都有五年豐富的項目開發經驗,聽他們的課,實際上就是在和他一起分享這么多年的開發經驗,另外游戲開發培訓課程中會專門設計一些項目和課題,它們本身就是可以直接運用游戲開發中,這樣你可以不進入著名的游戲公司,但可以學到這些公司中一些常用的開發技能。另外還有一種方法經濟實惠的方法,參加一些網上志願者的開源項目,這些項目從品質來說有好有壞,選擇一個好的項目非常重要,另外他們中間本身有許多是業內人士,本來你要進入他們公司,才能學習到他們的經驗,但是通過開源項目,你就有向他們學習的機會了,說不定哪一天,你就進入一家知名的游戲公司了,不過目前開源的完整游戲項目好的不多,到是在圖形引擎和物理引擎方面有一些很不錯的開源項目,但要加入進去的話,你的基礎一定要好啊,有些開源的團隊也不是隨便什麼人就能加入的。
G. 如何成為一名優秀的游戲程序員
首先讓我們來談談什麼是程序員,以及程序員需要做哪些事情?
選擇做程序員,是源於真正意義上的興趣和喜歡,在做程序員的這幾年,我的生活也在一步步的提升,但同樣,不可否認在我個人眼裡,程序員的工作就像選擇其他種類的工作一樣,只是一份職業,一種在社會上存身立足的手段。
在校時,以及工作後都曾這么的想過:做一個IT從業人員,做一個程序員,做上個一二年,然後向提升下,做一個項目經理什麼的。或許,可以開一家自己的小軟體公司,或許做一名軟體顧問,再或許開一個網站,開發一個自己的小軟體。或者,真的不行的,利用做程序員這幾年的積蓄做一些小買賣 轉行另謀生計。總之,感覺做程序開發將是人生的一個過渡,可若真的按這種思路過渡,就將是用我人生的青春年華大好時光的五六年,或者更多時間。
下面一些事情是做程序員必須思考的:
(一) 你適合當程序員嗎,你知道編程序是怎麼回事嗎?
1、 程序員意味著要編程序。(如果你僅僅想得到一份高薪水的工作,喝喝咖啡就等老闆發薪水,我奉勸你還是另找一份更合適的工作,譬如練攤,真的,兄弟,這份工作不適合你)
2、你是學文的還是學理的,編程序也許需要浪漫,但更需要邏輯和嚴謹。(說坦白點就是,在你沒有找到樂趣以前,它很枯燥)
3、你有對新技術追求的熱情嗎?你有刨根問底的探索精神嗎?(熱情絕對是最重要的!你仔細思考一下自己的性格適合當程序員嗎?)
4、當程序員決不是什麼好差事,時刻需要學習,需要思考。(直到你成為那個可以引導別人去學習和思考的人,你才可以偷偷的嘿嘿笑,又一群傻蛋)
5、程序員的未來很迷茫。(但我認為關鍵看你自己!我希望你是一個有追求的人,不僅僅是混碗飯吃。因為真正的樂趣在於創造;如果你能改變軟體業的歷史,那才是英雄;不想成為Bill Gates,不想成為Dennis Ritchie和 Bjarne Stroustrup,我會說你沒有追求。
6、當程序員還是很有樂趣的。(當你學到新知識時,當你有新的思想見解時,當你有新的產品問世時,和知己探討你的成果時…我問你,覺得這些是樂趣嗎?)
7、當程序員不易也不難。(世間事有難易乎?為之…;不為…。你有決心和信心嗎?)
8、你捨得花錢買書嗎?(讀好書絕對是學習編程的最佳捷徑。你一定會說,現在電腦書籍真他媽的貴,沒法子,誰讓知識和技術在人家的腦袋,在人家的書里呢;等你寫書時可以把價格定低一點,記著還有好多沒錢但想買書的兄弟很困難呀。要捨得買書,買好書,不好的的書不如不讀,其害大於其益,關於買什麼書,你可以問高手或看候捷的書評;准備一個小本子記錄你想買的書的名字,逛書店時看看,如果好就買下,記住要讀,別光買不看。)
9、我告訴你,程序就是:任何有目的的、預想好的動作序列,它是一種軟體。
10、編程序就是編寫程序。
11、你想好了嗎?(如果你想好了還是決定要當程序員,可以繼續往下讀;否則,你可以繼續尋找別的出路了。)
(二) 作為一個合格程序員每天該做的事是什麼
1、總結自己一天任務的完成情況
最好的方式是寫工作日誌,把自己今天完成了什麼事情,遇見了什麼問題都記錄下來,日後翻看好處多多;
2、考慮自己明天應該做的主要工作
把明天要做的事情列出來,並按照優先順序排列,第二天應該把自己效率最高的時間分配給最重要的工作;
3、考慮自己一天工作中失誤的地方,並想出避免下一次再犯的方法
出錯不要緊,最重要的是不要重復犯相同的錯誤,那是愚蠢;
4、考慮自己一天工作完成的質量和效率能否還能提高
一天只提高1%,365天你的效率就能提高多少倍你知道嗎?(1+0.01)*365 = 37 倍;
5、看一個有用的新聞網站或讀一張有用的報紙,了解業界動態
閉門造車是不行的,了解一下別人都在做什麼,對自己能帶來很多啟示;
6、記住一位同事的名字及其特點
你認識公司的所有同事嗎?你了解他們嗎?
7、清理自己的代碼
今天完成的代碼,把中間的調試信息,測試代碼清理掉,按照編碼風格整理好,注釋都寫好了嗎?
8、清理自己的桌面
當日事當日畢,保持清潔干凈的桌面才能讓你工作時不分心,程序員特別要把電腦的桌面清理干凈;
H. Erlang游戲程序員換語言轉行有些什麼建議你會如何選擇
如果你是轉行學習程序編寫開發,最好依據目前的行業發展前景來選擇,終究時長比較有限,假如想像科班一樣從C語言逐漸,徹底是不太可能的。轉行最要注重的是,行業發展前景和自身的時長要努力做到短期內性價比高轉行,用最快的時間轉行賺越來越多的錢,選擇學習培訓的確是非常好的選擇。選擇培訓學校必須留意,如今的線下推廣組織有自營和加盟代理的,所說加盟代理便是掏錢給總公司,總部給學習培訓原材料。目前市面上許多知名的組織全是可以加盟代理的,有時加盟代理的培訓機構或是視頻上課的,而不是教師中間到當場。我並不點評這類學習方法怎樣,大夥兒可以自身評定。
最先推存你學習Java,現階段Java開發在任何的大數據技術里邊,不論是需要量,或是關注度全是蠻出色的一個技術性方位,許多想進到開發領域的好朋友,都想選擇以Java做為開發方位。並且由於Java做為一個後面開發的流行選擇,從業Java開發一段時間以後,針對其餘的新技術的了解和理解,都是有非常大的協助。換句話說學精了Java,對學習別的的技術性會出現非常大的推動。此外假如自身感覺Java難,還可以學習h5那樣的前面課程內容,相對而言很容易了解,現階段的要求也較為受歡迎,可以考慮到。
I. 做一名游戲程序員要什麼樣的知識
以我所知,要具備
基礎知識(數據結構,操作系統,計算機組成原理,編譯原理,計算機網路,(資料庫原理可能不用,但學了更好),高數,線代,概率,離散(起碼要懂這四門數學))
然後就是語言方面
這是人家給我的建議
(游戲開發的正路是C -> C++ ( -> STL ->) -> Win32 API -> DirectX / OpenGL / GDI等圖形庫
C -> C++ -> 數據結構 -> 演算法 -> STL -> (Boost) ->(MFC) )
而我把它細化了就是
(C-匯編-C++-數據結構-《Windows程序設計》(C語言描述那本名著Charles Petzold寫的)->《Windows核心編程》(Jeffrey Richter寫的那本)-MFC(學這個建議從簡單開始(推薦Visual C++實用教程,然後再看孫鑫的VC++深入詳解,最後才看,MFC深入淺出))- Directx)
STL或者可以安排在數據結構後學,STL還沒怎麼去理解過。
語言方面我列出了一個我個人建議的學習順序,當然只能作參考,按每個人情況而定。
至於基礎知識的課程,如果你數學比較好,建議先把離散給學好了,再去學,而把計算機組成原理放在最後,因為這個比較難。
做美工,當然會看你是否相關專業出身,但如果你功力夠的話,他們也不會介意你是否美術專業出身的。
以上。
希望對你能有些幫助。
J. 想成為一名游戲程序員該怎麼做
本人沒有從事開發行業,但是不少同學都去做開發了,所以對編程略有一些見解。建議是多看代碼多練習,有機會多參與項目,總之一定要多練。大學四年的代碼量決定了畢業時的薪水。