蒙版快取(Stencil buffer)

2021-05-24 21:23:05 字數 602 閱讀 2049

什麼是蒙版快取

影象硬體中有個特殊記憶體,叫stencil buffer。很多地方翻譯做模板快取,我覺的用蒙版快取更貼切。因為這個快取的和ps的圖層蒙版很相似。渲染目標(render target,可以是螢幕,可以是離屏表面,可以是紋理)中每個畫素在蒙版快取中都有對應的蒙版值(stencil ref)。快取中還有乙個可以設定的蒙版函式(comparefunction),例如 comparefunction,例如compare function.greater(大於)、comparefunction.greaterequal(大於等於)、comparefunction.less(小於)和comparefunction.lessequal(小於等於)等等。

每個畫素的蒙版值(stencilbuffervalue)通過測試函式(comparefunction)與參考值(stencilref)進行比較,只有符合測試函式條件的畫素才能被渲染出來。舉乙個例子,測試函式為comparefunction.less(小於),參考值(stencilref)為0,那麼只有蒙版值小於0的畫素才能被渲染出來。蒙版緩衝區就是這樣利用測試函式達到了控制畫素渲染的目的。

蒙版快取在3d中的用途有實現倒影,用shadow volume實現陰影

相關鏈結

android 漸變蒙版 iOS關於蒙版漸變的實現

有個需求,檢視的右邊需要漸隱,如下圖 這裡只是隨便拿個介面做下測試 paste image.png 要求整個view漸漸alpha變透明,包括view上的子view,需要一起變透明。拿起鍵盤就是幹 void testalpha self.view layoutifneeded uicolor col...

8 4修改蒙版

這意味著在蒙版中也只存在著灰度。即使選取了帶有色相的顏色,在蒙版中也會轉為相應的灰度,就如同在alpha通道中遇到的情形一樣 使用移動工具 v 移 層 注意背景層是無法移動的 會發現蒙版也隨之移動,如下左圖。這是因為蒙版與圖層預設是存在著鏈結關係的。針對任何一者的變換 如旋轉 拉伸等,移動也算 操作...

通道和蒙版

一。彩色深度標準通常有以下幾種 1 8位色,每個畫素所能顯示的彩色數為2的8次方,即256種顏色。2 16位增強色,16位彩色,每個畫素所能顯示的彩色數為2的16次方,即65536種顏色。3 24位真彩色,每個畫素所能顯示的彩色數為24位,即2的24次方,約1680萬種顏色。4 32位真彩色,即在2...