Atitit 游戲的原理與概論attilax總結

来源:http://www.cnblogs.com/attilax/archive/2016/09/27/5914740.html
-Advertisement-
Play Games

Atitit 游戲的原理與概論attilax總結 1. 游戲歷史2 1.1.1. 盤點PC游戲史上最重要的50款游戲2 1.1.2. 回味人類文明進程 五款經典的歷史游戲2 2. 游戲類型(主要分為6類:動作、冒險、模擬、角色扮演、休閑和其他)2 3. 《游戲設計的100個原理》((美)迪斯潘... ...


Atitit 游戲的原理與概論attilax總結

 

1. 游戲歷史2

1.1.1. 盤點PC游戲史上最重要的50游戲2

1.1.2. 回味人類文明進程 五款經典的歷史游戲2

2. 游戲類型主要分為6類:動作、冒險、模擬、角色扮演、休閑和其他2

3. 《游戲設計的100個原理》((美)迪斯潘...)2

4. 《游戲》((美)加維...)3

5. 游戲開發工程師修煉之道3

6. 基礎概念 導演,場景,層,以及精靈調度器scheduler3

7. 人機交互事件分發機制 Event Dispatcher4

8. 主要功能流程式控制制(Flow control)精靈(Sprites)動作,轉換。。4

9. 圖像渲染和動畫 (序列幀動畫,動作,骨骼動畫,場景轉換,粒子系統,瓦片地圖)5

9.1. 骨骼動畫詳解-Spine5

9.2. 骨骼動畫編輯器——Spine5

9.2.1. 場景轉換(Transitions)5

9.3. 粒子系統5

9.4. 瓦片地圖6

9.5. 節點剪裁7

10. 事件分發機制8

11. OpenGL vs DirectX10

12. 游戲引擎(dom cocosunity10

13. 游戲ide10

14. gui體系的關係10

15. webgl  canvas11

16. 顯示驅動:FrameBuffer,libggi,vga三種圖形驅動11

17. 雙緩衝 OSD11

18. 游戲架構設計與策劃基礎11

18.1. 游戲引擎架構12

18.2. 游戲編程數學和物理基礎12

18.3. 《游戲開發物理學 2版》([]David...) l13

19. 參考資料14

 

 

1. 游戲歷史

1.1.1. 盤點PC游戲史上最重要的50游戲

1.1.2. 回味人類文明進程 五款經典的歷史游戲

細數游戲史上的30款神作_游戲_騰訊網.html

游戲發展史_圖文_百度文庫.html

中國網路游戲的歷史與發展.html

中國游戲發展史——屬於80後的游戲記憶-互聯網的一些事.html

游戲史_百度百科.html

電子游戲發展史_百度百科.html

 

2. 游戲類型主要分為6類:動作、冒險、模擬、角色扮演、休閑和其他

 編輯

游戲類型(Game Genres),通常用於分類電子游戲,是一種分辨游戲之間區別的方法。世界上並沒有統一的分類方法。游戲類型,他們各有幾十種分支,形成了龐大的游戲類型樹

 

作者:: 綽號:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿爾 拉帕努伊 ) 漢字名:艾龍,  EMAIL:[email protected]

轉載請註明來源: http://www.cnblogs.com/attilax/

 

3. 《游戲設計的100個原理》((美)迪斯潘...)

《游戲設計的100個原理》((美)迪斯潘...)【簡介_書評_線上閱讀】 - 噹噹圖書.html

 

1篇 游戲創新的一般原理

2篇 游戲創作的一般原理

3篇 游戲平衡的一般原理

4篇 解決問題的一般原理

 

4. 《游戲》((美)加維...)

1 什麼是游戲

2 微笑的發展史

3 運動游戲和交往

4 物品游戲

5 語言游戲

6 社會性游戲

7 規則游戲

8 儀式化的游戲

9 游戲和現實世界

 

5. 游戲開發工程師修煉之道

  第1章歷史基礎:我們是怎麼走到今天的

  第2章平臺及玩家模式:框架是什麼

  第3章定位和類型:都有哪些可能性

  第4章玩家元素:誰在玩游戲,為什麼玩

  第5章故事及人物開發:創造故事

  第6章游戲性:創造游戲體驗

  第7章關卡:創造世界

  第8章界面:創造聯繫

  第9章音頻:創造氛圍

  第10章角色和職責:建設團隊

  第11章製作和管理:建立流程

  第12章營銷和維護:打造社區

6. 基礎概念 導演,場景,層,以及精靈調度器scheduler

 

· 

7. 人機交互事件分發機制 Event Dispatcher

· 

 

 

8. 主要功能流程式控制制(Flow control)精靈(Sprites)動作,轉換。。

流程式控制制(Flow control):非常容易地管理不同場景(scenes)之間的流程式控制制

精靈(Sprites):快速而方便的精靈

動作(Actions):告訴精靈們該做什麼。可組合的動作如移動(move)、旋轉(rotate)和縮放(scale)等更多

特效(Effects):特效包括波浪(waves)、旋轉(twirl)和透鏡(lens)等更多

平面地圖(Tiled Maps):支持包括矩形和六邊形平面地圖

轉換(Transitions):從一個場景移動到另外一個不同風格的場景

菜單(Menus):創建內部菜單

文本渲染(Text Rendering):支持標簽和HTML標簽動作

文檔(Documents):編程指南 + API參考 + 視頻教學 + 很多教你如何使用的簡單測試例子

BSD許可:儘管用就是了

基於Pyglet:沒有外部的依賴

基於OpenGL:支持硬體加速[3] 

 

· 

·  

9. 圖像渲染和動畫 (序列幀動畫,動作,骨骼動畫,場景轉換,粒子系統,瓦片地圖)

9.1.  骨骼動畫詳解-Spine

游戲中人物的走動,跑動,攻擊等動作是必不可少,實現它們的方法一般採用幀動畫或者骨骼動畫。

幀動畫與骨骼動畫的區別在於:幀動畫的每一幀都是角色特定姿勢的一個快照,動畫的流暢性和平滑效果都取決於幀數的多少。而骨骼動畫則是把角色的各部分身體部件圖片綁定到一根根互相作用連接的“骨頭”上,通過控制這些骨骼的位置、旋轉方向和放大縮小而生成的動畫。

9.2.  骨骼動畫編輯器——Spine

9.2.1.  場景轉換(Transitions)

 提供了在兩個不同場景之間直接轉換的能力。例如:淡入淡出,放大縮小,旋轉,跳動等。從技術上來說,一個場景轉換就是在展示並控制一個新場景之前執行一個轉換效果。

·  

9.3. 粒子系統

 

 

9.4. 瓦片地圖

瓦片地圖

在游戲開發過程中,我們會遇到超過屏幕大小的地圖,例如即時戰略游戲,使得玩家可以在地圖中滾動游戲畫面。這類游戲通常會有豐富的背景元素,如果直接使用背景圖切換的方式,需要為每個不同的場景準備一張背景圖,而且每個背景圖都不小,這樣會造成資源浪費。

瓦片地圖就是為瞭解決這問題而產生的。一張大的世界地圖或者背景圖可以由幾種地形來表示,每種地形對應一張小的的圖片,我們稱這些小的地形圖片為瓦片。把這些瓦片拼接在一起,一個完整的地圖就組合出來了,這就是瓦片地圖的原理。

##TileMap方案

 TileMap要求每個瓦片占據地圖上一個四邊形或六邊形的區域。把不同的瓦片拼接在一起,就可以組成完整的地圖了。我們需要很多較小的紋理來創建瓦片。通常我們會將這些較小的紋理放在一張圖片中,這樣做會提高繪圖性能。

##瓦片地圖編輯器 地圖編輯器Tiled Map Editor制

·  

·   多解析度支持策略和原理

· Cocos2d-x 2.0.4開始,Cocos2d-x提出了自己的多解析度支持方案,廢棄了之前的retina相關設置介面,提出了design resolution概念。

9.5. 節點剪裁

ClippingNode的使用#

##概述

ClippingNode(裁剪節點)可以用來對節點進行裁剪,可以根據一個模板切割圖片的節點,生成任何形狀的節點顯示。

·  

ClippingNode 原理:

· 

ClippingNode是利用模板遮罩來完成對Node區域裁剪的技術。如何理解ClippingNode的遮罩?看下圖的例子吧。

· 

· 

所謂模板,就是一個形狀,透過該形狀可看到底板上的圖層,如果底板上沒有任何內容,則直接看到Layer上的內容,而底板上的東西又不會妨礙Layer上的東西,即模板在底板之外的空間對於Layer來說是透明的。

· 

10. 事件分發機制

新事件分發機制:2.x 版本事件處理時,將要觸發的事件交給代理(delegate)處理,再通過實現代理裡面的onTouchBegan等方法接收事件,最後完成事件的響應。而在新的事件分發機制中,只需通過創建一個事件監聽器-用來實現各種觸發後的邏輯,然後添加到事件分發器_eventDispatcher,所有事件監聽器有這個分發器統一管理,即可完成事件響應。

事件監聽器有以下幾種:

· 觸摸事件 (EventListenerTouch)

· 鍵盤響應事件 (EventListenerKeyboard)

· 滑鼠響應事件 (EventListenerMouse)

· 自定義事件 (EventListenerCustom)

· 加速記錄事件 (EventListenerAcceleration)

_eventDispatcher的工作由三部分組成:

· 事件分發器 EventDispatcher

· 事件類型 EventTouch, EventKeyboard 等

· 事件監聽器 EventListenerTouch, EventListenerKeyboard 等

監聽器實現了各種觸發後的邏輯,在適當時候由事件分發器分發事件類型,然後調用相應類型的監聽器。

##用戶輸入事件

###觸摸事件

在處理觸摸事件時,既可以重寫三個方法onTouchBegan,onTouchMovedonTouchEnded,也可以直接通過Lambda表達式完成響應邏輯

 

11. OpenGL vs DirectX

OpenGL™ 是行業領域中最為廣泛接納的 2D/3D 圖形 API, 其自誕生至今已催生了各種電腦平臺及設備上的數千優秀應用程式。OpenGL™ 是獨立於視窗操作系統或其它操作系統的,亦是網路透明的。在包含CAD、內容創作、能源、娛樂、游戲開發、製造業、製藥業及虛擬現實等行業領域中,OpenGL™ 幫助程式員實現在 PC、工作站、超級電腦等硬體設備上的高性能、極具衝擊力的高視覺表現力圖形處理軟體的開發。
DirectX是一種應用程式介面(API),它可讓以windows為平臺的游戲或多媒體程式獲得更高的執行效率,加強3d圖形和聲音效果,並提供設計人員一個共同的硬體驅動標準,讓游戲開發者不必為每一品牌的硬體來寫不同的驅動程式,也降低用戶安裝及設置硬體的複雜度。這樣說是不是有點不太明白,其實從字面意義上說,Direct就是直接的意思,而後邊的X則代表了很多的意思,從這一點上我們就可以看出DirectX的出現就是為了為眾多軟體提供直接服務的。

12. 游戲引擎(dom cocosunity

參考資料 Atitit。游戲引擎調查.docx

13. 游戲ide

游戲比較複雜,一般需要個ide的。編輯場景(page)和sprite控制項

14. gui體系的關係

屬於gui的特化

15. webgl  canvas

WebGL入門指南_百度百科.html

 

1WebGL簡介

  第2章 你的第一個WebGL程式

  第3章 圖形

  第4章 動畫

  第5章 交互

  第62D3D的整合

  第7章 實戰WebGL

8章 你的第一個WebGL游戲

 

 

16. 顯示驅動:FrameBuffer,libggi,vga三種圖形驅動

 

17. 雙緩衝 OSD

OSD層,也就是說,只有在OSD層上顯示圖像我們才能看到。在圖形圖象處理編程過程中,雙緩衝是一種基本的技術。我們知道,如果窗體在響應WM_PAINT消息的時候要進行複雜的圖形處理,那麼窗體在重繪時由於過頻的刷新而引起閃爍現象。

 

18. 游戲架構設計與策劃基礎

1章 游戲策劃概述

2章 玩家心理分析與游戲性

3章 游戲概念及原型設計

4章 游戲背景設計

5章 游戲地圖與場景設計

6章 游戲元素設計

7章 任務與關卡設計

8章 游戲規則設計

9章 界面與用戶控制

10章 游戲編輯工具

11章 游戲設計文檔

附錄A 動作休閑網路游戲策劃實例

附錄B 棋牌類網路游戲策劃大綱

附錄C 游戲策劃案——《炎龍戰記》系統策劃案

附錄D 策劃設計文檔

18.1. 游戲引擎架構

1章 導論 3

2章 專業工具 53

3章 游戲軟體工程基礎 83

4章 游戲所需的三維數學 125

5章 游戲支持系統 185

6章 資源及文件系統 241

7章 游戲迴圈及實時模擬 277

8

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 初學swift 但是網上只有很多swift用xib創建的cell,就算是有也不是我想要的。今天自己弄了一個不用xib純代碼寫的,來上代碼 自定義cell 下麵是controller 例外說一點懶載入 OC的懶載入 @property (nonatomic, strong) NSMutableArra ...
  • 裡面主要包含了一些與字元串關聯的函數的聲明,這些函數有如下的命名規則: 以"mem"開頭的函數操作任意的字元序列 以"strn"開頭的函數操作非空字元序列 以"str"開頭的函數操作空字元結尾的字元序列 數據類型 size_t 巨集 NULL 函數 複製 memcpy() memmove() strc ...
  • 有人常問,雲巴實時通信系統到底提供了一種怎樣的服務,與其他提供推送或 IM 服務的廠商有何本質區別。其實,從技術角度分析,雲巴與其它同類廠商都是面向開發者的通信服務,巨集觀的編程模型都是大同小異,真正差異則聚焦於產品定位,業務模式,基礎技術水平等諸多細節上。本文暫不討論具體產品形態上的差異,著重從技術... ...
  • ...
  • 好文轉載留存,轉至http://javatar.iteye.com/blog/706098 1. API與SPI分離 框架或組件通常有兩類客戶,一個是使用者,一個是擴展者, API(Application Programming Interface)是給使用者用的, 而SPI(Service Pro ...
  • 從2005年畢業至今,畢業已經11年,正好現處於離職狀態,所以理一理些年的一些技術,一些想法,在此也分享給大家,不對的地方也請大家儘管打臉,贊同的話呢,那就點個贊吧。:) 先說一下風格,一不照本宣科,二不複製粘貼,純手打,三必須是結合實際開發的經驗或理解來整理。 那麼,先從面向對象理起吧,以下是目錄... ...
  • Atitit.數據採集器 dataspider /atiplat_cms/src/com/attilax/WebInfoX.java @dep http://cl.cmcher.com/thread0806.php?fid=16&search=&page=2 /atiplat_cms/src/com ...
  • Atitit.可視化與報表原理與概論 1. 信息可視化1 2. Gui可視化1 3. 報表系統(三大圖表,金字塔,組織結構圖等)1 4. 《可視化數據》目錄3 5. 可視化的具體實現(canvas,svg ,dom)4 6. 報表圖表框架4 1. 信息可視化 Chapter01 做好準備,瞭解信息可 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...