๊ทธ๋ฅ ์ด๋ฐ 2D๊ฒ์
๋จ์ผ๊ณต๊ฒฉ์ ๊ตฌํํ๋ ค๊ณ ํ๋๋ฐ
ํ๊ฒ์ ์ ์ ๊ณต๊ฒฉ ๋ฒ์ ๋ด์์ ๊ฐ์ฅ ๊ฐ๊น์ด ์ ํ๋ง๋ฆฌ๋ฅผ ๋๋ฆฌ๋๊ฑฐ์
๋ ์ด์บ์คํธ๋ก ๊ณต๊ฒฉ์ํํ ์ ๋ ์ด๋ฅผ ์ด์ ๊ฐ์ฅ ๋จผ์ ๋ง๋ ํ๋ง๋ฆฌ๋ฅผ ๋์์ผ๋ก ์ผ๋ ์์ผ๋ก ๊ตฌํํ๋ ค๊ณ ํ๊ฑฐ๋
์ด ์คํฌ๋ฆฝํธ๊ฐ ๋ค์ด์๋ gameObject๋ ๊ณต๊ฒฉ๋ฒ์๋ฅผ ๋ํ๋ด๋ ์ค๋ธ์ ํธ๊ณ
๊ณต๊ฒฉ์ ์ ๋ ๋ณธ์ฒด ์ค๋ธ์ ํธ์ ์์์ผ๋ก ๋ค์ด๊ฐ์์ด
hit = ๋ ์ด์บ์คํธ(์๋์์น: ๊ณต๊ฒฉ์์ ์์น, ์๋๋ฐฉํฅ: ๊ณต๊ฒฉ์์ ์ด๋๋ฐฉํฅ, ๋ ์ด์ฌ๊ฑฐ๋ฆฌ: ๊ณต๊ฒฉ๋ฒ์ ๋ฐ์ค์ฝ๋ผ์ด๋์ ๊ฐ๋ก๊ธธ์ด, ๋ ์ด์ด๋ง์คํฌ: ์ ๋ ์ด์ด๋ง ๋ง์ถ๊ฒ)
๊ทผ๋ฐ if(hit) ์์ฒด๊ฐ ๋ฐ๋์ด ์๋๋๊ฑฐ๊ฐ๋ค
๋์ฒด ๋จธ๊ฐ ๋ฌธ์ ์ง
์ ๋ ์ ๊ฒ์์ raycast๋ฅผ ์ฐ๋ค๊ฐ ์๊ฒ ๋ ์ฌ์ค์ธ๋ฐ์ฉ! raycast๋ 2d๋ผ๊ณ ํด์ z๊ฐ์ ์์ ์ ์ฐ๋๊ฒ ์๋๋๋ผ๊ตฌ์! ํ๋ฒ ๊ทธ ๋ถ๋ถ๋ ์ดํด๋ณด์๋๊ฒ ์ข์ ๊ฑฐ ๊ฐ์์ :)
Physics2D์ Raycast๊ฐ z์ถ๋ ์ด๋ค๋ ๊ฑฐ์์?
๋ต! ์ ๋ ์ ์ ์ด๊ฒ ์ ์๋ผ์ง ์ด๋ฌ๋ค๊ฐ z์ถ๋๋ฌธ์ ray ๋ฐฉํฅ์ด ์ด๊ธ๋๋์ ์ด ์์ด์์ :(. ์ฌ๋ฌ๋ฒ ํด๋ณด๊ณ ์ ์์๋ ๊ธฐ์ต์ด ์๋ค์ฉ
if(hit) ์ด ๋ถ๋ถ์ if(hit.collider != null) ์ผ์ผ ๋ฐ๊ฟ๋ณด์
์ผ๋จ ์ด๊ฑฐํ๋๊น if() ์ธ์์ ๋๋ค์
ํน์ RatcastHit2D hit = Physics2D.Raycast(์์น, ๋ฐฉํฅ * ๊ฑฐ๋ฆฌ, ๋ ์ด์ด ๋ง์คํฌ);
์ฝ๋์ ๋ฌธ์ ์์ผ๋ฉด ๋ง์ฝ์ ์ฒ์๋ง๋ค๋ 3d๋ก ๋ง๋ค์๋ค๊ฐ 2d๋ก ๋ฐ๊พผ๊ฑฐ๋ฉด ์นด๋ฉ๋ผ์ projection์ orthographic์ธ์ง ํ์ธํด๋ณด์ - dc App
์ฒจ๋ถํฐ 2d๋ก ํด์ ๊ทธ๊ฑด ์๋
ํด๋น ๋๊ธ์ ์ญ์ ๋์์ต๋๋ค.
๋ฌด์จ๋ง??
์ฅ ์ผ์ผํ๋๊น ์ธ์์ด ๋๋ค ๋จธ์ง?
์์ ํด๊ฒฐ๋์ด์ ๊ฐ์ฌํฉ๋๋ค