笔者使用的是 Unity 2018.2.0f2 + VS2017,建议读者使用与 Unity 2018 相近的版本,避免一些因为版本不一致而出现的问题. [Unity Shader](三) ------ 光照模型原理及漫反射和高光反射的实现 [Unity Shader](四) ------ 纹理之法线纹理.单张纹理及遮罩纹理的实现 [Unity Shader](五) ------ 透明效果之半透明效果的实现及原理 [Unity Shader](六) ------ 复杂的光照(上) [Unity…
10.1.1天空盒子 window - Lighting - skyMaterial 创建mat,shader选自带的6 side shader 确保相机选skybox 如果某个相机需要覆盖,添加skyBox组件. 10.1.3 反射 原理 1)求反射方向向量.(用refract函数,参数:入射向量.法线向量) 2)texCUBE采样.(方向不需要归一化) 10.1.4 折射 原理 1)求折射方向向量.(用refract函数,参数:入射向量.法线向量.折射率.) 2)texCUBE采样.(方向不…
笔者使用的是 Unity 2018.2.0f2 + VS2017,建议读者使用与 Unity 2018 相近的版本,避免一些因为版本不一致而出现的问题.    [Unity Shader](三) ------ 光照模型原理及漫反射和高光反射的实现    [Unity Shader](四) ------ 纹理之法线纹理.单张纹理及遮罩纹理的实现    [Unity Shader](五) ------ 透明效果之半透明效果的实现及原理    [Unity Shader](六) ------ 复杂的光…
我一直盼望着 Windows 新版本的发布.令人感兴趣的事情莫过于浏览 MSDN® 和 SDK 文档,查找一些可以利用和依赖的最新创新,然后让朋友和同事以及您的老板(如果幸运的话)大开眼界.Windows Vista™ 在这方面包含许多诱人的内容.自从听说该版本将三维/组合层集成到桌面以来,我就特别希望获得该版本.多年来我已编写了数不清的三维应用程序,但我发现令人烦恼的一件事是,虽然能够在三维应用程序中提供非常酷且令人赏心悦目的用户界面,但在非三维应用程序中却不能.有了 Windows Vist…
Unity3D ShaderLab压缩混合纹理贴图 纹理可以用于存储大量的数据,我们可以把多个图像打包存储在单一的RGBA纹理上,然后通过着色器代码提取这些元素, 我们就可以使用每个图片的RGBA通道的讯息作为一个独立的纹理. 这种使用场景特别是在地面的混合着色上有着很明显的优势,下面我们就来说说 怎么构建一个常用的四纹理混合着色器. 那么请县创建一个shader和材质球吧.下面我们直接开始: 1,修改Properties { //设置GUI; _MainTint(,,,) _ColorA(,,…
Unity3D ShaderLab 使用渐变纹理着色 在我们编写着色器的过程中,还可以通过渐变纹理来控制漫反射的光照颜色.这种做法同样在VALVE的军团要塞2中及其流行. 前期,请准备一个渐变色的图片.再把我们之前的Hlf Lambert的代码稍加修改. 1:Properties添加GUI上的图片纹理属性>_RampTex ("Ramp Texture", 2D) = "" 2:在SubShader中申明图片纹理>sampler2D _RampTex;…
我一直盼望着 Windows 新版本的发布.令人感兴趣的事情莫过于浏览 MSDN® 和 SDK 文档,查找一些可以利用和依赖的最新创新,然后让朋友和同事以及您的老板(如果幸运的话)大开眼界.Windows Vista™ 在这方面包含许多诱人的内容.自从听说该版本将三维/组合层集成到桌面以来,我就特别希望获得该版本.多年来我已编写了数不清的三维应用程序,但我发现令人烦恼的一件事是,虽然能够在三维应用程序中提供非常酷且令人赏心悦目的用户界面,但在非三维应用程序中却不能.有了 Windows Vist…
一个玻璃效果主要分为两个部分,一部分是折射效果的计算,另一部分则是反射.下面分类进行讨论: 折射: 1.利用Grass Pass对当前屏幕的渲染图像进行采样 2.得到法线贴图对折射的影响 3.对采集的屏幕图像进行关于法线方向上的扭曲和偏移,以模拟折射效果 反射: 主要利用环境贴图产生反射的残影,并和主贴图采样结果混合 得到反射和折射的结果后,以一个插值变量控制最终效果(类似于玻璃的透光率): 脚本如下: // Upgrade NOTE: replaced '_Object2World' with…
实现Vignette过场动画效果 postprocessing中有渐晕效果(Vignette),镜头可以由边缘往中间慢慢变黑: 但是我打包WebGL的时候提示我postprocessing,GPU不支持... so,用shaderlab实现了简单的效果,如果需要边缘模糊,就根据距离做透明度插值: 以下是效果展示: PostEffectsBase 提供公共方法,所有的postprocess后期效果都继承该类: Start方法中检查设备是否支持后期效果: CheckShaderAndCreateMa…
体验效果:http://hovertree.com/texiao/html5/25/ 效果图: 代码如下: <!DOCTYPE html> <html> <head lang="zh"> <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, width=device-width" /&g…