游戲編程導論 Chapter-01_第1頁
游戲編程導論 Chapter-01_第2頁
游戲編程導論 Chapter-01_第3頁
游戲編程導論 Chapter-01_第4頁
游戲編程導論 Chapter-01_第5頁
已閱讀5頁,還剩22頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第1章 游戲編程導論 內容提綱 1.1游戲設計概述 1.1.1 計算機游戲的概念 1.1.2 游戲基本構成要素 1.1.3 游戲類型 1.1.4 游戲設計常用術語1.2游戲制作基本流程 1.2.1 前期階段 1.2.2 制作階段 1.2.3 后期階段1.3關于游戲引擎 1.3.1 游戲引擎的含義 1.3.2 游戲引擎的結構 1.3.3 關于游戲工具 1.3.4 著名游戲引擎簡介1.4游戲編程語言1.5學習的先決條件 第1章 游戲編程導論 游戲和電影一樣,是一種娛樂方式。電影通過故事情節、視覺特效、音響效果及背景音樂等元素吸引觀眾,娛樂元素以線性方式呈現,受眾只能被動接受而無法參與其中。游戲除包

2、含這些娛樂元素外,還具有交互性,這是它與電影最大的不同,也是其魅力所在。那么游戲如何實現交互功能呢?當然是通過編程實現。隨著游戲的發展,那些與游戲內容無關的游戲控制主程序漸漸被抽象化,并獨立出來成為“游戲引擎”,而且功能越來越強大。利用游戲引擎制作游戲成為當前游戲界的標準方式。但對于游戲編程初學者而言,要具備引擎開發能力或讀懂商業引擎代碼,他起碼要理解游戲引擎原理,了解游戲開發過程,并有過利用游戲引擎開發游戲程序的經歷。 1.1 游戲設計概述 1.1.1 計算機游戲的概念 游戲是一個系統,玩家參與由規則定義的人工沖突,產生可量化的結果A game is a system in which pl

3、ayers engage in an artificial conflict, defined by rules, that results in a quantifiable outcome.簡而言之,游戲就是有規則地玩,通常出于娛樂目的,有時也用作教育工具;計算機游戲的參與者往往被稱為玩家(Player);那些非玩家控制的角色,也就是受計算機操控的角色,一般簡稱為NPC(Non-Player Character,非玩家角色);計算機游戲最獨特的魅力在于它能夠讓玩家成為虛擬世界的一員。 1.1 游戲設計概述1.1.2 游戲基本構成要素 計算機游戲總結為六個構成要素:1. 規則(Rules)游

4、戲規則實際上是按照游戲邏輯設定的一系列限定條件,有時這些限定條件是保證游戲趣味性的重要組成部分。2. 目標與目的(Goals and Objectives)目標一般指付出某種努力期望得到的最終結果;而目的則是指在總目標范圍內要達到的具體的子目標,它往往是與時間相關的具體任務。目標是導向性的,是努力的方向和最終想要達到的境地或標準。目的則是要達到的具體指標或者特定結果,是清晰、可測量的。1.1 游戲設計概述3. 結果和反饋(Outcomes and Feedback)不管什么類型的游戲都要對玩家的游戲活動給出必須的結果和及時的反饋。玩家通過這些結果和反饋了解游戲進程和他們在游戲中的成長或進步情況

5、。4. 沖突/競爭/挑戰/對抗(Conflict / Competition / Challenge / Opposition)游戲的可玩性在于游戲中設計的競爭、挑戰、沖突或對抗,它們在游戲設計中處于核心地位,也是游戲的靈魂所在。在不同的游戲中,競爭、挑戰、沖突或對抗的表現是多種多樣的,難題的破解障礙的逾越與敵人面對面的廝殺等等它們構成了不同類型游戲的具體內容。游戲沖突和對抗設計的合理性可以作為衡量游戲好壞的標準。1.1 游戲設計概述5. 交互(Interaction)游戲中的交互主要表現在兩個方面:玩家與計算機的交互;當前玩家與其他游戲玩家的交互。在單機游戲中,玩家與計算機的對抗是游戲的主要

6、形式。對于多人在線游戲,玩家與計算機的交互以及玩家與玩家之間的交互同時存在。6. 表現或故事(Representation or Story)游戲的主題必須依托于一種表現形式。玩游戲就是從事游戲規定的某個具體的游戲活動,這個游戲活動可以很簡單,也可以很復雜,可以一人參與,也可以多人同時參與。1.1 游戲設計概述1.1.3 游戲類型從人機交互模式的角度可以分為:單機游戲和網絡游戲;從運行平臺的角度可以分為:PC游戲、手機游戲、掌上游戲機游戲、街機游戲等等。最通用的分類方法:從游戲內容的性質可以將計算機游戲大致分為:1. 角色扮演游戲(Role-playing Game, RPG)2. 策略游戲(

7、 Strategy Games,SLG)根據決策的方式,可以分為即時戰略游戲(Real-Time Strategy Game, RTS)、回合制戰略游戲(Turn-based Strategy Game,TBS)以及塔防游戲(Tower Defend)。3. 動作游戲( Action Games,ACT )4. 格斗游戲( Fighting Games,FTG )5. 射擊類游戲( Shooting Games,STG)1.1 游戲設計概述6. 冒險游戲( Adventure Games,AVG )7. 體育游戲( Sports Games,SPG )8. 競速游戲( Racing Games

8、,RCG)9. 模擬游戲( Simulation Games,SIM )10. 桌面游戲( Table Game, TAB )11. 益智游戲( Puzzle Games,PZL)12. 音樂游戲(Music Game,MSC)實際上,也有不少混合類型的游戲,它們不能單純納入某個類型。1.1 游戲設計概述1.1.4游戲設計常用術語1. Boss2. NPC(Non Player Character,非玩者角色)3. AI(Artificial Intelligence,人工智能)4. 關卡(Level)5. 像素(Pixel)6. 解析度(Resolution)7. 幀(Frame)8. 幀率

9、(Frames Per Second,FPS)9. GUI(Graphical User Interface,圖形用戶界面)10. GDI(Graphic Device Interface,圖形設備接口)11. OpenGL(Open Graphics Library,開放圖形庫)12. DirectX1.2 游戲制作基本流程 游戲的制作過程與一般軟件產品的開發過程類似,同樣遵循軟件開發的一般規律。但游戲軟件又有別于一般軟件,它是集藝術、聲音以及游戲性于一身的軟件產品,有著自身特有的開發特點。一般軟件開發常采用的瀑布開發模式在游戲開發中就不適用,游戲開發更多地采用敏捷軟件開發(Agile So

10、ftware Development )模式它是以迭代和增量開發為基礎的一套軟件開發方法。 1.2 游戲制作基本流程大型商業游戲的開發團隊由程序、策劃、美術、測試、運營等各類人員組成。美術、程序、策劃、測試人員是整個游戲開發團隊中的四大主體人員,他們的配備比例大概是2 : 1 : 1 : 1。目前國內游戲開發團隊中,美術設計和程序設計人員需求量最大。大型商業游戲從創意到最終的游戲軟件產品一般要經歷三個階段:前期階段、制作階段以及后期階段。 1.2 游戲制作基本流程典型游戲制作流程及階段:1.2 游戲制作基本流程1.2.1 前期階段前期階段也稱為設計階段,它往往從創意開始,經過概念開發,形成初步

11、的游戲設計方案,最終構建初步的游戲原型。1.2.2 制作階段該階段是整個游戲制作的主要階段,也是耗時最長的階段。這個階段需要按照設計方案完成整個游戲系統的細節設計,包括:全部游戲元素的設計(游戲主角設計、NPC設計、游戲中各種怪物的設計以及各元素屬性的設定、游戲人工智能設計、游戲道具設計與屬性設定等)游戲地圖與場景設計任務設計與關卡設計游戲界面設計數值模型構建以及游戲規則設計游戲編輯工具制作游戲音效制作等。1.2 游戲制作基本流程1.2.3 后期階段當游戲制作階段接近尾聲,也就意味著游戲測試工作要開始了。游戲測試一直伴隨著游戲開發的全過程。游戲全部制作完畢后,要將游戲的全部組成部分集成在一起,

12、進行集成測試。后期進行的測試要確定每個實現的功能、游戲機制、屬性數值等是否符合游戲設計的規格和要求多采用黑盒測試,也稱為功能測試、數據驅動測試或基于規格說明的測試。后期的集成測試往往要花費較長的時間,同時也需要更多的人力才能完成。游戲測試包括兩方面的測試:傳統的軟件測試和游戲本身的測試。傳統軟件測試:把游戲作為游戲軟件這個角度來進行測試,也就是從軟件工程的角度對游戲進行測試;游戲本身的測試,也稱為游戲世界測試,有時其涉及面很廣,例如游戲情節測試、游戲世界的平衡測試、游戲文化測試以及游戲可玩性測試等等。1.2 游戲制作基本流程游戲在正式發布之前,都要經過Alpha測試、Beta測試。Alpha

13、測試是游戲公司內部的用戶在模擬實際操作環境下進行的受控測試,也稱為內部測試。其目的主要是測試和完善各項功能,確認游戲是否存在重大Bug。一般來說,為了避免程序員的慣性思維,Alpha測試一般都不由程序員進行。Beta測試是游戲玩家在實際使用環境下進行的測試,也稱為外部測試。Beta測試屬于驗收測試,即游戲通過了功能測試和系統測試之后,在游戲發布之前所進行的軟件測試。以上只是游戲制作的一個大致流程,該流程與具體的游戲公司無關,是一種比較理想化的游戲開發過程。實際的游戲制作流程會由于具體游戲公司的規模、規范程度、游戲制作類型等不同而有較大差異。1.3 關于游戲引擎1.3.1 游戲引擎的含義“游戲引

14、擎”這個詞目前還是一個概念寬泛的詞,沒有所謂權威、統一的定義。游戲引擎是一套為游戲開發而設計的系統,與具體游戲內容無關,由可重用的核心游戲功能組件組成。游戲引擎提供的核心功能組件一般包括:2D或3D圖形渲染引擎物理引擎碰撞檢測系統音效腳本引擎動畫人工智能網絡引擎場景管理等。1.3 關于游戲引擎完善的游戲引擎會為游戲開發者提供游戲運行和開發的程序框架以及易于使用的可視化集成開發環境。商業化游戲引擎會提供多操作系統的支持,如Linux、Mac OS X、Windows等。游戲引擎讓游戲設計者可以簡便、快速地制作出游戲程序,而不必從零開始編寫代碼。如今的商業游戲引擎,已經發展成一套由多個子系統共同構

15、成的復雜系統從建模、動畫到光影、粒子特效,從物理系統、碰撞檢測到文件管理、網絡特性,還有專業的編輯工具和插件幾乎涵蓋了游戲開發過程中的所有重要環節。1.3 關于游戲引擎1.3.2 游戲引擎的結構游戲引擎提供的是每個游戲都能用到的功能;與具體游戲內容相關的東西都不會成為引擎的組成部分例如游戲故事、游戲邏輯、游戲資源以及為方便游戲制作而開發的游戲資源編輯工具等。游戲引擎只包含每個游戲或一類游戲都會用到的通用模塊。一般地來說,功能比較完整的游戲引擎都會包含以下模塊:渲染引擎(包括二維圖像引擎和三維圖像引擎)腳本系統動畫系統物理系統碰撞檢測系統聲音系統人工智能系統網絡系統場景管理系統等模塊。1.3 關

16、于游戲引擎游戲引擎模塊構成及相互關系 1.3 關于游戲引擎游戲引擎中必須包含的模塊或稱組件,并沒有正式或統一的標準。除了核心功能外,游戲引擎還會提供運行游戲所必須的程序框架,例如游戲啟動、游戲循環、游戲消息處理等。1.3 關于游戲引擎1.3.3 關于游戲工具游戲資源可以單獨制作例如游戲圖片可以使用Photoshop或其他圖形處理軟件制作,但是如果這些圖片不按照游戲引擎約定的標準制作的話,游戲引擎將無法指揮這些圖片。要在游戲內容與游戲引擎之間建立聯系,就需要游戲工具來做這件事。常用游戲工具包括:關卡編輯器游戲地圖編輯器網格模型導出程序路徑規劃程序等等。1.3 關于游戲引擎游戲工具的作用1.3 關

17、于游戲引擎1.3.4 著名游戲引擎簡介 主流商業游戲引擎:1. CE引擎 2. Unreal Engine 3 3. Gamebryo引擎4. Frostbite Engine5. Source引擎6. Id Tech 3引擎7. X-Ray引擎8. EGO引擎9. IW引擎 10. MT Framework 1.4 游戲編程語言主流的編程語言有C、C+、Java、C#、VB.NET等,如果從純語言的角度來看,它們都可以用來編寫游戲程序。C或C+語言在游戲的核心編程方面有一定的優勢。目前大多數大型商業游戲的主程序部分基本上都是使用C或C+編寫的,有的甚至還部分地使用了匯編語言。大型商業游戲一般都基于網絡,其服務端和

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論