微软在去年的PDC大会上透露了更多DX10的情况,在DX10当中,3D功能被限制在D3D的版本号上,不同版本号的D3D有不同的3D功能,微软借此来控制NVIDIA和ATi等图形芯片开发商。
DX10当中GPU将和现在的CPU一样,让多个3D应用程序同时共享GPU的3D渲染资源,目前Windows无法办到。
DX10向下兼容DX6/7/DirectDRAW,Vista将集成Direct3D 9的扩展,名称是D3D9Ex。D3D9Ex集成fps统计功能,可以多次渲染相同帧,不必在进入流水线渲染。
D3D9Ex/D3D10可以共享资源,因此安装驱动程序之后不必重起系统,D3D9Ex/D3D10会让显示卡重起,将驱动程序和系统其它部分隔离,另外Vista显示驱动程序模式(VDDM)也把驱动程序的稳定性提升。
DX10添加了Geometry shader(几何着色),可以让开发者针对全部的多边形进行操作,加速诸如凹凸映射等3D功能的性能。几何着色还可以让GPU在没有CPU的帮助下,独立循环图形数据,让粒子系统完全脱离CPU处理。
DX10有可能集成OpenGL,也有可能是OpenGL作为软件或者安装客户端驱动程序的面目存在Vista当中。开发者可以在Windows Vista beta2当中测开始D3D 10初步测试了。
微软日前发布了最新的 DirectX SDK - 包括Direct3D 10。它的体积是如此之大,达到326 M,还包括beta 版的 Windows Game Explorer,允许对游戏增加父母控制和自动升级功能。
DirectX SDK 官方下载地址
最让人惊讶的是微软说DX10可以将游戏性能提高6-8倍,不知道是针对DX9游戏还是未来游戏而言:
"DirectX 10最多可以将游戏性能提高6-8倍。之所以有如此大的提高要归功于更智能化的资源管理,改善的API和驱动效率,以及更多的将工作从CPU移交到了GPU身上。Microsoft表示:"整个API和流水线都经过重新设计,从而使使CPU和带宽运行程序时间最小化,性能最大化D3D10的思路是在不需要CPU参与下,最大程度发挥GPU性能,如果需要CPU也参与工作的话,那么就是一个快速的,流线型的流水操作。DX10赋予了GPU更有效的数据读写方式,从而使CPU将更多工作移交给显卡并进而减少程序运行时间。"
|