Direct3D 10转型时代所面临的空前窘境

Direct3D 10标准正式版释出至今(2007/8)也已半年,然而似乎遭到了空前的冷遇,可谓尚无啥氛围。无论对于game开发者还是game playerD3D10技术本身来讲,谓之画期的飞跃并不过言,以Geometory Shader等为主要新概念特征的Shader Model 4提供了完全不同以往的render实现方式。

 

shader之外,D3D10API本身也进行了一次彻底更新,仅这一层面来讲也超过了史上有名的D3D7~8时的大变动。这是从app programer角度来讲的,driver方面采用VistaWDDM架构自然不用说,从DDI函数可以看出至少D3D7~9以来的前所未有的彻底更新,D3D7~8虽然是API上大调整,然而那只是app层的变化,driver层到直D3D9都仍然是基于DirectDrawDDI为基础实现的,而Vista的显示DDI函数中已经没有DirectDraw(GDI也无),一切的图形图像显示皆基于D3DDriver来实现。所以这就可以理解为啥D3D8刚释出时,虽然开发者忙的团团转,然而跑在既有的D3D7对应显卡上确并未感觉「大碍」:固定机能pipline上是基本无(甚至完全无)变化,虽然D3D8的主打新机能是programmable shader,但是毕竟需要一个过渡期才能普及,D3D8出现后的几年间,主流的D3D8 app还是基于固定机能pipleline,因为开发者或player的显卡尚未升及到shader对应的标准。另一方面纵使采用shader,在既有的D3D7T&L卡上,顶点shader完全可以模拟,这又是D3D8能迅速在既有hardware上普及的另一利点,开发者可以不用更换显卡就充分利用顶点shader带来的巨大活力;再一点,由于driver架构上并未巨变,D3D8OS没有换代要求,当时既有的Win95/98/2000皆可搭载D3D8。所以纵使当年Direct3D史上号称最大的变革拿跟现在比,亦显小巫见大巫了。

 

或许是Microsoft过于心急,或许是决心使然,这次的真正根本性的底层重建无论从何角度讲都有点欲速则不达(另一种看法是MS并未过「速」,只是之前多年来变动过缓(D3D9+WinXP的长寿)导致现在一次性的大变动)。对开发者/player来讲,API巨变,OS巨变,显示卡巨变,由于OSvista升级恐怕导致其他hardware配备也要升级。以上就是面临D3D9~10的转变过程中所必须对应的缺一不可的代价(当然其中game player并不需要关注API的变化了)。虽然nVidia早于去年十一月份就释出了D3D10标准的Geforce8800显卡,ATI也于今年春释出了对应的HD2900然而这一代显卡本身又是一个换代障碍:价格过高,极不绿色(高发热高耗电),以及前面所述的障碍(user必须升及vista,而由于开发者也尚未成熟转型到D3D10 几乎尚无对应game出现 那么user买显卡做啥 当摆设?要么自己用D3D10编程),几个因素又相互影响,导致更恶的D3D10难以普及的现实。

 

对于普通game player来讲,除了显示卡的必须更新之外,必须升级到vista(以及随之的hardware升级)也是一大诟病之所。关于D3D10为何一定要基于VistaMS的说法是因为D3D10的全新WDDMdriver架构无法在XP上实现,我等非MS内部专门人士,自不敢对此断言有无,然我想MS多少主观上希望把D3D10只放在Vista上释出,换言之没有积极的将D3D10放在XP上的努力(因为偶想XPvista的差异到底不如Win9xWin2000/XP 以往的D3D都能横跨两个系列的os 这次恐怕不是MS办不到而是不大愿去办)。这样一来把D3D10作为Vista的一个强力卖点,促进XPuser升级到Vista,的确是一个看似不错的招术。因为从主要的技术层面讲,Vista拥有XP所没有的较实在的东西恐怕就是D3D10了,若非如此至少偶是不会现在就安装vista的。这个战略,简言之,vista卖点少不畅销,于是把一个画时代的技术卖点强捆在vista上促销。积极的场合,原本不畅销的vista能被带动热销;消极的讲,原本看好的D3D10vista拖累普及一层受阻(难听点讲:把D3D10这朵花插在vista这堆粪上 哈哈)。现在看来,基本上是后者的情况吧。Vista成了D3D10普及的另一个不利点绊脚石,对普通大众来说越发是遥不可及「未来的」东西了。从我使用Vista的感觉来看(512MB 较旧的机器),关闭gui特效的话,跑得并不比xp慢,不过memory占用量比xp是翻倍了,若跑大的app的话没有1~2GB恐怕吃紧。总得来讲并没有谣传当中讲的那么烂,除了memory以外hardware要求并不算过高(当然若要看那些花翘的gui效果就不同了),对软硬件的不相容偶也未碰到(当然偶不用QQ也不打game),总体来讲没太大不好,不过也没有感觉比xp好的多少地方,以现在的要求来看,没有太多好处就等于是一大不好了。

 

更坏的情况是,纵使现在的顶级的GeForce8800 / HD2900,跑D3D10的性能都很打折扣,也就是讲对于D3D10这样新且庞大繁复的技术标准,不光app的开发者尚未缓过神来,甚至连初代对应的显示卡hardware makerdriver设计上都尚未纯熟。有评测认为,且不说现在D3D10对应game尚未大量出现,纵使出现了,用当前顶级的显卡跑都不流畅,这不得不说是另一大阻碍普及的关键性问题,甚至超过前面所讲的不利因素。前述的软硬件升级的问题都在于投资上,对于愿意投资的大fan来说或者讲等hardware降价之后,这些应该不是原则性问题,大fan们在意的是究极的game体验。但是撇开价格不谈,纵使user砸了钱买来顶级显示卡,执行D3D10game换来的是不流畅的不快感甚至是幻灯片,那么......  D3D10这个东西就如同谣言所说的 只有媒体厂商的噱头炒作,有名无实之境地?

 

现在D3D10对应的game基本未出,就算出了显卡上也跑不流畅,也难怪新一代显卡难销了。这种情形下购买新显卡升级到D3D10的恐怕只有重视早速新技术引入的愿意投资的game开发者或业余graphics开发者了吧(对于大多数user来讲,晚一点对应新技术是一个明智的战略,可以获得更优良成熟的的产品效果以及便宜的价格,然而对专业开发者来讲,晚对应意味着技术上的落后以及随之而来的竞争力丧失,对于新技术开发厂商是主动的,而user是被动的),然而这一群人数目上毕竟太有限,不可能带动这一产品市场的换代。game player的行为才是决定D3D10时代到来与否的准绳。

 

作为一个Realtime Graphics programming业余爱好者+Microsoft Direct3D的忠实user,对于Direct3D 10应该是满怀期待的(应该是过去式 可惜中文无法表现这个动词变换)。然而除了以上坚难的普及障碍之外,作为一个崇尚节能环保健康观念的人来讲,D3D10显卡,纵使买得起也用不起,地球本身就在不断变热,夏季开电脑必须开空调的时间越来越漫长,高发热高耗电(高耗电自身又发热),实在令我不禁打个寒颤(这里只是比喻 其实热得难过 对寒冷求之不得)。此外还有显卡等hardware快速换代所带来的电子制品难以回收问题。仅此点而言以我的想法,宁可graphics技术停留在此(D3D9)的程度,很不情愿的进一步恶化地球环境。毕竟世界不是我所能控制的,vista也好D3D10也好,对应的高发热高耗电显卡也好,都有普及的一天,这个趋势无法阻挡,现在所谈的窘境只是普及的快慢早晚问题。我该乐还是哀呢?

 

 

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值