首先是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面板的定义:

unity shader学习笔记(1) shader基础结构以及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     }

面板效果:

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

相关文章:

  • 2021-08-06
  • 2021-10-15
  • 2021-06-19
  • 2021-07-30
  • 2021-07-04
  • 2021-12-21
  • 2022-12-23
  • 2021-12-23
猜你喜欢
  • 2021-09-08
  • 2021-05-13
  • 2021-11-10
  • 2021-10-24
  • 2021-07-20
  • 2022-02-18
相关资源
相似解决方案