记录分享一下一些Shader常用的属性标签(材质属性面板标签)

如图:

代码:

Shader "lcl/ShaderPropertyDrawer/ShaderEnum"
{// 材质属性面常见类型Properties{[Header(Custom)]// 自定义枚举[Enum(CustomEnum1,1,CustomEnum2,2)]  _CustomEnum ("CustomEnum", Float) = 1// 内置枚举[Header(Option)][Enum(UnityEngine.Rendering.BlendOp)]  _BlendOp  ("BlendOp", Float) = 0[Enum(UnityEngine.Rendering.BlendMode)] _SrcBlend ("SrcBlend", Float) = 1[Enum(UnityEngine.Rendering.BlendMode)] _DstBlend ("DstBlend", Float) = 0[Enum(Off, 0, On, 1)]_ZWriteMode ("ZWriteMode", float) = 1[Enum(UnityEngine.Rendering.CullMode)]_CullMode ("CullMode", float) = 2[Enum(UnityEngine.Rendering.CompareFunction)]_ZTestMode ("ZTestMode", Float) = 4[Enum(UnityEngine.Rendering.ColorWriteMask)]_ColorMask ("ColorMask", Float) = 15[Header(Stencil)][Enum(UnityEngine.Rendering.CompareFunction)]_StencilComp ("Stencil Comparison", Float) = 8[Enum(UnityEngine.Rendering.StencilOp)]_StencilPass ("Stencil Pass", Float) = 0[Enum(UnityEngine.Rendering.StencilOp)]_StencilFail ("Stencil Fail", Float) = 0[Enum(UnityEngine.Rendering.StencilOp)]_StencilZFail ("Stencil ZFail", Float) = 0// Slider[Header(Slider)][IntRange]_StencilWriteMask ("Stencil Write Mask", Range(0,255)) = 255[IntRange]_StencilReadMask ("Stencil Read Mask", Range(0,255)) = 255[IntRange]_Stencil ("Stencil ID", Range(0,255)) = 0[PowerSlider(3.0)] _Shininess ("Shininess", Range (0.01, 1)) = 0.08// Toggle[Header(Toggle)][Toggle] _Toggle("Toggle", Float) = 0[MaterialToggle] _MaterialToggle("Material Toggle", Float) = 0[Header(KeywordEnum)]// 每个选项都将被设置 _OVERLAY_NONE, _OVERLAY_ADD, _OVERLAY_MULTIPLY shader keywords.// 配合multi_compile使用 每个名称都将 采用“属性名”+ 下划线 +“枚举名”这种形式的大写着色器关键字。最多可提供 9 个名称。[KeywordEnum(None, Add, Multiply)] _Overlay ("Overlay mode", Float) = 0// 空间划分[Space] _Prop1 ("Prop1", Float) = 0[Space(50)] _Prop2 ("Prop2", Float) = 0[Header(Texture)]// 用来修饰贴图变量,在inspcetor 面板中不再显示该贴图的tilling/offset 属性[NoScaleOffset]_MainTex ("No Scale Offset", 2D) = "white" {}// 用来修饰贴图变量,该贴图必须是一个法线贴图[Normal]_NormalTex ("NormalTex", 2D) = "white" {}// 用来修饰贴图变量,该贴图必须是一个high-dynamic range(HDR)贴图[HDR]_HDRTex ("HDRTex", 2D) = "white" {}}SubShader{Tags { "RenderType"="Opaque" }BlendOp [_BlendOp]Blend [_SrcBlend] [_DstBlend]ZWrite [_ZWriteMode]ZTest [_ZTestMode]Cull [_CullMode]ColorMask [_ColorMask]Pass{Stencil{Ref [_Stencil]Comp [_StencilComp]ReadMask [_StencilReadMask]WriteMask [_StencilWriteMask]Pass [_StencilPass]Fail [_StencilFail]ZFail [_StencilZFail]}CGPROGRAM#pragma vertex vert#pragma fragment frag// make fog work#pragma multi_compile_fog// ...later on in CGPROGRAM code:#pragma multi_compile _OVERLAY_NONE _OVERLAY_ADD _OVERLAY_MULTIPLY#include "UnityCG.cginc"struct appdata{float4 vertex : POSITION;float2 uv : TEXCOORD0;};struct v2f{float2 uv : TEXCOORD0;UNITY_FOG_COORDS(1)float4 vertex : SV_POSITION;};sampler2D _MainTex;float4 _MainTex_ST;v2f vert (appdata v){v2f o;o.vertex = UnityObjectToClipPos(v.vertex);o.uv = TRANSFORM_TEX(v.uv, _MainTex);UNITY_TRANSFER_FOG(o,o.vertex);return o;}fixed4 frag (v2f i) : SV_Target{// sample the texturefixed4 col = tex2D(_MainTex, i.uv);// apply fogUNITY_APPLY_FOG(i.fogCoord, col);return col;}ENDCG}}
}

Unity Shader - Shader常用属性标签(材质属性面板标签)相关推荐

  1. 修改材质球面板shader属性数值

    Shader 源代码下载: Unity 每次版本更新的时候,不单单会更新 Unity,配套的资源也是会一块更新 的,比如版本配套的 Shader 源代码. 一:下载步骤: 1.打开unity官网将纵向 ...

  2. Unity着色器常用关键字及属性

    看了好多次shader,不过还是感觉无从下手的去写shader,然后看shader的效果 个人认为还是因为shader基础打得不够扎实,顾特意再重温shader相关书籍的时候,看见有些常用关键字时,把 ...

  3. HTML5中常用的标签(及标签的属性和作用)

    1.标签:<!DOCTYPE> 作用:声明是文档中的第一成分,位于<html>标签之前. 2.标签:<html> 作用:此元素可告知浏览器其自身是一个HTML文档. ...

  4. html5常用的属性标签,HTML5常用标签及其属性设置

    一.Html5的基本结构 网页的内容 二.head标签内常用标签 1.meta标签:设置元数据信息(metadata),用来描述HTML文档的信息,为网页提供用户不可见的信息.常用属性: ⑴chars ...

  5. 常用的HTML标签和属性解释

    基本结构标签: <HTML>,表示该文件为HTML文件 <HEAD>,包含文件的标题,使用的脚本,样式定义等 <TITLE>---</TITLE>,包含 ...

  6. 常见的html行级元素及语义,HTML入门之——结构,常用标签及其属性,再加上语义化...

    一,HTML简介(来源HTML百度百科) HTML:超文本标记语言,是指能够包含链接,图片,程序,视频等非文字元素的页面 二,HTML,XML,XHTML之间有什么区别 HTML:超文本标记语言,语法 ...

  7. CSS简介及常用标签及属性

    一.概述 css是英文Cascading Style Sheets的缩写,称为层叠样式表,用于对页面进行美化. 存在方式有三种:元素内联.页面嵌入和外部引入,比较三种方式的优缺点. 语法:style ...

  8. HTML常用标签及属性

    web准备介绍: w3c:万维网联盟组织,用来制定web标准的机构(组织) web标准:制作网页遵循的规范 web准备规范的分类:结构标准.表现标准.行为标准. 结构:html.表示:css.行为:J ...

  9. 常用的html标签及用法,html常用标签及其属性用法

    标签:设置标题,设置完成后可以显示到IE窗口的标题上 body中常用标签: bgcolor指背景颜色 background指背景图片 横线- size-长度 width-宽度 color-颜色,col ...

最新文章

  1. 对于计算机文化的总结,计算机文化基础一级总结
  2. 全国计算机二级C 错题/知识点整理
  3. Sysinternals Suite
  4. Github视频教程-黄棒清-专题视频课程
  5. 单例模式几种实现方式和代码
  6. java身份证号码验证
  7. web大前端-------初识html
  8. 自动化邮件报告平台-邮件发送highchart图表
  9. 初识 GitHub · 简介篇
  10. 【产品】建立二八法则思维模式:精准定位
  11. MongoDB——文档操作(更新文档)
  12. c语言习题集-----收藏归纳版
  13. wfGo 围棋 单人打谱模式
  14. 又拍云张聪:OpenResty 动态流控的几种姿势
  15. CSS精灵图和字体图标
  16. kafka-manager 的下载及安装
  17. Python 语感训练100题(参考答案)
  18. dom4j-1.6.1.jar和jaxen-1.2.0-atlassian-2.jar下载
  19. uxtheme.h内容
  20. 删除oem、恢复分区

热门文章

  1. 2020年个人总结和分享(华为云-云享专家、CSDN博客专家 成长记录)
  2. 2022CUST程序设计天梯赛校赛L1题解
  3. 碰到困难,心情有点沉重
  4. 一个会烤吐司的AI,小扎用后表示非常不错!
  5. 用 Vite 创建Vue3项目和相关开发工具配置
  6. mysql一主多从的配置gtid主从配置
  7. 精通微服务开发?来聊聊这些问题
  8. 【第35题】JAVA高级技术-对象克隆4(序列化与对象克隆)
  9. 让学习成为一种生活方式
  10. Nutch 分词 中文分词 paoding 疱丁