Files
BH3/Assets/Scripts/Assembly-CSharp/MoleMole/MaterialPropertyBlockFader.cs
2025-08-13 09:26:42 +08:00

33 lines
670 B
C#

using UnityEngine;
namespace MoleMole
{
public class MaterialPropertyBlockFader
{
private Renderer _renderer;
private MaterialPropertyBlock _mpb;
private string _propertyName;
private Color _originColor;
public MaterialPropertyBlockFader(Renderer renderer, string name)
{
_renderer = renderer;
_mpb = new MaterialPropertyBlock();
_propertyName = name;
_originColor = _renderer.sharedMaterial.GetColor(name);
}
public void LerpAlpha(float t)
{
Color originColor = _originColor;
originColor.a *= t;
_renderer.GetPropertyBlock(_mpb);
_mpb.SetColor(_propertyName, originColor);
_renderer.SetPropertyBlock(_mpb);
}
}
}