Unity使用反射探头实现地面的镜面反射

时间:2021-09-19 06:30:09

最近在看之前的愤怒机器人demo,它的反射通过一个反射相机实现

我尝试在unity5里用反射探头做出镜面反射,但想要调的准确倒是比较难。。

Unity使用反射探头实现地面的镜面反射。。

后来朋友发我一份反射探头实现镜面反射的文章,解决了这个问题

地址:http://nn-hokuson.hatenablog.com/entry/2016/10/17/202135

首先设置探头参数,打开实时反射的参数设置如下:

(必须设置LayerMask,否则反射画面会被地面挡住)

Unity使用反射探头实现地面的镜面反射

脚本我稍作修改:

public ReflectionProbe probe;
public Transform mirrorPlaneTransform; void Update()
{
var diffY = mirrorPlaneTransform.position.y - Camera.main.transform.position.y; this.probe.transform.position = new Vector3(
Camera.main.transform.position.x,
mirrorPlaneTransform.position.y + diffY,
Camera.main.transform.position.z
);
}

最终实现效果如下:

Unity使用反射探头实现地面的镜面反射