快資訊:關(guān)于 AE 2323.2 更新的OCIO應(yīng)用
AE終于在2023.2版本能使用內(nèi)置的ACES色彩空間了,要使用的話就在項(xiàng)目設(shè)置里把這個(gè)選項(xiàng)改成OCIO色彩管理
但是要注意你的AE版本一定是23.2,23.0是沒有的
【資料圖】
在此之前AE有一個(gè)ocio的第三方插件,我試了一下實(shí)在非???,體驗(yàn)過于糟糕,所以三維合成的時(shí)候也只能用nuke
這兩天研究了一下,有些地方相比專業(yè)做三維合成的Nuke還是有些落后,但起碼是能用了,就先記錄一下使用方法
首先在三維軟件里設(shè)置OCIO的方式網(wǎng)上資料應(yīng)該不少,并且大部分渲染器都默認(rèn)使用ACES色彩空間了,當(dāng)然如果要用aces色彩空間一定要輸出openexr格式
如果是和nuke的流程結(jié)合比較多的軟件比如maya,houdini,它們不改設(shè)置就默認(rèn)導(dǎo)出的是ACEScg的圖
這里以houdini的karma為例,在solaris中建一個(gè)簡單的場景,輸出openexr圖片
導(dǎo)入AE,在AE中選中素材按ctrl+alt+g解釋素材,勾選保持rgb,一定要先禁用掉AE自己色彩空間轉(zhuǎn)換,或者把空間轉(zhuǎn)換選擇改成Raw也可以
這樣就可以讀取到原始的ACEScg的圖像了
但如果使用C4D(2023版本之前)的各種渲染器插件的話導(dǎo)出的圖片仍然是傳統(tǒng)SRGB的色彩空間,可能因?yàn)镃4D和AE合作比較深,之前AE一直沒有內(nèi)置的OCIO色彩管理,所以也就默認(rèn)直接輸出SRGB圖了吧,個(gè)人猜測
這里用C4D的RS插件做例子
我把這個(gè)玩具導(dǎo)出到C4D,設(shè)置一個(gè)場景,渲染設(shè)置不多調(diào)整,輸出一張openexr圖片到AE
在OCIO設(shè)置中是不對的,因?yàn)镽S導(dǎo)出的是SRGB圖片
在原來的設(shè)置下才能獲得原本的色彩,也就是AE沒更新之前的默認(rèn)色彩管理模式
為了在ACEScg色彩空間下進(jìn)行合成,需要在三維輸出時(shí)禁止轉(zhuǎn)化srgb色彩空間
打開C4D渲染設(shè)置,在rs里切換到高級模式,在globals選項(xiàng)卡中取消勾選Compensate for Transform
再次渲染的話發(fā)現(xiàn)圖片查看器里的顯示好像不太對,其實(shí)這是因?yàn)樗F(xiàn)在顯示的是SRGB的圖像
先把圖片直接導(dǎo)入AE,切換到OCIO色彩管理,然后像上面一樣解釋素材勾選保留RGB
設(shè)置完仍然沒有還原三維中的結(jié)果,這里其實(shí)要應(yīng)用一個(gè)顏色空間轉(zhuǎn)換,把srgb轉(zhuǎn)換為acescg的色彩空間
對比之前正常輸出的srgb圖像,我們就能在ACES空間里進(jìn)行合成了
當(dāng)然因?yàn)镃4D的輸出有兩個(gè)路徑,AOV里的圖像是不需要進(jìn)行轉(zhuǎn)換的,注意不要在AOV的圖上用這個(gè)效果
所以一般我會直接用AOV的通道進(jìn)行合成,真正的beauty圖直接輸出成png用來做代理
C4D 2023 更新可以切換全局的OCIO的顏色管理,按Ctrl D進(jìn)入工程設(shè)置,把最下面的色彩管理切成OpenColorIO,然后點(diǎn)擊Convert to OCIO的按鈕
這種模式下輸出的圖片直接就是ACEScg色彩空間,不需要在AE里加空間轉(zhuǎn)換的效果,但是一樣也要解釋素材面板里勾選保持RGB
至于為什么要在后期中使用ACES色彩空間合成,本人直觀感覺是因?yàn)楫?dāng)下的HDR合成流程已經(jīng)是主流,傳統(tǒng)的合成流程要時(shí)刻注意不要讓圖像超出0-1范圍,
但0-1只能代表顯示器的顯示范圍,真實(shí)生活中大部分場景的顏色都不在這個(gè)范圍內(nèi),如果渲染器要盡量模擬真實(shí)世界,那必然要經(jīng)常在屏幕顯示范圍外進(jìn)行計(jì)算,再重新映射回0-1這個(gè)十分狹窄的區(qū)間內(nèi)
我們使用渲染器時(shí)貌似不需要過于關(guān)心這個(gè)顏色閾值,因?yàn)檐浖呀?jīng)把工作流設(shè)置好了,我們只關(guān)心最終圖像的顏色是否合適就好
但是后期合成中就不一樣了
疊素材疊光效的時(shí)候,疊過1的顏色值導(dǎo)致過曝已經(jīng)是家常便飯,盡管HDR的好處是超出的范圍仍然能保留信息,但無論怎樣,最終圖像仍然要保持在0-1內(nèi),超過的部分需要想辦法把它“拉回來”
下面我們看看在ACES色彩空間里軟件的變化
切換后一眼能看到的區(qū)別就應(yīng)該是取色板的顏色明顯變暗了,可以看下圖的對比
平時(shí)的右上角的純白變成了灰色,因?yàn)?.0這個(gè)顏色值在ACES色彩空間中并不是一個(gè)很高的亮度值
在舊版AE里建立一個(gè)100*1000的固態(tài)層,在上面加個(gè)ramp漸變效果,在End Color里手動把RGB三個(gè)值都輸入為3,這樣就得到一個(gè)0-3亮度的漸變條(要確保你的工程設(shè)置是32位浮點(diǎn)式的)
可以看到在這個(gè)條帶的1/3處往下由于數(shù)值都超過了1,所以條帶下面一大半陡然變成了白色的純色條
但是如果在OCIO下建個(gè)一樣的色條
發(fā)現(xiàn)即使最底部是3的亮度值,看起來仍然不是很亮,而且整條色條都是有顏色漸變信息的,如果把這個(gè)色條導(dǎo)出去和srgb的放在一起看
注意輸出的時(shí)候要在格式選項(xiàng)里把顏色改成sRGB的空間,否則輸出的會保留原始色彩空間,無法在windows里顯示最終顏色
放到一起對比一下
可以直觀得看到,在傳統(tǒng)srgb色彩空間是沒有1.0之上能顯示的信息的,在ACES色彩空間中就有了更多可用來顯示信息的亮度區(qū)間,這里只是用0-3的范圍做例子,實(shí)際在3之上還有很多顯示空間
當(dāng)然這只是ACES在亮度值方面的優(yōu)勢,在色彩方面,比如綠色的表現(xiàn)要好之類的,看過幾篇介紹ACES的文章的話,下面這張圖你也應(yīng)該看過好多次了,這篇專欄還是盡量多講實(shí)際應(yīng)用上的問題
在這種擁有更大顯示范圍的色彩空間下,高曝光的場景里就能獲得比傳統(tǒng)srgb色彩空間更優(yōu)秀的畫面
我把兩個(gè)AE拉到一起對比,左邊是AE2021,右邊是在OCIO顏色引擎下的新版AE
分別都在圖像上給了一個(gè)5曝光度的效果,先把效果關(guān)掉,兩張圖像在最終結(jié)果上是一樣的
打開曝光效果,左邊的圖像完全過曝了,右邊卻依然能獲得平滑的亮度信息
所以在ACES色彩空間下,我們就獲得了更多的可調(diào)空間,堆疊反射高光等效果的時(shí)候也能避免很多“疊曝了”的情況
當(dāng)然你可以在前期三維里盡量把顏色調(diào)得差不多,后期只做些十分微弱的調(diào)色工作,甚至都不需要進(jìn)后期,直接渲的就是成品圖
但是如果你是合成師,或者是類似我這種臟活累活啥都干的人,后期的工作量往往是比前期更多的
比如要把下面的序列合成一個(gè)爆炸的效果
對于這種后期占比很大的視頻,選擇在ACES色彩空間中操作無疑是當(dāng)下最好的選擇
因?yàn)樗枰粋€(gè)劇烈的爆炸效果,傳統(tǒng)流程中控制好圖像亮度是一個(gè)非常費(fèi)時(shí)費(fèi)力的過程,在新版AE里就不是很大的問題
打開AE的info面板,鼠標(biāo)滑過圖像的時(shí)候能在info里看到每個(gè)像素的坐標(biāo)和顏色值,選取爆炸過程中的一幀,查看圖像中心的亮度(因?yàn)榻貓D截不到鼠標(biāo)位置,所以我先畫個(gè)箭頭表示一下我鼠標(biāo)懸停的地方)
爆炸中心的亮度已經(jīng)遠(yuǎn)遠(yuǎn)超過了1.0的顏色值,但還是能看到亮度信息,并沒有過曝,實(shí)際上這個(gè)動畫關(guān)于亮度控制我只是簡單的K了一個(gè)曝光度關(guān)鍵幀
如果我把它切換成傳統(tǒng)的顏色引擎,就是下面這個(gè)樣子的
原本我是用nuke做的這個(gè)合成,當(dāng)時(shí)AE并沒有更新OCIO,AE更新之后我用AE復(fù)現(xiàn)了一下,大體流程上和nuke并沒什么區(qū)別,可能是AE剛更新,還有bug,也可能是因?yàn)锳E的歷史遺留問題,有些地方并不能完全適配得了OCIO工作流程,下面記錄一下目前發(fā)現(xiàn)的一些問題
在合成到這一層的時(shí)候我使用和nuke里一樣的screen模式,但是AE中出現(xiàn)了錯(cuò)誤的色塊,查看像素信息,發(fā)現(xiàn)是B值出現(xiàn)了負(fù)數(shù),但在nuke里并沒有任何問題(碎塊有些不一樣是因?yàn)楹髞碛幸话嫘薷?,我是用初版的序列在AE里測試的,不是軟件造成的差異)
單獨(dú)查看這個(gè)圖層的顏色信息,亮度值是比較大的
screen的計(jì)算方式是 A+B-A*B,它的意義在于能實(shí)現(xiàn)Add的亮度疊加但是保證整體亮度不大于1,但當(dāng)兩個(gè)圖像亮度都大于1的時(shí)候就出現(xiàn)了負(fù)數(shù)效果,比如兩個(gè)通道是5亮度值,進(jìn)行screen計(jì)算,5+5-5*5=-15,所以它是一個(gè)適用于傳統(tǒng)亮度區(qū)間的疊加方式,出現(xiàn)上面這種情況貌似AE才是正確的
在nuke中查看一下screen的合成方式,發(fā)現(xiàn)后面有另一個(gè)條件判定
A+B-AB if A and B between 0-1, else A if A>B else B
意思是只有兩個(gè)通道的顏色值在0-1才會使用正常的screen公式,否則會使用亮度比較大的值來輸出
也就是說nuke考慮到了亮度超出1的情況下會出現(xiàn)負(fù)數(shù)效應(yīng)的疊加問題,謝謝AE,不然我還不知道Nuke的這個(gè)優(yōu)點(diǎn),nu溫我哭
然后我把出問題的高亮區(qū)域單獨(dú)提出來再疊上,勉強(qiáng)補(bǔ)上了,但是治標(biāo)不治本
以后可能要更多用Add或者Lighten模式了,后面我也適當(dāng)?shù)母牧艘幌炉B加模式
應(yīng)用sharpen的時(shí)候通常會轉(zhuǎn)化一下顏色再轉(zhuǎn)回來,防止這種色差過大的地方出現(xiàn)錯(cuò)誤
nuke里是用Log2Lin節(jié)點(diǎn)
在AE里應(yīng)用同樣的效果,轉(zhuǎn)為log空間再轉(zhuǎn)回來,哦豁,顏色變成8位上限了
在效果和預(yù)設(shè)列表里能看到這個(gè)效果官方給顯示是支持32位的,但顯然現(xiàn)實(shí)情況并不是
那只能用color profile converter找一個(gè)效果差不多的來代替了,一樣是轉(zhuǎn)化完再反向轉(zhuǎn)回來,中間插入sharpen
相比直接sharpen就好多了
另外還有很多插件也是默認(rèn)作用在傳統(tǒng)空間中的,可能以后會陸續(xù)更新適配OCIO吧
AE本身一直對HDR的支持就只有一部分,甚至到現(xiàn)在到?jīng)]個(gè)鉗制功能,用的時(shí)候確實(shí)是比較別扭的
結(jié)論,新版AE在三維合成方面往前走了一大步,能做相當(dāng)一部分nuke的工作了,雖然有些細(xì)節(jié)還是維持著8位深度合成的效果,也許AE下次更新就修復(fù)這些了,不過它一個(gè)OCIO都幾年才更,還是不要抱希望比較好
打個(gè)廣告,如果你剛學(xué)C4D,糾結(jié)學(xué)什么渲染器,又苦于現(xiàn)在顯卡價(jià)格太離譜的話,可以關(guān)注一下CPU渲染器Corona,支持OCIO色彩管理,并且能在B站觀看全面教程,因?yàn)闆]有合集,只貼了第一節(jié)課的鏈接,后續(xù)教程可以點(diǎn)進(jìn)這個(gè)up主主頁觀看
進(jìn)階課程請關(guān)注公眾號:ZOOD視效
最近幾年流行起來的USD、ACES等新流程,我也是一知半解,摸索學(xué)習(xí)中,大家還是要多動手實(shí)踐,探討交流可以加QQ群362611694
雖然群里平時(shí)不正經(jīng),但是有技術(shù)問題的時(shí)候會優(yōu)先解決技術(shù)問題
說是解決,大部分時(shí)候,大家都不會