Example #1
0
    private void _InitShaderView(Materials.Row maCfg)
    {
        var tem = Instantiate(Tem_MaterialBtn, MaBtnRoot).GetComponent <MaterialBtn>();

        m_MaBtnLst.Add(tem);
        tem.Text_Name.text = maCfg.Name;
        tem.Btn.onClick.AddListener(() =>
        {
            _UpdateProView(maCfg);
        });
    }
Example #2
0
    private void _UpdateProView(Materials.Row maCfg)
    {
        #region Slider ่กจ็Žฐ
        var sliderlst = maCfg.SliderProperties;
        if (sliderlst.Count <= m_ProSliderLst.Count)
        {
            for (int i = m_ProSliderLst.Count - sliderlst.Count; i > 0; i--)
            {
                m_ProSliderLst[m_ProSliderLst.Count - i].gameObject.SetActive(false);
            }
        }
        else
        {
            for (int i = sliderlst.Count - m_ProSliderLst.Count; i > 0; i--)
            {
                m_ProSliderLst.Add(Instantiate(Tem_ProSlider, ProSliderRoot).GetComponent <MaterialProSlider>());
            }
        }

        for (int i = 0; i < sliderlst.Count; i++)
        {
            int j = i;
            m_ProSliderLst[i].gameObject.SetActive(true);
            m_ProSliderLst[i].Text_ProName.text        = sliderlst[i].name;
            m_ProSliderLst[i].Slider_ProValue.value    = m_ProLastValDic[maCfg.Name][sliderlst[i].name];
            m_ProSliderLst[i].Slider_ProValue.minValue = sliderlst[i].min;
            m_ProSliderLst[i].Slider_ProValue.maxValue = sliderlst[i].max;

            m_ProSliderLst[i].Slider_ProValue.onValueChanged.RemoveAllListeners();
            m_ProSliderLst[i].Slider_ProValue.onValueChanged.AddListener((val) =>
            {
                if (Mathf.Abs(val - m_ProLastValDic[maCfg.Name][sliderlst[j].name]) > 0.01)
                {
                    m_ProLastValDic[maCfg.Name][sliderlst[j].name] = val;
                    var materail = m_MaterialDic[maCfg.Name];
                    materail.SetFloat(sliderlst[j].name, val);
                    Pic.texture = PostEffectsCore.Instance.UpdateImage(RT, materail);
                }
            });
        }
        #endregion
    }