1234567891011121314151617181920212223242526272829303132333435363738 |
- using CommonUI_Unity3D.Impl;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using UnityEngine;
- using UnityEngine.EventSystems;
- using UnityEngine.UI;
- namespace CommonUnity3D.UGUI
- {
- [DisallowMultipleComponent, ExecuteInEditMode, RequireComponent(typeof(CanvasRenderer)), RequireComponent(typeof(RectTransform))]
- public class GrayMaterialModifier : UIBehaviour, IMaterialModifier
- {
- protected Material gray_mat;
- public virtual Material GetModifiedMaterial(Material baseMaterial)
- {
- if (gray_mat == null)
- {
- gray_mat = new Material(baseMaterial);
- gray_mat.SetFloat("_Gray", 1);
- gray_mat.SetPass(0);
- }
- return gray_mat;
- }
- protected override void OnDestroy()
- {
- if (gray_mat != null)
- {
- Material.Destroy(gray_mat);
- }
- base.OnDestroy();
- }
- }
-
- }
|