반응형
부득이하게 3D 환경에서 2D UI를 사용하지 않고, Sprite Renderer를 이용해 UI와 유사한 형태를 구현해야하는 상황이 생긴다.
이 때 클릭 이벤트를 구현하기 위해서는 2D Box Collider Component를 삽입해야한다.
Collider의 크기는 Renderer에 적용한 이미지 크기에 따라 유동적으로 조절하면 된다.
SMALL
이후에 다음과 같은 스크립트를 적용해 클릭 이벤트를 구현할 수 있다.
public class SpriteRendererClickDetector : MonoBehaviour
{
bool isOver = false;
void Update()
{
if(isOver && Input.GetMouseButtonDown(0))
{
//좌클릭 이벤트
}
if(isOver && Input.GetMouseButtonDown(1))
{
//우클릭 이벤트
}
}
void OnMouseOver()
{
isOver = true;
}
void OnMouseExit()
{
isOver = false;
}
}
혹은 OnMouseDown() 함수를 구현해 클릭이벤트를 작성해도 된다.
반응형
'개발 > Unity' 카테고리의 다른 글
Unity - InputField 입력 이벤트 구현하기 (0) | 2021.08.18 |
---|---|
Unity - 스크립트로 Shader Rendering Mode 변경하기 (0) | 2021.08.05 |
SkinnedMeshRenderer Collider Update (0) | 2021.07.23 |
Sprite Renderer Overlay Shader 구현 (0) | 2021.06.03 |
Unity 업데이트문에서 더블클릭 처리하기 (0) | 2021.05.30 |