① 游戲引擎架構的前言
最早的電子游戲完全由硬體構成,但微處理器(microprocessor)的高速發展完全改變了游戲的面貌。現在的游戲是在多用途的PC和專門的電子游戲主機(video game console)上玩的,憑借軟體帶來絕妙的游戲體驗。從最初的游戲誕生至今已有半個世紀,但很多人仍然認為游戲是一個未成熟的產業。即使游戲可能是個年輕的產業,若仔細觀察,也會發現它正在高速發展。 現時游戲已成為一個上百億美元的產業,覆蓋不同年齡、性別的廣泛受眾。
千變萬化的游戲,可以分為從紙牌游戲到大型多人在線游戲(massively multiplayer online game,MMOG)等多個種類(category)和「類型(genre)」,也可以運行在任何裝有微晶元(microchip)的設備上 。你現在可以在PC、手機及多種特別為游戲而設計的手持/電視游戲主機上玩游戲。家用電視游戲通常代表最尖端的游戲科技,又由於它們是周期性地推出新版本,因此有游戲機「世代」(generation)的說法。最新一代的游戲機包括微軟的Xbox 360和索尼的PlayStation 3,但一定不可忽視長盛不衰的PC,以及最近非常流行的任天堂Wii。
最近,劇增的下載式休閑游戲,使這個多樣化的商業游戲世界變得更復雜。雖然如此,大型游戲仍然是一門大生意。今天的游戲平台非常復雜,有難以置信的運算能力,這使軟體的復雜度得以進一步提升。所有這些先進的軟體都需要由人創造出來,這導致團隊人數增加,開發成本上漲。隨著產業變得成熟,開發團隊要尋求更好、更高效的方式去製作產品,可復用軟體(reusable software)和中間件(middleware)便應運而生,以補償軟體復雜度的提升。
由於有這么多風格迥異的游戲及多種游戲平台,因此不可能存在單一理想的軟體方案。然而,業界已經發展出一些模式 ,也有大量的潛在方案可供選擇。現今的問題是如何找到一個合適的方案去迎合某個項目的需要。再進一步,開發團隊必須考慮項目的方方面面,以及如何把各方面集成。對於一個嶄新的游戲設計,鮮有可能找到一個完美搭配游戲設計各方面的軟體包。
現時業界內的老手,入行時都是「開荒牛」。我們這代人很少是計算機科學專業出身(Matt的專業是航空工程、Jason的專業是系統設計工程),但現時很多學院已設有游戲開發的課程和學位。時至今日,為了獲取有用的游戲開發信息,學生和開發者必須找到好的途徑。對於高端的圖形技術,從研究到實踐都有大量高質量的信息。可是,這些信息經常不能直接應用到游戲的生產環境,或者沒有一個生產級質量的實現。對於圖形以外的游戲開發技術,市面上有一些所謂的入門書籍,沒提及參考文獻就描述很多內容細節,像自己發明的一樣。這種做法根本沒有用處,甚至經常帶有不準確的內容。另一方面,市場上有一些高端的專門領域書籍,例如物理、碰撞、人工智慧等。可是,這類書或者啰嗦到讓你難以忍受,或者高深到讓部分讀者無法理解,又或者內容過於零散而難於融會貫通。有一些甚至會直接和某項技術掛鉤,軟硬體一旦改動,其內容就會迅速過時。
此外,互聯網也是收集相關知識的絕佳工具。可是,除非你確實知道要找些什麼,否則斷鏈、不準確的資料、質量差的內容也會成為學習障礙。
好在,我們有Jason Gregory,他是一位擁有在頑皮狗(Naughty Dog)工作經驗的業界老手,而頑皮狗是全球高度矚目的游戲工作室之一。Jason在南加州大學教授游戲編程課程時,找不到概括游戲架構的教科書。值得慶幸的是,他承擔了這個任務,填補了這個空白。
Jason把應用到實際發行游戲的生產級別知識,以及整個游戲開發的大局編集於本書。他憑經驗,不僅融匯了游戲開發的概念和技巧,還用實際的代碼示例及實現例子去說明怎樣貫通知識來製作游戲。本書的引用及參考文獻可以讓讀者更深入探索游戲開發過程的各方面。雖然例子經常是基於某些技術的,但是概念和技巧是用來實際創作游戲的,它們可以超越個別引擎或API的束縛。
本書是一本我們入行做游戲時想要的書。我們認為本書能讓入門者增長知識,也能為有經驗者開拓更大的視野。
Jeff Lander
Matthew Whiting
② 求兩本書的pdf 小弟求 游戲物理引擎開發中文版 和 游戲引擎架構 自己在網上下載的缺了六百多頁,
http://download.csdn.net/detail/mansir123/9054383 要四部分都下了才可以看。 中文版7225
③ 游戲引擎架構的作者簡介
作者介紹:Jason Gregory在1994年開始任職專業軟體工程師,自1999年3月開始在游戲產業中任職軟體工程師。在聖迭哥Midway Home Entertainment公司開始游戲編程的他,為《瘋狂飛行員(Freaky Flyers)》及《Crank the Weasel》開發PlayStation 2/Xbox上的動畫系統。在2003年,他轉到洛杉磯藝電,為《榮譽勛章:血戰太平洋(Medal of Honor: Pacific Assault)》開發游戲引擎及游戲性技術,並在《榮譽勛章:空降神兵(Medal of Honor: Airborne)》中擔任首席工程師。他現時是頑皮狗公司的通才程序員,為《神秘海域:德雷克船長的寶藏(Uncharted: Drake's Fortune)》及《神秘海域:縱橫四海(Uncharted: Among Thieves)》開發引擎及游戲性軟體。他也在南加州大學教授游戲技術的課程。
譯者簡介:葉勁峰(Milo Yip)從小自習編程,並愛好計算機圖形學。上中學時兼職開發策略RPG《王子傳奇》,該游戲在1995年於台灣發行。其後他獲取了香港大學認知科學學士、香港中文大學系統工程及工程管理哲學碩士。畢業後在香港理工大學設計學院從事游戲引擎及相關技術的研發,職至項目主任。除發表學術文章外,也曾合著《DirectX9游戲編程實務》。2008年往上海育碧擔任引擎工程師開發《美食從天而降(Cloudy with a Chance of Meatballs)》Xbox360/PS3/Wii/PC,2009年起於麻辣馬開發《愛麗絲:瘋狂回歸(Alice: Madness Returns)》Xbox360/PS3/PC,2011年加入騰訊互動娛樂引擎技術中心擔任專家工程師,所研發的技術已用於《斗戰神》、《天涯明月刀》、《眾神爭霸》等項目中。
④ 游戲引擎怎麼開發
首先要了解游戲引擎是什麼東西?
游戲引擎是開發游戲時為了模塊復用而使用的中間件。游戲引擎概念的本身是多層次的,從復用性上說可以有0層即不使用游戲引擎的游戲,早期的游戲屬於這類,一個游戲就對應一個游戲基礎庫,但是這樣毫無復用性。從系統縱向上來說,游戲引擎的下層是基礎庫,最上層可以是地圖或場景編輯器。從模塊橫向上來說,游戲引擎由若干個子引擎組成,如圖形引擎、AI引擎、物理引擎、網路引擎和腳本引擎,每一個子引擎又可以細分。總之,完整的游戲引擎(比如Unity、UE4)是相當復雜的軟體系統。
你可以看看Jason Gregory寫的Game Engine Architecture(中文《游戲引擎架構》由游戲引擎工程師Milo翻譯),這本書幫你從各個角度理解游戲引擎的組織,模塊相互之間的關系,和業界常用的優化方法。另外,你需要找到一個切入點,選擇一個引擎子系統的方向學習它的知識和編程技巧(一般是從圖形引擎出發,學習圖形API如OpenGL或中間件如OGRE)。
⑤ 求《游戲引擎架構》PDF中文完整版
http://download.csdn.net/detail/mansir123/9054383
要四部分都下了才可以看。
⑥ 如何自學游戲引擎的開發
首先建議讀一下Milo Yip大神翻譯的《游戲引擎架構》這本書。
游戲開發本身就隸屬於IT行業,在這樣的日新月異的一個行業中,如果只是在井中望月的話,那麼即使你狠精通一門游戲引擎,那麼第二門呢?只有在你自己理解了游戲引擎的一個設計架構,設計原理,你才能在後續開發引擎中立於不敗之地。
這是一個循序漸進的過程,如果只是對游戲引擎鍾意,那麼充其量你仍然只是某個游戲引擎的使用高手,在後續的發展中,你將會被淘汰,大家很多人在做塞班時代的時候,誰會想到安卓時代的到來呢?只有不斷的提高。
才能將自己得到升華。游戲開發就是一生的學問,無論從策劃還是程序出發,被局限住了你就需要比別人落後更多,又需要花更多的時間來去學習。倒不如打好基礎,再面對各種的引擎都可以游刃自如,而且你還可以針對各種引擎做優化。
Games支持先學習游戲編程,學習游戲編程是基礎。游戲引擎說白了就是對特定功能的封裝,固然游戲引擎讓一些常用的功能實現更加簡便快捷,但要想理解其實現的機理和在,還需要游戲編程的基礎。
舉個例子:cocos2d-x引擎是使用c++語言封裝的。如果從游戲引擎開始學,很快可以學會精靈移動和各種動畫,但設計到高級編程如內存優化等游戲開發深層次的東西,是只學習引擎不能夠掌握的。
只有了解深層c++實現機理才行。如果從c++開始學,雖然學習c++的過程是漫長的,但從c++轉為cocos2d-x游戲引擎的時間確實非常快的,也能夠明白其底層實現,對這個引擎的了解掌握程度也更好。
⑦ 游戲引擎是什麼_
游戲引擎是指一些已編寫好的可編輯電腦游戲系統或者一些互動式實時圖像應用程序的核心組件。
游戲引擎提供一系列可視化開發工具和可重用組件。這些工具通過與開發環境進行集成,方便開發者簡單、快速進行數據驅動方式的游戲開發。為了提高游戲開發人員的開發效率,引擎開發者會開發出大量的游戲所需要的軟體組件。
大多數引擎集成了圖形、聲音、物理和人工智慧等功能部件。游戲引擎會被稱為「中間件」,因為它們可以提供靈活和重用平台,向游戲開發者提供所需要的全部核心功能,從而節省大量的游戲開發費用,降低開發的復雜性,縮短游戲的上市時間,所有這些對於高競爭性的游戲產業來說都是關鍵因素。
諸如虛幻系列引擎、Unity3D、Frostbite Engine、zerodin引擎、Doom3引擎、CryENGINE、3DGame
Studio、RenderWare、Gamebryo、Virtools以及Source引擎等引擎。
與其它中間件解決方案一樣,游戲引擎通常提供平台抽象層,實現同一款游戲可以在各種平台上運行,包括游戲機和個人電腦,而只需要改動少量的源代碼。
游戲引擎均設計成基於組件的架構,方便進行特定子系統的替換或者添加新的引擎中間件(通常成本較高)從而實現功能的擴展。比如Havok物理引擎、Miles
Sound System聲音引擎和Bink圖形引擎等。一些游戲引擎如RenderWare引擎由一些松耦合的游戲中間件組成,可以根據需要定製出遊戲引擎。
通過組件技術,可以實現游戲引擎的擴展性,而擴展性通常是游戲引擎優先考慮的特性。游戲引擎經常會應用於交互應用的實時圖像顯示,比如營銷演示、建築可視化、訓練模擬、環境建模。
(7)游戲引擎的架構中文pdf擴展閱讀:
1、硬體概念
3D引擎的渲染系統通常建立在一套高級圖像API之上,諸如Direct3D或OpenGL,這些API封裝了GPU和顯卡的部分功能。級別低一點的如DirectX、SDL和OpenAL也經常使用,他們提供對其他硬體設備的獨立支持,諸如輸入設備(滑鼠、鍵盤、控制桿)、網卡、音效卡。在硬體加速圖形卡出現以前,開發者使用軟體渲染。現在軟體渲染依然被廣泛用於非及時圖像的渲染,或者是用戶的硬體設備不支持硬體渲染。
2、中間層
一些引擎開發者以開發整個游戲引擎而著稱,他們試圖開發一個具有所有游戲元素的引擎,包括圖像、聲音、物理、人工智慧。比如Gamebryo和RenderWare就是這樣的引擎。
也有一些開發者只專注於開發引擎的某一部分,但他們取得的成就往往比全功能引擎還高。SpeedTree就是一個很好的例子,他適用於大規模植被的渲染,被使用在Playstation
3、Xbox 360,微軟開發的一些RPG,以及上古卷軸4:遺忘。
一些引擎提供完整的源代碼,其他的只提供一個經過封裝的API介面,使用者用過調用DLL文件來使用這個引擎。還有一些引擎將引擎二進制包和源代碼劃分開來,前者被免費授權使用,而後者則需要高額的費用來購買使用授權。
⑧ 求《游戲引擎架構》高清PDF
http://download.csdn.net/detail/mansir123/9054383
要四部分都下了才可以看。
中文版
⑨ 游戲引擎架構的內容簡介
《游戲引擎架構》同時涵蓋游戲引擎軟體開發的理論及實踐,並對多方面的題目進行探討。本書討論到的概念及技巧實際應用於現實中的游戲工作室,如藝電及頑皮狗。雖然書中採用的例子通常依據一些專門的技術,但是討論范圍遠超於某個引擎或API。文中的參考及引用也非常有用,可讓讀者繼續深入游戲開發過程的任何特定方向。
《游戲引擎架構》為一個大學程度的游戲編程課程而編寫,但也適合軟體工程師、業余愛好者、自學游戲程序員,以及游戲產業的從業人員。通過閱讀《游戲引擎架構》,資歷較淺的游戲工程師可以鞏固他們所學的游戲技術及引擎架構的知識,專注某一領域的資深程序員也能從本書更為全面的介紹中獲益。
宣傳語:邁向現代游戲之路完美入口 業界萬眾企盼 隆重推薦
⑩ 游戲引擎怎麼開發
首先要了解游戲引擎是什麼東西?
游戲引擎是開發游戲時為了模塊復用而使用的中間件。游戲引擎概念的本身是多層次的,從復用性上說可以有0層即不使用游戲引擎的游戲,早期的游戲屬於這類,一個游戲就對應一個游戲基礎庫,但是這樣毫無復用性。從系統縱向上來說,游戲引擎的下層是基礎庫,最上層可以是地圖或場景編輯器。從模塊橫向上來說,游戲引擎由若干個子引擎組成,如圖形引擎、AI引擎、物理引擎、網路引擎和腳本引擎,每一個子引擎又可以細分。總之,完整的游戲引擎(比如Unity、UE4)是相當復雜的軟體系統。
你可以看看Jason
Gregory寫的Game
Engine
Architecture(中文《游戲引擎架構》由游戲引擎工程師Milo翻譯),這本書幫你從各個角度理解游戲引擎的組織,模塊相互之間的關系,和業界常用的優化方法。另外,你需要找到一個切入點,選擇一個引擎子系統的方向學習它的知識和編程技巧(一般是從圖形引擎出發,學習圖形API如OpenGL或中間件如OGRE)。