<Shader>一个简单的边缘发光的例子
来源:互联网 发布:qq绿标安全域名生成 编辑:程序博客网 时间:2024/06/04 19:10
Shader "Custom/SurfaceRimShaderNew"{Properties{//主颜色 _MainColor("_MainColor ",color) = (1,1,1,1)_MainTex("_MainTex",rect) = "white"{}_BumpMap("_BumpMap",2d) = "white"{}_RimColor("_RimColor",color) = (1,1,1,1)_RimPower("_RimPower",range(0.6,36.0)) = 8.0_RimIntensity("_RimIntensity",range(1.0,100)) = 10}SubShader{Tags{"RenderType" = "Opaque"}CGPROGRAM//定义兰伯特光照模式#pragma surface surf Lambert//定义输入的结构struct Input{//纹理贴图float2 uv_MainTex;//法线贴图float2 uv_BumpMap;//观察方向float3 viewDir;};//物体的主要颜色float4 _MainColor;//主纹理sampler2D _MainTex;//凹凸纹理sampler2D _BumpMap;//边缘颜色float4 _RimColor;//边缘颜色的强度float _RimPower;float _RimIntensity;//表面的着色气编写void surf(Input IN,inout SurfaceOutput o){//表面反射颜色为纹理的颜色 tex2D 纹理融合的o.Albedo = tex2D(_MainTex,IN.uv_MainTex).rgb * _MainColor.rgb;//表面发现为凹凸纹理的颜色o.Normal = UnpackNormal(tex2D(_BumpMap,IN.uv_BumpMap));half rim = 1.0 - saturate( dot( normalize(IN.viewDir),o.Normal ) );//计算出边缘颜色的强度o.Emission = _RimColor.rgb * pow(rim,_RimPower) * _RimIntensity;}ENDCG}}
阅读全文
0 0
- <Shader>一个简单的边缘发光的例子
- <shader>一个简单的边缘发光的例子(vf 语法)
- 【Shader】边缘发光效果的两种写法
- Unity ShaderLab(二) 支持透明的边缘发光Shader
- 【Unity Shader编程】之十四 边缘发光Shader(Rim Shader)的两种实现形态
- Shader编程】之十四 边缘发光Shader(Rim Shader)的两种实现形态
- 边缘发光shader
- unity shader-边缘发光
- 一个简单的GLSL Shader例子
- 一个简单的GLSL Shader例子【转】
- 一个简单的GLSL Shader例子
- HighlightingSystem(边缘发光插件)的简单使用(一)
- 两种外发光shader的比较
- 边缘发光效果的两种写法
- 边缘发光的表面着色器
- Shader山下(十三)边缘发光
- Shader实例:边缘发光和描边
- 边缘检测的简单例子(MATLAB)
- 使用gradle构建java项目
- SQLite 3的中文读写
- Activity工作流(2)-入门安装运行第一个例子
- linux GPU
- 《Unix网络编程》学习笔记 1 (TCP UDP 简单认识 摘抄)
- <Shader>一个简单的边缘发光的例子
- C++封装POSIX 线程库(五)实现CountDownLatch
- Android Matrix 的理解与应用
- curl 实现发送Get和Post请求(PHP)
- 5.18特长生模拟题 Biotech
- Ubuntu+eclipse,进行Hadoop集群操作实例(数据去重+数据排序)
- Intellij IDEA使用Maven搭建spark开发环境(scala)
- 索引与优化like查询
- android的存储GreenDao数据库