资源简介

unity中基于Projector和Rendertexture实现的实时阴影,包括shader和脚本

资源截图

代码片段和文件信息

using UnityEngine;
using System.Collections;

[ExecuteInEditMode]
public class BlurDemo : MonoBehaviour {

    public Material blurMat;
    public float offset;
    public int times = 3;
    public bool useBlur;

    private RenderTexture rt;

    void OnDisable()
    {
        if (rt != null)
        {
            DestroyImmediate(rt);
            rt = null;
        }
    }

    bool InitRT()
    {
        if (rt == null)
        {
            if (camera.targetTexture == null)
                return false;
        }
        else
            rt = new RenderTexture(camera.targetTexture.width camera.targetTexture.height 24);
        return true;
    }

// Update is called once per frame
void Update () {

}

    void OnRenderImage(RenderTexture src RenderTexture dst)
    {
        if (!InitRT()) return;
        if (blurMat == null)
            Graphics.Blit(src dst);
        else
        {
            if (!useBlur)
            {
                Graphics.Blit(src dst);
                return;
            }
            blurMat.SetFloat(“offset“ offset);
            RenderTexture rt = RenderTexture.GetTemporary(src.width / 4 src.height / 4 0);
            Graphics.Blit(src rt blurMat);
            for (int i = 0; i <= times; i++)
            {
                RenderTexture rt2 = RenderTexture.GetTemporary(src.width / 4 src.height / 4 0);
                Graphics.Blit(rt rt2 blurMat);
                RenderTexture.ReleaseTemporary(rt);
                rt = rt2;
            }
            Graphics.Blit(rt dst blurMat);
            RenderTexture.ReleaseTemporary(rt);
        }
    }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    I.A....     29084  2015-12-08 20:40  PJShadow\Assets\Example.unity

    ..A..H.        90  2015-12-07 20:38  PJShadow\Assets\Example.unity.meta

    I.A....      4216  2015-12-08 20:40  PJShadow\Assets\Materials\blur.mat

    ..A..H.        95  2015-12-07 22:06  PJShadow\Assets\Materials\blur.mat.meta

    I.A....      4300  2015-12-08 20:40  PJShadow\Assets\Materials\New Material.mat

    ..A..H.        95  2015-12-07 20:25  PJShadow\Assets\Materials\New Material.mat.meta

    ..A..H.       107  2015-12-07 20:25  PJShadow\Assets\Materials.meta

    I.A....      4228  2015-12-07 20:38  PJShadow\Assets\Models\Materials\New Material 1.mat

    ..A..H.        95  2015-12-07 20:05  PJShadow\Assets\Models\Materials\New Material 1.mat.meta

    I.A....      4228  2015-12-07 21:34  PJShadow\Assets\Models\Materials\New Material 2.mat

    ..A..H.        95  2015-12-07 21:34  PJShadow\Assets\Models\Materials\New Material 2.mat.meta

    I.A....      4224  2015-12-07 20:38  PJShadow\Assets\Models\Materials\New Material.mat

    ..A..H.        95  2015-12-07 20:04  PJShadow\Assets\Models\Materials\New Material.mat.meta

    I.A....      4312  2015-12-07 22:09  PJShadow\Assets\Models\Materials\object__0Mat.mat

    ..A..H.        95  2015-12-07 20:01  PJShadow\Assets\Models\Materials\object__0Mat.mat.meta

    I.A....      4312  2015-12-07 22:09  PJShadow\Assets\Models\Materials\____001Mat.mat

    ..A..H.        95  2015-12-07 20:01  PJShadow\Assets\Models\Materials\____001Mat.mat.meta

    ..A..H.       107  2015-12-07 20:01  PJShadow\Assets\Models\Materials.meta

     文件     158062  2015-10-11 15:56  PJShadow\Assets\Models\taikongren.obj

    ..A..H.      1684  2015-12-07 20:01  PJShadow\Assets\Models\taikongren.obj.meta

    ..A..H.       107  2015-12-07 19:59  PJShadow\Assets\Models.meta

     文件       1681  2015-12-08 20:07  PJShadow\Assets\scripts\BlurDemo.cs

    ..A..H.       178  2015-12-07 22:01  PJShadow\Assets\scripts\BlurDemo.cs.meta

     文件       3305  2015-12-08 20:11  PJShadow\Assets\scripts\PJShadow.cs

    ..A..H.       178  2015-12-07 20:09  PJShadow\Assets\scripts\PJShadow.cs.meta

    ..A..H.       107  2015-12-07 20:06  PJShadow\Assets\scripts.meta

     文件       1313  2015-07-02 17:15  PJShadow\Assets\Shaders\Blur_2.shader

    ..A..H.       111  2015-12-07 22:00  PJShadow\Assets\Shaders\Blur_2.shader.meta

     文件        456  2015-12-07 21:58  PJShadow\Assets\Shaders\diffuse.shader

    ..A..H.       111  2015-12-07 21:58  PJShadow\Assets\Shaders\diffuse.shader.meta

............此处省略452个文件信息

评论

共有 条评论