Files
TaiWan/Assets/Roaming/Scripts/Show/MaterialShow.cs
2025-10-31 15:20:38 +08:00

51 lines
1.1 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MaterialShow : BaseShow
{
/// <summary>
/// ÏÔʾµÄ²ÄÖÊ
/// </summary>
Material matShow;
Texture textureDefault;
void Start()
{
Renderer renderer = GetComponent<Renderer>();
if (renderer != null)
{
matShow = renderer.material;
// matShow = renderer.sharedMaterial;
textureDefault = matShow.mainTexture;
LoadImage();
}
}
private void OnDestroy()
{
DisposeImage();
}
/// <summary>
/// ¼ÓÔØÍ¼Æ¬
/// </summary>
public void LoadImage()
{
StartCoroutine(
ImageLoader<Material>.LoadImage(CommonData.HighImageFullPath + info.ImageName, matShow)
);
}
public void DisposeImage()
{
matShow.mainTexture = textureDefault;
if (matShow.IsKeywordEnabled("_EMISSION"))
{
matShow.SetTexture("_EmissionMap", textureDefault);
}
ImageLoader<Material>.RemoveImage(CommonData.HighImageFullPath + info.ImageName);
}
}