顶点高光.Shader
来源:互联网 发布:shopwwi源码 编辑:程序博客网 时间:2024/04/19 16:57
Shader "Custom/Light/SpecularLightVert"{ Properties{ _Diffuse("Diffuse", Color) = (1, 1, 1, 1) _Specular("Specular", Color) = (1, 1, 1, 1) _Gloss("Gloss", Range(8.0, 256)) = 20 } SubShader{ Pass{ Tags{ "LightMode" = "ForwardBase" } CGPROGRAM #include "Lighting.cginc" #pragma vertex vert #pragma fragment frag fixed4 _Diffuse; fixed4 _Specular; float _Gloss; struct a2v{ float4 pos : POSITION; float3 normal : NORMAL; }; struct v2f{ float4 pos : SV_POSITION; fixed3 color : COLOR; }; v2f vert(a2v v){ v2f o; o.pos = mul(UNITY_MATRIX_MVP, v.pos); fixed3 diffuse = UNITY_LIGHTMODEL_AMBIENT.xyz + _Diffuse.rgb * _LightColor0.rgb * max(0, dot(normalize(mul(_Object2World, v.normal)), normalize(_WorldSpaceLightPos0.xyz))); fixed3 worldNormal = normalize(mul(_Object2World, v.normal)); fixed3 worldLightDir = normalize(_WorldSpaceLightPos0.xyz); fixed3 viewDir = normalize(_WorldSpaceCameraPos.xyz - mul(_Object2World, v.pos).xyz); fixed3 reflectDir = normalize(reflect(-worldLightDir, worldNormal)); fixed3 specular = _LightColor0.xyz * _Specular.xyz * pow(saturate(dot(reflectDir, viewDir)), _Gloss);// fixed3 specular = _LightColor0.xyz * _Specular.xyz * pow(max(0, dot(normalize(_WorldSpaceCameraPos.xyz - mul(_Object2World, v.pos).xyz), reflect(-normalize(_WorldSpaceLightPos0.xyz), normalize(mul(_Object2World, v.normal))))), _Gloss); o.color = diffuse + specular; return o; } fixed4 frag(v2f i) : SV_Target{ return fixed4(i.color, 1.0); } ENDCG } } Fallback "Specular" }
0 0
- 顶点高光.Shader
- Shader例子(1) 高光效果(surf/顶点)
- 片段高光.Shader
- Shader自学笔记 2.2.1 逐顶点高光反射光照模型
- 高光反射-逐顶点光照
- unity shader中高光反射光照模型之顶点光照
- [Shader 着色器]边缘高光
- Ogre高光Shader入门(HLSL)
- Unity Shader Example 12 (Bloom 高光)
- shader中创建漫反射和高光
- Unity|ShaderLab笔记整理-四(逐顶点漫反射+环境光 +高光反射Phone)
- 一步步学shader系列(3):高光(specular light)
- Unity 法线贴图、高光贴图、Cube Map shader
- 【shader】边缘自定角度高光,描边,闪烁
- unity shader (6)--实现高光反射光照模型
- unity之shader学习笔记(四)--高光反射
- Shader实现漫反射、高光反射、纹理映射
- Unity Shader 学习笔记(7) 高光反射
- 模拟 蛇形矩阵
- 登录与密码
- C++之多态性与虚函数
- xampp Apache Access forbidden! Error 403 解决方法
- 数字证书https通信过程
- 顶点高光.Shader
- Mac 下安装node.js
- ipython linux下安装(Ubuntu 14.04LTS)
- Gradle下载的地址
- 详解强制类型转换
- 模拟 Cantor表
- 先在页面上删除,再在数据库中删除
- 使用NServiceBus开发分布式应用
- 使用maven命令将第三方jar包导入本地仓库