버튼에 이미지를 넣고 클릭을 하면 투명한 부분도 같이 버튼의 일부로 인식됩니다.
이렇게 하면 버튼의 영역이 항상 사각형이 되겠죠.
이 문제를 해결해보았습니다.
버튼을 클릭 시 Stage1 씬으로 넘어가는 기능을 구현해보겠습니다.
1. 버튼 추가
2. 버튼에 이미지 등록
3. 해당 이미지의 Inspector에서 Advanced의 Read/Write Enabled 체크
4. Script 생성 후 작성
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
public class Menu : MonoBehaviour
{
public string SceneToLoad;
public Button Stage1Button;
public void LoadGame()
{
SceneManager.LoadScene(SceneToLoad);
}
void Start()
{
Stage1Button.GetComponent<Image>().alphaHitTestMinimumThreshold = 0.5f;
}
}
alphaHitTestMinimumThreshold가 1이면 완전 불투명 한 픽셀만 인식함, 수치는 원하는대로 지정하기
https://docs.unity3d.com/ScriptReference/UI.Image-alphaHitTestMinimumThreshold.html 참고!
5. 이 Script를 EventSystem에 끌어넣고,
컴포넌트에서 SceneToLoad에는 넘어갈 Scene의 이름, Stage1Button에 해당 기능을 실행할 버튼 지정
6. 버튼의 OnClick()에 EventSystem을 지정하고 LoadGame() 함수 설정
반응형
'Study > Unity' 카테고리의 다른 글
04. 유니티(Unity) 안드로이드 빌드 (0) | 2018.12.25 |
---|---|
03. 유니티(Unity) 뒤로 버튼 두번누르면 종료 (0) | 2018.12.25 |
02. 유니티(Unity) 게임 타이틀화면 만들기 (4) | 2018.12.24 |
01.유니티(Unity) 설치 및 프로젝트 생성 (0) | 2018.12.24 |