相机可以生成深度和深度法线纹理,以及运动向量纹理(需要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 (