资源预览内容
第1页 / 共38页
第2页 / 共38页
第3页 / 共38页
第4页 / 共38页
第5页 / 共38页
第6页 / 共38页
第7页 / 共38页
第8页 / 共38页
第9页 / 共38页
第10页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
游戏设计概论(第二版),游戏开发工具,4-1 游戏开发工具简介 4-2 C/C+程序设计语言 4-3 VISUAL BASIC程序设计语言 4-4 JAVA程序设计语言 4-5 FLASH与ACTION SCRIPT 4-6 OPENGL 4-7 DIRECTX,游戏设计概论(第二版),游戏开发工具,4-1 游戏开发工具简介 4-2 C/C+程序设计语言 4-3 VISUAL BASIC程序设计语言 4-4 JAVA程序设计语言 4-5 FLASH与ACTION SCRIPT 4-6 OPENGL 4-7 DIRECTX,游戏设计概论(第二版),4-1 游戏开发工具简介,游戏开发工具的选择 程序设计语言 游戏开发工具、引擎 程序设计语言 VB (事件处理) C/C+ (速度快,直接调用操作系统的组件) Java (跨平台,网络联机,手机游戏) Delphi,4-1-1 程序设计语言的选择,游戏设计概论(第二版),4-1 游戏开发工具简介,游戏平台 大型游戏机 电视游戏机 掌上型游戏机 PC游戏平台 Windows (用户最多) Linux Macintosh UNIX(Solaris) 开发游戏时要考虑游戏运行的平台,4-1-2 操作平台的考虑,游戏设计概论(第二版),4-1 游戏开发工具简介,开发游戏早期(DOS时代),专门编写代码控制计算机与外设间的底层操作(成像、音效、输入设备等) 图形函数库(制作游戏时的作用如右下图) OpenGL(SGI ) DirectX (微软) 使用简单(直接调用、设置参数,如下图),4-1-3 游戏工具函数库的作用,游戏设计概论(第二版),4-2 C/C+程序设计语言,早期编写游戏:C语言+汇编语言 C+:C语言+改进的输入输出+面向对象 如果要编写大中型游戏的话,建议多使用C/C+作为程序设计语言。 C/C+是所有程序设计人员公认的功能强大的程序设计语言,也是运行时速度比较快的语言。,游戏设计概论(第二版),4-2 C/C+程序设计语言,4-2-1 执行平台 高级程序设计语言,需编译 不能跨平台 调用系统功能或组件很方便 4-2-2 语言特性 指针、内存管理 面向对象(如右图) 速度快,游戏设计概论(第二版),4-2 C/C+程序设计语言,C/C+集成开发环境 Microsoft :Visual C+ Borland : C+ Builder Dev C+ Kdevelop,4-2-3 开发环境介绍,游戏设计概论(第二版),4-2 C/C+程序设计语言,大型游戏软件开发模式 VC+ + Win API Win API :Windows Application Interface(windows应用程序接口) 包含Windows提供的动态链接库(DLL) 包含了Windows内核及应用程序所需功能 VC+ + MFC MFC:Microsoft Foundation Class(微软基础类库) 封装了大部分API,4-2-4 Visual C+与游戏设计,游戏设计概论(第二版),4-3 Visual Basic程序设计语言,微软1991年,推出Visual Basic,将 Basic语言加入可视化的概念。 Visual Basic最容易上手,但是运行速度缓慢,而且简单的程序语言在功能性上通常很有限,对于大型游戏而言,Visual Basic的速度与功能就显得不足。 VB开发环境如下图。,游戏设计概论(第二版),4-3 Visual Basic程序设计语言,4-3-1 执行平台 需编译 只能在windows下运行 可以调用windows API和DirectX 4-3-2 语言特性 语法简单,使用方便 界面可视化设计 功能有限,适于小型游戏的开发 运行速度慢,游戏设计概论(第二版),4-3 Visual Basic程序设计语言,4-3-3 Visual Basic与游戏设计 开发直观方便 速度慢,影响游戏的流畅度 仅编写一些小游戏 Direct7.0提供了VB调用的接口机制,使得VB可以跳过操作系统,直接访问底层硬件,速度明显提升,游戏设计概论(第二版),4-4 Java程序设计语言,Java程序具有跨平台的优点,所以Java非常适合拿来进行游戏制作。,游戏设计概论(第二版),4-4 Java程序设计语言,4-4-1 运行平台 跨平台:不重写编译,在其他操作系统上运行 两次编译(如左下图) 程序设计师针对java运行环境进行程序设计(右下图) Java程序设计方式 应用程序方式 Applet小程序方式,Java程序的执行流程 Java运行环境设计,游戏设计概论(第二版),4-4 Java程序设计语言,4-4-2 语言特性 简单、自动内存管理、安全 面向对象 运行速度慢 运行时二次编译 动态加载类库 4-4-3 Java与游戏设计 功能增强,增加了绘图、网络、多媒体等的API 适于开发网络联机游戏、Applet小游戏、手机游戏,游戏设计概论(第二版),4-5 Flash与ActionScript,Flash设计出来的游戏画面精美,容量也小,所以在小游戏的设计领域迅速走红。 可以使用Flash编写:2D平面游戏、规划制作闯关游戏、平面RPG游戏 Flash特点(文件小) 矢量图 重复利用图片片段 图片压缩 编播放边下载 补间动画 (时间轴、关键帧、过渡帧),游戏设计概论(第二版),4-5 Flash与ActionScript,Flash与游戏设计 内置脚本语言ActionScript 与用户交互 通过语言创建对象、设置动画 加入面向对象的特性 在小游戏领域很风靡 很多在传统平台上的游戏被改编为Flash小游戏,游戏设计概论(第二版),4-6 OpenGL,图形 API 游戏设计人员设计时,不必去考虑具体硬件的特性,而只是按照3D API的接口标准来开发游戏,当游戏运行时则直接通过3D API来调用硬件资源。 目前个人电脑中主要应用的3D API有DirectX和OpenGL。 基于DirectX开发的游戏有:帝国时代3、孤岛惊魂、2、Half Life2等。 而OpenGL则主要应用于专业的图形工作站,在游戏历史上也曾经和DirectX分庭抗礼,产生了一大批的优秀游戏,例如Quake3、Half Life、荣誉勋章的前几部、反恐精英等,目前在DirectX的步步紧逼之下,采用OpenGL的游戏已经日渐减少,但也不乏经典大作,例如基于OpenGL的DOOM3以及采用DOOM3引擎的Quake4等。,4-6-1 OpenGL简介 4-6-2 OpenGL发展史 4-6-3 OpenGL函数说明 4-6-4 OpenGL的工作原理,游戏设计概论(第二版),4-6-1 OpenGL简介,OpenGL(Open Graphics Library,开放性图形库),最早是1992年在SGI公司的GL三维图形库为基础制定的一个通用共享的开放式三维图形标准。 OpenGL是一个与硬件无关的软件接口,可以在不同的平台如Windows 、Unix、Linux、MacOS、Solaris、OS2之间进行移植 是一套“计算机三维图形”处理函数库,是绘图成像的工业标准 是显卡厂商共同定义的通用函数库,都依据该函数库来开发显示功能,游戏设计概论(第二版),4-6-2 OpenGL发展史,OpenGL版本发展,游戏设计概论(第二版),4-6-3 OpenGL函数说明,为了更方便的使用OpenGL来开发软件,开发了GLU和GLUT函数库,将一些常用的OpenGL API再做包装(如下图) GLUT工具库(OpenGL Utility Toolkit) 简化窗口代码的编写 GLU实用库(OpenGL Utility Library) 协助处理材质、投影与曲面模型 微软不积极支持OpenGL,C:WINDOWSsystem32opengl32.dll,仅支持到OpenGL 1.1,游戏设计概论(第二版),4-6-4 OpenGL的工作原理,OpenGL绘图数据处理过程 2. OpenGL的绘图处理过程 (透明玻璃杯的显示),游戏设计概论(第二版),4-6-4 OpenGL的工作原理,OpenGL在处理绘图影像要求的时候,可以将它归纳成两种方式 软件需求 硬件需求,游戏设计概论(第二版),4-7 DirectX,4-7-1 DirectX SDK简介 4-7-2 DirectGraphics 4-7-3 DirectSound 4-7-4 DirectInput 4-7-5 DirectShow 4-7-6 DirectPlay,DirectX是微软1995年开发的用途广泛的图形函数库 Direct的意思是“直接的”,X意味着“无限” 开发者可以不考虑设备差异而访问硬件最底层,使程序员从无尽的硬件驱动程序中解脱出来,游戏设计概论(第二版),DirectX简介,DirectX是由微软公司开发的用途广泛的API 它包含多个组件,提供了一整套的多媒体接口方案。 DirectX开发之初是为了弥补Windows 3.1系统对图形、声音处理能力的不足,而今已发展成为对整个多媒体系统的各个方面都有决定性影响的接口。 DirectX的发展 DirectX 1.0 、2.0、3.0、5.0、6.0、7.0、8.0、9.0,游戏设计概论(第二版),DirectX简介,DirectX的发展 DirectX 1.0 、2.0、3.0、5.0、6.0 DirectX 7.0 支持T&L(固定光影转换相比 ) DirectX 8.0 首次引入“像素渲染”(反映在特效上就是动态光影效果 ) 像素渲染引擎(PS,Pixel Shader) 顶点渲染引擎(VS,Vertex Shader) DirectX 9.0 PS单元的渲染精度已达到浮点精度,传统的硬件T&L单元也被取消 DirectX 9.0c和Shader Model 3.0(PS3.0和VS3.0)标准的推出,使人们对待游戏的态度开始从过去单纯地追求速度,转变到游戏画质和运行速度两者兼顾。,游戏设计概论(第二版),4-7-1 DirectX SDK简介,DirectX包括两部分 运行时函数库(Runtime) 各版本不同,向下兼容 软件开发工具包(DirectX SDK ,Software Development Kit),DirectX SDK的主要组件,游戏设计概论(第二版),4-7-2 DirectGraphics,负责2D和3D图形的运算,支持多种硬件加速 DirectX 8.0以前版本,绘图包括2部分: 1. DirectDraw(处理2D平面图像) 与Windows GDI(Graphics Device Interface图形设备接口)相似,简单易学易用 2. Direct3D (处理3D立体成像) 复杂,不易掌握 DirectX 8.0以后版本, DirectDraw和 Direct3D集成为DirectGraphics 通过3D平台处理2D图形接口,游戏设计概论(第二版),4-7-3 DirectSound,Windows MCI(Media Control Interface)多媒体播放函数 DirectSound比MCI复杂、多元 基本:播放声音、处理混音 多种音效处理支持 低延迟音、3D立体声、协调硬件操作 录音功能、多媒体软件程序低间隔混音、硬件加速、存取音效设备 DirectSound一个音效播放区分为几个对象成员 声卡(DirectSound) 2D缓冲区(DirectSoundBuffer) 3D缓冲区(DirectSound3DBuffer) 3D空间倾听者(DirectSound3DListener) 3D音效,倾听者位置不同,音效就不同(如右图),游戏设计概论(第二版),4-7-3 DirectSound,2D缓冲区、3D缓冲区、3D倾听者三者关系(如
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号