Shader山下(二十四)相机深度纹理

本文介绍了Unity中相机如何生成深度和深度法线纹理,以及如何利用这些纹理实现屏幕后处理效果。通过设置Camera的depthTextureMode,可以获取DepthTextureMode.Depth和DepthTextureMode.DepthNormals。深度纹理的获取和转换、不支持阴影投射的对象不显示、以及法线的编码方式都在文中进行了讲解。
摘要由CSDN通过智能技术生成

相机可以生成深度和深度法线纹理,以及运动向量纹理(需要Unity5.4以上)。我们可以使用这些纹理来实现屏幕后处理效果。

当你需要某种纹理的时候,可以为Camera的depthTextureMode添加以下变量:

DepthTextureMode.Depth深度纹理

DepthTextureMode.DepthNormals一个包含深度和视图空间法线的纹理

例如:

using UnityEngine;
using System.Collections;

[RequireComponent(typeof(Camera))]
public class TestDepth : MonoBehaviour {

	private Material _mat;

	// Use this for initialization
	void Start () {
		Camera cam = GetComponent<Camera> ();
		cam.depthTextureMode |= DepthTextureMode.Depth;
		Shader shader = Shader.Find (
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值