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

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

2019-12-7 深度寫(xiě)入下的半透明效果/混合命令

2019-12-08 00:26 作者:winter_mute  | 我要投稿

之前的透明度混合是存在bug的,因?yàn)殛P(guān)閉了深度寫(xiě)入(ZWrite) ,所有模型自身會(huì)對(duì)自身產(chǎn)生透明效果(即視野內(nèi)模型的重復(fù)處, 如下)



而解決它的方法就是使用兩個(gè)Pass,一個(gè)是正常的關(guān)閉深度寫(xiě)入的AlphaBlend,另一個(gè)則是開(kāi)啟深度寫(xiě)入并但是不輸出顏色, 它的目的僅僅是為了把該模型的深度值寫(xiě)入深度緩沖之中;而之后的Pass就可以按照像素級(jí)別的深度排序結(jié)果進(jìn)行透明渲染。

開(kāi)啟深度寫(xiě)入后的Alpha混合就不會(huì)出現(xiàn)物體自身對(duì)自身的透明了。

ColorMask的意義在于,它之后的值代表著顏色通道的掩碼(R,G,B,A),而當(dāng)它之后的數(shù)字為0時(shí),則該P(yáng)ass不會(huì)寫(xiě)入任何顏色通道,也不會(huì)輸入任何顏色。


混合命令

只需要理解這一個(gè)公式

O(輸出)= SrcFactor(源顏色的混合因子)* S (source color源顏色) + DstFactor(目標(biāo)顏色/緩沖區(qū)顏色的混合因子)* D(destination color 目標(biāo)顏色/緩沖區(qū)顏色)

O.a的輸入輸出同理,只是a代表的是alpha值而已。

即 輸出等于輸入顏色乘輸入混合因子 加上 目標(biāo)顏色乘輸出混合因子

而這些混合因子只是一個(gè)參數(shù),它可以是one zero srcColor SrcAlpha等等等等

混合語(yǔ)句真正在代碼中的實(shí)現(xiàn):

Blend SrcFactor DstFactor SrcFatcotA DstFactorA

例如:

Blend SrcAlpha OneMinusSrcAlpha, One Zero

其中

SrcAlpha:源顏色的混合因子

OneMinusSrcAlpha:目標(biāo)顏色的混合因子

One:源a值的混合因子

Zero:目標(biāo)a值的混合因子

該命令代表混合后輸出的顏色的透明度為源顏色的透明度

然而,混合命令除了默認(rèn)的Add操作之外,還可以指定其他的操作,例如Sub,RevSub(混合后的源顏色減去混合后的目標(biāo)顏色),Max,Min等等。


雙面渲染效果

兩種效果下實(shí)現(xiàn)實(shí)現(xiàn)

第一種是在Alpha測(cè)試下,關(guān)閉Cull(剔除)功能,即渲染雙面。

可以直接得到不透明物體的內(nèi)部渲染效果

另一種是在Alpha混合下,這個(gè)情況下由于關(guān)閉了ZWrite,所以無(wú)法使用單獨(dú)關(guān)閉Cull的方法。

解決方法是使用另一個(gè)Pass,分別剔除前面Cull Front,剔除后面 Cull Back

這樣得到了渲染了雙面的效果。


2019-12-7 深度寫(xiě)入下的半透明效果/混合命令的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
聊城市| 大冶市| 清远市| 伊吾县| 微山县| 河间市| 三台县| 昭平县| 扶余县| 平罗县| 华容县| 遂宁市| 武威市| 无锡市| 南陵县| 英德市| 雅安市| 普陀区| 浏阳市| 平邑县| 石首市| 永胜县| 普安县| 津市市| 谷城县| 平江县| 教育| 蒙自县| 河北省| 三江| 连南| 平安县| 怀宁县| 西昌市| 桂平市| 勐海县| 安图县| 东源县| 东丰县| 中宁县| 景宁|