人气 217

[游戏程序] 正确认识显卡的3D加速处理能力 [复制链接]

九艺网 2017-3-10 17:02:05

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
近来有朋友问起,如何有效向显卡询问3D加速能力,问题是这样的:
为了简化渲染步骤,同时能在大多的显卡上实现程序,即使目标显卡有VS,PS模块,程序也只是使用固定渲染流水线,虽然VS,PS使程序渲染更加高效和简单。也不打算设计两套渲染模式。(这里说的固定渲染流水线是硬件T&L)
这个想法其实是错误的,有Shader的显卡不一定支持固定渲染流水线的硬件加速。
有点奇怪,是吧。
Shader(vs,ps)和T&L其实是两回事,在显卡硬件里面它们是不同的硬件模块,就是说有T&L不一定有Shader(很普遍的情况,很多老显卡就不支持Shader),但是到了现在,已经有显卡是支持Shader而不支持硬件T&L。
Intel 的GMA950,GMA900就是这种特殊的例子,GMA950甚至支持Shader Mode 3.0,但是却不支持固定流水线的渲染硬件加速 (T&L)。这样设计硬件的好处当然是节省材料和设计难度。却苦了程序员。
Intel 原文对GMA950是这样描述的:High Performance 3D                     
    Microsoft* DirectX* 9 Vertex Shader 3.0 and Transform and Lighting supported in software through highly optimized Processor Specific Geometry Pipeline (PSGP)
将来或者会出现更多这样的显卡,这个也是DirectX 10去掉固定渲染线带来的小麻烦。
现在和以后,我们为了达到最大硬件兼容性,反而要首先考虑用Shader 编写程序。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|小黑屋|九艺游戏动画论坛 ( 津ICP备2022000452号-1 )

GMT+8, 2024-4-29 09:24 , Processed in 0.072574 second(s), 23 queries .

Powered by Discuz! X3.4  © 2001-2017 Discuz Team.