public bool IsPointerOverUIObject(Vector2 touchPos)
ย ย {
ย ย ย ย PointerEventData eventDataCurrentPos
ย ย ย ย ย ย = new PointerEventData(EventSystem.current);
ย ย ย ย eventDataCurrentPos.position = touchPos;
ย ย ย ย List<RaycastResult> results = new List<RaycastResult>();
ย ย ย ย ย
ย ย ย ย EventSystem.current
ย ย ย ย ย ย .RaycastAll(eventDataCurrentPos, results);
ย ย ย ย return results.Count > 0;
ย ย }
ย if (Input.touchCount > 0)
ย ย ย ย ย ย ย ย {ย ย ย ย ย ย ย ย ย ย
ย ย ย ย ย ย ย ย ย ย ย ย if(!IsPointerOverUIObject(Input.GetTouch(0).rawPosition))
ย ย ย ย ย ย ย ย ย ย ย ย {
ย ๊ฒ์ ํฐ์น ์ ๋์ค๋ ์ฝ๋
ย ย ย ย ย ย ย ย ย ย }
}ย ย ย
์๋ ์ด๋๋ก ํ๋ฉด ์ ๋ํฐ ์๋ํฐ์์ ์ ๋์๊ฐ๋๋ฐ ๋ชจ๋ฐ์ผ๋ก ํฌํ ํ๋ฉด ๊ณ์ UIํฐ์น๋ง ๋์ด ์ ์ด๋ผ;; canvasgroup์ผ๋ก๋ ํด๋ณด๊ณ ๋ณ ใ ใน ํ๋๋ฐ ๋ชป๊ณ ์นจ
๋ชจ๋ฐ์ผ ํด๋ฆญํ๊ณ ๋ง์ฐ์ค ํด๋ฆญํ๊ณ ๋ค๋ฅด์ง ์๋
์๋๋๋ฐ? ์๋ณด์ด๋ ๋ญ๊ฐ๊ฐ raycast ๋ง๊ณ ์๊ฒ ์ง ์ ํํ ์ด๋คUI ๊ฐ ๋ค ๋จน๊ณ ์๋์ง๋ ์ด๋ฒคํธ์์คํ ์ชฝ์ ๋ค์ฌ๋ค ๋ด๋ผ
์ด๊ฑฐ UI raycasttarget ํด์ ๋์ด์์ผ๋ฉด raycast ์๋งํ๋๊ฑฐ ์๋๋?
๊ทธ๊ฑด ๋ง๋๋ฐ ๋์ผ๋ก ์๋ณด์ผ์ ์์ผ๋๊น ํฐ์นํ ์๊ฐ์ ์ด๋ฒคํธ ์์คํ ํฌ์ธํฐ์ชฝ์ ๋ญ๊ฐ ๋ค์ด์๋์ง ๋ณด๋ผ๊ณ ...
์ ใ ใ ใ ใ ๋ชจ๋ฐ์ผ๋ก ํ๋ฒ ๋ด์ผ๊ฒ ๋ค ์กฐ์ธ ๊ฐ์ฌ
๊ณ ๋ง๋ค ใ ใ ๋๋ถ์ ๊ณ ์นจ