示例#1
0
    private static void Render4TapQuad(RenderTexture dest, float offsetX, float offsetY)
    {
        GL.Begin(7);
        Vector2 vector = Vector2.get_zero();

        if (dest != null)
        {
            vector = dest.GetTexelOffset() * 0.75f;
        }
        FunkyGlowingThingsEffect.Set4TexCoords(vector.x, vector.y, offsetX, offsetY);
        GL.Vertex3((float)0, (float)0, 0.1f);
        FunkyGlowingThingsEffect.Set4TexCoords(1f + vector.x, vector.y, offsetX, offsetY);
        GL.Vertex3((float)1, (float)0, 0.1f);
        FunkyGlowingThingsEffect.Set4TexCoords(1f + vector.x, 1f + vector.y, offsetX, offsetY);
        GL.Vertex3((float)1, (float)1, 0.1f);
        FunkyGlowingThingsEffect.Set4TexCoords(vector.x, 1f + vector.y, offsetX, offsetY);
        GL.Vertex3((float)0, (float)1, 0.1f);
        GL.End();
    }
示例#2
0
    private void DownSample4x(RenderTexture source, RenderTexture dest)
    {
        RenderTexture.set_active(dest);
        source.SetGlobalShaderProperty("__RenderTex");
        float offsetX = 1f / (float)source.get_width();
        float offsetY = 1f / (float)source.get_height();

        GL.PushMatrix();
        GL.LoadOrtho();
        Material material = this.GetMaterial();

        checked
        {
            for (int i = 0; i < material.get_passCount(); i++)
            {
                material.SetPass(i);
                FunkyGlowingThingsEffect.Render4TapQuad(dest, offsetX, offsetY);
            }
            GL.PopMatrix();
        }
    }
示例#3
0
    private void FourTapCone(RenderTexture source, RenderTexture dest, int iteration)
    {
        RenderTexture.set_active(dest);
        source.SetGlobalShaderProperty("__RenderTex");
        float offsetX = (0.5f + (float)iteration * this.blurSpread) / (float)source.get_width();
        float offsetY = (0.5f + (float)iteration * this.blurSpread) / (float)source.get_height();

        GL.PushMatrix();
        GL.LoadOrtho();
        Material material = this.GetMaterial();

        checked
        {
            for (int i = 0; i < material.get_passCount(); i++)
            {
                material.SetPass(i);
                FunkyGlowingThingsEffect.Render4TapQuad(dest, offsetX, offsetY);
            }
            GL.PopMatrix();
        }
    }