摘要:
【built-in SpecularType of Unity】1、声明变量。 注意并没有在Shader中声明_SpecColor,因为Lighting.cginc中已经帮我们声明。2、声明使用BlinnPhong光照模型。 3、最后将_SpecPower和Gloss给赋值。 Sp... 阅读全文
摘要:
【Creating Procedural Textures】 由程序主生贴图,然后设置给Material。首先定义需要的数据: 在Start方法中完成初始化,注意设置的是_MainTex。 实现GenerateParabola方法,算的是到中点的距离除以半径的百分比: 【How it... 阅读全文
摘要:
【NormalMapping】 法线贴图内的数据是法线,高度贴图内的数据是高度,不是一个东西。在ShaderLab中,UnpackNormal()分析的是法线贴图(注意不是高度贴图)。 可以看到,在GLES环境下及Mobile环境下,normal中存储的只是0-1的值。而UnpackNorm... 阅读全文
摘要:
【使用BlendingTexture实现简单的Terrain】 BlendingTexture,就是一张纹理,纹理内存储的数据用于其它去处的Alpha通道value。例如以下四张图需要混合在Terrain表面: 我们可以将四张alpha灰度图组织成一张RGBA图: 为了完成混合纹理功能... 阅读全文
摘要:
【UV-Sprite动画】 下文以单行Sprite纹理作为动画贴图。首先需要输入纹理宽度、Sprint数量、速度: 计算每个Sprite的像素宽与UV宽: 根据_Time,计算当前显示第几个Sprite: 最后,就是根据上述信息修改原有UV了。 UV-Sprite动画把计算完全... 阅读全文
摘要:
【UV动画】 UV-Animatinoallows you to create effects such as waterfalls, rivers, lava flows, and so on. 首先,添加x、y速度属性。 还需要引用_MainTex的uv,如下: 使用内置的_... 阅读全文
摘要:
【使用RampTexture实现BRDF效果】 BRDF stands for bidirectional reflectance distribution function. While that is a mouthful, it simply means the way in which l... 阅读全文
摘要:
【RampTexture】 RampTexture(渐变纹理),可以是1D/2D纹理. This allows you to accentuate the surface's colors to fake the effects of more bounce light or a more ad... 阅读全文
摘要:
【Half Lambert】 Half Lambert was a technique created by Valve as a way of getting the lighting to show the surface of an object in low-light areas. It 阅读全文