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

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

【Unity】【組件】UGUI文字陰影、漸變、描邊

2022-03-25 22:09 作者:7_erQ  | 我要投稿

????????由于策劃們經(jīng)常需要給文字添加描邊的效果,以防止文字看不清或者用來(lái)強(qiáng)調(diào)一些文字。之前一直用的都是Unity自帶的Outline組件實(shí)現(xiàn)文字描邊,在效果和性能上都很差。而如果使用TextMeshPro的話,又需要對(duì)每種語(yǔ)言都做資源,會(huì)多出很多工作量,并增加包體。所以需要另尋方法實(shí)現(xiàn)一個(gè)文字描邊的組件。

????????在網(wǎng)上找了一圈,感覺(jué)用Shader實(shí)現(xiàn)挺符合需求,但一般用于Mesh描邊的Shader又用不了,變成了一個(gè)方框描邊,推測(cè)是Unity先對(duì)于文字形狀進(jìn)行了處理,計(jì)算并生成了一張文字圖案的UV,然后將UV應(yīng)用在一個(gè)面片上,這樣就減少了最終顯示在畫(huà)面上的面數(shù)和定點(diǎn)數(shù)。而這些文字形狀的頂點(diǎn)數(shù)據(jù)則是以UIVertex類(lèi)型存在。

Text組件的Mesh是個(gè)面片

????????又找了一圈,找到兩篇不錯(cuò)的文章:

  1. 《基于Shader實(shí)現(xiàn)的UGUI描邊解決方案》(https://www.cnblogs.com/GuyaWeiren/p/9665106.html)

  2. 《【unity shader】基于UGUI字體的outline優(yōu)化》(https://blog.csdn.net/HelloCLanguage/article/details/105836309)

????????于是就用最樸素的編程方法拿來(lái)改了改,目前實(shí)現(xiàn)的功能有:

  • 文字陰影

  • 文字、陰影描邊

  • 文字、陰影漸變(可透明,只能雙色)

????????并添加了共用材質(zhì)和保存為預(yù)制體后打開(kāi)顯示異常的問(wèn)題的解決。

效果預(yù)覽

????????使用方法:把腳本添加到Text組件節(jié)點(diǎn)上即可。

注:如果顯示異常請(qǐng)檢查Canvas的Additional Shader Channels中的TexCoord1,2,3通道是否打開(kāi)。

腳本代碼:

Shader代碼:



【Unity】【組件】UGUI文字陰影、漸變、描邊的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
固始县| 鞍山市| 虹口区| 铁岭县| 紫阳县| 六安市| 东丰县| 理塘县| 沐川县| 万安县| 绍兴县| 汝南县| 新竹县| 屏山县| 鄄城县| 蕉岭县| 英超| 革吉县| 轮台县| 荔波县| 江陵县| 美姑县| 阳高县| 甘泉县| 湾仔区| 信阳市| 安顺市| 砀山县| 胶州市| 澎湖县| 衡山县| 通山县| 云安县| 惠东县| 南宁市| 奉节县| 乌兰浩特市| 沧源| 瑞安市| 梁平县| 年辖:市辖区|