最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

URP | 后處理-色調(diào)映射-ACES

2022-11-20 19:20 作者:那個(gè)人真狗  | 我要投稿

內(nèi)容偏多這是目錄


目的

  • 什么是Tone mapping ? 什么是ACEs?

  • 使用ACEs 有什么好處?為什么怎么使用?

效果

ACES后

色調(diào)映射

Tone mapping

Tone Mapping原是攝影學(xué)中的一個(gè)術(shù)語,因?yàn)榇蛴∠嗥鼙憩F(xiàn)的亮度范圍不足以表現(xiàn)現(xiàn)實(shí)世界中的亮度域 , 而如果簡單的將真實(shí)世界的整個(gè)亮度域線性壓縮到照片所能表現(xiàn)的亮度域內(nèi),則會(huì)在明暗兩端同時(shí)丟失很多細(xì)節(jié),這顯然不是所希望的效果,Tone Mapping就是為了克服這一情況而存在的.

既然相片所能呈現(xiàn)的亮度域有限則我們可以根據(jù)所拍攝場景內(nèi)的整體亮度通過光圈與曝光時(shí)間的長短來控制一個(gè)合適的亮度域,這樣既保證細(xì)節(jié)不丟失,也可以不使照片失真

這里有兩個(gè)關(guān)鍵 ,

  • 光圈大小

  • 曝光時(shí)長短。

到了計(jì)算機(jī)圖形學(xué)發(fā)展的時(shí)代,最早只有LDR,顏色就是0-255。這個(gè)情況一直持續(xù)了很長很長時(shí)間。 為了讓圖像更真實(shí)的顯示在顯示器上,同樣需要Tone Mapping來輔助。

URP Tone mapping

URP是線性空間,游戲在多光源渲染過程,顏色信息有的超過 0-255的范圍。 就稱之為HDR模式,我們顯示器默認(rèn)顯示的是LDR,LDR也就是 顏色范圍是 (0-255)

使用游戲渲染過程中產(chǎn)生HDR的畫面。需要映射到LDR的設(shè)備上,就需要轉(zhuǎn)換的過程(tone mapping),就是Tone mapping。

  • URP默認(rèn)Tone mapping

URP默認(rèn)給我們提供了 2種默認(rèn)的

  • Neutral

  • ACES

原理

過程就是首先要根據(jù)當(dāng)前的場景計(jì)算出場景的平均亮度,再將整個(gè)場景映射到這個(gè)亮度域得到正確的結(jié)果。

Middle grey ?: ? ?整個(gè)場景的平均灰度,關(guān)系到場景所應(yīng)處在亮度域Key:場景的Key將決定整個(gè)場景的亮度傾向,傾向偏亮亦或是偏暗。

[參考]Tone Mapping---色調(diào)映射算法_one_u_h的博客-CSDN博客

  • 下圖是處理過程流程圖


曝光

當(dāng)人眼觀察一個(gè)場景時(shí),眼睛會(huì)自然擴(kuò)張以適應(yīng)到達(dá)它的光量。 上面我們說到攝影使用光圈大小和曝光來控制曝光獲取場景光的大小。

曝光是以模擬實(shí)際光照射到傳感器的光線多少,避免光線過多或過少。

  • 渲染畫面我們也需要獲取場景的曝光值,使用曝光值來控制場景

這里使用

近似的ACES擬合曲線由Krzysztof Narkowicz

[參考]?ACES Filmic Tone Mapping Curve | Krzysztof Narkowicz (wordpress.com)

這里由我們來控制輸入的曝光值的大小,默認(rèn) 0.6

算法

  • 擬合曲線

  • 曲線

URP實(shí)現(xiàn)過程

思路

  • 我們實(shí)現(xiàn)基礎(chǔ)的后處理管線計(jì)算,

  • 制作后處理組件調(diào)節(jié)屬性。

  • 核心計(jì)算使用Shader類計(jì)算,Shader在給到后處理。

Shader

色調(diào)映射矩陣

整個(gè)場景的色調(diào)

把我們輸入線性顏色映射到 ACES

在進(jìn)行g(shù)amma校正


全代碼

注意:ACESFilm是float3類型



Volume

后處理組件屬性很簡單


  • 效果

注意:曝光值是0.6



RenderFeature

URP | 后處理-自定義后處理 - 嗶哩嗶哩 (bilibili.com)

URP | 后處理-模糊算法總結(jié) - 嗶哩嗶哩 (bilibili.com)


主要是綁定 Shader屬性,具體不清楚增加看前面的后處理

設(shè)置RT

注意:設(shè)置可以儲(chǔ)存HDR模式


代碼

效果對比

自定義和系統(tǒng)默認(rèn)

  • 這是默認(rèn)線性模式,沒有進(jìn)行Tone Mapping

    顏色爆,亮部看不到細(xì)節(jié)

默認(rèn)
  • Unity 默認(rèn) ACES

  • 自定義ACE




增加飽和度

  • 如果我們感覺顏色飽和度還是不夠,我們可以調(diào)整飽和度。

總結(jié)

  1. Tone Mapping 是色調(diào)映射的方式,需要把高動(dòng)態(tài)顏色范圍(HDR)映射到低動(dòng)態(tài)顏色(LDR),我們渲染出來的顏色范圍是大于 [0-1]的,我們需要映射到[ 0-1]的范圍。

  2. ACES 是 映射方式其中比較好的算法,目前大部分是使用這個(gè)算法。

  3. 在Shader 計(jì)算不同顏色映射比較復(fù)雜,需要轉(zhuǎn)換倆次,計(jì)算一次是線性顏色轉(zhuǎn)換成ACES顏色,第二次是進(jìn)行Gamma校正輸出到屏幕。

    1. 色調(diào)映射 ----圖像顏色進(jìn)行變換的算法

      ?[參考]Tone Mapping---色調(diào)映射算法_one_u_h的博客-CSDN博客

    2. 決定整個(gè)場景的亮度傾向,傾向偏亮亦或是偏暗。

  1. 應(yīng)用ACEs 模式

  1. 后置處理,顏色重構(gòu)


URP | 后處理-色調(diào)映射-ACES的評論 (共 條)

分享到微博請遵守國家法律
镶黄旗| 榆树市| 广平县| 巴塘县| 册亨县| 玛沁县| 长丰县| 桓仁| 兴文县| 宁陵县| 马边| 梨树县| 姜堰市| 綦江县| 桂东县| 化州市| 康保县| 厦门市| 柞水县| 瑞昌市| 大同市| 五华县| 繁峙县| 丹东市| 原阳县| 怀化市| 旬阳县| 吉首市| 浦东新区| 石楼县| 绵阳市| 东莞市| 古交市| 佛冈县| 南京市| 加查县| 贺兰县| 巴林左旗| 贵州省| 东海县| 景洪市|