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

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.

主站蜘蛛池模板: 尼勒克县| 南和县| 长寿区| 兴业县| 桂林市| 云和县| 东乡族自治县| 电白县| 临猗县| 安阳县| 长白| 慈溪市| 鹤庆县| 华池县| 长沙市| 中宁县| 保定市| 额济纳旗| 高唐县| 合山市| 宝兴县| 家居| 陵川县| 皮山县| 泾阳县| 邵东县| 黑水县| 东乌| 张掖市| 简阳市| 通城县| 榕江县| 韶山市| 漾濞| 崇文区| 正镶白旗| 无极县| 彭山县| 肥东县| 潮州市| 万宁市|