5.Lambert光照Diffuse Shader
http://blog.csdn.net/candycat1992/article/details/17355629 这篇文章写的很好,这里就直接上代码了
Shader "Study/5_LambertDiffuse" {Properties{_Color("Main Color", Color) = (1,1,1,1)_MainTex("Base (RGB)", 2D) = "white" {}_EmissiveColor("Emissive Color", Color) = (1,1,1,1)_AmbientColor("Ambient Color", Color) = (1,1,1,1)_MySliderValue("This is a Slider", Range(0,10)) = 2.5}SubShader{Tags{ "RenderType" = "Opaque" }LOD 200CGPROGRAM
#pragma surface surf Lambert MyLambertDiffusesampler2D _MainTex;fixed4 _Color;//We need to declare the properties variable type inside of the //CGPROGRAM so we can access its value from the properties block. float4 _EmissiveColor;float4 _AmbientColor;float _MySliderValue;struct Input{float2 uv_MainTex;};void surf(Input IN, inout SurfaceOutput o){//We can then use the properties values in our shader fixed4 c = tex2D(_MainTex, IN.uv_MainTex) * _Color;c = c * pow((_EmissiveColor + _AmbientColor), _MySliderValue);o.Albedo = c.rgb;o.Alpha = c.a;}inline float4 LightingMyLambertDiffuse(SurfaceOutput s, fixed3 lightDir, fixed atten){float difLight = max(0, dot(s.Normal, lightDir));float4 col;col.rgb = s.Albedo * _LightColor0.rgb * (difLight * atten * 2);col.a = s.Alpha;return col;}ENDCG}FallBack "Diffuse"
}
这个shader是包括了自发光和环境光效果的:
pow((_EmissiveColor + _AmbientColor), _MySliderValue);
工程链接:http://download.csdn.net/detail/yinfourever/9568070
5.Lambert光照Diffuse Shader相关推荐
- 6.Half Lambert光照Diffuse Shader
简单来说,Lambert定律认为,在平面某点漫反射光的光强与该反射点的法向量和入射光角度的余弦值成正比(即我们之前使用dot函数得到的结果).Half Lambert最初是由Valve(游戏半条命2使 ...
- Unity Shader-兰伯特光照模型与Diffuse Shader
简介 学了一段时间shader,然而一直在玩后处理,现在终于下定决心钻研一下真正的带光照的shader.从Diffuse到Specular.一个游戏的画面好坏,很大程度上取决于光照和贴图.现实世界中, ...
- 【Unity Shader】三、漫反射Diffuse Shader例子
学习目标: 漫反射Diffuse Shader,逐顶点计算和逐像素计算. 半兰伯特(HalfLambert)光照模型. 结合材质自身的色彩(Material Color)及环境光(Ambient). ...
- UnityShader(三)基础多光照+遮罩Shader
遮罩的原理很简单,就是用一张存储着遮罩信息的遮罩纹理来计算出片元的遮罩系数,在之前的高光反射上乘于这个系数,就能得到遮罩效果了. Shader "Custom/BaseLight&M ...
- 光照相关 shader
Lambert光照模型 物体的漫反射=环境色+kd*灯光强*max(0,dot(n,l)) 环境色=用一个常数来表示 kd=物体对光的反射系数 n,l分别是单位向量,n需要用UnityObjectTo ...
- 【Unity3D Shader编程】之七 静谧之秋篇: 表面着色器的写法(二)—— 自定义光照模式
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/42611531 作者:毛星云(浅墨) ...
- 【Unity3D Shader编程】之七 静谧之秋篇 表面着色器的写法 二 —— 自定义光照模式
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 本系列文 ...
- Unity3D Shader编程】之七 静谧之秋篇: 表面着色器的写法(二)—— 自定义光照模式
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/42611531 作者:毛星云(浅墨) ...
- 【浅墨Unity3D Shader编程】之七 静谧之秋篇: 表面着色器的写法(二)—— 自定义光照模式
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/42611531 作者:毛星云(浅墨) ...
最新文章
- 无线网***工具进攻方法及防范技巧
- android 创建虚拟内存,在 Android 的 /data 目录下添加虚拟内存
- Spring4.X系列之AOP基础篇
- Python format功能
- 广成 USBCAN-II Pro V502 linux下升级经验
- 谷歌紧急更新,Chrome 今年第二个零日漏洞曝光
- 缝衣间走出来的创始人,他的开源软件公司被 340 亿美元收购了
- 学习打卡-2018/08/13
- python 基础语法梳理(二)
- excel流程图分叉 合并_excel流程图怎么画
- java期末大作业:记事本
- 数据产品经理——数据指标
- SOAP Action介绍
- [BZOJ1921] [CTSC2010]珠宝商
- modelsim与debussy的联合仿真
- 范式的概念和应用(1.2.3.bc.4.5)
- php中文域名转码,中文域名的punycode编码与其python实现
- python爬虫爬取携程国际机票航班信息,返回json串
- 基因数据处理82之cs-bwamem处理SRR003161(参考基因组为GRCH38chr1)
- 良心安利电梯过道su模型素材网站
热门文章
- python打开excel进行编辑_使用Python进行Excel文件处理
- thinkphp+extjs +jquery CMS管理系统
- mysql fio测试_MySQL Hardware--FIO压测
- idea的pom变成橙色的xml文件
- 在PAT上提交Java代码
- 焊接标注lisp文件下载_压力容器中焊缝的标注与对接,绝对专业
- 数学--数论--四大定理之威尔逊定理
- springmvc + ajaxfileupload 实现异步上传文件(图片)
- ERROR: Can't get master address from ZooKeeper; znode data == null
- [机器学习] 面试常见问题+解析汇总