Unity의 Button 컴포넌트에 클릭 이벤트를 추가해서 버튼을 눌렀을 때 색을 변경하는 방식입니다.
csharp
코드 복사
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
public class ButtonEffect : MonoBehaviour
{
private Button button;
private Image buttonImage;
private Color originalColor;
private Color transparentColor;
void Start()
{
button = GetComponent<Button>();
buttonImage = GetComponent<Image>();
if (buttonImage != null)
{
originalColor = buttonImage.color;
transparentColor = new Color(originalColor.r, originalColor.g, originalColor.b, 0.5f); // 반투명 색
}
// 버튼 클릭 이벤트에 리스너 추가
if (button != null)
{
button.onClick.AddListener(() => StartCoroutine(HandleTransparency()));
}
}
private IEnumerator HandleTransparency()
{
if (buttonImage != null)
{
buttonImage.color = transparentColor; // 색을 반투명으로 변경
yield return new WaitForSeconds(0.5f); // 0.5초 대기
buttonImage.color = originalColor; // 원래 색으로 복구
}
}
}