标签:
学习笔记适合新手,如有错误请指正。?号处也请各位指点下,谢谢。
在3D开发中,需要模拟很多现实中的效果,例如一颗钢珠会将周围的画面反射,在Unity中,可以通过设置材质的属性来实现
反射天空盒
新建一个场景》创建一个Sphere球体》新建材质并赋予球体
设置材质的两个参数即可反射天空盒》将材质的Metallic设置为1(也就是金属属性为最大)》将Smoothness设置为1,最平滑
反射天空盒及场景
仅仅反射天空盒是不够的,像赛车游戏中赛车的玻璃和车身,如果能反映周围的环境就会大大提高游戏的画面表现力,这一切都可以借助Reflection Probe反射探针来实现
创建场景》加入地形和树木》点击导航菜单栏》GameObject》Light》Reflection Probe创建反射探针
探针像摄像机一样的拍摄周围的画面,不同的是探针拍摄的是周围所有角度的画面,然后将画面存在一张Cube Map中
我们可以在场景里创建多个这样的反射探针,当物体需要反映场景时,取最近的数个反射探针,并将他们的Cube Map混合显示,立方体线框所示区域,为反射探针的作用区域,超过此区域的物体不能获取此探针
我们创建一个胶囊体》新建一个材质并赋予胶囊体,
将材质的Metallic设置为1
将Smoothness设置为1,
在将胶囊体Mesh Renderer组件的Reflection Probes属性设置为Blend Probes And Sky Box
Baked:根据标记为ReflectionProbeStatic的对象生成静态的CubeMap,烘焙只在Editor中进行,也就是动态物体不会被反射探针探测到
Custom:为各个反射探针手动生成Cube Map,在手动点击Inspenctor界面下ReflectionProbe的Bake按钮时,制动Cube Map的保存路径并保存,也可以在Cubemap栏指定其他Cubemap
Realtime:根据所有区域内静态及动态物体实时生成Cube Map,非常消耗效率
Size:区域内的物体能够接收探针的CubeMap,在Scene窗口中以黄色线框显示
Intensity:CubeMap应用于贴图的强度,默认值为1
Resolution:分辨率
HDR:是否开启HDR高动态范围模式
BoxProjection:盒子投影,当反映的是近似立方体的环境,开启盒子投影能得到正确的结果,效果(Shader model3.0以上才支持)
选中胶囊体,在Inspector界面中的Mesh Renderer栏下的Reflection Probes设置反射探针的混合类型
Off:不混合,仅仅反射天空盒
Simple:简单混合天空盒和最近的反射探针
Blend Probes:在附近的反射探针之间取插值,不包括天空盒,适用于室内物体
Blend Probes And Skybox:在附近的反射探针之间取插值并与天空盒混合,适用于室外对象,当位于探针区域内时取探针Cube Map,离开区域后切换到天空盒
标签:
原文地址:http://www.cnblogs.com/kubll/p/4939162.html