游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3508|回复: 2

谁是DX 9.0 的终极杀手?

[复制链接]

50

主题

992

帖子

1012

积分

金牌会员

Rank: 6Rank: 6

积分
1012
发表于 2004-8-26 03:03:00 | 显示全部楼层 |阅读模式
    在以前发布的报告显示,FarCry 的Shader Model 3.0并没有引入新的特效,这点与Shader Model 2.0b 是完全一样的。前者的目的,仅在可以处理更长的Pixel Shader 程序,而这可以在室内光照渲染的时候保存早前的通道,提供更好的性能。

    FarCry 的很多室内引擎包含了大量光照源,而其中每个光照源又需要执行N多个Pixel Shader 。 在传统的Pixel Shaders 2.0 图形处理器中,可以同步处理32个纹理和64个算术指令插槽(slots),而在实际的情况会怎么样呢? 我们知道显示卡除了处理光照之外,还有大量其它的运算需要处理,而这就使得DirectX 9.0 图形处理器不堪负荷,比如早期的Radeon 9700 系列显示卡,由于缺乏足够的指令插槽,以至于在一个通道中不能计算出光照。现在的高级显示卡有足够的能力同时处理大量指令集,比如Radeon X800 除了有512个纹理指令外,还有足够的插槽同时容纳512个矢量和标量算数指令。以上这些只不过是满足Pixel shaders 3.0 的最少要求而已,GeForce 6800 系列显示卡理论上可以同时处理65536个指令。更高数量的指令插槽允许图形处理单元执更复杂的Pixel Shaders,这在很多游戏中都显得非常重要。

    不过必须阐明的是,ATI和NVIDIA 的Pixel 处理器存在很多区别,例如nVIDIA 的Pixel Pipes 报告循环和分支,而ATI 则不会如此做。同时,有更多插槽的处理器并不就意味着它与少插槽处理器相比要快,因为性能将更多地依赖于核心时钟和时间寄存器。

    既然现代的图形芯片每个时钟周期可以计算更多的数据,为了发挥GPUs 最强大的能力,就需要应用到APIs 。Microsoft 的HLSL 编译器可以根据目标模型的需要,进行Shaders 编程,例如ATI 执行的Shader Model 2.0b和nVIDIA 执行的Shader Model 3.0 ,都是属于Microsoft HLSL 编译器。把大量Pixel shaders 合并到一个结果,能够节省渲染通道并提升性能,而这也是Crytek 在FarCry 使用的技术。高级的Shader Model 让游戏开发者用更少的时间,开发出更好性能和玩起来舒服的游戏。

    为了发挥最新显示芯片的性能,比如支持Shader Model 2.0b 的ATI Radeon X800、X600和X300,还有支持Shader Model 3.0 的nVIDIA GeForce 6800系列和其它GeForce 6 产品,Crytek 发布了FarCry 的1.2 版本补丁。在以上这些产品中,nVIDIA 的渲染通道似乎更有效率,它在一个通道里可以计算4个光照,而ATI 的产品则最多只能计算3个光照。ATI 宣称它的X800 产品每个通道可以计算4个光照,不过目前则这项特征似乎在FarCry 补丁中并没有能够激活。

转自:中关村在线
nowpaper 该用户已被删除
发表于 2004-8-26 09:35:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

1

主题

60

帖子

70

积分

注册会员

Rank: 2

积分
70
发表于 2004-8-26 12:11:00 | 显示全部楼层

Re:谁是DX 9.0 的终极杀手?

DirectX Next. lol
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2024-9-20 00:29

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表