Example #1
0
    public void Init(PerformanceInfo.eREFLECTION_QUALITY quality, int reflectedLayerMask)
    {
        Setup();

        m_layerMask = reflectedLayerMask | (1 << LayerMask.NameToLayer(PlanarReflectionOnlyLayer));

        if (quality == Quality)
        {
            EB.Debug.Log("PlanarReflectionManager: No quality change {0}", Quality);
            return;
        }

        if (Quality != PerformanceInfo.eREFLECTION_QUALITY.Off)
        {
            //De-init if we weren't previously "off"
            EB.Debug.Log("PlanarReflectionManager: DeInit {0}", Quality);
            DeInit();
        }

        if ((quality != PerformanceInfo.eREFLECTION_QUALITY.Off) && (reflectedLayerMask != 0))
        {
            //init if we aren't off and have something to reflect
            EB.Debug.Log("PlanarReflectionManager: Init {0}", quality);
            InitQuality(quality);
            Quality = quality;
        }
        else
        {
            EB.Debug.Log("PlanarReflectionManager: Off");
            Quality = PerformanceInfo.eREFLECTION_QUALITY.Off;
        }
    }
Example #2
0
    private void InitQuality(PerformanceInfo.eREFLECTION_QUALITY quality)
    {
        m_renderTexture = new RenderTexture(m_ReflectionWidth[(int)quality], m_ReflectionHeight[(int)quality], 24);
        m_renderTexture.isPowerOfTwo = true;
        m_renderTexture.hideFlags    = HideFlags.HideAndDontSave;
        m_renderTexture.name         = "PlanarReflectionTexture";
        m_renderTexture.Create();

        m_ReflectionCamera.targetTexture = m_renderTexture;

        m_blurTexture1           = new RenderTexture(m_blurWidth[(int)quality], m_blurHeight[(int)quality], 0);
        m_blurTexture1.hideFlags = HideFlags.HideAndDontSave;
        m_blurTexture1.Create();

        m_blurTexture2           = new RenderTexture(m_blurWidth2[(int)quality], m_blurHeight2[(int)quality], 0);
        m_blurTexture2.hideFlags = HideFlags.HideAndDontSave;
        m_blurTexture2.Create();
    }