官方文档
官方文档2

关键字有(局部关键字)Local Shader Keyword 和(全局关键字)Global Shader Keyword。

1.Local Shader Keywords:
我们在Shader源文件中定义的都是Local Shader Keywords,只影响单个shader或compute shader,Local Shader Keywords有局部和全局作用域,这影响它们是否可被全局关键字重写。

2.Global Shader Keywords:
全局关键字由Unity维护,不能在shader源文件中定义,运行时通过C#重写局部关键字。

注:局部关键字能否全局关键字被重写分两种情况:
1.看指令后面有没_local,如下
#pragma shader_feature_local A 局部关键字A在局部作用域,不能被全局关键字重写

2.材质实例是否开启了局部关键字,如果开启了是不能被重写的。
#pragma shader_feature CLIPPING //局部关键字CLIPPING在全局作用域
如上,如果一个材质开启了CLIPPING,那么全局关键字就不能重写这个材质的CLIPPING了,其他没有开启,全局关键字可以重写这个关键字。

这一点和预制体、配置文件一样,预制体中的值是全局的,如果单个预制体实例修改了值(比如缩放值),预制体就不能控制这个实例的缩放了。

Unity Keyword相关推荐

  1. Unity SRP Batcher 合批 BUG?- SRP: Node use different shader keyword

    文章目录 环境 问题 论坛发现同问 发问者解答 环境 Unity : 2019.4.30f1 URP : 7.7.1 问题 合批失败的原因显示:SRP: Node use different shad ...

  2. Unity 报错之 Scope was not disposed, You should use the ‘using‘ keyword or manually call Dispose.

    Unity 报错之 Scope was not disposed! You should use the 'using' keyword or manually call Dispose. 发生错误 ...

  3. Unity学习笔记2 简易2D横版RPG游戏制作(二)

    十二.敌人受攻击时的闪烁和Player的生命值的修正 上一篇中,我们利用Controller2D中的IEnumerator TakenDamage接口,使得我们的Player受到攻击时会进行闪烁,我们 ...

  4. unity片元着色器中获取屏幕坐标_Unity踩坑笔记(持续更新)

    1.error CS0104: 'MinAttribute' is an ambiguous reference between 'UnityEngine.Rendering.PostProcessi ...

  5. assetbundle能不能删除_Unity3d爬坑篇(2)之Assetbundle、Shader和Keyword

    本系列基于:BDFramework .Unity3D 2018.4.0 BDFramework:Simple! Easy! Beautiful! This is a powerful Unity3d ...

  6. Unity SRP自定义渲染管线 -- 2.Custom Shaders

    本章将接着上一篇文章,在初步实现一个渲染管线后来创建自定义的shader.上一篇文章的链接 https://blog.csdn.net/yinfourever/article/details/9051 ...

  7. Unity游戏中的一些规范和优化建议

    一.代码规范和建议 避免Update LateUpdate等函数内频繁的GC Alloc,避免在Update和LateUpdate内有以下操作: 调用GetComponet() 调用FindObjec ...

  8. Unity 2017 Game Optimization 读书笔记 Dynamic Graphics (5) Shader优化

    Shader optimization Fill Rate和 Memory Bandwidth开销最大的地方就是Fragment Shader.开销多大取决于Fragment Shader的复杂程度: ...

  9. unity shader 变种(多重编译 multi_compile)

    一.定义 在unity中我们可以通过使用#pragma multi_compile或#pragma shader_feature指令来为shader创建多个稍微有点区别的shader变体.这个Shad ...

  10. unity shader 编辑器扩展类 ShaderGUI

    这应该unity5才出的新功能了,今天看文档时刚巧看到了,就来尝试了一下. 效果如图: shader 的编辑器扩展分为2种方法: 是通过UnityEditor下的ShaderGUI类来实现的,形式比较 ...

最新文章

  1. Python设计模式-备忘录模式
  2. c语言提取颜色,C语言颜色转换宏
  3. 洛谷P3694 邦邦的大合唱
  4. 关于SELECT 逻辑的执行顺序问题
  5. 基于MySQL和DynamoDB的强一致性分布式事务实践
  6. c#中Dictionary、ArrayList、Hashtable和数组 Array 的区别(转)
  7. ztree在刷新时第一个父节点消失_从反向传播推导到梯度消失and爆炸的原因及解决方案(从DNN到RNN,内附详细反向传播公式推导)...
  8. access和mysql4注入小技巧
  9. 涂鸦智能传感合作伙伴大会圆满落幕,打造安防传感新生态
  10. BGP 最佳路径选择之 -- Local Preference
  11. Linux源码下Makefile详解(参照Documentation\kbuild\makefiles.txt和资料)-转
  12. 物联网市场潜力巨大,中国移动加强布局
  13. keras: 用预训练的模型提取特征
  14. XP Embedded 蓝屏错误 Stop 0x0000007B
  15. pyqt5 关闭程序显示提示信息+最小化程序到托盘+隐藏任务栏图标
  16. 项目实战 |根据找到的variants的结果生成突变矩阵
  17. Ghost系统前的配置方法大全
  18. 开源聚合支付平台学习
  19. Java程序设计 多线程 基础知识题
  20. jQuery 实现贪吃蛇游戏

热门文章

  1. 智能开关如何实现双控
  2. 并查集+最小生成树(Kruskal)+最短路(Floyd、Dijkstra)
  3. love2d 1. 入门
  4. 平面设计师okr_还在头疼怎么写OKR,这可能是最全的落地指导手册了
  5. 计算机f盘的东西能删不,电脑清理文件不小心把F盘文件删除怎么办
  6. 【Scratch-声音模块】音调音效设置
  7. ORACLE Subtype
  8. xp系统打印机服务器报错,WinXP系统打印机显示Spoolsv.exe 应用程序错误的解决方法...
  9. [LeetCode 1360~1363][周赛]周赛177题解
  10. centos host在哪 local_centos怎么查看hostid