void Move()

{

if(!isBorder)

transform.position += moveVec * Speed * (wDown ? 0.1f : 1f) * Time.deltaTime;


void StopToWall

{

Debug.DrawRay(transform.position, transform.forward * 5, Color.green);

isBorder = Physics.Raycast(transform.postiion, transform.forward, 5, LayerMask.GetMask("Wall"));

}

}


void FixedUpdate()

{

StopToWall();

}



๊ฒ€์ƒ‰ํ•˜๋ฉด ๋‚˜์˜ค๋Š” ๋ ˆ์ด์บ์ŠคํŠธ๋กœ ๋ฒฝ ๋šซ๊ธฐ ๋ฐฉ์ง€ํ•˜๋Š” ๋ฐฉ๋ฒ•์ธ๋ฐ

์ด ๋ฐฉ๋ฒ•์„ ์“ฐ๋ฉด ๋ฆฌ์ง€๋“œ๋ฐ”๋””๊ณ  ๋ญ๊ณ  ๊ทธ๋ƒฅ ๋ฒฝ ๋šซ๊ณ  ์ง€๋‚˜๊ฐ€๊ธฐ ์‹œ์ž‘ํ•จ


๋ ˆ์ด์บ์ŠคํŠธ๊ฐ€ ์ž˜๋ชป๋˜์—ˆ๋‚˜? ์‹ถ์–ด์„œ void Move ๋ฐ‘์—

Debug.Log(isBorder); ๋„ ํ•ด๋ดค์Œ



๋ฒฝ ์•ž์—์„œ ์บ๋ฆญํ„ฐ๊ฐ€ "์›€์ง์ผ ๋•Œ" true๋กœ ๋ฐ”๋€Œ๊ณ 

๊ฐ€๋งŒํžˆ ๋ฉˆ์ถ”๋Š” ์ˆœ๊ฐ„ false๋กœ ๋ฐ”๋€Œ๊ณ , ํ•œ ํ”„๋ ˆ์ž„ ์›€์ง์ด๋Š” ์ˆœ๊ฐ„ ๋‹ค์‹œ true ๋กœ ๋ฐ”๋€œ


๊ฒฐ๊ตญ ์†๋„๊ฐ€ ๋А๋ ค์ง€๊ธด ํ•˜์ง€๋งŒ, ๋ฒฝ์„ ๋šซ๊ธฐ๋Š” ๋šซ์Œ...

์ด๊ฑธ ๋ฌดํ•œ๋ฐ˜๋ณตํ•ด์„œ ๊ฑ ์บ๋ฆญํ„ฐ๊ฐ€ ๋ฒฝ ๋šซ๊ณ  ์ง€๋‚˜๊ฐ€๋Š”๋ฐ, ์ด๊ฑฐ ์–ด์ผ€ ๊ณ ์นจ...?