作者highway4625 (机壳内的城市光廊)
看板PC_Shopping
标题[闲聊] 你祖母的绘图入门D3D+OPGL概论之电虾篇
时间Fri Dec 28 15:01:58 2007
我到底需不需要用到绘图卡呢???很多人在选购电脑的时候 都会有这种疑问
而这两天也有人提出这种质疑 我就来一篇 简易版的 我是不是该买绘图卡
的highway4625的早安周特别企划
OpenGL=工业通用标准 使用在游戏与虚拟实境技术当中 会需要大量运算
再加上各家显示卡都有自己爱用的OpenGL 3D Library硬体规划技术
与材质压缩技术 来作3D加速驱动的动作跟减轻GPU运算压力
而software rendering 部分 OpenGL通常会交由绘图卡去用硬体处理 所以在
这方面绘图卡的等级就会跟你software rendering 所需的基础硬体辅助资源有关
ex.ATi的3Dc技术 S3的s3tc 跟NV的IntelliSample HCT等等....)
(3Dc技术 3Dc是一种材质压缩技术。它能提供细致影像,
并减少使用记忆体频宽。其采用了Normal Map的技术,令Texture表面的
光影效果更具质感。假设有一个3D模型原需15,000个多边型砌出来,然
後再建立一个相似模型,但用1,000个多边型砌出来。3Dc技术就会把两个模型
的分别,存成Normal Map。之後在游戏时,只需要用上1,000个多边型,
再运用3Dc存取Normal Map还元,就能达成14,000个多边型的效果,减少
使用记忆体频宽。by ATi官方说法)<===其实早期任天堂就很常用这种
手法写游戏(默)....所以怪物都长一个样 只是增加一些小配件
D3D=微软的一种底层函式标准 可以因应电脑硬体的等级而作演算法弹性调整
也就是说 D3D是利用CPU的运算能力 进而把CPU当成GPU 作大量3D运算使用
在GPU发展初期各家software OpenGL不完全的情况下 (Ex. 像一些 只有
open Source基本支援的 或是像是Mini OpenGL等等的东西 都属於不完全的
openGL硬体)
D3D可说在相容性上面有极大优势 直至今日 虽然software OpenGL有极大进步
但是还是不敌D3D....主要就是因为各家专利授权问题
ps.D3D 不是 Engine 而是跟 OpenGL 一样是一种 3D API 只是 D3D API
有比较多物件 可给程式设计师直接使用 而微软也提供不少辅助性的东西
再加上OpenGL一直没有一个整合比较好software OpenGL Library api 所以
目前来说 通常是在游戏或是动画制作初期会使用openGL系列的东西 等到结尾
的时候再用OpenGL-->D3D wrapper这样的手法去处理相容性问题 相对於OpenGL
以D3D作为期初使用也会利用这样的方式去达成OpenGL的相容性
好 进入 跟电瞎 比较有关的
为何 我跑3D Studio MAX会需要买绘图卡呢 绘图卡跟游戏卡为何跑出来一样
一般3D Rngine的定义 是将Model跟相关材质放到正确的位置 没包含Render部分
这部分通常是利用卡上的晶片完成 or CPU完成後以座标定位方式进入到Video
RAM里面作存取所需
若用3D Chipset直接运算的话 要透过OpenGL Library 处理以後再给3D Chipest
而D3D的用法呢
很简单 取代OpenGL Library 跟 後来3D Chipest的这一段的东西
Hardware跟OpenGL系列一样 会交由3D卡运算 而在Software方面 由於 D3D有自
己一套Library跟 3D Render Engine(software rendering OpenGL也有 D3D也有
只不过D3D是交给CPU处理过後暂存到电脑实体记忆体内 而非像是OpenGL是转
到GPU or CPU处理完以後 在电脑实体记忆体内只有存座标 然後由显示卡上的
3D Chipest作剩下的後续材质等等的存取与应用)
这也就是为什麽人家说 D3D比较吃CPU跟RAM的资源 而OpenGL在同样硬体资源之
下能作更大场景更漂亮的画面(同样使用绘图卡的情况之下)
那我用3D studio MAX可不可用到完整绘图卡实力呢
理论上来说 可以 但是那个作品必须精细到CPU运算满载 就会增加对
绘图卡的需求 但是以目前上来说 反而是游戏卡的速度过快而造成的假象
因为基於3D Studio MAX是由D3D作为基础来看 上面讲过的我就不再重复
原因简单说就是因为 你作品没有完全吃满游戏卡rendering 如果要用到
绘图卡等级的rendering频宽 那就是作品的细度要再往上提升 差距就会
拉出来 不过基於C/P值的投资报酬率来看 把这钱转向投资到CPU的等级提升
会比单纯换绘图卡来的高
好 大概了解以上之後 我们可以谈谈 正常游戏界的D3D与OpenGL支援性问题
普通情况游戏都可以选择D3D与openGL两种驱动方式 也可以自动选择(HL游戏
引擎就是其中佼佼者) 有3D卡就由3D卡辅助运算 没3D卡就用CPU软体模拟方式
而D3D有一套函式库标准 不管你用硬体运算还是软体辅助 用的就是那套 不用
像OpenGL系统的一样 在函式库这边百家争鸣 各家没有一个比较好的特别整合
software(这边这个东西也就是目前有些游戏会特别着名ATi适用或是NV适用作
手脚的地方 ATi适用通常是在这边用了ATi的rendering所以ATi的显示卡
在这些游戏上像是吃了春药一样 NV系列不是不可以跑 但是GPU要多承担一部分
rendering 的运算部分 造成效能无法完全释放)
--
客厅零号机
CPU :AMD X2 5200+ VGA :撼讯 X1950PRO VIVO
MB :GA-M55S-S3 POWER:Seventeam ST-500BKV
RAM :威刚DDR2-800 粉红散热片2GX4 CASE :RC-690
HDD :WD 160G 8M SATA DVDRW:PIONEER A07
PIONEER A15
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.141.9.155
1F:推 Matsuzaki:高速的早安周无双爆气开始了..(大抖 12/28 15:19
2F:→ highway4625:其实我还有玉玺没吃呢(远目) 12/28 15:21
3F:推 glittering:好文推 好人推.... 12/28 15:56
4F:推 goodga:突然觉得男生用您祖母好像不太尊敬的感觉 12/28 16:02
5F:推 anedo:最近流行咩~~XD 12/28 16:28
6F:推 su0427:好文!推一个 这麽长....我竟然看完了 12/28 16:45
7F:推 lunasea2005:高速大金身....永存电虾.....<( ̄︶ ̄)/ 12/28 16:49
8F:推 touyalin: 高速大金身....永存电虾.....<( ̄︶ ̄)/ 12/28 16:59
9F:推 fa18e:祖父推 12/28 17:00
10F:推 sunnboy:突然觉得男生用您祖母好像不太尊敬的感觉+1 12/28 17:00
11F:推 KUS0:对嘛 ! 你这样说就有道理,我念纯设计的没办法去注意那麽多 12/28 17:07
12F:→ KUS0:当然就用使用者上得经验来写,但是多少一定都有问题 12/28 17:08
13F:→ KUS0:这篇就厘清很多观念,我愿意为上一篇果断的批评openGL道歉 12/28 17:09
14F:推 anedo:再来喔~~~高速~~~进阶篇还不快生出来~~~~~~~ 12/28 17:13
15F:→ anedo:英语专有名词越多越好阿 12/28 17:14
16F:推 agehakai: 高速大金身....永存电虾.....<( ̄︶ ̄)/ 12/28 17:29
17F:推 leng1106:电虾板人气不低...用词遣字好像需要注意一下比较好...@@" 12/28 17:41
18F:推 lunasea2005:等到白爆时.. 高速大就会产出入门版了...(金身万岁) 12/28 17:47
19F:推 lookers:KUSO兄可以不要用分身了吗 12/28 17:56
20F:推 himygoddess:KUS0都在名片档说他分身是himygoddess了... XD 12/28 17:59
21F:推 anedo:今天看了不少好照片,让我寿命又多了几天(茶) 12/28 18:56
22F:推 coasting:本来就不需要批评opengl....各家软体厂商不是傻子,如果 12/28 19:40
23F:→ coasting:D3D可以到达完全取代opengl的程度,那opengl早就消失了.. 12/28 19:41
24F:→ coasting:对於MAX的D3D效能不错,就是乐观其成就好,但买绘图卡作 12/28 19:42
25F:→ coasting:CAD或CG都是不会错的选择,这也就是有许多人死命想让N与A 12/28 19:42
26F:→ coasting:游戏卡硬改或软改成绘图版本,这就像水往低处流一样的道 12/28 19:43
27F:→ coasting:理,不会硬体商、软体商、使用者三方面全部都是傻子.... 12/28 19:44
28F:→ coasting:所以我也一向建议,初学软体可以把硬体重点摆在cpu、ram 12/28 19:45
29F:→ coasting:绘图卡所费不赀,实际使用过再来考虑升级绘图卡..会比一 12/28 19:46
30F:→ coasting:开始就买了绘图卡,结果还嫌他跑游戏不够力来的划算。 12/28 19:46
31F:→ coasting:预算非常充足或者像高速大这样的专业人士...当然可以直接 12/28 19:47
32F:→ coasting:选择最好的绘图解决方案(包含显卡、或工作站、MAC)等.. 12/28 19:49
33F:→ coasting:但许多上电虾来问菜单的人,或许连软体介面都还不熟,这 12/28 19:49
34F:→ coasting:样的使用者太多了,这也才会常有这样的菜单讨论。 12/28 19:50
35F:→ coasting:像高速大这样的一篇解释,我想问菜单的原po可能更状况外. 12/28 19:52