永发信息网

directx3d和directx 9.0c是一个东西吗?为什么我玩一个游戏时,显示direct3D缺失一类的话??

答案:3  悬赏:70  手机版
解决时间 2021-01-27 03:37
  • 提问者网友:贪了杯
  • 2021-01-26 16:42
求高手解决~!
最佳答案
  • 五星知识达人网友:猎心人
  • 2021-01-26 18:08
学3D游戏编程的,一般会选择先学习direct3d或者openGL,大体意思就是学习API(Application Programming Interface应用程序接口)程序员通过学习这些,然后实现对硬件的操作,direct3d主要是显卡方面的API。安装direct 9.0c是为了提供了一个运行环境,程序员可以在电脑上自己编写、调试3D程序。他们的区别,我打个比方:比如你说要锻炼身体,但是锻炼身体有很多种方法,然后你通过跑步锻炼身体,这里的锻炼身体就类似于direct3d,跑步就类似于direct9.0c。意思就差不多这样。
全部回答
  • 1楼网友:舊物识亽
  • 2021-01-26 18:58
好象directx3d和directx 9.0c不是一样的
  • 2楼网友:一叶十三刺
  • 2021-01-26 18:22
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位浮点颜色,让游戏程序设计师们更容易更轻松的创造出更漂亮的效果,让程序员编程更容易。 directx 9.0c 与过去的directx 9.0b和shader model 2.0相比较,directx 9.0c最大的改进,便是引入了对shader model 3.0(包括pixel shader 3.0 和vertex shader 3.0两个着色语言规范)的全面支持。举例来说,directx 9.0b的shader model 2.0所支持的vertex shader最大指令数仅为256个,pixel shader最大指令数更是只有96个。而在最新的shader model 3.0中,vertex shader和pixel shader的最大指令数都大幅上升至65535个,全新的动态程序流控制、 位移贴图、多渲染目标(mrt)、次表面散射 subsurface scattering、柔和阴影 soft shadows、环境和地面阴影 environmental and ground shadows、全局照明 (global illumination)等新技术特性,使得geforce 6、geforce7系列以及radeon x1000系列立刻为新一代游戏以及具备无比真实感、幻想般的复杂的数字世界和逼真的角色在影视品质的环境中活动提供强大动力。 因此directx 9.0c和shader model 3.0标准的推出,可以说是directx发展历程中的重要转折点。在directx 9.0c中,shader model 3.0除了取消指令数限制和加入位移贴图等新特性之外,更多的特性都是在解决游戏的执行效率和品质上下功夫,shader model 3.0诞生之后,人们对待游戏的态度也开始从过去单纯地追求速度,转变到游戏画质和运行速度两者兼顾。因此shader model 3.0对游戏产业的影响可谓深远。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯