翻譯:Kelvin Lo
如果你是手遊開發者,這個功能對你來說會非常有用,在Unity 5.5裡有一個新功能就是Android和iOS已支援Linear著色模式。有支援這個模式你就能確保輸入和輸出以及所有的計算都會落在正確的顏色空間內。最後的圖形運算亮度會因為場景光的變化產生線性的改變,代表場景所有的物件色調會更加一致。
你可以看到原本的只能採用的Gamma顏色空間模式,亮度會因為數值變大很快的就轉為白色造成過度曝光。看看這張示意圖:
Unity 5.5現在已經支援Linear模式用在Android和iOS平台上,在Android上,Linear需要支援OpenGLES3的硬體(大約61%市占硬體)。在iOS上需要支援Metal(大約71%市占硬體)
由於線性(Linear)和伽瑪(Gamma)之間的差異很大,兩種模式無法相容,因為會牽扯到資源重新關聯,這代表一個問題就是如果採用Linear模式就無法在OpenGLES2的iOS或Android硬體上執行。
我們依賴Google Play上的過濾器來確保只能執行OpenGLES2的手機不會列出用Linear模式的遊戲,在iOS上也是有類似的機制透過iOS key來過濾採在蘋果商城上採用Linear模式的遊戲。
為了要呈現線性渲染的威力,我們做了一個專為手機連同PC平台展示用的簡單測試場景,你可以在這裡下載。
最後,目前WebGL 2.0在Unity裡尚未支援Linear模式,但我們正如火如荼地和Khronos WebGL團隊與Chrome團隊共同計畫著要把這個功能做出來。
沒有留言:
張貼留言