据有关消息报道,微软在制订directx版本中起到重要作用,amd的一些相关开发可以看成是具有风向标意义的事情,最近其宣称dx10.1将是dx10的最后一次升级版本,而后dx将直接升级到dx11了。由于shadermodel技术已经经历了2.0、2.0a、2.0b、3.0等多个版本的改进,dx9也因为如此升级了很多次,居然最终版本达到了dx9.0c,这样多的版本让用户很难区分,同时也增加了硬件厂商开发的难度。为此dx10肯定会简化,其只有10和10.1两个版本,相应的shadermodel则分别是4.0和4.1。
dx10.1相比dx10并无太大的差异,很长时间会共存,dx10.1只是在dx10的基础上将一些规格改为强制要求,但却可以简化程序员的工作,因此amd表示坚决支持,但nvidia却认为dx10.1没有任何必要。
windowsvistasp1将会把directx升级到10.1版本,使得刚刚购买了dx10显卡的玩家很快就被“抛弃”,引发一片争议,不过微软官员近日又表示,dx10.1将完全支持现有的dx10显卡,只是后者可能会无法实现dx10.1的所有特性而已。
微软direct3d开发团队首席项目主管samglassenberg在接受next-gen.biz电话采访时称:“dx10.1完全支持dx10硬件。我们没有去掉任何硬件支持。(dx10.1)只是在dx10的基础上略微扩展了硬件功能而已,严格地说就是一个超集。在dx9的时候我们也这么做过。”
glassenberg做出保证:“所有的硬件都会继续得到支持,所有的游戏都会照常运行,所有的特性都还在那里。我们只是简单地拓宽了一下特性集合和api接口的使用期。”
glassenberg承认dx10.1里“会有一些新特性,而且会在新硬件上得到体现,但这与dx9时代的模型类似,(只是)到了dx10.1,我们会(对开发人员说),如果你们想支持新特性,就必须全部支持”,包括dx10里的原有特性。换句话说,dx10.1基本上只是把dx10里的某些特性由可选支持变成了强制要求。
尽管目前的dx10显卡可能无法支持dx10.1的全部特性,比如3d渲染质量技术改进,但glassenberg指出:“(dx10.1)只是一个小型升级,’接下来几年面世的游戏都会从现有的dx10硬件上获得越来越好的质量。”
directx10.1的图形流水线体系中,最大的结构性变化就是在几何处理阶段增加了几何渲染单元(geometryshader)。几何渲染单元被附加在顶点渲染单元之后,但它并不像顶点渲染单元那样输出一个个顶点,而是以图元作为处理对象。图元在层次上比顶点高一级,它由一个或多个顶点构成。由单个顶点组成的图元被称为“点”,由两个顶点组成的图元被称为“线”,由三个顶点组成的图元被称为“三角形”。几何渲染单元支持点、线、三角形、带邻接点的线、带邻接点的三角形等多种图元类型,它一次最多可处理六个顶点。借助丰富的图元类型支持,几何渲染单元可以让gpu提供更精细的模型细节。