- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
directx,directx9.0,directx9,directx修复工具,directx11,directx11官方下载,directx12,directx9.0c官方下载,directx10,directx9.0c
DirectX 杨琴 什么是DirectX? DirectX是Microsoft公司开发的运行于计算机平台的多媒体控制处理引擎; 能够对显存和硬件直接访问; 图形应用程序接口(API); DirectX通过COM的技术,以及一套由Microsoft和硬件厂商共同编写的驱动程序和程序库,可以提供对所有设备的硬件级的控制。 DirectX的组成 显示部分 声音部分 输入部分 网络部分 显示部分 Direct Draw:负责2D加速(DirectX8.0以上的版本不包含此项) Direct 3D:负责3D加速 声音部分 DirectAudio:由DirectSound和DirectMusic整合而成; DirectSound:只支持数字化的声音,不支持MIDI。 DirectMusic:支持MIDI,是一种基于DLS(Downloadable Sound)数据的实时音乐编排和回放技术; DirectShow :提供了在windows平台上对多媒体数据流的高质量的捕捉和回放的支持; DirectShow支持多种多媒体格式,包括AVI、MP3、WAV等; 输入部分 Direct Input :提供了对游戏输入设备的支持,包括键盘、鼠标、手柄等; 支持力反馈设备,模拟使用者的真实感觉。 网络部分 DirectPlay:提供了玩家进行多人游戏中信息通讯和玩家互动交流的平台环境; 提供多种连接方式如TCP/IP,IPX,Modem,串口等,使计算机之间互联无障碍; COM 简述 COM是组件对象模型(Component Object Model)的简写。它是一种协议,用来实现软件模块间的二进制连接。当这种连接建立后,两个模块之间就可以通过称为“接口(Interface)”的机制来通信。 COM给开发人员提供的是一种开发与语言无关的组件库的方法。 COM的发布形式是:以win32动态链接库(DLL)或者可执行文件(EXE)的形式发布的可执行代码组成。 DirectX和COM的协同工作 COM在装载DirectX的运行版本时,作为DLL包含在系统中。 运行DirectX时,其装载DLL。请求接口,这些接口的方法就被调入而完成任务。 应包含一些封装了COM内容的输入库函数.LIB,以便于使用这些封装函数调用DirectX来创建COM对象。 访问COM对象 调用适当的函数获取接口指针; ?? 调用接口的方法(成员函数)来完成所需功能; 用完接口后,调用Release方法进行“释放”,注意释放顺序应该和获取它们的顺序相反。 游戏的图形实现—Direct3D Direct3D程序的基本结构 窗口的构建 创建一个Windows类。 创建一个事件句柄或WinProc。 用Windows注册Windows类。 用前面创建的Windows类创建一个窗口。 初始化Direct3D程序 创建Direct3D对象并得到Direct3D接口。 查询显卡的显示模式。 创建Direct3D 设备对象并得到接口。 处理消息循环 PeekMessage() TranslateMessage() DispatchMessage() 结束Direct3D程序 窗口过程函数接收到WM_DESTROY消息; 调用函数释放Direct3D资源; 注销wndclass类; 图形显示原理—页翻动技术 把要显示的物体全部绘制到“后缓冲区”; 快速的把它翻动到可见的“前缓冲区” ; 快速而连续的重复此过程; Direct3D的图元 矩形的创建 图形显示过程 球体的构建 将球体切割成nRings * nSegments 段。需要((m_nRings + 1) * (m_nSegments + 1))个顶点 。 按照立体几何里面球体的构造式,构造出一系列纵向的环和一系列横向的环,这样相互交叉,就构成了一个球体所需要的全部顶点。 球体的立体构成 构成球体的构成以三角形网格为图元形成的; 真正构成的球体如右图; 三角形个数足够多,三角形之间的交界处显得比较平滑,近似于一个圆面了。 索引顶点 顶点缓存中保存A、B、C、D这4个顶点的FVF数据项,相应的索引为0、1、2、3。 按照三角形列的组成顺序,把顶点索引值存入索引缓存区。 通过调用索引调用顶点。 深度缓冲机理 灯光 光源属性 光的类型:Type 光源的颜色:Diffuse、 Ambient、Specular 光源位置:Position 光的方向:Direction 光的范围:Range 光的内外锥形衰退:Falloff 光的距离衰减系数: Attenuation0、Attenuation1、Attenuation2 聚光灯内部锥形角度:Theta 聚光灯外
文档评论(0)