Photoshop如何修改(半)透明像素的RGB值


實時渲染管線中,有一類很麻煩的問題:帶alpha的紋理邊緣顏色容易受到污染。其原理可以參見這篇文章

要修復此類問題,通常我們需要做texture bleeding處理,修改紋理素材,保留alpha通道不變的同時,修改RGB數值。

例如這張資源:

透明區域的alpha=4%,RGB都為57,也就是幾乎透明的灰色。

(如果像素是全透明即alpha=0%,Photoshop還查看不了RGB值,屬於軟件缺陷,這一點我在StackExchange上得到過證實。不過仍然可以用本文方法查看。)

我們希望保持這些透明像素的alpha不變,只修改RGB全部變白。

對於“全部變白”的需求,用Python很好實現。例如我之前寫過一個腳本,用於將一張圖片的全透明像素全部刷成白色。

不過要是想人工控制不同區域的顏色,還是得借助Photoshop/Illustrator這一類圖像軟件。

下面我以Photoshop CC 2018英文版為例介紹操作,其他版本也應該類似。

1)選中圖層,分離出alpha蒙版

圖層面板可以看到RGB和Alpha被分離出來了:

2)暫時禁用alpha蒙版

3)選中圖層本身,進行顏色修改

例如我們可以用Brush將圖片刷成白色:

4)恢復開啟alpha蒙版

可以看到,圖片看上去和之前一樣,但是原先的半透明像素的RGB都變成了255白色:

最后可以保存了。

 

實際操作中發現,對於全透明像素采用上述方法修改並保存可能無效,Photoshop會自動將全透明像素的RGB重置,猜測是又一個bug。

如果遇到此問題,建議換個軟件,例如開源的GIMP(GIMP - GNU Image Manipulation Program),操作和Photoshop非常類似。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM