|
| |
Shader Model 3.0 |
| |
一、新一代图形标准——Shader Model 3.0 |
| |
| 1、Shader Model 3.0是最新DirectX 9.0c的标准 |
|
| 作为Microsoft DirectX 9.0c API的重要组成部分,Shader Model 3.0由Pixel Shader 3.0和Vertex Shader 3.0两个着色语言规范组成。 |
| |
| 2、Shader Model 3.0可以实现更多的炫目效果 |
|
| 通过Shader Model 3.0,游戏设计师能够比过去更加高速地实现各种复杂的超现实3D效果。 |
| |
|
|
3、Shader Model 3.0可以带来更高的游戏性能 |
|
|
| Shader Model 3.0可以用更少的绘图指令批量处理大量复杂的数据,从而大大减轻GPU 及CPU的负担,让整个系统更有效率地工作,大幅度提高游戏性能和画面帧数。 |
| |
| 4、Shader Model 3.0意味着更强的可编程能力 |
| Pixel Shader 3.0和Vertex Shader 3.0为游戏开发者,分别提供了无限长的像素程序,以及无限长的顶点程序,将GPU的可编程能力带到了一个全新的境界,全面提升了程序开发者的开发效率,为更复杂的效果和更高的游戏性能提供可实现基础。 |
| |
| 5、Shader Model 3.0可以给程序员更强的程序流控制能力 |
| 与Shader Model 2.0相比,支持分支跳转的Shader Model 3.0可以简单地实现过去Shader Model 2.0难以甚至无法完成的效果,赋予了程序员更强的程序流控制能力。 |
| |
| 6、Shader Model 3.0意味着未来游戏的发展方向 |
| 随着大量支持DirectX 9.0c和Shader Model 3.0的游戏不断涌现,DirectX 9.0c API也早已成为新游戏的基本开发标准。毋庸质疑的是,未来还将会有越来越多的游戏支持Shader Model 3.0,因为它代表着未来游戏的发展方向。 |
| |
 |
图1、最新的技术水平就是 Shader Model 3.0 他统一了游戏的特性 |
| |
二、Shader Model 3.0的进步和革命性创新 |
|
| |
Shader Model版本的不断更新,在PC游戏的发展历史上起到了非常关键的作用。因此显卡的图形核心所支持的Shader Model版本高低,长期以来一直被人们当作衡量芯片价值的重要指标之一。特别是微软发布支持Shader Model 3.0标准的DirectX 9.0c之后,更是在显卡图形芯片领域掀起了新一轮的更新换代大潮。应用程序和系统硬件的应用程序编程接口(API),与过去的DirectX 9.0b和Shader Model 2.0相比较,新版DirectX 9.0c最大的改进,便是引入了对Shader Model 3.0的全面支持。举例来说,DirectX 9.0b的Shader Model 2.0所支持的Vertex Shader最大指令数仅为256个,Pixel Shader最大指令数更是只有96个。而在最新的Shader Model 3.0中,Vertex Shader和Pixel Shader的最大指令数都大幅上升至65535个,全新的动态程序流控制、 位移贴图、多渲染目标(MRT)、次表面散射 Subsurface scattering、柔和阴影 Soft shadows、环境和地面阴影 Environmental and ground shadows、全局照明 (Global illumination)等新技术特性,使得GeForce6 及 GeForce7 GPU立刻为新一代游戏以及具备无比真实感、幻想般的复杂的数字世界和逼真的角色在影视品质的环境中活动提供强大动力。
因此DirectX 9.0c和Shader Model 3.0标准的推出,可以说是DirectX发展历程中的重要转折点。我们可以看到在DirectX 9.0c中,Shader Model 3.0除了取消指令数限制和加入位移贴图等新特性之外,更多的特性都是在解决游戏的执行效率和品质上下功夫,Shader Model 3.0诞生之后,人们对待游戏的态度也开始从过去单纯地追求速度,转变到游戏画质和运行速度两者兼顾。因此Shader Model 3.0对游戏产业的影响可谓深远。 |
|
|
| |
| |
Shader Model 2.0 |
Shader Model 3.0 |
| 顶点着色指令集 |
256条 |
65535条 |
| 位移贴图 |
不支持 |
支持 |
| 顶点纹理调用 |
不支持 |
支持 |
| 几何学例证 |
不支持 |
支持 |
| 动态程序流控制 |
不支持 |
支持 |
| 着色精度 |
24位 |
32位 |
| 顶点程序长度限制 |
有限长度 |
无限制长度 |
| 像素着色指令集 |
96条 |
65535条 |
| 子程序调用 |
不支持 |
支持 |
| 循环&分支 |
不支持 |
支持 |
| 动态程序流控制 |
不支持 |
支持 |
| 像素程序长度限制 |
有限长度 |
无限制长度 |
|
| |
|
三、Shader Model 3.0游戏引擎和节目 |
| |
|
|
孤岛惊魂- Patch 1.3
帝国时代3
虚幻引擎 3
Painkiller: Battle Out Of Hell
细胞分裂:混沌理论
星舰骑兵
S.T.A.L.K.E.R:切尔诺贝利阴影
Grafan
Powerdrome
TrackMania Sunrise
Pitfall: The Lost Expedition
星球大战
…… |
| |
 |
|
|
图2、支持Shader Model 3.0的游戏图片 |
|
| |
 |
图3、非Shader Model 3.0的游戏图片 |
| |
| 显然,Shader Model 3.0已经成为新一代的显卡标准,今后的新显卡以及家用游戏机都将会完全支持Shader Model 3.0。 |
| |
四、Shader Model 3.0对用户有什么好处,能带来怎样的画质提高 |
 |
| |
 |
图4、Shader Model 1.1效果 和 Shader Model 3.0效果 |
| |
 |
图5、非Shader Model 3.0效果 |
| |
 |
图6、Shader Model 3.0效果 |
| |
 |
图7、Shader Model 1.1阴影 和 Shader Model 3.0柔化阴影 |
|
五、如何打开Shader Model 3.0功能 |
| |
既然 Shader Model 3.0 能够为我们带画如此明显的画质提升,那么我们又该如何在游戏中开启这项功能呢?
以 FarCry (孤岛惊魂)游戏为例,其 Patch 1.3 补丁已经加入了对 Shader Model 3.0 的支持.如果您已经拥有了一块完全支持 Shader Model 3.0 的显卡,并且系统中已经安装了 DirectX 9.0c,那么只要将游戏中的显示设定设为" Very High ",就会自动开启 Shader Model 3.0 模式.怎么样,是不是非常简单!
同样,像帝国时代III这一类新上市的超级游戏,只要您在游戏显示设定设为 "Very High",也会自动开启 Shader Model 3.0 模式,不需要加入补丁,更加简单! |
| |
|