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

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

Unity-ShaderLab:Properties

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

著色器可以定義 Unity?材質(zhì)檢視面板中由美術(shù)師設置的參數(shù)列表。著色器文件中的 Properties 代碼塊將定義這些屬性。

語法

屬性

定義屬性代碼塊。在大括號內(nèi),多個屬性定義如下。

數(shù)字和滑動條

這些全都定義一個具有默認值的數(shù)字(標量)屬性。Range?格式使該屬性顯示為一個滑動條,范圍在?min?到?max?之間。

顏色和矢量

使用給定 RGBA 分量的默認值定義顏色屬性,或使用默認值定義 4D 矢量屬性。顏色屬性會顯示拾色器,并根據(jù)顏色空間按需進行調(diào)整(請參閱著色器程序中的屬性)。矢量屬性顯示為四個數(shù)字字段。

紋理

分別定義?2D 紋理、立方體貼圖或?3D(體積)屬性。

詳細信息

著色器中的每個屬性均通過?name?引用(在 Unity 中,著色器屬性名稱通常以下劃線開頭)。屬性在材質(zhì)檢視面板中將顯示為?display name。每個屬性都在等號后給出默認值:

  • 對于?Range?和?Float?屬性,默認值僅僅是單個數(shù)字,例如“13.37”。

  • 對于?Color?和?Vector?屬性,默認值是括在圓括號中的四個數(shù)字,例如“(1,0.5,0.2,1)”。

  • 對于 2D 紋理,默認值為空字符串或內(nèi)置默認紋理之一:“white”(RGBA:1,1,1,1)、“black”(RGBA:0,0,0,0)、“gray”(RGBA:0.5,0.5,0.5,0.5)、“bump”(RGBA:0.5,0.5,1,0.5)或“red”(RGBA:1,0,0,0)。

  • 對于非 2D 紋理(立方體、3D 或 2D 數(shù)組),默認值為空字符串。如果材質(zhì)未指定立方體貼圖/3D/數(shù)組紋理,則使用灰色(RGBA:0.5,0.5,0.5,0.5)。

稍后在著色器的固定函數(shù)部分中,可使用括在方括號中的屬性名稱來訪問屬性值:[name]。例如,可通過聲明兩個整數(shù)屬性(例如“SrcBlend“和”DstBlend”)來使混合模式由材質(zhì)屬性驅(qū)動,然后讓?Blend 命令使用它們:Blend [_SrcBlend] [_DstBlend]。

Properties?代碼塊中的著色器參數(shù)被序列化為材質(zhì)數(shù)據(jù)。著色器程序?qū)嶋H上可以有更多參數(shù)(如矩陣、矢量和浮點數(shù)),這些參數(shù)在運行時從代碼中在材質(zhì)上設置,但如果它們不是 Properties 代碼塊的一部分,則不會保存它們的值。這對于完全由腳本代碼驅(qū)動的值最有用(使用?Material.SetFloat?和類似函數(shù))。

屬性特性和繪制器

在屬性前面,可指定可選的特性(用方括號括起)。這些是 Unity 可以識別的特性,或者它們可以指示您自己的?MaterialPropertyDrawer 類?來控制它們在材質(zhì)檢視面板中的呈現(xiàn)方式。Unity 可以識別的特性包括:

  • [HideInInspector]?- 不在材質(zhì)檢視面板中顯示屬性值。

  • [NoScaleOffset]?- 對于具有此特性的紋理屬性,材質(zhì)檢視面板不會顯示紋理平鋪/偏移字段。

  • [Normal]?- 表示紋理屬性需要法線貼圖。

  • [HDR]?- 表示紋理屬性需要高動態(tài)范圍 (HDR) 紋理。

  • [Gamma]?- 表示在 UI 中將浮點/矢量屬性指定為 sRGB 值(就像顏色一樣),并且可能需要根據(jù)使用的顏色空間進行轉(zhuǎn)換。請參閱著色器程序中的屬性。

  • [PerRendererData]?- 表示紋理屬性將以?MaterialPropertyBlock?的形式來自每渲染器數(shù)據(jù)。材質(zhì)檢視面板會更改這些屬性的紋理字段 UI。

  • [MainTexture]?- 表示一個屬性 (property) 是材質(zhì)的主紋理。默認情況下,Unity 將屬性 (property) 名稱為?_MainTex?的紋理視為主紋理。如果您的紋理具有其他屬性 (property) 名稱,但您希望 Unity 將這個紋理視為主紋理,請使用此屬性 (attribute)。如果您多次使用此屬性 (attribute),則 Unity 會使用第一個屬性 (property),而忽略后續(xù)屬性 (property)。

  • [MainColor]?- 表示一個屬性 (property) 是材質(zhì)的主色。默認情況下,Unity 將屬性 (property) 名稱為?_Color?的顏色視為主色。如果您的顏色具有其他屬性 (property) 名稱,但您希望 Unity 將這個顏色視為主色,請使用此屬性 (attribute)。如果您多次使用此屬性 (attribute),則 Unity 會使用第一個屬性 (property),而忽略后續(xù)屬性 (property)。

示例


Unity-ShaderLab:Properties的評論 (共 條)

分享到微博請遵守國家法律
信宜市| 云林县| 龙里县| 广河县| 抚松县| 卢湾区| 文昌市| 白银市| 那坡县| 东港市| 天门市| 新龙县| 瑞安市| 凤翔县| 杨浦区| 乐陵市| 长丰县| 长宁区| 盘山县| 香格里拉县| 行唐县| 沛县| 塔城市| 云梦县| 察雅县| 石狮市| 军事| 揭东县| 绥滨县| 德江县| 将乐县| 博兴县| 临沧市| 阿拉善右旗| 乌什县| 连南| 武清区| 陈巴尔虎旗| 石景山区| 青海省| 什邡市|