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

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

Unity-ShaderLab:舊版 Alpha 測試

2021-04-13 08:37 作者:unity_某某師_高錦錦  | 我要投稿

Alpha 測試是拒絕將像素寫入屏幕的最后機會。

注意:使用片元程序時,AlphaTest 命令無效;在大多數(shù)平臺上,使用 HLSL clip() 函數(shù)在著色器中完成 Alpha 測試。建議現(xiàn)在使用可編程著色器,而不是 SetTexture 命令。

在計算出最終輸出顏色之后,顏色可選擇性地將其 Alpha 值與固定值進(jìn)行比較。如果測試失敗,則不會將像素寫入顯示屏。

語法

渲染所有像素(默認(rèn)值),或者…

設(shè)置 Alpha 測試以僅渲染 Alpha 值在特定范圍內(nèi)的像素。

Comparison

Comparison 是以下詞語之一:

AlphaValue

一個介于 0 到 1 之間的浮點數(shù)。這也可以是 float 或 range 屬性的變量引用,在這種情況下,應(yīng)使用標(biāo)準(zhǔn)方括號表示法 ([VariableName]) 來編寫。

詳細(xì)信息

在渲染具有透明部分的凹面對象時,Alpha 測試很重要。顯卡將保留寫入屏幕的每個像素的深度記錄。如果新像素比已經(jīng)渲染的像素更遠(yuǎn),則新像素不會寫入顯示屏。這意味著即使是使用混合,對象也不會穿透顯示。

在此圖中,左側(cè)的樹是使用?AlphaTest?渲染的。請注意其中的像素是完全透明還是不透明。中間的樹是僅使用?Alpha 混合渲染的;注意由于深度緩沖區(qū)的原因,附近樹枝的透明部分如何覆蓋遠(yuǎn)處的樹葉。右側(cè)的樹是使用最后一個示例著色器渲染的;它實現(xiàn)了混合和 Alpha 測試的組合,可隱藏所有瑕疵。

示例

以下是最簡單的示例,為其指定帶有 Alpha 通道的紋理。僅當(dāng) Alpha 大于 0.5 時,該對象才可見

只有光禿禿一棵樹并不好看。讓我們添加一些光照并使剔除值可調(diào)整:


渲染植物和樹木時,許多游戲都具有 Alpha 測試常見的硬邊。解決這個問題的方法是將對象渲染兩次。在第一個通道中,我們使用 Alpha 測試僅渲染不透明度超過 50% 的像素。在第二個通道中,我們將圖形在被剪切的部分中進(jìn)行 Alpha 混合,但不記錄像素的深度。隨著更遠(yuǎn)的樹枝覆蓋附近的樹枝,我們可能會有點混淆,但在實踐中,很難遇到這種情況,因為樹葉中有很多視覺細(xì)節(jié)。

請注意,我們在 SubShader 中進(jìn)行設(shè)置,而不是在個別通道中。SubShader 中設(shè)置的任何狀態(tài)都將作為默認(rèn)值繼承到著色器內(nèi)的通道中。


Unity-ShaderLab:舊版 Alpha 測試的評論 (共 條)

分享到微博請遵守國家法律
蓝田县| 泸州市| 永仁县| 拉萨市| 桐乡市| 江安县| 交城县| 济宁市| 清远市| 常德市| 云和县| 定陶县| 锦州市| 江阴市| 宁德市| 聊城市| 吴桥县| 灵丘县| 太谷县| 大宁县| 邵武市| 莲花县| 常熟市| 顺义区| 博客| 米林县| 普安县| 措勤县| 龙胜| 亚东县| 中山市| 卢龙县| 铜川市| 渭源县| 衡山县| 青铜峡市| 织金县| 泗水县| 昌都县| 和平县| 合阳县|