directx游戏开发

directx游戏开发

DirectX是什么,在游戏开发中常用吗,和其他引擎有什么区别?

1、DirectX 是什么?OpenGL,直译过来就是,开放的图形库(Open Graphic Library)。

如其名,它的作用,就是绘制图形,除此之外都不做。

OpenGL是跨平台的,windows、Mac、Linux、iOS、Android等等大家都能用。

但所谓泛而不精,微软为了更好的性能,开发出了一套“专门适配windows平台的OpenGL",名为DirectX。

同理,苹果在今年也开发出了一套“专门适配Mac和iOS平台的OpenGL”,名为Metal 3D。

2、在游戏开发中常用吗?游戏开发中,常用,或者说必用。

游戏开发是什么?无非就是根据一定的逻辑,给予玩家一定的反馈。

这种反馈,大部分是视觉上,例如按钮点下出现的阴影,释放技能产生的特效。

也可以是听觉的反馈(音乐音效),触觉的反馈(手柄或手机的震动)等等。

那么用DirectX(或其他图形库)去实现视觉上的反馈,完成游戏,当然是最常用的。

3、如果用directX 配合微软的visual studio ,不借助其他引擎,能否完成一个游戏编程方面的工作。

(和其他引擎有什么区别?)这两个其实是一个问题。

由2的回答,题主应该知道了,单纯用DirectX可以完成视觉上的反馈,如果自己再加上一些音乐音效播放的库,通过代码逻辑的迭代,便足以组装出一个游戏了。

但,游戏是仅仅这么简单么?也许你要模拟一个大雪的场景,你可能用DirectX画出一个雪花,然后让他们在屏幕的随机坐标出现,并设置一定的速度让他们缓缓落下。

完成并调整好这个效果,你可能需要一天的时间,但如果你知道,这叫做粒子系统,并且在大部分游戏引擎中已经实现,那么这只需要一分钟的时间即可完成。

如果把游戏引擎比作绘画,那其中部件可大致分为三类,第一类,相当于颜料中的三原色,DirectX等图形库,OpenAL等音乐库,键盘、触摸屏或手柄的输入控制,他们是最基础的组成部分。

第二类,相当于形形色色的颜料,如前面提到粒子系统、如精灵、视差层、地图刷等部件,虽然它们可通过三原色调制出来,但由于实在过于常用,便集成进了游戏引擎里。

第三类,相当于颜料盘、画笔等等,它用于辅助游戏的完成。

例如事件分发系统、定时器系统等,可简化在编程过程中的代码逻辑。

游戏引擎是一套完整完善的游戏开发解决方案,而DirectX,是一个图形处理库,属于游戏引擎中的一部分。

DirectX 9.0 3D游戏开发编程基础 读后感

DirectX 9.0 3D游戏开发编程基础 内容提要:本书主要介绍如何使用DirectX 9.0开发交互式3D图形程序,重点是游戏开发。

全书首先介绍了必要的数学工具,然后讲解了相关的3D概念。

其他主题几乎涵盖了Direct3D中的所有基本运算,例如图元的绘制、光照、纹理、Alpha融合、模板,以及如何使用Direct3D实现游戏中所需的技术。

介绍顶定点着色器和像素着色器的章节(包含了效果框架和新的高级着色语言的内容)对这些关键运算进行了较为集中的讨论。

本书内容深入浅出,内容广泛,可供从事3D游戏程序设计、可视化系统设计或其他图形应用程序开发的开发人员和大中专院校学生参考,也极适合各种游戏开发培训机构作为Direct3D编程的培训教程。

DirectX 9.0 3D游戏开发编程基础 读后感:第Ⅰ部分 基础知识 必备的数学知识 33D空间中的向量 3 向量相等 7 计算向量的长度 7 向量的规范化 8 向量加法 9 向量减法 9 数乘 10 点积 11 叉积 11 矩阵 12 矩阵相等、矩阵数乘和矩阵加法 13 矩阵乘法 14 单位矩阵 15 逆矩阵 15 矩阵的转置 16 D3DX矩阵 16 基本变换 19 平移矩阵 20 旋转矩阵 21 比例变换矩阵 23 几何变换的组合 24 向量变换的一些函数 25 平面(选读) 26 D3DXPLANE 27 点和平面的空间关系 27 平面的创建 28 平面的规范化 29 平面的变换 29 平面中到某一点的最近点 30 射线(选读) 31 射线 31 射线与平面的相交 32 小结 32 第Ⅱ部分 Direct3D基础 第1章 初始化Direct3D 371.1 Direct3D概述 371.1.1 REF设备 381.1.2 D3DDEVTYPE 381.2 COM(组件对象模型) 381.3 预备知识 391.3.1 表面 391.3.2 多重采样 411.3.3 像素格式 421.3.4 内存池 421.3.5 交换链和页面置换 431.3.6 深度缓存 441.3.7 顶点运算 451.3.8 设备性能 451.4 Direct3D的初始化 461.4.1 获取接口IDirect3D9的指针 471.4.2 校验硬件顶点运算 471.4.3 填充D3DPRESENT_ PARAMETER结构 481.4.4 创建IDirect3DDevice9 接口 501.5 例程:Direct3D的初始化 511.5.1 d3dUtility.h/cpp 521.5.2 例程框架 531.5.3 例程:D3D初始化 541.6 小结 56 第2章 绘制流水线 582.1 模型表示 592.1.1 顶点格式 602.1.2 三角形单元 602.1.3 索引 612.2 虚拟摄像机 622.3 绘制流水线 632.3.1 局部坐标系 642.3.2 世界坐标系 642.3.3 观察坐标系 652.3.4 背面消隐 672.3.5 光照 682.3.6 裁剪 682.3.7 投影 692.3.8 视口变换 702.3.9 光栅化 722.4 小结 72 第3章 Direct3D中的绘制 733.1 顶点缓存与索引缓存 733.1.1 创建顶点缓存和索引缓存 733.1.2 访问缓存内容 763.1.3 获取顶点缓存和 索引缓存的信息 773.2 绘制状态 783.3 绘制的准备工作 783.4 使用顶点缓存和索引缓存进行绘制 793.4.1 IDirect3DDevice9::DrawPrimitive 793.4.2 IDirect3DDevice9::DrawIndexedPrimitive 803.4.3 Begin/End Scene 813.5 D3DX几何体 813.6 例程:三角形、立方体、 茶壶、D3DXCreate* 833.7 小结 87 第4章 颜色 894.1 颜色表示 894.2 顶点颜色 924.3 着色 924.4 例程:具有颜色的三角形 934.5 小结 95 第5章 光照 975.1 光照的组成 975.2 材质 985.3 顶点法线 1005.4 光源 1025.5 例程:光照 1055.6 一些附加例程 1085.7 小结 108 第6章 纹理映射 1096.1 纹理坐标 1106.2 创建并启用纹理 1116.3 纹理过滤器 1126.4 多级渐进纹理 1136.4.1 多级渐进纹理过滤器 1146.4.2 使用多级渐进纹理 1146.5 寻址模式 1146.6 例程:纹理四边形 1166.7 小结 118 第7章 融合技术 1197.1 融合方程 1197.2 融合因子 1217.3 透明度 1227.3.1 Alpha通道 1227.3.2 指定Alpha来源 1237.4 用DirectX Texture Tool 创建Alpha通道 1237.5 例程:透明效果 1257.6 小结 127 第8章 模板 1288.1 模板缓存的使用 1298.1.1 模板缓存格式的查询 1298.1.2 模板测试 1308.1.3 模板测试的控制 1308.1.4 模板缓存的更新 1328.1.5 模板写掩码 1328.2 例程:镜面效果 1338.2.1 成像中的数学问题 1338.2.2 镜面效果实现概述 1348.2.3 代码解析 1358.3 例程:Planer Shadows 1398.3.1 平行光阴影 1398.3.2 点光源产生的阴影 1408.3.3 阴影矩阵 1418.3.4 使用模板缓存 防止二次融合 1428.3.5 代码解析 1438.4 小结 144 第Ⅲ部分 Direct3D的应用 第9章 字体 1499.1 ID3DXFont接口 1499.1.1 创建一个ID3DXFont 接口对象 1499.1.2 绘制文本 1509.1.3 计算每秒绘制的帧数 1519.2 CD3DFont 1529.2.1 创建CD3DFont类的实例 1529.2.2 绘制文本 1529.2.3 清理 1539.3 D3DXCreateText函数 1539.4 小结 155 第10章 网格(一) 15610.1 几何信息 15610.2 子集和属性缓存 15710.3 绘制 15910.4 网格优化 15910.5 属性表 16110.6 邻接信息 16310.7 克隆 16410.8 创建网格(D3DXCreateMeshFVF) 16510.9 例程:网格的创建与绘制 16710.10 小结 172 第11章 网格(二) 17411.1 ID3DXBuffer 17411.2 XFile 17511.2.1 加载XFile文件 17511.2.2 XFile材质 17611.2.3 例程:XFile 17711.2.4 生成顶点法线 18011.3 渐进网格 18111.3.1 生成渐进网格 18211.3.2 顶点属性权值 18311.3.3 ID3DXPMesh接口方法 18311.3.4 例程:Progressive Mesh 18411.4 外接体 18711.4.1 一些新的特殊常量 18911.4.2 外接体的类型 18911.4.3 例程:…

为什么电脑玩游戏的时候出现DirectX错误

电脑玩游戏的时候出现DirectX错误的原因如下:1、最可能的原因是DirectX版本的问题或是因为DirectX11软件损坏丢失造成的,所以最简单的方法就是去更新最新版的DirectX软件安装即可。

2、其次,游戏的原因也有可能,如果游戏文件损坏丢失,或者安装路径有中文字符,杀毒软件误删游戏文件,都可能导致运行游戏时出现报错。

3、此外,如果玩家使用的是windows32位操作系统的话也可能弹出此窗口而不能正常运行游戏,因为一些游戏只支持windows64位的操作系统。

DirectX,(Direct eXtension,简称DX)是由微软公司创建的多媒体编程接口。

由C++编程语言实现,遵循COM。

被广泛使用于Microsoft Windows、Microsoft XBOX、Microsoft XBOX 360和Microsoft XBOX ONE电子游戏开发,并且只能支持这些平台。

最新版本为DirectX 12,创建在最新的Windows10。

用DirectX游戏编程,要学哪些内容?

如果想DirectX游戏编程,而又有很多不清楚的问题,那请看这个:1、 语言编程:c/c++;2、 编程基础一定要好:数据结构,c/c++语言;2、 IDE集中开发环境:visual studio .net 2003;3 、游戏开发SDK用DirectX9;4、 Win32 api开始的时候不能学的太多;5、 可以不用MFC(如果c++基础好,MFC学起来很简单);6、 编网络游戏,使用winsock,通讯协议用TCP;7、 多下载源代码,观看之;8、 数学上的要求(其它基础文化课类似):不需要了解算法的来历、推导等,但一定要知道它们是干什么用的以及如何用;9、 学习STL,必须C++要过关,否则会很难学。

首先要学会如何用STL,再想深入的话,学习STL的内部代码。

STL首先从list,vector学起。

游戏引擎开发

现在的游戏使用的硬件接口基本有两种,一个是DirectX,另一个是OpenGL , OpenGL只是2D 3D图形图像接口,没有其它功能,DirectX则是一个全套的多媒体接口,包括2D 3D图像、视频、音频、网络、输入设备等等,专为游戏制作开发。

两个发展都很迅速,不断添加新的功能,并由硬件实现。

游戏引擎的任务就是封装这些底层硬件加速接口的细节,并给游戏设计人员提供完善的实现游戏所需功能的接口。

想要写一个引擎,首先得知道引擎是什么样,可以参考发布的引擎,有简单的非商业的,也有功能强大复杂的商业的。

推荐你看看出名的2D引擎 HGE ,速度非常快,简单易用,引擎中包含源代码。

参见其网站:hge.relishgames.com如何使用引擎,下载引擎包,里面的参考文档会教你如何使用。

参见业内著名的游戏开发网站www.devmaster.net里面有各类游戏引擎的详细信息。

做3D网络游戏开发要掌握什么知识

这方面关系到的知识比较多. 建议你先搜索一下学游戏开发先学什么.网上有很多 大师的 文章. 当然如果你已经是老手了,那就不必在看了.这里我说些基本的.首先你先学会编程语言, 可能你会被 这样的 那样的语言所迷惑,比如 JAVA C C++ 等等. 但是你不用忧郁. 从C 语言开始. 虽然有很多人认为 用C++ 开发游戏比较适合.但是 这只是 片面之谈. 况且学C++ 你必须先学C.游戏先从2D 的开始.再学 3D 千万不可急, 这里有入门的书.WINDOWS 游戏开发大师技巧, 入门经典大作, 让你自己编写出2D游戏引擎.只要你熟悉了,你可以用这个引擎开发出各种2D的游戏. 书中主要用到C 语言.图形程序包 用的是 DX ,我保证,只要你看了本书,你就会疯狂喜欢上.当你熟练掌握了以上书的话,不要急, 你就开始把 2D 的引擎 升华到3D 了.上面的书的续作, 是讲3D 的,同样是经典大作. 这时候再看,你才能看懂.这时候你也可以看一些专门为游戏开发写的3D 数学知识的书.游戏开发智能 的书.在我百度空间里,有这些书的 介绍,你可以参考一下

3D游戏开发需要那些软件?

本人总结的网络游戏程序开发学习流程,这是最少要看的书了:1、C++primer中文版第4版2、C++标准程序库自修教程与参考手册3、Windows程序设计第5版4、MFC windows程序设计第2版中文版5、VC++深入详解6、MFC深入浅出7、Effictive STL8、Windows核心编程学好以上几本,也可以去游戏公司一试VC++软件工程师职位了。

9、WINDOWS游戏编程大师技巧第2版10、3D游戏编程大师技巧11、DirectX角色扮演游戏编程12、DirectX特效游戏程序设计13、精通DirectX 3D图形与动画程序设计14、DirectX高级动画制作15、Ogre引擎研究16、游戏人工智能编程案例精粹17、Visual C++实践与提高–网络编程篇18、C++网络编程,卷119、C++网络编程,卷220、Visual C++网络游戏建模与实现第2版21、代码优化:有效使用内存22、编个Demo出来,好好复习一下C++和数据结构,然后去游戏公司应聘。

游戏开发需要的知识

1楼你简直在开玩笑,他既然问出这个问题很明显是在探路,你这样还不把他吓跑。

如果你想编游戏,而又有很多不清楚的问题,那请看这个:1 语言编程:c/c++2 编程基础一定要好:数据结构,c/c++语言2 IDE集中开发环境:visual studio .net 20033 游戏开发SDK用DirectX94 Win32 api开始的时候不能学的太多5 可以不用MFC(如果你c++基础好,MFC学起来很简单)6 编网络游戏,使用winsock,通讯协议用TCP7 多下载源代码,观看之8 数学上的要求(其它基础文化课类似):不需要了解算法的来历、推导等,但一定要知道它们是干什么用的以及如何用9 学习STL,必须C++要过关!否则会很难学。

首先要学会如何用STL,再想深入的话,学习STL的内部代码。

STL首先从list,vector学起。

这里有一些经典推荐书籍介绍:《微型计算机原理及应用》(第三版) 编著:郑学坚 周斌 清华大学出版社这是一本大学计算机基础教材,虽然内容不是很新鲜,但基础部分和汇编部分还是不错的,并且价格方面,嘿嘿,借也可以借到,拥有这本书的学生真是太多了。

《C程序设计》(第二版) 作者:谭浩强 清华大学出版社这本书不用我说,大家也都知道,流传最广泛的C语言教材了。

如果看好了此书,C的功底一定不错!《数据结构(C语言版)》 编著:严蔚敏 吴伟民 清华大学出版社又是一本大学经典教材,想对程序有深入了解,数据结构不可不看,学了他,你才能打开专业之门。

《C++编程思想》(第二版) 作者:Bruce Eckel 机械工业出版社嘿嘿嘿,又是经典之作,想学C++和OO,看他,绝对没错,不用买别的C++入门书籍了!!!绝对经典。

《The C++ Standard Library–A Tutorial and Reference》 作者:Nicolai M. Josuttis具有了一定的C++功底,该是看他的时候了,STL可是前人的思想精华。

这本书主要讲述如何使用STL.(我只有这本书的电子版)《设计模式》 作者:Erich Gamma等著 机械工业出版社

游戏开发都需要会哪些

DirectX,(Direct eXtension,简称DX)是由微软公司创建的多媒体编程接口。

由C++编程语言实现,遵循COM。

被广泛使用于Microsoft Windows、Microsoft Xbox和Microsoft Xbox 360电子游戏开发,并且只能支持这些平台。

最新版本为DirectX 11。

目前还没有楼主所说的DirectX 13 !!! 举个例子,骨灰级玩家(玩游戏比较长的)以前在DOS下玩游戏时,可不像我们现在,安装上就可以玩了,他们往往首先要先设置声卡的品牌和型号,然后还要设置IRQ(中断)、I/O(输入与输出)、DMA(存取模式),如果哪项设置的不对,那么游戏声音就发不出来。

这部分的设置不仅让玩家伤透脑筋,而且对游戏开发者来说就更头痛了,因为为了让游戏能够在众多电脑中正确运行,开发者必须在游戏制作之初,便需要把市面上所有声卡硬件数据都收集过来,然后根据不同的 API(应用编程接口)来写不同的驱动程序,这对于游戏制作公司来说,是很难完成的,所以说在当时多媒体游戏很少。

微软正是看到了这个问题,为众厂家推出了一个共同的应用程序接口——DirectX,只要这个游戏是依照Directx来开发的,不管你是什么显卡、声卡、统统都能玩,而且还能发挥更佳的效果。

当然,前提是你的显卡、声卡的驱动程序也必须支持DirectX11才行。

Directx 11 2009年1月9日星期五,微软将面向公众发布Windows 7客户端Beta 1测试版。

而此前一天,即1月8日,微软将率先发布Windows 7服务器版本的Beta 1测试版。

Windows 7是微软的下一代操作系统,当前业内普遍认为,微软将在今年圣诞购物旺季前发布Windows 7正式版。

在微软刚刚发布的Windows 7 Beta版本中,一些已经安装使用的用户的发现了DirectX 11已经包含其中了。

DirectX 11作为3D图形接口,不仅支持未来的DX11硬件,还向下兼容当前的DirectX 10和10.1硬件。

DirectX 11增加了新的计算shader技术,可以允许GPU从事更多的通用计算工作,而不仅仅是3D运算,这可以鼓励开发人员更好地将GPU作为并行处理器使用。

在微软刚刚发布的Windows 7 Beta版本中,已包含DirectX 11 另外,DirectX 11还支持tessellation镶嵌化技术,这有助于开发人员创建更为细腻流畅的模型,实现高质量实时渲染和预渲染场景。

多线程是DirectX 11的另外一大亮点,DX11可以更好地利用多线程资源,从而使游戏更有效地利用多核处理器。

970797游戏攻略网 » directx游戏开发

赞 (0)