์ž„์˜๋กœ image๋งŒ ์ด์šฉํ•ด์„œ ๋ฉ”๋‰ด๋ฅผ ๋งŒ๋“ค๋‹ค ๋ณด๋‹ˆ ๋งˆ์šฐ์Šค ์ž…๋ ฅ์„ ๋„ฃ์–ด์•ผ ํ•˜๋Š” ์ƒํ™ฉ์ด ์™”์–ด. ๊ทผ๋ฐ ๋„ˆ๋ฌด ๋ณต์žกํ•ด ๋ณด์˜€์Œ. ๊ทผ๋ฐ ์ƒ๊ฐํ•ด๋ณด๋‹ˆ๊นŒ ์œ ๋‹ˆํ‹ฐ์—์„œ ๋”ฐ๋กœ ์ œ๊ณตํ•˜๋Š” ๋ฒ„ํŠผ์„ ์ด์šฉํ•˜๋ฉด ๋‚ด๊ฐ€ ์ž„์˜๋กœ ํ‰๋‚ด๋‚ธ ์ฝ”๋“œ๋ณด๋‹ค ๋” ๊น”๋”ํ•˜์ง€ ์•Š์„๊นŒ? ์ƒ๊ฐํ•จ.



7fed8275a8826ceb3eed98a518d60403e46d3ad3cd3671496e

^๋ฒ„ํŠผ์„ ํ‰๋‚ด๋‚ธ ๋ฌด์–ธ๊ฐ€. ๋ณด๋‹ค์‹œํ”ผ ๋ญ”๊ฐ€ ์ข€ ๋”๋Ÿฝ๋‹ค.



๊ทธ๋ž˜์„œ ์œ ๋‹ˆํ‹ฐ ๋ฒ„ํŠผ์ด ๊ธฐ๋ณธ์ ์œผ๋กœ ๋งˆ์šฐ์Šค ์กฐ์ž‘์— ๋Œ€ํ•ด์„  ๋ฏธ๋ฆฌ ๊ตฌํ˜„, ํ‚ค๋ณด๋“œ๋กœ ์กฐ์ž‘ํ•˜๋Š” ๋ฒ•์„ ์ฐพ๊ธฐ๋กœ ํ–ˆ์–ด.

์ฐพ์•„๋ณด๋‹ˆ ๋‚ด๋น„๊ฒŒ์ด์…˜์ด๋ผ๋Š” ๊ฒƒ์ด ์žˆ๋”๋ผ๊ตฌ? ๊ทผ๋ฐ ์ด๊ฒŒ ๋ฌธ์ œ์ ์ด, ์œ ๋‹ˆํ‹ฐ ๊ฒŒ์ž„์ด ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ๋ฏธ๋ฆฌ ํ‚ค๊ฐ’ Horizontal, Vertical์„ ์„ค์ •ํ•ด ๋‘ฌ์•ผ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ๋“ค์ด์˜€์–ด.

ํ•˜์ง€๋งŒ ๋‚œ ๊ฒŒ์ž„์„ ์‹œ์ž‘ํ•˜๊ณ  ํ‚ค๋ฅผ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๊ฒŒ Input.GetKey();๋ฅผ ์ด์šฉํ•ด์„œ ๋งŒ๋“  ์ƒํƒœ์˜€์Œ. ๊ทธ๋ฆฌ๊ณ  ๋‚œ ๊ทธ ํ‚ค๋กœ ๋ฉ”๋‰ด๋ฅผ ์กฐ์ž‘ํ•˜๊ณ  ์‹ถ์—ˆ์–ด.



๊ฒฐ๊ตญ ์ฐพ์•„๋ƒ„


EventSystem.current.SetSelectedGameObject(๋ฒ„ํŠผ.gameObject);

^๊ฒŒ์ž„์˜ค๋ธŒ์ ํŠธ๋ฅผ ์„ ํƒ(๋ฒ„ํŠผ์„ ํ•˜์ด๋ผ์ดํŠธ)ํ•œ๋‹ค. ์ž๋งคํ’ˆ์œผ๋กœ ๋ฒ„ํŠผ.Select()๊ฐ€ ์žˆ์Œ.


๋ฒ„ํŠผ.onClick.Invoke();

^์ฝ”๋“œ ์ƒ ์ž„์˜๋กœ onClick ์ด๋ฒคํŠธ ํ˜ธ์ถœํ•˜๋Š” ๋ฐฉ๋ฒ•


ExecuteEvents.Execute(๋ฒ„ํŠผ.gameObject, new PointerEventData(EventSystem.current), ExecuteEvents.pointerDownHandler);

ExecuteEvents.Execute(๋ฒ„ํŠผ.gameObject, new PointerEventData(EventSystem.current), ExecuteEvents.pointerUpHandler);

^๊ฐ๊ฐ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅธ ์ด๋ฒคํŠธ, ๋• ์ด๋ฒคํŠธ๋ฅผ ํ˜ธ์ถœํ•จ




๋ง‰์ƒ ์ฐพ๊ณ  ๋‚˜๋‹ˆ๊นŒ ์—ฌ๊ธฐ์— ์ด๊ฑฐ ์งˆ๋ฌธ๊ธ€ ์˜ฌ๋ฆฐ๊ฒŒ ์ƒ๊ฐ๋‚˜์„œ ๋ณด๋‹ˆ๊นŒ ๋ˆ„๊ฐ€ ๋‹ต๋ณ€ ํ•ด์คฌ๋”๋ผ๊ตฌ. ํ˜ผ์ž ๋„์›€! ์™ธ์น˜๊ณ  ์žฅ๊ตฌ์น˜๊ณ  ๋Œ์•„์˜ค๋‹ˆ๊นŒ ์ข€ ๋ˆˆ์น˜๋ณด์ด๋”๋ผ..

๋‹ต๋ณ€ํ•ด์ค˜์„œ ๊ณ ๋งˆ์›Œ! ์–ด๋–ป๊ฒŒ๋“  ํ•ด๊ฒฐํ–ˆ์–ด!