关于Shader变体爆炸的一个优化方案
摘要:正常情况下,Shader的变体会导致Shader变体爆炸,文件很大。 比较常见的做法是,mat和shader在同一个地方打包,使得mat只使用这个版本的shader变体,不过这样每个shader变体是独立存在的,如果有多份mat引用了同一种变体版本,这个变体版本实际上会有多份(?这里只是猜测,待考证
阅读全文
Unity纹理和采样器分离
摘要:最近看《Unity3D内建着色器源码剖析》这本书的时候看见 UNITY_SAMPLE_TEX2D_SAMPLER 这个宏的时候,书中只是简单一提,没有进行深度的解释;自己百度了一下,原来纹理和采样器sampler是可以分离的,见这个https://wenku.baidu.com/view/617a5
阅读全文
下雨Shader,触摸擦除雨点,声控闪电
摘要:先丢一个演示视频:https://www.bilibili.com/video/BV1E5411R7az。 整体来说,是根据 https://b23.tv/ZapyRQy 这个教程学习的。Shader的雨点是纯数学运算的,目前没有特别理解其中的奥妙,只是觉得太牛了。源Shader来自于ShaderT
阅读全文
UNITY STANDARD ASSETS源码学习笔记(二)Sun Shafts
摘要:这个其实就是God Ray的一种实现,即提取图中亮度大的部分,做径向模糊,然后叠加在原图上。有一篇讲的很不错的God Ray的文章中有提到这个方法,其中的图很直观。https://blog.csdn.net/puppet_master/article/details/79859678。 用他这张图,
阅读全文
Unity Standard Assets源码学习笔记(一)SSAO
摘要:最近在学习SSAO,网上参考了一些资料,不过感觉还是Unity例子里面的写的更好一些,简单分享一下源码的学习心得。 先贴一下网上的两篇不错的资料:https://blog.csdn.net/puppet_master/article/details/82929708,https://www.bili
阅读全文
关于Unity 特效粒子的自动合批
摘要:最近发现运行时特效的drawcall有点高,测试了一下发现有些情况下不会自动合批。 最后的结论如下: 1. 如果特效在同一位置,(猜测应该是PRS都相同,不过没具体测试,当时只是复制粘贴出来几个)一定会自动合批。 2. 特效中相同材质的,应该是可以被自动合批的,但是如果是半透的情况下,如果渲染队列不
阅读全文
Games 202 全局光照相关学习笔记
摘要:引子:本文是“Games202-高质量实时渲染”中“Real-time Global Illumination”相关章节的学习笔记,仅供本人自己学习记录使用。 一、3D空间下的GI 1. Reflective Shadow Maps(RSM) 原理:处理完直接光照以后,在Shadow Map中被照亮
阅读全文