官术网_书友最值得收藏!

How it works...

Every Unity shader has a built-in structure that it is looking for in its code. The Properties block is one of those functions that are expected by Unity. The reason behind this is to give you, the shader programmer, a means of quickly creating GUI elements that tie directly into your shader code. These properties (variables) that you declare in the Properties block can then be used in your shader code to change values, colors, and textures. The syntax to define a property is as follows:

Let's take a look at what is going on under the hood here. When you first start writing a new property, you will need to give it a Variable Name. The Variable Name is going to be the name that your shader code is going to use in order to get the value from the GUI element. This saves us a lot of time because we don't have to set up this system ourselves. The next elements of a property are the Inspector GUI Name and Type of the property, which is contained within parentheses. The Inspector GUI Name is the name that is going to appear in the material's Inspector tab when the user is interacting with and tweaking the shader. The Type is the type of data that this property is going to control. There are many types that we can define for properties inside of Unity shaders. The following table describes the types of variables that we can have in our shaders:

Finally, there is the Default Value. This simply sets the value of this property to the value that you place in the code. So, in the previous example diagram, the default value for the property named _AmbientColor, which is of the Color type, is set to a value of 1, 1, 1, 1. As this is a Color property expecting a color that is RGBA or float4 or r, g, b, a = x, y, z, w, this Color property, when first created, is set to white.

主站蜘蛛池模板: 浮山县| 宁化县| 双城市| 定结县| 牟定县| 玛多县| 陇西县| 龙江县| 峡江县| 蒙城县| 微博| 龙门县| 兰溪市| 漾濞| 呈贡县| 宁化县| 玛多县| 宝山区| 合水县| 涟源市| 赤城县| 惠州市| 同心县| 奇台县| 辉县市| 玛多县| 盖州市| 吉首市| 马尔康县| 无极县| 达拉特旗| 堆龙德庆县| 从化市| 陇南市| 宣威市| 长汀县| 安平县| 宜良县| 南开区| 怀仁县| 斗六市|