打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Unity Shader Attributes

一些常用 Shader 变量的Attribute设置

1.1 枚举, 使用系统自带的枚举

[Enum(UnityEngine.Rendering.BlendMode)] _Blend ("Blend mode", Float) = 1

1.2 枚举, Shader中设置的枚举并指定枚举值

[Enum(One,1,SrcAlpha,5)] _Blend2 ("Blend mode subset", Float) = 1

1.3 枚举, 控制宏关键字, 自动添加变量

[KeywordEnum(None, Add, Multiply)] _Overlay ("Overlay mode", Float) = 0

会自动生成变量_OVERLAY_NONE _OVERLAY_ADD _OVERLAY_MULTIPLY

#pragma multi_compile _OVERLAY_NONE _OVERLAY_ADD _OVERLAY_MULTIPLY

这个关键字需要在CGPROGRAM ... ENDCG 中定义

2.1. 普通开关

  [Toggle] _Invert("Invert color?", Float) = 0

2.2 关键字开关

[Toggle(ENABLE_FANCY)] _Fancy ("Fancy?", Float) = 0

需要手动添加 #pragma multi_compile _ ENABLE_FANCY

或 #pragma shader_feature ENABLE_FANCY

3.1 数值变量拖动条

_Blend("Blend", Range(0,1)) = 0.5 // 普通拖动条

[PowerSlider(3.0)] _Shininess ("Shininess", Range (0.01, 1)) = 0.08 // 二次方拖动条

4.1 一般扩展

// Default small amount of space.[Space] _Prop1 ("Prop1", Float) = 0

// Large amount of space.[Space(50)] _Prop2 ("Prop2", Float) = 0
[Header(A group of things)] _Prop1 ("Prop1", Float) = 0 // 提示信息
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【浅墨Unity3D Shader编程】之五 圣诞夜篇: Unity中Shader的三种形态对比&混合操作合辑
GLSL学习笔记 [转]
Unity3D Shader入门指南(二)
Unity着色器常用关键字及属性
Unity shader 官网文档全方位学习(一)
Unity3d游戏角色描边
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服