问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

DirectX9.0是什么,有什么用

发布网友 发布时间:2022-04-30 02:12

我来回答

3个回答

热心网友 时间:2022-06-28 19:50

DirectX是微软在Windows操作系统上对编写高性能的多媒体应用程序而提供的一整套API.它使得我们不需要考虑具体的硬件就可以编写出实用的软件,也可以利用硬件加速功能.与DirectX竞争的技术是OpenGL.

DirectX 9.0的 9.0是他的版本号而已

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窗口
初始化Direct3D程序
处理消息循环
物体图形显示
结束Direct3D程序
窗口的构建
创建一个Windows类.
创建一个事件句柄或WinProc.
用Windows注册Windows类.
用前面创建的Windows类创建一个窗口.
初始化Direct3D程序
创建Direct3D对象并得到Direct3D接口.
查询显卡的显示模式.
创建Direct3D 设备对象并得到接口.
处理消息循环
PeekMessage()
TranslateMessage()
DispatchMessage()
结束Direct3D程序
窗口过程函数接收到WM_DESTROY消息;
调用函数释放Direct3D资源;
注销wndclass类;
Release()
图形显示原理—页翻动技术
把要显示的物体全部绘制到"后缓冲区";
快速的把它翻动到可见的"前缓冲区" ;
快速而连续的重复此过程;
Direct3D的图元
点列
线带
线列
三角形列
三角形带
三角扇形
矩形的创建
坐标变换
世界变换
视图变换
投影变换
图形显示过程
球体的构建
将球体切割成nRings * nSegments 段.需要((m_nRings + 1) * (m_nSegments + 1))个顶点 .
按照立体几何里面球体的构造式,构造出一系列纵向的环和一系列横向的环,这样相互交叉,就构成了一个球体所需要的全部顶点.
球体的立体构成
构成球体的构成以三角形网格为图元形成的;
真正构成的球体如右图;
三角形个数足够多,三角形之间的交界处显得比较平滑,近似于一个圆面了.
索引顶点
顶点缓存中保存A,B,C,D这4个顶点的FVF数据项,相应的索引为0,1,2,3.
按照三角形列的组成顺序,把顶点索引值存入索引缓存区.
通过调用索引调用顶点.
深度缓冲机理
DirectX测试对象在屏幕上的像素点到摄像机的远近,并把得出的值保存在深度缓冲区中;
以同样的方法测试同一位置上另一对象的像素点;
将两像素比较.若后者距离近,则刷新纪录;否则不理睬;
灯光
点光源
(电灯泡)
方向光
(太阳)
聚光灯
(手电筒)
计算量:按从小到大排序,依次为:环境光,平行光,点光源,聚光灯
光源属性
光的类型:Type
光源的颜色:Diffuse,
Ambient,Specular
光源位置:Position
光的方向:Direction
光的范围:Range
光的内外锥形衰退:Falloff
光的距离衰减系数:
Attenuation0,Attenuation1,Attenuation2
聚光灯内部锥形角度:Theta
聚光灯外部锥形角度:
Phi
物体表面的材质属性
环境光反射系数:Ambient
漫反射系数:Diffuse
镜面反射系数:Specular
自身发光度:Emissive
镜面反射数:Power
加上纹理
纹理属于COM对象,既可以从现有的图片文件中直接创建,也可以先创建一个空的纹理对象,然后再进行填充.
纹理是表示物体表面细节的一幅或几幅2D图片,它可以保存为bmp,tga,jpg等图片格式 .
Direct3D支持多层纹理,最高可达8层.
图片的大小一般是任意的,但是为了计算方便,一般取2n大小 .
添加纹理的过程
从磁盘文件中创建纹理并载入内存
D3DXCreateTextureFromFile()
设置纹理IDirect3DDevice8::SetTexture()
设置纹理渲染状态(纹理混合)IDirect3DDevice8::SetTextureStageState()
纹理坐标
不论纹理的大小如何,其左上角总是(0,0),右下角总是(1,1),易知中心点的纹理坐标为(0.5,0.5).
但Direct3D也允许纹理坐标取此范围之外的值,以获取某些特殊的纹理效果
纹理过滤
纹理过滤方法
最近点采样过滤
线性纹理过滤
各项异性纹理过滤
多级渐进纹理过滤
最近点采样过滤原理
Direct3D计算的纹理元素地址是一个浮点值;
纹理下标值为整数值;
Direct3D复制最接近的整数地址的纹理元素颜色 ;
纹理混合
当使用纹理时,实体的外观由纹理图片和材质经过某种计算获得.

参考资料:http://www.mscenter.e.cn/prj/files/899/DirectX.ppt

热心网友 时间:2022-06-28 19:50

DirectX 9.0
2002年底,微软发布DirectX9.0。DirectX 9中PS单元的渲染精度已达到浮点精度,传统的硬件T&L单元也被取消。全新的VertexShader(顶点着色引擎)编程将比以前复杂得多,新的VertexShader标准增加了流程控制,更多的常量,每个程序的着色指令增加到了1024条。

PS 2.0具备完全可编程的架构,能对纹理效果即时演算、动态纹理贴图,还不占用显存,理论上对材质贴图的分辨率的精度提高无限多;另外PS1.4只能支持28个硬件指令,同时操作6个材质,而PS2.0却可以支持160个硬件指令,同时操作16个材质数量,新的高精度浮点数据规格可以使用多重纹理贴图,可操作的指令数可以任意长,电影级别的显示效果轻而易举的实现。

VS 2.0通过增加Vertex程序的灵活性,显著的提高了老版本(DirectX8)的VS性能,新的控制指令,可以用通用的程序代替以前专用的单独着色程序,效率提高许多倍;增加循环操作指令,减少工作时间,提高处理效率;扩展着色指令个数,从128个提升到256个。

增加对浮点数据的处理功能,以前只能对整数进行处理,这样提高渲染精度,使最终处理的色彩格式达到电影级别。突破了以前*PC图形图象质量在数学上的精度障碍,它的每条渲染流水线都升级为128位浮点颜色,让游戏程序设计师们更容易更轻松的创造出更漂亮的效果,让程序员编程更容易。

DirectX9.0安装软件用来在你的电脑你安装DirectX9.0,DirectX是微软提供的3d标准,用来对基于DirectX的游戏或3D MAX 等之类的应用软件提供软件支持。现在最新的版本是9.0c。在运行需要DirectX支持的游戏或应用程序的时候你的电脑里必须安装了相应或更高版本的DirectX。xp系统的sp2里已集成了DirectX9.0c所以如果你安装的是sp2的xp系统的话就不需要再安装DirectX9.0c了。xp集成的是DirectX8.1,sp1集成的是9.0。DirectX9.0安装了后如果你的显卡不支持9.0的话你还是无法看到9.0的特效的,但是还是可以运行支持9.0的软件~游戏~只是没有那些新的特效。

参考资料:http://zhidao.baidu.com/question/3458105.html?si=2

热心网友 时间:2022-06-28 19:51

DirectX9.0安装软件用来在你的电脑你安装DirectX9.0,DirectX是微软提供的3d标准,用来对基于DirectX的游戏或3D
MAX
等之类的应用软件提供软件支持。现在最新的版本是9.0c。在运行需要DirectX支持的游戏或应用程序的时候你的电脑里必须安装了相应或更高版本的DirectX。xp系统的sp2里已集成了DirectX9.0c所以如果你安装的是sp2的xp系统的话就不需要再安装DirectX9.0c了。xp集成的是DirectX8.1,sp1集成的是9.0。DirectX9.0安装了后如果你的显卡不支持9.0的话你还是无法看到9.0的特效的,但是还是可以运行支持9.0的软件~游戏~只是没有那些新的特效。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
遇到碰瓷怎么办 导致碰瓷者伤亡用负法律责 最新电子防盗装置 3个LED的小夜灯电路 买不到小功率3伏变压器,如何降压做个3伏70毫安电源 小夜灯按钮坏了怎么拆 哪里有各种定做手提袋 如图,我这个配置玩逆战为何会卡?pvp200左右,pve75左右,ping二三十,网... 女孩问你是的时候怎么回答 自习课 同学都睡着了 男同桌问我让我跟他比赛 比谁撒尿尿得远 问他... 想把一个女同学上了,又不想负责任,毕竟她对我没意思,我对她也没意思... 有一个晚上,女同学叫我一起玩,玩着玩着到了半夜,回自己的宿舍太远就... 企业把员工信息拿到派出所备案什么意思?给备案吗? 什么软件可以管理悬浮窗 英语翻译:我知道你是谁了,你是Lucy 大家谁知道[美丽新天地]的主题曲 [我知道你是谁] 完整版??麽 DirectX9.0是什么意思啊? <我知道你是谁>这电影在哪里下载 用工备案是什么意思,要登记员工吗 上呼吸道感染咳嗽 员工办理招工备案还有社保的流程是什么? 我知道你是谁了。翻译成英文 怎么让悬浮窗在锁屏界面出现 用森林 木屋 仙女 魔鬼 小动物 善良 邪恶 写一篇作文350左右 新增员工劳动备案什么意思 咳嗽的治疗 用工备案,企业是否一定要办?因为单位要给员工办理社保,是否需要办理? 大小鬼大斗恶魔,脱胎换骨眼不识,猜生肖? 历史上有公孙丽这个人吗 丽姬和嬴政最后在一起了吗 企业员工劳动合同需要备案吗 秦时明月丽姬好讨厌好自私,荆轲那么爱他他却爱上了那个讨厌的秦始皇,她不是背叛了爱情吗? 十二生肖被称为恶魔是哪个 家里的联通宽带可以正常使用,无法使用无线网络怎么办? 好听的网名 女生 可爱 古风的有哪些? vivox7plus悬浮窗怎么添加一键锁屏 公司为新员工办理入职备案需要什么资料 《我知道你是谁》张晓风 帮我找出来 新型成立的公司跟员工签定劳动合同交社保需要走什么程序?公司得先去劳动局备案吗?备案需要什么资料呢? 我知道你是谁,等着 治疗咳嗽的药都有那些? 广西博白县有什么好玩的地方呢? QQ空间发秘密,如果有人说我知道你是谁,该怎么回复? 公司一定要帮员工备案吗 适用于急性上呼吸道感染引起的咳嗽? 广西玉林博白有什么好玩的地方 广西玉林博白有什么好玩儿的地方? 一篇作文里面有10个好词4个好句我知道你是谁 求医生攻的道具bl小说,越多越好,谢谢, 过几天去玉林博白,想问一下那里有哪些地方好玩的? 咳嗽不好怎么办? 我知道你是谁了,对于我们之前给你造成的伤害,我很抱歉,对不起这三个字太微不足到但我还是要说放下吧, 广西博白县有什么地方好玩??