shader 2: vertex, fragment, surf的区别
生活随笔
收集整理的這篇文章主要介紹了
shader 2: vertex, fragment, surf的区别
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
vertex shader, fragment shader, surf shader
vertex shader逐個(gè)對頂點(diǎn)進(jìn)行變換。---->得到物體的輪廓,然后對面上的像素光照進(jìn)行線性插值。
fragment shader, 根據(jù)檢測不同,來決定是否修正每個(gè)像素的color等信息。? 逐像素處理。
vertex的輸出是 fragment的輸入。
vertex是頂點(diǎn)變換, 輸入和輸出都需要包含頂點(diǎn)的position信息;
fragment是色深的變化,輸出一般只有color信息。
vertex很快。
此二者是顯卡本身能力, OpenGL, D3D都有api
surf shader是U3D提供; U3D將surf shader翻譯成vertex + fragment shader; 簡化了單獨(dú)的vertex + fragment的編寫方式。
直接照明: 鏡面反射(高光) 和? 漫反射(Lambert 粗糙表面)
間接照明: 作為常量, 一般通過預(yù)先烘焙得到。計(jì)算量太大。
總結(jié)
以上是生活随笔為你收集整理的shader 2: vertex, fragment, surf的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cg
- 下一篇: shader 3 rendering