GameDesign 板


LINE

※ 引述《lovesnake (LoyalDog)》之銘言: : 標題: [請益] Shader 是抽象層? : 時間: Wed Mar 4 23:35:35 2015 : : 看了一堆文章頭昏腦脹決定直接問了! : : 看Nvidia的CUDA架構…… : 每顆SP都是一樣的東西,哪來分什麼shader : 但之前的Unified Shader又強調硬體上將 : Shader整合 : 然後看著Graphics Pipeline…… : : 那些究竟是抽象的東西,還是硬體上真的這樣做呢? 看年代 基本上GPU硬體的發展過程,就是一個特化結構朝向通用結構發展的過程 最早最早的顯示卡(當時叫3D加速卡) 就是把整套rasterize-based graphics pipeline 用硬體整個實作出來 今天我們把這種完全固定功能,只能由API作一些參數改動的稱為fixed-pipeline 但是fixed-pipeline的功能太受限,無法應付日新月異的演算法 就把fixed-pipeline中特別需要靈活性的兩個stage->Vertex Pixel拆出來 在裡面加入類似於CPU的設計,有一組相對簡單的指令集,可以作有限編程 進入programmable pipeline的年代,開始有vertex shader和pixel shader 而這些指令集需要一種程式語言來描述,這就是所謂的shader language 早期的vertex shader和pixel shader是兩種不同的硬體 發展到後期發現同樣的運算單元在兩個地方都出現是很不經濟的 開始有硬體商思考要讓vertex shader和pixel shader共用硬體 最早是ATI用在遊戲主機上,這就是stream processer的開始 從這個年代硬體就朝向General-purpose GPU (GPGPU)的方向發展 所以也有了CUDA之類的東西出現 簡單的說 fixed -> programmable -> general purpose這是一個歷史進程 但是回到硬體層設計說,有些東西是沒辦法programmable的 越靈活的運算單位,所需要的電晶體就越高 一顆CPU核心和一顆SP核心,die size可能差個幾十倍 因為CPU裡面有很深的pipeline(不是graphics pipeline的那個pipiline) 有branch-prediction,有很大塊的register和cache 相對的來說就是編程靈活度和異核協調性是完全不同的 總而言之GPU設計就是一個在靈活和效率中間找尋新的平衡點的過程 : 呃… : 換個問法…… 像是resterizer,他是硬體直接做還是透過GPU General 的 IS拼出來的呢 : ? 目前的resterizer都是硬體實作 類似的情況還有texel unit / blending unit 這些都是作成fixed比作成programmable有更小的die size 靈活度某種程度上是必要犧牲 當然隨著年代推進,programmable blending也越來越重要 所以下一代的硬體也都有這功能了 : 我的抽象層是指這個…… : : 其他像是VS FS GS TS 等等,是有專門的硬體實作他們個別的功能。 還是也是都相同的 : 硬體,透過不同的IS去拼出來的呢? programmable pipeline的年代,VS / PS是不同硬體 GPGPU的年代 VS / PS=FS / GS=TS是同一個硬體 : : 謝謝 : : 話說計組人腦也很好理解啊XDD : ※ 編輯: lovesnake (140.121.221.204), 03/05/2015 00:38:12 : 推 cowbaying: 這個問題首先要看driver寫到哪邊 03/05 08:39 : → cowbaying: 記得是04還是05年開始 顯卡硬體改為stream processor 03/05 08:41 : → cowbaying: 這個部份要細看一下CHIP的diagram 03/05 08:46 : 推 cowbaying: 記得沒錯 除了繪圖卡有硬體著色器外 一般的卡都是由 03/05 08:47 : 推 cowbaying: 驅動程是轉譯成SP能辨識的資料 03/05 08:48 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.250.32.97
※ 文章網址: https://webptt.com/m.aspx?n=bbs/GameDesign/M.1425531225.A.23D.html
1F:推 chchwy: 推 說得很清楚 03/05 12:59
2F:推 lovesnake: 超清楚的T_T 謝謝!! 另外請問 TS = GS 是指? 03/05 13:11
3F:→ holymars: Tessellation shader和geometry shader是同一個東西 03/05 13:19
4F:→ holymars: pixel shader和fragment shader指的也是同一個東西 03/05 13:20
5F:推 cjcat2266: TS和GS是不同東西吧 03/05 13:31
6F:→ holymars: 要講古的話最早的GS概念 = TCS+TCS+GS 包山包海都作.. 03/05 13:33
7F:→ holymars: 那時有人叫這東西GS也有人叫TS,後來再細分stage是另外 03/05 13:33
8F:→ holymars: 的事了 03/05 13:33
9F:→ holymars: 會有這麼多名詞差異指來指去,都是openGL和D3D害的=3= 03/05 13:35
10F:推 lovesnake: 原來如此,受教! 03/05 13:36
11F:→ holymars: FS<->PS TCS<->HS TES<->DS...為什麼大家都愛自創名詞 03/05 13:37
12F:推 a27417332: 3GS雖然可以小幅細分曲面,但速度比不上Tessellation吧 03/05 13:57
13F:→ a27417332: 為啥前面冒出一個3 QQ 03/05 14:09
14F:→ dreamnook: 自創名詞顯得很潮呀 把事情弄的越複雜越好騙人XD 03/05 14:15
15F:推 doomleika: 推 03/07 15:36
16F:推 tigernaxo: 推,看到這篇之前被搞的頭昏腦脹 04/10 08:50







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:e-shopping站內搜尋

TOP