您的位置:首页 > 服装鞋帽 > 男装 > Direct3D9的扩展纹理格式

Direct3D9的扩展纹理格式

luyued 发布于 2011-01-06 22:33   浏览 N 次  

转载请注明出处为KlayGE游戏引擎,本文地址为http://www.klayge.org/?p=626

在WinXP下,即使GPU支持D3D10+,也只能用D3D9的API。但实际上各个厂商都对D3D9做了一些扩展,把部分D3D10+的特性暴 露给了D3D9 API。以下是一些特殊的纹理格式,通过FOURCC的方式来使用。通过CheckDeviceFormat可以检测是否支持该格式,在 CreateTexture的时候传入即可。下表的源头是各厂商的GPU文档,经过Unity的Aras整理而来:

Usage列:DS=DepthStencil,RT=RenderTarget;Resource列:tex=texture,surf=surface。越绿表示越多硬件支持。

Format Usage Resource Description NVIDIA GeForce ATI Radeon IntelShadow mappingD3DFMT_D16 DS tex Sample depth buffer directly as shadow map. 3+ HD 2xxx+ 965+D3DFMT_D24X8 DS tex 3+ HD 2xxx+ 965+Depth Buffer As TextureDF16 DS tex Read depth buffer as texture.
9500+ G45+DF24 DS tex
X1300+
INTZ DS tex 8+ HD 4xxx+ G45+RAWZ DS tex 6 & 7

Anti-Aliasing relatedRESZ RT surf Resolve MSAA’d depth stencil surface into non-MSAA’d depth texture.
HD 4xxx+ G45+ATOC 0 surf Transparency anti-aliasing. 7+

SSAA 0 surf 7+

All ATI SM2.0+ hardware
9500+
n/a

Coverage Sampled Anti-Aliasing 8+

TexturingATI1 0 tex ATI1n & ATI2n texture compression formats. 8+ X1300+ G45+ATI2 0 tex 6+ 9500+ G45+DF24 DS tex Fetch 4: when sampling 1 channel texture, return four touched texel values. Check for DF24 support.
X1300+
MiscNULL RT surf Dummy render target surface that does not consume video memory. 6+ HD 4xxx+
NVDB 0 surf Depth Bounds Test. 6+

R2VB 0 surf Render into vertex buffer. 6 & 7 9500+
INST 0 surf Geometry Instancing on pre-SM3.0 hardware.
9500+

完整的GPU扩展功能,请看:

  • NVIDIA GPU Programming Guide
  • Advanced DX9 Capabilities for ATI Radeon Cards – whitepaper (July 2009)

作者: 龚敏敏 发表于 2011-01-04 13:06 原文链接

评论: 0 查看评论发表评论

最新新闻:
· 传Verizon将推出多款Android 4G手机(2011-01-04 21:38)
· 火狐首次超越IE成为欧洲市场份额最大浏览器(2011-01-04 21:33)
· Google研究人员称,中国黑客正在利用IE新漏洞(2011-01-04 21:16)
· 社交媒体流量:Facebook给力?Stumbleupon更给力(2011-01-04 21:13)
· 盛大内测手机通讯录工具KiKi 可免费短信聊天(2011-01-04 20:42)

编辑推荐:2011年1月微软最有价值专家(MVP)当选名单

网站导航:博客园首页我的园子新闻闪存小组博问知识库

上一篇:摄影师`cameraman 下一篇:Screen-printing
广告赞助商