freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

建立高動態(tài)范圍(hdr)渲染器(存儲版)

2024-09-02 16:25上一頁面

下一頁面
  

【正文】 texSrc,gl_TexCoord[0].xy+vec2(dx*,dy))。 color += texture2D(texSrc,gl_TexCoord[0].xy+vec2(,dy*))。 color += texture2D(texSrc,gl_TexCoord[0].xy+vec2(dx*,dy*))。 color += texture2D(texSrc,gl_TexCoord[0].xy+vec2(,dy*))。 color += texture2D(texSrc,gl_TexCoord[0].xy+vec2(dx*,dy*))。 color /= 。void main(){}對數(shù)采樣:// 用于對原始圖像進行采樣,并對計算采樣后像素的亮度,然后再對亮度取對數(shù)后輸出。 float d = (imgW)。 color += texture2D(texSrc,gl_TexCoord[0].xy+vec2(*d,)) * 。 color += texture2D(texSrc,gl_TexCoord[0].xy+vec2(*d,)) * 。 color += texture2D(texSrc,gl_TexCoord[0].xy+vec2(*d,)) * 。 color += texture2D(texSrc,gl_TexCoord[0].xy+vec2( *d,)) * 。 color += texture2D(texSrc,gl_TexCoord[0].xy+vec2( *d,)) * 。 color += texture2D(texSrc,gl_TexCoord[0].xy+vec2( *d,)) * 。 gl_FragData[0] = color。 color += color += texture2D(texSrc,gl_TexCoord[0].xy+vec2(, *d)) * 。 //對texColor進行采樣 vec4 color = texture2D(texColor,gl_TexCoord[0].xy)。 color /= 。 }Tone Mapping 和輸出//uniform sampler2D texSrc。 vec4 color = texture2D(texSrc,gl_TexCoord[0].xy)。 color *= Key *lum/AveLum。 gl_FragColor = clamp(color + texture2D(texBloom,gl_TexCoord[0].xy)*, ,)。整個過程就是這樣,如果還有不明白的地方,歡迎和我交流。(,)。 渲染操作。 if (luml ) { cout = p。 color += texture2D(texColor,gl_TexCoord[0].xy+vec2(,dy*))。void main(){ float dx = (imgW)。 texture2D(texSrc,gl_TexCoord[0].xy+vec2(, *d)) * 。 texture2D(texSrc,gl_TexCoord[0].xy+vec2(,*d)) * 。 color += version 110extension GL_ARB_draw_buffers : enableuniform sampler2D texSrc。 接下來,我們仔細研究一下后處理的具體代碼。 lumAdapt += (lum lumAdapt) * ( 1 pow( , 30 * dTime ) )。(如果你覺得回讀是一個很慢的操作,也可以在GPU上繼續(xù)執(zhí)行下采樣操作,直到紋理大小縮小到1*1,那么這個像素的值取值數(shù)就代表了平均亮度。將texColor綁定到stdfbo對象中,并應用stdfbo對象。CImageScaleCopy負責把一個浮點紋理中的數(shù)據(jù)縮小尺寸后復制到另一個紋理中去。 這個函數(shù)在場景繪制操作結束后執(zhí)行,它負責處理FBO中已得到的高動態(tài)范圍數(shù)據(jù),并映射到低范圍中,并將最終結果顯示在屏幕上。所謂光暈效果,就是抽出場景中色彩比較亮的部分,然后加以模糊,使這些較量的像素擴散到周邊像素中,再把模糊后的圖像疊加在Tone Mapping之后的圖像上。 上式中,δ是一個較小的常數(shù),用于防止求對數(shù)的計算結果趨于負無窮的情況。經(jīng)過這樣的映射后,Lscaled并不一定處在(0,1)的范圍中,我們再結合(1)式,使最終的像素值處在(0,1)上: 然而,這些TMO的效果并不令人滿意。這個步驟在HDR渲染中被稱為Tone Mapping。對于渲染器而言,這意味著一個浮點紋理。二是對于特別亮的部分實現(xiàn)光暈的效果。 將一個寬廣的亮度范圍映射到紙張或屏幕能表示的亮度范圍類似于照相機的曝光功能。HDR已成為目前游戲應用不可或缺的一部分。比如,太陽的亮度可能是一個白熾燈亮度的幾千倍,是一個被白熾燈照亮的桌面的亮度的幾十萬倍,這遠遠超出了顯示器的亮度表示能力。照相機是一個典型的從高動態(tài)范圍映射到低動態(tài)范圍的例子。其他圖形API在方法上是一致的,只是具體的實現(xiàn)細節(jié)略有差異。關于FBO和浮點紋理的使用請參考《OpenGL中的浮點紋理和幀緩沖對象》 。例如, (1) 這里介紹DirectX SDK中所介紹的方法。 這樣就完成了最終的映射。至于為什么這樣算出的
點擊復制文檔內(nèi)容
物理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1