public void Interact()
{
if (!characterController.isGrounded) return;

if (Physics.Raycast(transform.position + Vector3.up * 0.5f, transform.forward, out RaycastHit hit, 1f, interactiveLayer))
{
targetObj = hit.collider.GetComponent<Interactable>();
targetObj.Interact();
}
}


๋”ด๊ฑฐ ๋ณผ๊ฑฐ์—†๊ณ  if์•ˆ์—๊บผ๋งŒ ๋ณด๋ฉด๋จ

raycast๋กœ ์ฐพ์„ ๋ฌผ์ฒด์˜ Interactable ์ปดํฌํ„ดํŠธ๋ฅผ ๋“ค๊ณ ์™€์„œ, ๊ทธ ์•ˆ์— ๊ตฌํ˜„๋œ Interact๋ฉ”์†Œ๋“œ๋ฅผ ์‹คํ–‰ํ•œ๋‹ค. ์ธ๋ฐ

๋งŒ์•ฝ Interactable์ด ์—†์œผ๋ฉด ์—๋Ÿฌ๋‚˜์•ผ๋˜๋Š”๊ฑฐ์•„๋‹˜??

if(targetObj!=null) targetObj.Interact(); ์ด๋ ‡๊ฒŒ ๋ฐ”๊ฟ”์•ผ ์—๋Ÿฌ์•ˆ๋‚˜๋Š”๊ฑฐ ์•„๋‹˜??

์ด๊ฑฐ ์ด๋Œ€๋กœ ์“ฐ๋Š”๋ฐ Interactable์ด ์—†๋Š” ์˜ค๋ธŒ์ ํŠธ์•ž์—์„œ ์ด ๋ฉ”์†Œ๋“œ๋ฅผ ๋ถˆ๋Ÿฌ์™€๋„ ๊ทธ๋ƒฅ ์‹คํ–‰์•ˆ๋˜๊ณ  ์—๋Ÿฌ์•ˆ๋‚จ


์›๋ž˜ ๊ทธ๋Ÿฐ๊ฑฐ์ž„??