你的位置:首页 > ASP.net教程

[ASP.net教程]Atitit 游戏的原理与概论attilax总结


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. 基础概念 (导演,场景,层,以及精灵,调度器scheduler)3

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 ,cocos,unity)10

13. 游戏ide10

14. 与gui体系的关系10

15. webgl  canvas11

16. 显示驱动:FrameBuffer,libggi,vga三种图形驱动11

17. 双缓冲 和OSD层11

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:1466519819@qq.com

转载请注明来源: 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,onTouchMoved和onTouchEnded,也可以直接通过Lambda表达式完成响应逻辑

 

11. OpenGL vs DirectX

OpenGL™ 是行业领域中最为广泛接纳的 2D/3D 图形 API, 其自诞生至今已催生了各种计算机平台及设备上的数千优秀应用程序。OpenGL™ 是独立于视窗操作系统或其它操作系统的,亦是网络透明的。在包含CAD、内容创作、能源、娱乐、游戏开发、制造业、制药业及虚拟现实等行业领域中,OpenGL™ 帮助程序员实现在 PC、工作站、超级计算机等硬件设备上的高性能、极具冲击力的高视觉表现力图形处理软件的开发。
DirectX是一种应用程序接口(API),它可让以windows为平台的游戏或多媒体程序获得更高的执行效率,加强3d图形和声音效果,并提供设计人员一个共同的硬件驱动标准,让游戏开发者不必为每一品牌的硬件来写不同的驱动程序,也降低用户安装及设置硬件的复杂度。这样说是不是有点不太明白,其实从字面意义上说,Direct就是直接的意思,而后边的X则代表了很多的意思,从这一点上我们就可以看出DirectX的出现就是为了为众多软件提供直接服务的。

12. 游戏引擎(dom ,cocos,unity)

参考资料 Atitit。游戏引擎调查.docx

13. 游戏ide

游戏比较复杂,一般需要个ide的。编辑场景(page)和sprite控件

14. 与gui体系的关系

属于gui的特化

15. webgl  canvas

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

 

第1章 WebGL简介

  第2章 你的第一个WebGL程序

  第3章 图形

  第4章 动画

  第5章 交互

  第6章 2D与3D的整合

  第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章 人体学接口设备(HID) 309

第9章 调试及开发工具 333

第10章 渲染引擎 361

第11章 动画系统 447

第12章 碰撞及刚体动力学 537

第13章 游戏性系统简介 619

第14章 运行时游戏性基础系统 637

第15章 还有更多内容吗 729

 

18.2. 游戏编程数学和物理基础

第1章点和直线

第2章相关几何知识

第3章三角函数

第4章向量运算

第5章矩阵运算

第6章变换

第7章单位换算

第8章一维空间运动

第9章一维空间的运动导数

第10章二维和三维空间运动

第11章牛顿定律

第12章能量

第13章动量和碰撞

第14章旋转运动

 

18.3. 《游戏开发物理学 第2版》([美]David...) l

 

 第1章 基本概念

 第2章 运动学

 第3章 力

 第4章 动理学

 第5章 碰撞

 第6章 抛体

 第7章 实时仿真

 第8章 粒子

 第9章 2D刚体仿真器

 第10章 实现碰撞响应

 第11章 3D刚体仿真中的转动

 第12章 3D刚体仿真

 第13章 连接物体

 第14章 物理引擎

 第15章 飞机

 第16章 船舶

 第17章 汽车和气垫船

 第18章 枪支和爆炸

 第19章 运动

 第20章 触摸屏

 第21章 加速度计

 第22章 从这里到那里的游戏

 第23章 压力传感器和称重传感器

 第24章 3D显示

 第25章 光学追踪

 第26章 声音

19. 参考资料

WebGL入门指南  456章节