五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

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

Unity-自定義著色器 GUI

2021-04-16 09:26 作者:unity_某某師_高錦錦  | 我要投稿

有時(shí)著色器中會(huì)包含一些有趣的數(shù)據(jù)類型,而使用內(nèi)置的 Unity 材質(zhì)編輯器無(wú)法很好地表示這些數(shù)據(jù)類型。Unity 提供了一種方法來(lái)覆蓋顯示著色器屬性的默認(rèn)方式,以便您可以定義自己的方式。您可以使用此功能來(lái)定義自定義控件和數(shù)據(jù)范圍驗(yàn)證。

要為著色器的 GUI 編寫自定義編輯器,首先要定義一個(gè)需要自定義編輯器的著色器。用于自定義編輯器的名稱是 Unity 將為材質(zhì)編輯器查找的類。

要定義自定義編輯器,請(qǐng)展開(kāi) ShaderGUI 類,并將腳本放在 Assets 目錄中的 Editor 文件夾下。

任何定義了自定義編輯器 (CustomEditor “CustomShaderGUI”) 的著色器都將實(shí)例化以上列出的著色器 GUI 類,并執(zhí)行相關(guān)聯(lián)的代碼。

一個(gè)簡(jiǎn)單示例

我們現(xiàn)在的情況是,有一個(gè)著色器能以兩種模式工作;該著色器渲染標(biāo)準(zhǔn)漫射光照,或者渲染 50% 的藍(lán)色和綠色通道。

如您所見(jiàn),著色器有一個(gè)可以設(shè)置的關(guān)鍵字:REDIFY_ON。可使用材質(zhì)的 shaderKeywords 屬性按照材質(zhì)來(lái)設(shè)置此關(guān)鍵字。以下是執(zhí)行此操作的 ShaderGUI 實(shí)例。

有關(guān)更全面的 ShaderGUI 示例,請(qǐng)參閱位于“內(nèi)置著色器”軟件包中的 StandardShaderGUI.cs 文件以及 Standard.shader(可從?Unity 下載存檔 (Unity Download Archive)?下載該軟件包)。

請(qǐng)注意,上面這個(gè)簡(jiǎn)單示例還可以使用 MaterialPropertyDrawers 來(lái)更加簡(jiǎn)便地解決。向 Custom/Redify 著色器的 Properties 部分中添加以下行:

并刪除:

另請(qǐng)參閱:MaterialPropertyDrawer

對(duì)于更復(fù)雜的著色器 GUI 解決方案(例如,材質(zhì)屬性彼此依賴或者希望有特殊布局),則應(yīng)該使用 ShaderGUI。您可以將 MaterialPropertyDrawers 與 ShaderGUI 類組合使用,請(qǐng)參閱 StandardShaderGUI.cs。


Unity-自定義著色器 GUI的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
靖宇县| 喀什市| 洪江市| 顺平县| 高安市| 喀什市| 峡江县| 湄潭县| 化州市| 瑞昌市| 沧州市| 桐梓县| 滦南县| 易门县| 安福县| 盐边县| 长治市| 彭水| 嘉荫县| 巩义市| 望谟县| 安多县| 咸阳市| 金昌市| 林西县| 长武县| 桦甸市| 广南县| 丹寨县| 天门市| 利辛县| 咸丰县| 望城县| 公安县| 比如县| 赞皇县| 太康县| 安图县| 青海省| 博客| 宾阳县|