當前位置:編程學習大全網 - 編程語言 - 有沒有什麽工作專門構思遊戲背景,職業技能,劇情的

有沒有什麽工作專門構思遊戲背景,職業技能,劇情的

壹、遊戲程序開發的工作主要包括哪些方面  遊戲開發中的程序開發主要由如下幾個方面組成:  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++語言,數據結構,編譯原理,算法等,另外線性代數、微積分、牛頓力學在圖形和物理引擎開發方面用途也很廣泛,如果要提高的話還有必要了解硬件相關的知識如計算機體系結構、匯編語言,這些對我們學習壹個新的硬件平臺、編寫最優化代碼、提高自己遊戲的競爭力都是非常有益的。另外,保持有恒心、不怕苦(比如說通宵加班)的心態,對遊戲的熱情也是非常重要的。對於那些想進入遊戲行業,但缺乏軟件開發知識的人,可以通過參加遊戲開發培訓來  五、學習遊戲編程有哪些好方法  現在有很多人,計算機本科畢業,學了很多軟件開發的知識,但是壹旦要用到實際的項目開發時,感覺無從下手,這主要是在學校裏運用知識的機會太少了。所以學習遊戲編程最好的方法是能實際參與到壹個好的遊戲項目中和有豐富開發經驗的人壹起開發遊戲,可能學到很多妳從書本上學不到知識和技能。但有時候妳壹時還沒有機會參與到壹個好項目中,沒有機會進入壹家好的遊戲公司,但是妳對遊戲開發有壹腔熱情,很希望學習遊戲開發的技能,那妳就應該去參加專門的遊戲開發培訓,因為遊戲開發培訓班中的老師都是壹些有豐富開發經驗的老師,壹般都有五年豐富的項目開發經驗,聽他們的課,實際上就是在和他壹起分享這麽多年的開發經驗,另外遊戲開發培訓課程中會專門設計壹些項目和課題,它們本身就是可以直接運用遊戲開發中,這樣妳可以不進入著名的遊戲公司,但可以學到這些公司中壹些常用的開發技能。另外還有壹種方法經濟實惠的方法,參加壹些網上誌願者的開源項目,這些項目從品質來說有好有壞,選擇壹個好的項目非常重要,另外他們中間本身有許多是業內人士,本來妳要進入他們公司,才能學習到他們的經驗,但是通過開源項目,妳就有向他們學習的機會了,說不定哪壹天,妳就進入壹家知名的遊戲公司了,不過目前開源的完整遊戲項目好的不多,到是在圖形引擎和物理引擎方面有壹些很不錯的開源項目,但要加入進去的話,妳的基礎壹定要好啊,有些開源的團隊也不是隨便什麽人就能加入的。  1,將rpg(role playing game)融入所有遊戲。。。  壹款可以令人廢寢忘食的遊戲首先必須具有“代入感”,而有代入感的遊戲首先必須是rpg。。。任何壹種遊戲,只要是有生物存在的,都可以將rpg融入。。。這對遊戲公司是壹本萬利,不用的才是白癡。。。宏觀性的戰略遊戲可以用“英雄”的概念成為變性的rpg。。。某種意義說,壹款戰略遊戲對英雄的操作種類越多它的人氣往往越高。。。比如英雄的成長,個性,生活甚至是婚姻家族等等,有些元素妳加在裏面可能只需要幾個字節的空間,卻可以將壹個英雄帶活,繼而帶活整個遊戲。。。  相反,將英雄的造型造的很醜也同樣會帶爛整個遊戲,歐美遊戲經常會犯這樣愚蠢的錯誤,原因就是他們忽略了——  ——2,遊戲不需要多余的真實性。。。  對於遊戲來說,遊戲性的重要性是真實性的無數倍,而二者在很多時候是不可兼得的,因為真實性往往增加了遊戲的繁瑣和重復(生活嘛,永遠都是繁瑣而重復的)。。。而繁瑣和重復就會降低遊戲性。。。二者的沖突下,必須舍棄沒用的真實性而取後者。。。除非妳想創作壹款以擬真為唯壹目標的遊戲(如微軟模擬飛行)。。。  當然很多時候,魚與熊掌可以兼得,比如真實的音效或模型。。。會使真實性與遊戲性同時暴增。。。  3,微操與委任的兼容並包。。。  不能微操的遊戲都不是好遊戲。。。微操不是即時戰略或arpg的專利,任何種類的遊戲都允許微操,甚至包括戰棋類,或回合類。。。微操給玩家的快感就是通過技術的訓練達到完成操作的最快速度。。。  微操存在的前提是快捷操作的存在。。。比如無所不在的快捷鍵自定義,或遊戲中任何形式的“隨意門”。。。  沒有委任的遊戲也不是好遊戲,因為妳至少要給玩家偷懶的自由。。。尤其是戰略遊戲的大後期,將委任的功能強化多樣化是不讓玩家“事必躬親”導致“疲勞勝過快感”的唯壹法門。。。  不過委任有個最關鍵的問題是——壹定不能比玩家親自操作獲得的效果還好,效果差不多都不行。。。這種創作失誤看似愚蠢,不過可惜這就是很多遊戲廠家的智商水平段。。。比如中世紀2的攻城戰。。。  4,多樣性與變化性。。。  英雄無敵之類最大的亮點就是可以操作海量多種的怪物,  而翡翠帝國最大的亮點就是多種招式的切換。。。  多樣性和變化性是遊戲生命半衰期的決定性指標。。。  增加多樣性和變化性的方法有兩種,壹種就是使遊戲本身的內容多樣而富於變化,這顯然會增加大量的遊戲制作量。。。  另壹種是增加隨機的效果,比如很多戰略遊戲中的隨機地形戰略效果;還有記得以前某款國產的三國戰棋遊戲的計謀是現場“悟”出來的,隨機性極強。。。增加隨機性的好處是可以通過增加非常少的制作量達到幾乎無限的多樣性和變化性。。。不過缺點是可能會使遊戲充斥了點“投機”的成分。。。  不過多樣性和變化性的增加的壹個最嚴重的問題是ai的同比降低。。。比如三國誌10是三國誌系列中打仗多樣性最強的壹代,同時也就是成了ai最屎的壹代。。。  這樣的遊戲,如果妳不想讓ai變得非常得屎,最簡單的方法就是在ai中加入隨機函數,讓電腦的行動不可預測。。。  不過對於有些多樣性和變化性強的遊戲,只要妳用心,也可以造出非常強悍的ai。。。比如很多中國象棋軟件中的ai就是bt級的。。。不過前提是妳要把所有玩家的應招全都考慮進去,這就需要長時間的試玩隨訪並隨時調整妳的ai。。。  現如今幾乎所有的單機遊戲(除了某些格鬥遊戲)難度都是通過調整電腦的資源等硬性指標來實現,而很少有通過調正ai高低來實現的,這幾乎是整個單機遊戲界的悲哀。。。  5,快節奏和簡介的操作。。。  變速齒輪只會存在於本身的節奏極慢的遊戲中,慢節奏的遊戲有時就是壹種煎熬。。。比如鋼鐵雄心系列就是這樣。。。玩穿了這款遊戲的人才如果有朝壹日出了家,男的做方丈,女的做師太,絕無懸念。。。  快節奏的簡單定義就是讓玩家每壹刻都有事幹,在更短時間內體悟更多的東西。。。當然這顯然會縮短整體的遊戲時間,只能通過“提高多樣性和變化性”來彌補。。。  另外很多遊戲廠家為了在遊戲中加入美學的元素而拖慢了整體的遊戲反應速度,比如波斯王子4的主選單界面就是個典型的例子——妳在主選單中點壹個鍵,電腦要先折騰壹會才回出子選單。。。第壹次看得很爽,第二次就麻木,第三次就開抵觸。。。玩久了就又是壹種煎熬。。。能通過點壹個鍵的操作就不要讓玩家點兩個鍵,能點兩個鍵就不要去點三個鍵,這是遊戲操作中的基本制作思路。。。  。。。。  以上這五條其實是很多單機資深玩家心中默認的好遊戲原則。。。但縱覽目前的單機遊戲界能包全這5條的卻壹個都沒有。。。  遊戲制作人員如果不能同時成為壹個發燒級的玩家,即使引擎再強大,圖像,聲效再nb,做出的東西也壹樣是垃圾。。。這點來看,日本的創意派要比歐美的引擎派強不知多少倍。。。  放眼壹觀這年頭歐美的垃圾遊戲,60%都是來自當紅電影劇情改編。。。不但占了無限的銅臭味,就連劇情都懶得原創,這樣的糟粕,玩家的感情和金錢投資簡直與募捐無異。。。

PS:應該比較全了,如果滿意,采納下

  • 上一篇:Linux發行版(路由器固件)OpenWrt入門全集
  • 下一篇:SolidWorks是什麽意思
  • copyright 2024編程學習大全網