2024年9月11日发(作者:敏云岚)
维普资讯
——
新一代DirectX 1 0前瞻
[:]北 /怅 j
10o7年春.微软即将发布靳一代操作系统Windows vista。随着vi8ta一同到来的还有DireetX 10。届时不
二・仅将拥有一个非常华百阿盼操作系统。而且电脑游戏也会更加精彩遁真。像将难以用肉眼分辨出游戏画面与
【实世界的差异。可以垒身心地沉漫在游戏所臂造的氟围中。DlrectX 10将舍作为游戏与电脑硬件的纽带.充
发挥出显卡的性能e夸果笔者就为大索深入介鲴撇软的新一代DiractX 10技术.让大家先知先觉为未来做好
i鲁。
什么是DirectX
在WindOWS 95问世后不久.微软发
了第一个Di re ct×版本~v1 0。
NVIDIA发布了GeForce 256芯片时,首次在桌面电脑中引入了硬
件级别的T&L光照转换技术。而DirectX 7凭借对它良好的支持赢
得了游戏开发商的广泛认同。在0irectX 8中,首次引八了Pixel
Shader像素着色处理单元并完善了Vertex Shader顶点着色处理单
i rectX是由微软公司建立的游戏编程接
】.由c++编程语言实现,遵循c0M规
。
同时它建立了一种机制 由硬件制选
元.使得游戏开发人员可精确地控制游戏中的每~个像素 到了
oi rectX 8 1的时代,又追加支持更高版本的Sh8de r 1 4,在
Di rectX 9 0时代可以支 ̄Shader 2 0.并且确立了3D API领域中
无免的霸主地位
商和游戏开发商协同制定新的标准。也
是由此.DirectX的功能越来越强大。此
它的影响力渐渐超越openGL并被多数
c游戏开发商采用,业界有人也将它简称
】D×。
当然, 在
Di rectX中也不仅仅
是3D图形,它还包
括了多个组成部
分 。 其 中
DI rectD Taw是负责
2D绘图.DI rect3D
负责3 D绘图,
墨一■匝墨
DirectSound负责游
戏中的音频部分,
DI reCtM usiC别是
MIDI数字乐器界面.Directlnput控制着各种输^输出.DirectPlay
负责网络数据的传送 Djrectsetup剧会对各种参数进行设定.
DirectShow负责播放动函.Di rectAn;mation整台动画环境。
维普资讯
什么是Shader?
很多人都能理解像素、多边形、材质的概念,
但始终对Shade r一词难以理解。翻开字典,Shade r
Shade r是具有
可编程性的,
开发人员可以
用它创造出非
常独特的游戏
是阴影的意思,但它和3D加速卡又有怎样的关系
呢?事实上Shade r就是一段可以改变像素和顶点的
小程序,因此在Shade r规范模型中又划分出两个分
支,一个叫做像素着色器(PixeI Shade rs),一个
叫做顶点着色器(Verte ̄Shaders)。这个Shader
场景。 像
NV JD JA和AT J
小程序可以为游戏场景添加一些基本的几何学特
效。例如湖水的涟漪,它会让特定的蓝色材质发生
移动、扭曲和倒映,这样就会给人波光粼粼的感
觉。若是将一个物体渲染成玻璃的风格,它就会让
的显卡都严格
水面使用pixel Shader ̄:着色处理
支持Shade r的
规格,并且为Shade r程序作了很多优化。当然,除
了游戏的特效之外,游戏开发人员也可以用Shade r
些材质发生透明和扭曲。Shade r技术主要应用于
目前的电脑游戏中,它使电脑游戏画面更加逼真,
做很多其他工作。总之,Shade r在未来的游戏中将
发挥越来越重大的作用,在新一代DX1 0中将支持
最新的Shader MOde J v4.0规范。
现在的主流3D游戏画质要比几年前逼真许多。
统一的Shader处理单元
今后在WGF中无论是顶点的还是像素的Shader ̄会
被统称为“统一Shader”,两种Shade睹B将包含在内。像
素和顶点的Shader信息交换直接由硬件层来完成,这样信
息传递和处理的速度会更快。这是因为像素和顶点的
Shader ̄漫长的演化过程中,它们的结构和所实现的功能
当两类Shader单元得到统一后,GPU还具备了新
这样就可以更快地运算出所要置换的顶点数据。由此,
数据处理的流程就会大大简化,数据不必在两种Shader
单元中来回传递。
都非常近似了。我们都知道在处理游戏场景时,像素的数
据处理量要远远大于顶点的,顶点Shader处理单元经常会
的功能~一整数运算,可以演化咸一种全新的图形处理
架构。举例来说,在以前的GPU中系统要查找一个材质
处于闲置状态。在像素和顶点Shade r统~化后,顶点
Shader可以利用空闲的时间来处理像素Shade ̄
数据都要在内存地址中进行检索,每次系统都会使用浮
点数据格式进行查找。但是当两类ShaderS--之后,我
们就可以通过更加精密准确的整数格式对内存地址进行
像素和顶点的
Shade r运算单元结构
检索,所有数据无需再四舍五入,无论是显存、虚拟内
存或系统主存都可以更加高效地存取数据。
统一后,有个非常显
著的优势:像素
Shade r单元中处理的
材质贴图可以直接装
载到顶点Shade r中,
当显存开始支持新的整数数据类型后,显卡就完全
像是处理器一样可以自由地使用虚拟内存了。我们知道
从Shader 3.0以后,理论上讲Shade时旨令的长度不再有
任何限制了。今后的游戏中可能会出现许多超长的
这样就直接可以生成
Xbox360中使用的就是统一Snader
Shader} ̄令,只要有足够的存储空间,无论多么长的
Shader ̄令GPU都能应付。当Shader单元支持整数数
置换贴图。以前要想
设置材质的顶点数据,必须先将材质转换为顶点Shader
据后,系统可以轻松地将这些超长Shader} ̄令转化咸在
所匹配的数据格式,但当两类Shader规格统一后,基于
GPU内部运作的固定长度的微指令。运行短/J、而简单的
像素的材质贴图数据可以直接装载到顶点贴图单元中, 指令时,GPU的处理速度会更快。
几何Shader处理单元
在新一代D×1 0中为了增强显卡的处理效能,在
统一S h a d e r的基础上又增加了一个G e om et ry
Shade r每一次运行只能处理一个顶点数据,并且每次
只能输出一个顶点的结果。在整个游戏场景中,绘制
几何图形的任务量是非常庞大的,如果仅仅依靠Ver-
Shader几何处理单元。通过以上的介绍,我们不难理
解,PixeI Shade r是专门处理像素的,Ve rtex Shade r
是专门处理多边形顶点的,那么Geometry Shade r是
专门用来处理场景中的几何图形。在过去Ve rtex
tex Shader来完成,处理场景的效率会很低下,并且
如大爆炸、粒子效果、瀑布流水等复杂的场景都很难
逼真地表现出来。
维普资讯
…… ● I 7。【.II J —L J {,-、、—— l孙玳-u
1工业 口 上 P IIL/J、域T
处理过程中又加入了Geometry Shade r几
几何着色器工作在顶点与像
素着色器之间。当显卡中的
顶点着色单元生成顶点信息
之后,就会将这些结果交给
几何着色器来构成更为复杂
的几何图形,最后交由像素
Geomet ̄/Shader ̄i'_lJ几何图形的原理
着色器来为这些几何图形添
加各种材质。
何着色器,可根据顶点的信息来批量处理
几何图形。Geometry Shade r可以将点、
线、三角形等基本的构图元素连接起来,
创造出新的多边形,快速地将这些处理结
果传递给其他Shade r或显存,并且这个过
程无需处理器参与。
Geomet ry Shade r最重要的工作就是
接点,将顶点之间用线连接起来。例如
当Geometry Shade rE有两个顶点的信息
Geometry Shader的出现
使得游戏开发人员可以设计出
更为复杂的烟雾、爆炸、天气
等效果,并且游戏场景中的模
型可以设计得更为复杂细腻,
Geomet ̄/Shader几何着色器工作在顶点
而处理器也可从这些繁重的计
时,它就可以将两个点连接起来组成一条
线,通过这条线可以绘制其他延长线上的
点,而通过连接3个顶点就可绘制出一个三
角形,最后通过计算延长线上的点,则可
绘制出更为复杂的几何图形。
算任务中解脱出来。
为游戏提速。再提速!
在未来的DX10游戏中,场景会非常逼
真,物体会使用更多的多边形绘制,而场景
在DX10中,会大幅弱化API与驱动程序之间的数据迁移,让
3D处理程序能顺畅处理对象。目前在基于DX9的游戏程序中,
中也会包含海量的物件。例如在森林中,你 GpUu有60%的时间是在执行程序,而其他40%的时间用来处
将会看到无数的树木,而每棵树上又会包含
无数片精致的树叶。为了让游戏运行得更流
畅,在DX10中引入了许多提速理念。
理各种各样的额外开销。在DX1 0中GPU的处理效率会提升到
80%,由此在游戏中就可显示出更多的物体,而游戏性能也会大
幅提高。
渲染~词是随着T&L技术而提出的3D流水线处理方式,不过
在DX1 0中,将会淡化渲染的概念,所有的一切都将使用Shader处
理。一旦处理流水线完全Shade r化之后,就可以进行流输出
(Steam Out)。这有点类似使用跳转分支语句控制程序的走向。
例如某些处理对象在生成顶点着色之后,可以通过流输出操作让
结果直接返回流水线的源头进行几何着色处理,而不必经过像素
着色阶段。由此就会大幅简化GPU的开销,提高程序运行速度。
DX1 0:P的游戏场景将非常复杂
DX1 0是Vista的“独生子”
在微软官方文档中我们可以明确看到
”Requires Vista”的注释,也就是说仅有新
一
在DX10中提供了兼容模式可以执行DX9的游戏。尽管很多新款
游戏会支持DX10,但是游戏开发商也照顾到广大老显卡用户,游戏
代操作系统Vista才可以支持DX1 0。为了能 会尽可能支持更多的显卡。因此使用DX9显卡的用户依旧可以 ̄:EVista
上玩新款DX1 0游戏。NVIDIA的G8O ̄UATI的R6O0都是支持D×1 0的显 将新一代DirectX革命进行到底,微软的工程
师们对DX10进行了较大的改动,使之难以兼
容旧的×P操作系统。这也就意味着我们要想
体验DX1 0游戏的魅力,必须升级 ̄lJVista。
卡,它们会在今年年底前陆续登场。而支持DX10显卡的普及率要想
真正超过D×g显卡还需一定时间,因此各位玩家不必急-T-- ̄买昂贵的
DX1 0显卡。
总结
微软的Vista操作系统给了我们太多的期待,DirectX 10也给了我们对未来游戏太多的畅想。各大游戏公司
公布的DX10游戏截图都让我们惊叹不已。DX10不仅仅让游戏变得更为华丽,也会大幅提高硬件的工作效率。
虽然目前还没有一款真正支持DX10的GPU,但是微软的Xbox360中所使用的Xenos是最为接近DX10规范的硬
件。由 ̄Xbox360的游戏和PC游戏之间可以更快地相互移植。待到DX10真正发布时,操作系统、电脑硬件、
游戏软件都将会有一轮新的变革。翻
2024年9月11日发(作者:敏云岚)
维普资讯
——
新一代DirectX 1 0前瞻
[:]北 /怅 j
10o7年春.微软即将发布靳一代操作系统Windows vista。随着vi8ta一同到来的还有DireetX 10。届时不
二・仅将拥有一个非常华百阿盼操作系统。而且电脑游戏也会更加精彩遁真。像将难以用肉眼分辨出游戏画面与
【实世界的差异。可以垒身心地沉漫在游戏所臂造的氟围中。DlrectX 10将舍作为游戏与电脑硬件的纽带.充
发挥出显卡的性能e夸果笔者就为大索深入介鲴撇软的新一代DiractX 10技术.让大家先知先觉为未来做好
i鲁。
什么是DirectX
在WindOWS 95问世后不久.微软发
了第一个Di re ct×版本~v1 0。
NVIDIA发布了GeForce 256芯片时,首次在桌面电脑中引入了硬
件级别的T&L光照转换技术。而DirectX 7凭借对它良好的支持赢
得了游戏开发商的广泛认同。在0irectX 8中,首次引八了Pixel
Shader像素着色处理单元并完善了Vertex Shader顶点着色处理单
i rectX是由微软公司建立的游戏编程接
】.由c++编程语言实现,遵循c0M规
。
同时它建立了一种机制 由硬件制选
元.使得游戏开发人员可精确地控制游戏中的每~个像素 到了
oi rectX 8 1的时代,又追加支持更高版本的Sh8de r 1 4,在
Di rectX 9 0时代可以支 ̄Shader 2 0.并且确立了3D API领域中
无免的霸主地位
商和游戏开发商协同制定新的标准。也
是由此.DirectX的功能越来越强大。此
它的影响力渐渐超越openGL并被多数
c游戏开发商采用,业界有人也将它简称
】D×。
当然, 在
Di rectX中也不仅仅
是3D图形,它还包
括了多个组成部
分 。 其 中
DI rectD Taw是负责
2D绘图.DI rect3D
负责3 D绘图,
墨一■匝墨
DirectSound负责游
戏中的音频部分,
DI reCtM usiC别是
MIDI数字乐器界面.Directlnput控制着各种输^输出.DirectPlay
负责网络数据的传送 Djrectsetup剧会对各种参数进行设定.
DirectShow负责播放动函.Di rectAn;mation整台动画环境。
维普资讯
什么是Shader?
很多人都能理解像素、多边形、材质的概念,
但始终对Shade r一词难以理解。翻开字典,Shade r
Shade r是具有
可编程性的,
开发人员可以
用它创造出非
常独特的游戏
是阴影的意思,但它和3D加速卡又有怎样的关系
呢?事实上Shade r就是一段可以改变像素和顶点的
小程序,因此在Shade r规范模型中又划分出两个分
支,一个叫做像素着色器(PixeI Shade rs),一个
叫做顶点着色器(Verte ̄Shaders)。这个Shader
场景。 像
NV JD JA和AT J
小程序可以为游戏场景添加一些基本的几何学特
效。例如湖水的涟漪,它会让特定的蓝色材质发生
移动、扭曲和倒映,这样就会给人波光粼粼的感
觉。若是将一个物体渲染成玻璃的风格,它就会让
的显卡都严格
水面使用pixel Shader ̄:着色处理
支持Shade r的
规格,并且为Shade r程序作了很多优化。当然,除
了游戏的特效之外,游戏开发人员也可以用Shade r
些材质发生透明和扭曲。Shade r技术主要应用于
目前的电脑游戏中,它使电脑游戏画面更加逼真,
做很多其他工作。总之,Shade r在未来的游戏中将
发挥越来越重大的作用,在新一代DX1 0中将支持
最新的Shader MOde J v4.0规范。
现在的主流3D游戏画质要比几年前逼真许多。
统一的Shader处理单元
今后在WGF中无论是顶点的还是像素的Shader ̄会
被统称为“统一Shader”,两种Shade睹B将包含在内。像
素和顶点的Shader信息交换直接由硬件层来完成,这样信
息传递和处理的速度会更快。这是因为像素和顶点的
Shader ̄漫长的演化过程中,它们的结构和所实现的功能
当两类Shader单元得到统一后,GPU还具备了新
这样就可以更快地运算出所要置换的顶点数据。由此,
数据处理的流程就会大大简化,数据不必在两种Shader
单元中来回传递。
都非常近似了。我们都知道在处理游戏场景时,像素的数
据处理量要远远大于顶点的,顶点Shader处理单元经常会
的功能~一整数运算,可以演化咸一种全新的图形处理
架构。举例来说,在以前的GPU中系统要查找一个材质
处于闲置状态。在像素和顶点Shade r统~化后,顶点
Shader可以利用空闲的时间来处理像素Shade ̄
数据都要在内存地址中进行检索,每次系统都会使用浮
点数据格式进行查找。但是当两类ShaderS--之后,我
们就可以通过更加精密准确的整数格式对内存地址进行
像素和顶点的
Shade r运算单元结构
检索,所有数据无需再四舍五入,无论是显存、虚拟内
存或系统主存都可以更加高效地存取数据。
统一后,有个非常显
著的优势:像素
Shade r单元中处理的
材质贴图可以直接装
载到顶点Shade r中,
当显存开始支持新的整数数据类型后,显卡就完全
像是处理器一样可以自由地使用虚拟内存了。我们知道
从Shader 3.0以后,理论上讲Shade时旨令的长度不再有
任何限制了。今后的游戏中可能会出现许多超长的
这样就直接可以生成
Xbox360中使用的就是统一Snader
Shader} ̄令,只要有足够的存储空间,无论多么长的
Shader ̄令GPU都能应付。当Shader单元支持整数数
置换贴图。以前要想
设置材质的顶点数据,必须先将材质转换为顶点Shader
据后,系统可以轻松地将这些超长Shader} ̄令转化咸在
所匹配的数据格式,但当两类Shader规格统一后,基于
GPU内部运作的固定长度的微指令。运行短/J、而简单的
像素的材质贴图数据可以直接装载到顶点贴图单元中, 指令时,GPU的处理速度会更快。
几何Shader处理单元
在新一代D×1 0中为了增强显卡的处理效能,在
统一S h a d e r的基础上又增加了一个G e om et ry
Shade r每一次运行只能处理一个顶点数据,并且每次
只能输出一个顶点的结果。在整个游戏场景中,绘制
几何图形的任务量是非常庞大的,如果仅仅依靠Ver-
Shader几何处理单元。通过以上的介绍,我们不难理
解,PixeI Shade r是专门处理像素的,Ve rtex Shade r
是专门处理多边形顶点的,那么Geometry Shade r是
专门用来处理场景中的几何图形。在过去Ve rtex
tex Shader来完成,处理场景的效率会很低下,并且
如大爆炸、粒子效果、瀑布流水等复杂的场景都很难
逼真地表现出来。
维普资讯
…… ● I 7。【.II J —L J {,-、、—— l孙玳-u
1工业 口 上 P IIL/J、域T
处理过程中又加入了Geometry Shade r几
几何着色器工作在顶点与像
素着色器之间。当显卡中的
顶点着色单元生成顶点信息
之后,就会将这些结果交给
几何着色器来构成更为复杂
的几何图形,最后交由像素
Geomet ̄/Shader ̄i'_lJ几何图形的原理
着色器来为这些几何图形添
加各种材质。
何着色器,可根据顶点的信息来批量处理
几何图形。Geometry Shade r可以将点、
线、三角形等基本的构图元素连接起来,
创造出新的多边形,快速地将这些处理结
果传递给其他Shade r或显存,并且这个过
程无需处理器参与。
Geomet ry Shade r最重要的工作就是
接点,将顶点之间用线连接起来。例如
当Geometry Shade rE有两个顶点的信息
Geometry Shader的出现
使得游戏开发人员可以设计出
更为复杂的烟雾、爆炸、天气
等效果,并且游戏场景中的模
型可以设计得更为复杂细腻,
Geomet ̄/Shader几何着色器工作在顶点
而处理器也可从这些繁重的计
时,它就可以将两个点连接起来组成一条
线,通过这条线可以绘制其他延长线上的
点,而通过连接3个顶点就可绘制出一个三
角形,最后通过计算延长线上的点,则可
绘制出更为复杂的几何图形。
算任务中解脱出来。
为游戏提速。再提速!
在未来的DX10游戏中,场景会非常逼
真,物体会使用更多的多边形绘制,而场景
在DX10中,会大幅弱化API与驱动程序之间的数据迁移,让
3D处理程序能顺畅处理对象。目前在基于DX9的游戏程序中,
中也会包含海量的物件。例如在森林中,你 GpUu有60%的时间是在执行程序,而其他40%的时间用来处
将会看到无数的树木,而每棵树上又会包含
无数片精致的树叶。为了让游戏运行得更流
畅,在DX10中引入了许多提速理念。
理各种各样的额外开销。在DX1 0中GPU的处理效率会提升到
80%,由此在游戏中就可显示出更多的物体,而游戏性能也会大
幅提高。
渲染~词是随着T&L技术而提出的3D流水线处理方式,不过
在DX1 0中,将会淡化渲染的概念,所有的一切都将使用Shader处
理。一旦处理流水线完全Shade r化之后,就可以进行流输出
(Steam Out)。这有点类似使用跳转分支语句控制程序的走向。
例如某些处理对象在生成顶点着色之后,可以通过流输出操作让
结果直接返回流水线的源头进行几何着色处理,而不必经过像素
着色阶段。由此就会大幅简化GPU的开销,提高程序运行速度。
DX1 0:P的游戏场景将非常复杂
DX1 0是Vista的“独生子”
在微软官方文档中我们可以明确看到
”Requires Vista”的注释,也就是说仅有新
一
在DX10中提供了兼容模式可以执行DX9的游戏。尽管很多新款
游戏会支持DX10,但是游戏开发商也照顾到广大老显卡用户,游戏
代操作系统Vista才可以支持DX1 0。为了能 会尽可能支持更多的显卡。因此使用DX9显卡的用户依旧可以 ̄:EVista
上玩新款DX1 0游戏。NVIDIA的G8O ̄UATI的R6O0都是支持D×1 0的显 将新一代DirectX革命进行到底,微软的工程
师们对DX10进行了较大的改动,使之难以兼
容旧的×P操作系统。这也就意味着我们要想
体验DX1 0游戏的魅力,必须升级 ̄lJVista。
卡,它们会在今年年底前陆续登场。而支持DX10显卡的普及率要想
真正超过D×g显卡还需一定时间,因此各位玩家不必急-T-- ̄买昂贵的
DX1 0显卡。
总结
微软的Vista操作系统给了我们太多的期待,DirectX 10也给了我们对未来游戏太多的畅想。各大游戏公司
公布的DX10游戏截图都让我们惊叹不已。DX10不仅仅让游戏变得更为华丽,也会大幅提高硬件的工作效率。
虽然目前还没有一款真正支持DX10的GPU,但是微软的Xbox360中所使用的Xenos是最为接近DX10规范的硬
件。由 ̄Xbox360的游戏和PC游戏之间可以更快地相互移植。待到DX10真正发布时,操作系统、电脑硬件、
游戏软件都将会有一轮新的变革。翻