์ ๊ฐ ์ ๋์ ์ํํ๋ค ๊ทธ์ ๋์ ์ฌ๊ฑฐ๋ฆฌ์์ ์ ์ด ์์ผ๋ฉด ๋ฉ์ถ๊ฒ ํ๋ ค๊ณ ํ๋๋ฐ์
์ ์ ํ๋ช ๋ง๋ค์์๋๋ ๋ฌธ์ ๊ฐ์๋๋ฐ
์ ์ด 2๋ช
์ผ๋ก ๋๊ฐ์ ์ ๋ฅผ ํ๋ ๋ง๋ค์ด์ ์์๋์ผ๋ฉด
์ฒ์ ๋ง๋ค์๋ ์ ๋ง ์๋ณ์ ํ๋๋ผ๊ณ ์ย
์๋ง๋ ์ ์ playerController๋ผ๋ ์คํฌ๋ฆฝํธ๋ฅผ ์ค๊ฑฐ์์ ๊ฑฐ๋ฆฌ๋ฅผ ๊ฐ์ ธ์ค๋๋ฐ ๋ฌธ์ ๊ฐ ์๊ธด๊ฑฐ๊ฐ์๋ฐ ์ด๋ป๊ฒ ๊ณ ์น๋๊ฒ ์ข์๊น์??
์ข์ ์๊ฒฌ์์ผ๋ฉด ์๋ ค์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค!!
magician... ๊ทธ๋ฆฌ๊ณ ํ๋ ์ด์ด ์ปจํธ๋กค๋ฌ๋ ์ฑ๊ธํค์ธ๊ฐ์?
ํด๋นํด๋์ค๊ฐ ๋ชฌ์คํฐ์ ๋ถ์ด์๋๊ฑฐ? - dc App
๋ชฌ์คํฐ์ playerController๋ฅผ ๋ถ์ฌ๋จ์ด์
๋ฌด์จ ์ด์ ๋ก ๋ถ์ธ๊ฑฐ์ฃ .... ์ ํ ์์์ด ์๋๋๋ฐ
playercontroller.instance๋ ํ๋๋ฐ์ ์์ด์ ๊ทธ๋ด๋ฏ
์ ๊ฐ ์ ๋์ ์ํํ๋ค ๊ทธ์ ๋์ ์ฌ๊ฑฐ๋ฆฌ์์ ์ ์ด ์์ผ๋ฉด ๋ฉ์ถ๊ฒ ํ๋ ค๊ณ ํ๋๋ฐ์ ๊ฐ ๋ฌด์จ๋ง์ธ์ง ๋ชจ๋ฅด๊ฒ ์
๊ทธ๋๊น enemy๋ฅผ ์์ฑํ๋ค์ ์ฌ๊ฑฐ๋ฆฌ ๋ด์ player๊ฐ ๋ค์ด์ค๋ฉด enemy๊ฐ ๋ฉ์ถ๊ฒ ํ๋ค๋ ๋ง์?
๊ทธ๋๊น enemy๋ฅผ ์์ฑํ๋ค์ ์ฌ๊ฑฐ๋ฆฌ ๋ด์ player๊ฐ ๋ค์ด์ค๋ฉด enemy๊ฐ ๋ฉ์ถ๋จ๋ง์?
๋ค
์์ฒญ๋ค์์ enemy๊ฐ ์์ฑ๋๋ค์ ์ฌ๊ฑฐ๋ฆฌ์์ player๊ฐ ๋ค์ด์ค๋ฉด enemy๊ฐ ๋ฉ์ถ๋๋ก ํ๋ ค๊ณ ์
ํ๋ ์ด์ด์ปจํธ๋กค๋ฌ๊ฐ ์ฑ๊ธํค์ด๋ ์๋๋ฉด ๊ทธ๋ฅ ์คํํฑ์ผ๋ก ๋นผ๋ ผ๊ฑฐ๋
์ ์ด์ ์คํํฑ์ผ๋ก ๋นผ๋์ ์๊ฐ๋ถํฐ instance๋ ํ๋๋ผ์... ใ ใ ์ฑ๊ธํค์ด๋ ์๋๋ ์๊ด์์๋ฏ์
์ญํ์ด๋ฐ๋๊ฑฐ๊ฐ์๋ฐ Playercontroller์ ์บ๋ฆญํฐ์ ๋ถ์ด๊ณ ํด๋นํด๋์ค๋ฅผ ๋ชฌ์คํฐ๋ฅผ ๋ถ์ฌ์ผ ์๋ํ์ง ๋ชฌ์คํฐ๊ฐ 1๋ง๋ฆฌ๊ฐ ์๋๋ฉด instace์ ์๋ฏธ๊ฐ ์์ง
๊ทผ๋ฐ ์ ๊ฐ ์ด๊ฒ์ ์ ํํ ๋งํ๋ฉด ์นดํฐ์์ฆ ๋ชจ์ ์ฒ๋ผ ๋ง๋ค๋ ค๊ณ ํ๋๋ผ ์ด๋ ๊ฒ ํ๊ฑด๋ฐ ๊ทธ ์ ๋ง๋ฒ์ฌ๋ ์ฌ๋ฌ๋ช ๊ณ์ ์ํ๊ฐ๋ฅํ๊ณ ์๋ก ๋ฅ์ฝ๋์ ์์ฒ๋ผ ๋ง ์ํํด์ ์ธ์ฐ๋ ๊ฒ์์ ๋ง๋ค๊ณ ์ถ์ด์์
๊ทธ๋ผ ๋ชฌ์คํฐ ๋งค๋์ ๋ฅผ ๋ง๋ค์ด์ ๊ฑฐ๊ธฐ์ ๋ชฌ์คํฐ๋ฅผ ๋ฑ๋กํด๋๊ณ ํด๋น ํด๋์ค์ ๋ธ๋ฆฌ๊ฒ์ดํธ ๋ฃ์ด์ ๋น๊ตํ๋ฉด๋ ๋ฏ
์ค๋ช ์ด ๋ถ์คํ๋ค์. ๋ฌด์จ๋ง์ธ์ง ์๋ชจ๋ฅด๊ฒ ์ด์.
๋ธ๋ฆฌ๊ฒ์ดํธ๋ก ํด๋น ํด๋์ค์ ๋น๊ตํ๋๊ฑธ ๋ง๋ค์ด ์ฃผ๋์ง ๋ชฌ์คํฐ๋งค๋์ ๋ฅผ ๋ง๋ค์ด์ ๊ด๋ฆฌํด์ฃผ๋์ง ํ์ธ์
๋ธ๋ฆฌ๊ฒ์ดํธ๋ฅผ ์จ๋ ํ๋์ ํจ์๋ฅผ ์ฐธ์กฐํ๋๊ฒ์ด๋ผ์ ๊ฑฐ๋ฆฌ๊ฐ ์์๋ํ๋์?
์ผ๋จ ์ ์๊ฐ์ PlayerController๋ฅผ ํ๋ ์ด์ดํํ ๋ง ๋ถ์ด๋ฉด ๋ ๊ฑฐ ๊ฐ์๋ฐ์
๊ทธ๋ฌ๋ฉด ์ฐจ๋ผ๋ฆฌ PlayerController์ instance ๋ณ์๋ฅผ ์์ ๊ณ ์ค๋ฒ๋ฉ์ ํ๋๊ฐ ๋ ์ด์บ์คํธ๋ฅผ ํ๋๊ฐ ํธ๋ฆฌ๊ฑฐ ์ฝ๋ผ์ด๋๋ฅผ ์ฐ๋๊ฐ ํด์ ๋ค๋ฅธ ํ๋ ์ด์ด ์ปจํธ๋กค๋ฌ๋ฅผ ์ธ์ํ๋๊ฒ ์ข์ํ ๋ฐ์, ์ผ๋จ static์ ๋ํด์ ๋ ๊ณต๋ถํด๋ณด๋๊ฒ ์ข์ผ์ค๋ฏ
๊ทธ๋ฅ Ray๋ฅผ ์ด์ ์๋ณํ๋๋ก ํ๋ผ๋ ๋ง์์ด์์ฃ ?
๋ค 1์ฐจ์์ ์ธ ์์ง์์ด๋ฉด ๋ ์ด๊ฐ ๊ฐ์ฅ ์ข์๊ฑฐ ๊ฐ๋ค์
๋ญ๋ง ์ธ์ง ๋ชจ๋ฅด๊ฒ ์ผ๋ ๊ทธ๋ฅ ์ด๋ฐ ๊ฒ์์์ ๋๊ฐ ํ๋ ค๋๊ฑฐ ์ด๋ป๊ฒ ํ๋์ง ๊ฐ๋จํ ์ค๋ช ํด์ค
1. Enemy ์์ Ray๋ฅผ ์๋, Physic ํด๋์ค๋ฅผ ์ฌ์ฉํ๋ ์ถฉ๋ ์ฒดํฌํจ ๋ณดํต ์ด๋ฐ ํก์คํฌ๋กค 2D ๊ฒ์ ๋จ์ํ ์ ๋ฉด๋ง ๋ณด๋ฉด ๋๊ธฐ๋์ Physicํด๋์ค์ box์ฝ๋ผ์ด๋ ์ฐ๋ฉด ๋จ ์ถฉ๋ ๊ฐ์งํ Layer ์ค์ ํ๊ณ ใ ใ 2. ๊ทธ ๋ค์ ๋ฐํ๋ ์ฝ๋ผ์ด๋์์ ์ํ๋ ์ปดํฌ๋ํธ๋ฅผ GertCompounent๋ก ๋ฐํ๋ฐ๊ณ ์ํ๋ ์ฒ๋ฆฌ ํ๋ฉด ๋จ
์ฝ๋ ๊ฐ๋จํ ์ณ์ฃผ๋ฉด var colliders = Physics2D.OverlapBox(์์ฑ ์์น, ํฌ๊ธฐ, ๋ ์ด์ด); ์ด๋ฌ๋ฉด ์ํ๋ ์์น์ ์ํ๋ ํฌ๊ธฐ๋ก box์ฝ๋ผ์ด๋๊ฐ ์์ฑ๋๊ณ ์ถฉ๋์ฒดํฌ๋ ์ฝ๋ผ์ด๋๊ฐ ๋ฐํ๋จ ๊ทธ๋ผ ์ฌ๊ธฐ์ ๋ถํด ๋๊ฐ ์ํ๋ ์ปดํฌ๋ํธ ๊ฐ์ ธ์์ ์ํ๋ ์ฒ๋ฆฌํ๋ฉด ๋๊ฒ ์ง
์ด์ ๋๋ ๊ฐ์ ์์ ์ฐ๋ค - dc App