遇到的问题

最常见的是打包到手机后效果与PC上不一致,具体情况比如:

光照贴图失效

雾失效

透明或者cutoff失效

以上首先需要检查的地方是Shader变体的编译设置

超级着色器编译成N个变体

如果需要多吧功能类似的shader, 比把透明,Cutoff和不透明等多个功能集合到一个Shader上,通常把这样的Shader称之为"超级着色器(uber shader)"

实际上这种集合是对shader代码的分支管理, 通过开关不同的宏代码实现功能的切换, 所以在Unity打包时,需要预编译所有可能出现的分支版本.

变体的数量可能非常恐怖, Unity blog有一篇详提到过变体的编译: Stripping scriptable shader variants

在Unity中设置shader变体编译

Shader Stripping

菜单位置: Edit - Graphic Setting - Shader Stripping

包括以下几个方面:

光照模式

雾模式

GPU Instance

预加载变体

变体预加载搜集

右下角的 "Save to asset" 按钮, 可以把自动搜集打开过场景的shader变体,存到一个文件中,然后通过这个变体搜集文件可以实现shader变体的预加载, 当然这个功能不够可靠, 做完要仔细检查

在变体搜集文件中修改预加载变体

选中存出来的Shader Variants Collection文件, 直接在Inspector面板中点击+ -号添加或删除:

Shader Stripping设置总结

按实际使用勾选,如果全勾选, 打包shader几个小时都编不完

如果选择Auto, 结果可能不受控制

自动搜集场景中的Shader Variants Collection不可靠, 要打包实测

原文:https://www.cnblogs.com/CloudLiu/p/10338642.html

shader变体是什么_Shader Variants 打包遇到的问题相关推荐

  1. Unity Shader variants (shader 变体)

    官方地址 https://docs.unity3d.com/cn/2022.2/Manual/SL-MultipleProgramVariants.html 教程可以看这里 https://www.j ...

  2. shader变体是什么_GitHub - 7732050/ShaderVariantCollector

    一种Shader变体收集和打包编译优化的思路 介绍 什么是变体 引用Unity官方文档的解释: ShaderVariant In Unity, many shaders internally have ...

  3. shader变体是什么_[Unity/shaderlab]关于着色器变体

    在Unity中可以通过#pragma multi_compile或者#pragma shader_feature指令来实现着色器多样化. 在运行时,相应的着色器变体是从材质的关键词中取得的(Mater ...

  4. Unity Shader 变体处理与预加载流程

    一.什么是Shader变体,它是怎么出现的 当我们写完一个shader以后,unity需要加载和编译,这个过程由着色器的构建管线来完成,它的输入是着色器,而它的输出就是今天的主角---着色器变体:每一 ...

  5. Unity Shader 学习笔记(5)Shader变体、Shader属性定义技巧、自定义材质面板

    写在之前 Shader变体.Shader属性定义技巧.自定义材质面板,这三个知识点任何一个单拿出来都是一套知识体系,不能一概而论,本文章目的在于将学习和实际工作中遇见的问题进行总结,类似于网络笔记之用 ...

  6. unity打包后运行出错_一种Shader变体收集和打包编译优化的思路

    这是侑虎科技第646篇文章,感谢作者卢建供稿.欢迎转发分享,未经作者授权请勿转载.如果您有任何独到的见解或者发现也欢迎联系我们,一起探讨.(QQ群:793972859) 作者主页:https://gi ...

  7. Shader山下(二十一)多重变体(Multiple Variants)

    2019独角兽企业重金招聘Python工程师标准>>> Shader山下(二十)编译指令(Compilation Directives)介绍了如何使用编译指令,本文就专文介绍一下多重 ...

  8. Unity Shader - Built-in管线下优化 multi_compile_fwdbase、multi_compile_fog 变体

    文章目录 变体过多的缺点 项目情况 #pragma multi_compile_fwdbase 和 multi_compile_fog 生存的变体(keyword) 生存的变体 变体的数量 查看编译生 ...

  9. Shader Variants 打包遇到的问题

    1. 遇到的问题 最常见的是打包到手机后效果与PC上不一致,具体情况比如: 光照贴图失效 雾失效 透明或者cutoff失效 以上首先需要检查的地方是Shader变体的编译设置 2. 超级着色器编译成N ...

最新文章

  1. 验证RIP被动接口只收不发的正确性
  2. WPF richTextBox 滚动到某项
  3. nginx php 书籍,详细介绍Nginx下ThinkPHP5的配置方法
  4. 新自动化文档生成-go语言-docx生成
  5. 小米终于开始对外输出了!
  6. 如何最大程度地提高cin和cout的效率
  7. 商品详情页代码html,商品详情页food.vue
  8. 三星android o测试版,三星美版 Galaxy Note8 N950U 升级安卓8.0测试版固件和教程
  9. php切图工具,前端切图常见技巧
  10. android studio实现ar,在Android Studio上运行EasyAR
  11. C语言基础知识:地址与取地址符
  12. 网络能搜索计算机但不能连接不上,笔记本能搜到无线网络但连接不上怎么办
  13. 《R数据科学》学习笔记|Note2:使用ggplot2进行数据可视化(上)
  14. 第三课 排序算法LowB三人组
  15. linux下批量创建文件(空文件、带内容文件)、文件夹
  16. Java中 \n \f \r \t 含义
  17. 速览 NFT 期权赛道代表项目与发展前景
  18. word 公式编辑器 右对齐 + 自动编号
  19. linux 正点原子ov5640_【正点原子FPGA连载】第四十七章 基于OV5640的以太网传输视-摘自【正点原子】开拓者 FPGA 开发指南 (amobbs.com 阿莫电子论坛)...
  20. 2017春招实习总结

热门文章

  1. 第一个算法项目 | JS实现并查集迷宫算法Demo学习
  2. 国税增值税发票验证码自动识别
  3. 毕业设计(论文)撰写内容与格式要求
  4. Java基础知识面试题每日三道 追梦:第二天
  5. 【南京Meetup】华泰证券Elasticsearch在日志搜索、日志分析、链路管理系统方面的应用实践...
  6. HashMap为啥初始化大小是16
  7. 8 种主流数据迁移工具技术选型,yyds!
  8. 运行时间分析(时间复杂度分析 )
  9. HTTPS通信中的身份认证机制_网站劫持检测
  10. 犬只的放牧,猎捕,性情以及可训性的基因分析