Unity Shader 学习笔记(一、常用属性)
第N次放弃 Shader后,再次鼓起勇气学习,用笔记,督促自己(两天之内,必须有一更)
本篇笔记跟随的大佬链接(https://zhuanlan.zhihu.com/unityTA )建议去大佬链接学习,我也在学,加油,共同进步
先来属性: 一、属性写法格式 : [Attribute]_Name ("Display Name",Type) = Default Value 1、Attribute : 属性标记,unity对当前属性的特殊处理 2、_Name : 属性名,也就是变量(比如C#里的 string _Name 就这个意思)注意:Shader里属性不加_(下划线)就会报错(神奇吧)! 3、() : 小括号, 语法格式(别扭) 4、"Display Name" : 展示在 Unity Inspector 面板上的 5、Type : 当前声明的属性的类型 6、Defaut Value:当前属性的默认值 二、属性类型 以及默认值 (敲黑板了,都得背会)主要有一下类型(先说常用的,不常用的我也不知道 -- 一定一定注意首字母大写) 来张表格,清晰明了 下面是自己敲的属性: [HDR]_Color("Color",Color) = (1,1,1,1) _Int("Int",Int) = 1 _Float("Float",Float) = 0.1 _Float1("Float1",Range(0,1)) = 0.5 [PowerSlider(3)]_Float2("Float_PowerSlider",Range(0,1)) = 0.5 [IntRange]_Float3("Float_Toggle",Range(0,1))= 1 [Toggle]_Float4("Float_Toggle",Range(0,1)) = 1 [Enum(UnityEngine.Rendering.CullMode)]_Float5("Float_Enum",Float) = 1 _Vector("Vector",Vector) = (0,0,0,0) _MainTex("_MainTex", 2D) = "white" {} [NoScaleOffset]_MainTex_NoScale("_MainTex_NoScale",2D) = "white"{} [Normal]_MainTex_Normal("_MainTex_Normal", 2D) = "white" {} _3DTex("3DTex",3D) = ""{} _CubTex("CubeTex",CUBE) = ""{}
对应Unity上的图