电脑图形技术一直都致力于为人们提供更真实更绚丽的画面,DirectX从推出起就在微软的强大实力下不断创新,逐渐成为权威性的多媒体API接口,一直引领着电脑显示技术发展。DirectX 5.0加入了众多3D特效,DirectX 6.0完善了对游戏的支持,DirectX 7.0加入了对T&L的支持,DirectX 8.0提出象素渲染的概念,DirectX9.0全面支持Shader Model。今天划时代的WINDOWS-VISTA和DirectX10一起到来,一个无比绚丽的世界已经为我们敞开,图形技术也将迈入新的里程碑。
一.新一代的DirectX 10增加了几何渲染单元,针对API Overheard作出了改善,全新的核心设计改善Validation 的机制,上一代 DirectX10版本每使用一个 Object 时,均须进行确认资源的动作,但全新DirectX10则只会在该 Object 产生时,才会进行此确认动作,之后再使用Object时,确认动作则会被省略,此举将大幅降低CPU的负荷。
二.DirectX10加入了State object及constant buffers架构,允许指令采用批次运行,可以大幅减少处理器负担,大改良部份功能不再需要处理器介入。例如在DirectX9时代,Multiple texture转换动作是十分浪费处理器资源的动作,而全新DirectX10推出Texture arrays,容许最多512个Texture存放在同一个 Array 架构中,并拥有全新指令让Shader程序可以动态索引Texture array,且全由绘图核心作运算,减低处理器的负载。
三.在3D世界里,不少对象会被其它对象覆盖,而不被显示在画面中,只要能侦测出此不被显示对象,即能省去不必要的运算,减低资源损耗,虽然绘图核心中已拥有类似侦测机制,但仍有部份没有显示的对象未能省略,正因如此,程序设计师会采用 Predicated draw 技术,所有对象先会被制作成一个近似的方块,如果该方块未被显示在前景中,则会被省略,过去此技术同时需要处理器及绘图核心运算,但在 DirectX 10 中已完全采用绘图核心作运算,不再需要处理器介入。
四.从DirectX 8开始,Shader Model在DirectX体系中的地位就日趋重要,其版本和渲染单元的规格也成为了决定显卡性能高低的关键因素。DirectX 10中Shader Model升级到了4.0版本,SM4.0中的指令长度被提升到大于64K,由于渲染指令长度大幅提升,SM 4.0中相应的寄存器规格也有所增强。SM 4.0在纹理数量方面也有提高,DirectX10允许程序员在渲染物体时使用128个纹理,而DirectX 9只提供4/16规格,更多的纹理意味着物体表面精度更接近真实,我们离电影般的游戏画面不会太遥远。
我们可以看出DirectX 10在性能方面的提升是巨大的,它将进一步解放CPU,让游戏软件开发商使用更多Object于程序中,从而带给我们电影般的游戏画面。