Shader 反射光(reflection)
来源:互联网 发布:电商大数据分析 编辑:程序博客网 时间:2024/06/06 15:43
Unity中的shader使用反射光,相当于我们初中物理的反射光,入射光,发现,发射光的知识,实际上就是模拟现实中的光照。
但是Unity中的反射光向量Unity自己计算好的,不需要我们来计算,然后下文看书中的Cubemap有很多人觉得复杂,也有人问过我怎么创建,我这里先简单介绍下:
1.Cubemap
Cubemap:立体空间贴图(这是个人翻译的理解),实际上它属于贴图类型,只不过他是由六个方向的贴图连接成,下面直接看官网的解释:
cubemap是六张方形贴图的集合。
他支持的6张图的排布方式如下:
具体的大家可以去官网看下。
2.反射光
unity计算好反射向量后,我们搞起来还是比较容易的:
反射向量直接在worldRefl中获取,自发管设置为cubemap和参数的乘积,具体看下面的脚本:
Shader "MyShaders/SimpleReflection"{Properties{_MainTint("Diffuse Tint", Color) = (1,1,1,1)_MainTex("Base (RGB)", 2D) = "white" {}_Cubemap("CubeMap", CUBE) = ""{}_ReflAmount("Reflection Amount", Range(0.01, 1)) = 0.5}SubShader{Tags{ "RenderType" = "Opaque" }LOD 200CGPROGRAM#pragma surface surf Lambertsampler2D _MainTex;samplerCUBE _Cubemap;float4 _MainTint;float _ReflAmount;struct Input{float2 uv_MainTex;float3 worldRefl;};void surf(Input IN, inout SurfaceOutput o){half4 c = tex2D(_MainTex, IN.uv_MainTex) * _MainTint;o.Emission = texCUBE(_Cubemap, IN.worldRefl).rgb * _ReflAmount;o.Albedo = c.rgb;o.Alpha = c.a;}ENDCG}FallBack "Diffuse"}
3.效果
设置既效果如图:当Amnount只接近于0时,就是几乎没有反射光:
下面展示了不同值对应的效果:
以上就是简单的反射光,有什么建议的互相交流哈!
本文中所需要的Cubemap下载:下载
0 0
- Shader 反射光(reflection)
- Pipeline System - Shader Reflection
- Unity Shader------遮罩反射(Masking Reflection)
- Shader第八讲 Reflection Mapping
- Cg shader with reflection map
- shader镜面反射(Reflection)
- 反射(reflection和reflection.emit)
- 计算反射光向量
- 计算反射光向量
- OpenGL 镜面反射光
- 反射(Reflection)
- 反射(Reflection)机制
- Java反射(Reflection)
- 反射(Reflection)
- 反射(Reflection)
- 反射(Reflection)
- 反射(Reflection)
- 漫反射(diffuse reflection)
- iOS中 UITableViewRowAction tableViewcell编辑状态下的功能 UI技术分享
- 动态数组、递归调用
- 使用终端上传代码到github
- Js对象引用学习总结
- iOS的C/C++笔试题集锦
- Shader 反射光(reflection)
- android-org.jdom2.input.JDOMParseException: Error on line 1: At line 1, column 1971: not well-formed
- Could not find com.android.databinding:library:1.2.1. Required by: XXXXX:app:unspecified
- mac android studio中svn出现的SVN:E155036... You need to upgrade the working copy first
- 收藏地址
- 容斥原理
- CSS 基础(018_Opacity / Transparency)
- 如何学好图像处理——从小白到大神?
- 机器学习基本术语