unity shader学习笔记(1) shader基础结构以及Properties面板

首先是shader的基础结构:

 1 Shader "Custom/Example
 2 {
 3     Properties//变量属性面板
 4     {
 5     }
 6     SubShader
 7     {
 8         Tags { "RenderType"="Opaque" }//设置渲染状态和标签
 9         LOD 100
10         Pass
11         {  //开始cg代码片段
12             CGPROGRAM
13             #pragma vertex vert//顶点着色器
14             #pragma fragment frag//片段着色器    
15             #include "UnityCG.cginc"
16 
17             struct appdata;
18             struct v2f;        
19             v2f vert (appdata v){}
20             fixed4 frag (v2f i) : SV_Target{}    
21             ENDCG
22         }
23     }
24 }

然后 Properties面板的定义:

实际代码: 

 1     Properties
 2     {
 3         _MyColor ("MyColor", Color) = (1,1,1,1)        
 4         _MyVector("MyVector",Vector)=(1,2,3,4)
 5         _MyRange("MyRange",Range(1,100))=1
 6         _MyFloat("MyFloat",float)=0   
 7         _My2D("My2D",2D)="white"{}//white指的是无图片的默输出颜色
 8         _My3D("My3D",3D)="white"{}
 9         _MyCube ("MyCube", Cube) = "_Skybox" { }
10     }

面板效果:

原文地址:https://www.cnblogs.com/luxishi/p/7686934.html