ในใ ์์ค๋ฎ์ ์ง๋ฌธ์ด๋ผ ๋ฏธ์ํ๊ธดํ๋ฐ ๋ต์ข ํด์ค๋ผ
2d ํ๋ซํฌ๋จธ ๊ฒ์ ๋ง๋ค์ด๋ณผ๋ผ๊ทธ๋ฌ๋๋ฐ ์ฌ๊ธฐ์
rigidbody๋ kinematic์ผ๋ก ๋๊ณ ์ฝ๋๋ก ์์ง์ด๊ฒ ํ๋๊ฒ ๋์๊ฑฐ๋ผ ๊ทธ๋ฌ๋๋ผ๊ณ
๊ทธ๋์ ์ผ๋จ ๋๋๋๋ก ํด๋ณด๋์ค์ธ๋ฐ
์ฒ์์ ๋ฐ๋ฅ ์ธ์ํ๋๊ฑฐ๋ถํฐ ๋งํ๊ณ ์์
raycast๋ก ์ธ์ํด์ ๋ฟ์ผ๋ฉด ๋ฉ์ถ๋์์ผ๋ก ํ ๋ฌ๋๋ฐ
๋ํ์๋๊ฐ ๋นจ๋ผ์ง๋ฉด ๋ฐ๋ฅ ๋ซ๊ณ ๋ค์ด๊ฐ์ ๋ฉ์ถ๋์ผ์ด ๊ณ์ ์๊น
๊ทธ๋ฆฌ๊ณ ํ์ผ๋งต์ ์๋ฉด(๋ฒฝ) ์ด๋ ์๋ฉด(๋ฐ๋ฅ)์ด๋ ๊ตฌ๋ณํ ๋ ค๊ณ
์ถฉ๋ ๊ฐ๋ ๊ตฌํด์ ์ด์บ ํด๋ณผ๋ฌ๋๋ฐย quaternion < ์ด์น๊ตฌ๊ฐ 2d๋ผ์๊ทธ๋ฐ์ง ๋๊ฐ์ ์ถฉ๋์ ํด๋ ๊ฐ์ด ๊ณ์ ๋ฐ๋๋๊ฑฐ๊ฐ์๋ฌธ์ด๋ผ ๋ฏธ์ํ๊ธดํ๋ฐ ๋ต์ข ํด์ค๋ผ
2d ํ๋ซํฌ๋จธ ๊ฒ์ ๋ง๋ค์ด๋ณผ๋ผ๊ทธ๋ฌ๋๋ฐ ์ฌ๊ธฐ์
rigidbody๋ kinematic์ผ๋ก ๋๊ณ ์ฝ๋๋ก ์์ง์ด๊ฒ ํ๋๊ฒ ๋์๊ฑฐ๋ผ ๊ทธ๋ฌ๋๋ผ๊ณ
๊ทธ๋์ ์ผ๋จ ๋๋๋๋ก ํด๋ณด๋์ค์ธ๋ฐ
์ฒ์์ ๋ฐ๋ฅ ์ธ์ํ๋๊ฑฐ๋ถํฐ ๋งํ๊ณ ์์
raycast๋ก ์ธ์ํด์ ๋ฟ์ผ๋ฉด ๋ฉ์ถ๋์์ผ๋ก ํ ๋ฌ๋๋ฐ
๋ํ์๋๊ฐ ๋นจ๋ผ์ง๋ฉด ๋ฐ๋ฅ ๋ซ๊ณ ๋ค์ด๊ฐ์ ๋ฉ์ถ๋์ผ์ด ๊ณ์ ์๊ธฐ๋๋ผ
๊ทธ๋ฅ ๋ฐ๋ฅ static์ผ๋ก๋๊ณ ์บ๋ฆญํฐ dynamic์ผ๋ก ๋๋ค์์ ์ค๋ ฅ์ด๋ ์ ํญ ์์ ๊ณ ํ๋๊ฒ ๋ ๋ซ์ง์๋ ์ถ์๋ฐ
์ด๊ฒ ๋ง๋๊ฑฐ??
๊ทธ๋ฆฌ๊ณ ํ์ผ๋งต์ ์๋ฉด(๋ฒฝ) ์ด๋ ์๋ฉด(๋ฐ๋ฅ)์ด๋ ๊ตฌ๋ณํ ๋ ค๊ณ
์ถฉ๋ ๊ฐ๋ ๊ตฌํด์ ์ด์บ ํด๋ณผ๋ฌ๋๋ฐ OnCollisionEnter2D์์ Collision2D๋ฅผ ๊ฐ์ ธ์ค๋ฉด
์ถฉ๋ํ ์์น๊ฐ ์๋๋ผ ์ถฉ๋ํ ์ค๋ธ์ ํธ์ ์ค์ฌ์์น๊ฐ ์กํ๋๊ฑฐ๊ฐ๋๋ผ๊ณ
์ด๊ฑฐ๋ ์ถฉ๋ ์์น๋ก ๋ฐ์์ค๋๋ฒ์ด ์๋์ง๋
์์ผ๋ฉด ํ์ผ๋งต์ composit์ผ๋ก ํฉ์น์ง ๋ง๊ณ ๋ฐ๋ก๋ฐ๋กํ๋ฉด
์์น ๊ณ์ฐํด์ ๊ตฌ๋ณํ ์ ์์๊ฑฐ๊ฐ๊ธด ํ๋ฐ ์ด์ผํ๋ฉด ๋๋๊ฑฐ??
์ค๋ ฅ๋ ์ง์ ์ฃผ๋ฉด ์ด๋์? - dc App
kinematic์ผ๋ก ํ๋ค๋๊ฒ ์ค๋ ฅ ์ง์ ์ค์ผ๋๋ค๋๊ฑฐ ์๋? ์ผ๋จ ๊ทธ๋ ๊ฒํ๋๋ฐ
Collision์์ normal ๋ก ๋ฒ์ ๋ฒกํฐ ๊ฐ์ ธ์ฌ์์์ direction์ด ์๋ฉด ๋ฐ๋ฅ์ผ๋ก ์ธก์ ํ์
normal์ด๋ฉด ๊ทธ๋ฅ ํฌ๊ธฐ๋ง 1๋ก๋ง๋ค์ด์ฃผ๋์ค์์๋๋ฐ,,, ์ผ๋จ ํด๋ณผ๊ฒ ใณ
๊ทธ๊ฑด Vector3์์ ์ ๊ทํ normalized๊ณ , ์ด๊ฑฐ๋ Collision์์ normal์ ๋ฒ์ ์
์ค์ฐ ๋๋ค์ ๋ฌด์์ด ํ๋์ ์ฐ๋ ๋ค ๋ค๋ค ์กด๋๊ณ ๋ง๋ค
ํด๋น ๋๊ธ์ ์ญ์ ๋์์ต๋๋ค.
๊ทธ๋ฌ๊ฒ Character Controller ๋ถ์ฌ์ isGrounded ๋ก ๋ฐ๋ฅ์ธก์ ํ๋ฉด๋จ
์ด๋ฐ๊ฒ ์๋์ค์ ๋ชฐ๋๋ค ใณ