public override void IssueDrawCall_BackStencil(LightWithStencilShadow light, CommandBuffer commands)
        {
            var renderer = GetComponent <Renderer>();
            int n        = m_stencil_materials.Length;

            for (int i = 0; i < n; ++i)
            {
                commands.DrawRenderer(renderer, m_stencil_materials[i], i, 1);
            }
        }
        void EnableKeywords(LightWithStencilShadow light)
        {
            switch (light.m_type)
            {
            case LightWithStencilShadow.Type.Point:
                m_stencil_materials[0].EnableKeyword("PROJECTION_POINT");
                break;

            case LightWithStencilShadow.Type.Line:
                m_stencil_materials[0].EnableKeyword("PROJECTION_LINE");
                break;
            }

            if (light.m_inverse)
            {
                m_stencil_materials[0].EnableKeyword("ENABLE_INVERSE");
            }
            else
            {
                m_stencil_materials[0].DisableKeyword("ENABLE_INVERSE");
            }
        }
 public abstract void IssueDrawCall_BackStencil(LightWithStencilShadow light, CommandBuffer commands);