์ด๋ค ํํ ๋ฆฌ์ผ๋ณด๋ฉด addforce์ฐ๊ณ ๋ ์ด๋ค๊ฑฐ๋ณด๋ฉด rigidbody.velocity = vector3 ์ฐ๊ณ ์ด๋ค๊ฑด transform.translate ์ฐ๋๋ฐย
์ด๋ฐ๊ฑด ์ํฉ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์จ์ฃผ๋๊ฑด๊ฐ์? ์๋ ๋ณดํต ๋ญ ์ฐ๋์?
์ด๋ค ํํ ๋ฆฌ์ผ๋ณด๋ฉด addforce์ฐ๊ณ ๋ ์ด๋ค๊ฑฐ๋ณด๋ฉด rigidbody.velocity = vector3 ์ฐ๊ณ ์ด๋ค๊ฑด transform.translate ์ฐ๋๋ฐย
์ด๋ฐ๊ฑด ์ํฉ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์จ์ฃผ๋๊ฑด๊ฐ์? ์๋ ๋ณดํต ๋ญ ์ฐ๋์?
์์๋๊ฐ๋ rigidbody๊ฐ๋ถ์ด์์๋ ์ฐ๋๊ฑฐ๊ตฌ์ ๋ค์๊ฑด ์์ ๋ ์ฐ๋๊ฑฐ
์์ ๋๊ฐ ์ฐจ์ด๋ฅผ ์๊ธฐํด์ฃผ์๋ฉด addforce๊ฐ์๊ฒฝ์ฐ๋ ๊ฐ์๋๋ฅผ ๋ํ๋ ํจ์์ ํ์ง๋ง velocity๋ฅผ ์ง์ ๊ฑด๋๋ฆฌ๋๊ฑด ๊ทธ ๋ฌผ์ฒด์ ๊ฐ์๋๋ฅผ ์ง์ ์์ ํ๋๊ฑฐ๊ธฐ๋๋ฌธ์ ๋ค๋ฅธ๊ฒ๋๋ค ์ํฉ์ ๋ง๊ฒ ์ฐ์ธ์
player.transform.position += pos*moveSpeed*Time.deltaTime; ์ ์ด๋ ๊ฒ ์จ์! pos๋ normalizedํ ์ด๋ํ ์์น ๋ฐฉํฅ๋ฒกํฐ
velocity๋ฅผ ์ง์ ๊ฑด๋๋ฆฌ๋๊ฑด ๊ทธ ๋ฌผ์ฒด์ ์๋๋ฅผ ์ ์ดํ๋๊ฒ๋๋ค ์ ์ ํฉ๋๋ค
add Force๋ ํ์ ๋ํด์ค๋ค ๋ผ๋ ๋ป์.
ํ = ์ง๋* ๊ฐ์๋ ์ด๊ธฐ ๋๋ฌธ์ ์ง๋์ ์ํฅ์ ๋ฐ๋ ๊ฐ์๋๋ฅผ ๋ํด์ฃผ๋๊ฑฐ์. ์ง๋์ด ๋ฌด๊ฑฐ์ฐ๋ฉด, ๊ฐ์ ํ์ด๋ผ๋, ๊ฐ์๋๋ ์ ์๊ฑฐ๊ณ , ์ง๋์ด ๊ฐ๋ฒผ์ฐ๋ฉด ๊ฐ์๋๊ฐ ํด๊ฑฐ์.
set Velocity๋ ์๋๋ฅผ ์ง์ ์ง์ ํด์ฃผ๋๊ฑฐ์.
์๋ = ๊ฐ์๋ * ์๊ฐ ์ด๊ธฐ ๋๋ฌธ์, ๊ฐ์๋์ ์ํฅ์ ๋ฐ๋ ์๋ ๊ฐ์ ๋ฐ๋ก ์ง์ ํด ์ฃผ๋๊ฑฐ๊ณ , ๊ทธ ๋ป์ ์๋์ ๋ณํ ์์ด, ์ผ์ ํ ์๋๊ฐ ์ธํ ๋๋ค๋ ๋ป์. ๋ฌผ๋ก ์๋๋ฅผ ์ ํด์ฃผ๋๋ผ๊ณ , ์ ํญ์ด๋, ๋ง์ฐฐ ์ต์ ์ด ๊ฐ์ฒด์ ์๋ค๋ฉด ์๋ ๋ณํ๊ฐ ์๊ธธ์ ์์. ๋ ์ถฉ๋ํ์๋๋ ์๋ ๋ณํ๊ฐ ์๊ธธ์ ์๊ณ .
๋ง์ง๋ง์ผ๋ก translate๋ ์์น๋ฅผ ์ง์ ํด์ฃผ๋๊ฑฐ์. ์์ ์๋๋, ํ์ ์ ๋ถ ์๊ฐ์ ์ํฅ์ ๋ฐ๋ ๋ฌผ๋ฆฌ๋๋ค์ธ๋ฐ, ๋ง์ง๋ง์ translate๋ ์๊ฐ์ ๊ด๊ณ ์์ด ์์น๋ฅผ ์ง์ ํด ๋ฒ๋ฆฌ๋๊ฑฐ์.
์ด๋ค ํ๋์ ์์น๋ฅผ ๊ณ์ ๊ณ ์ ์ํฌ์๋ ์์ง๋ง, ํ๋ ์๋ง๋ค ์ผ์ ํ๊ฒ +1์ฉ ์์น๋ฅผ ๋ฐ๊ฟ์๋ ์์. ์ด๋ ๊ฒ ๋๋ฉด ๊ฒ์์ด 2000ํ๋ ์์ด ๋์๋ฒ๋ฆฌ๋ฉด, 1์ด์ 2000๋งํผ ์์ง์ด๊ณ , 60ํ๋ ์์ด ๋๋ฉด 1์ด์ 60๋งํผ ์์ง์ด๋๊ฑฐ์. ๊ฐ๊ธ์ rigidbody๋ฅผ ์ฐ๋๊ฒ ์ข์ ์ด์ ๋, ํ๋ ์ ๊ธฐ๋ฐ ๋ฌผ๋ฆฌ๋ฅผ ์ธ๋งํผ ํ๋์ ์ปดํจํฐ๋ค์ด ์ฑ๋ฅ์ด ๋ฎ์๊ฒ ์๋๊ธฐ ๋๋ฌธ์ด๋ผ์์.