private void FixedUpdate()
ย ย {
ย ย ย ย Vector2 dirVec = target.position - rigid.position;
ย ย ย ย Vector2 nextVec = dirVec.normalized * speed * Time.fixedDeltaTime;
ย ย ย ย rigid.MovePosition(rigid.position + nextVec);
ย ย ย ย rigid.velocity = Vector2.zero;
ย ย }
https://youtu.be/0aUCu1BcZxs?t=638
๋ชฌ์คํฐ?๋ง๋ค๊ธฐ [์ ๋ํฐ ๋ฑ์๋ผ์ดํฌ 05]๋ฑ์๋ผ์ดํฌ์ ์กฐ์ฐ์ธ ๋ชฌ์คํฐ๋ฅผ ๋ง๋ค์ด๋ณด๋ ์๊ฐ์ ๋๋ค.๊ฐ๋จํ ๋ฒกํฐ ๊ณ์ฐ์ผ๋ก๋ ํ๋ ์ด์ด๋ฅผ ์กธ์กธ ๋ฐ๋ผ์ค๋ ๋ชฌ์คํฐ๋ฅผ ํจ๊ป ๋ง๋ค์ด๋ณด์์. ?#์ ๋ํฐ๊ฐ์ข #์ ๋ํฐ๊ธฐ์ด #๋ฑ์๋ผ์ดํฌ #๋ฑํ์ด์ด์๋ฐ์ด๋ฒ+ ๋ฑ์๋ผ์ดํฌ ๊ฐ๋ฐ ์ฑ๋https://www.youtube.com/playlist?list=PL...youtu.be๊ณจ๋ฉ ๊ฐ์ ๋ณด๊ณ ํ๊ณ ์๋๋ฐ
MovePosition ํจ์ ๋ค์์ velocity ๋ฅผ 0์ผ๋ก ์ด๊ธฐํํ๋ฉด ๋ชป์์ง์ฌ์ผ ํ๋๊ฑฐ ์๋์ผ?
์ดํด๊ฐ ์๊ฐ
ํด๋น ๋๊ธ์ ์ญ์ ๋์์ต๋๋ค.
์ ์ดํดํ๊ฑฐ ๊ฐ์ ์ดํจ์๋ ๋จผ์ ์์ง์ด๊ณ ์๋๋ฅผ ์ค์ ํ๋๊น ์ดํจ์ ์ฐ๊ณ ์๋=0 ํ๋ฉด update ํจ์๋ก ๋งค๋ฒ ํธ์ถํด๋ ์์ง์ด๋ฉด์ ์๋๋0์ด๊ณ ๊ทธ๋ผ ๋ค๋ฅธ ์ค๋ธ์ ํธ์ ๋ฐ๋ฆด์ ์๋ค๋๊ฑฐ๋ค
moveposition์ ์๋๊ฐ์ด ์๋ ์ขํ๊ฐ ์ด๋์ด๋ผ ๊ทธ๋ผ ์ด๋ค ์๋๋ก ์์ง์ด๊ณ ์๋ ๋ฉ์ถฐ ์๋ ๋ง์ฝ (0,0,0)์์ (100,100,0)์ผ๋ก moveposition์ ์ํค๋ฉด ์ฆ์ ๊ทธ ์ขํ๋ก ์ฎ๊ฒจ์ง ๋ค velocity๊ฐ์ผ๋ก ์์ง์
ใณใฑใณ
์, ๋ด๊ฐ ์ฝ๋๋ฅผ ์ ๋ณด๊ณ ๊ทธ๋ฅ ๋ต์ ๋ฌ์์ ๋ฏธ์ ์ผ๋จ moveposition ๊ณผ velocity๋ ๋ณ๊ฐ๋ก ์๋ํ์ง ์๋ก ๊ฐ์ญ์ ์ํจ ์ผ์ ์๋๋ก ์์ง์ด๊ณ ์๋ ๋ฌผ์ฒด๋ฅผ moveposition์ผ๋ก ๊ฐ์ ๋ก ์์น๋ฅผ ์ด๋์ํค๋ฉด ๊ทธ ์์น์์ ๋๊ฐ์ ์๋๋ก ๊ณ์ ์ด์ด์ ์์ง์ ๊ทผ๋ฐ ์ ์ฝ๋์์์ ๋งค ํ๋ ์๋ง๋ค nextVec ๋งํผ ์ขํ๋ฅผ ์ด๋์์ผ์ฃผ๊ณ ์๋ค
ํ์ฌ rigidbody์ ์์น์ target ์ฌ์ด์ ๊ฑฐ๋ฆฌ๊ฐ 0์ด ์๋๊ณ speed๋ 0์ด ์๋๋ผ๋ฉด nextVec๋ 0์ด ์๋ํ ๋ ๊ณ์ ์กฐ๊ธ์ฉ ์์ง์ผ๊ฑฐ์
๊ทธ๋ฆฌ๊ณ ๋ค๋ฅธ ๋ฌผ์ฒด์ ์ํด ๋ฐ๋ฆฌ๋ ๊ฑด ๋ ๋ค๋ฅธ ๋ฌธ์ ์ velocity๋ฅผ 0์ผ๋ก ๋ง๋ค์ด๋ ์๋๋ฐฉ rigidbody๊ฐ ๋ฐ์ด๋ฒ๋ฆฌ๋ฉด ๋ฐ๋ฆผ ๊ทธ๊ฑธ ๋ง์ผ๋ ค๋ฉด ์๋๋ฐฉ rigidbody๋ณด๋ค ๋ด rigidbody์ mass๊ฐ์ด ํจ์ฌ ๋ ์ปค์ ์ ๋ฐ๋ฆฌ๊ฒ ํ๊ฑฐ๋ ์ถฉ๋์ ๊ฐ์งํด์ ์ถฉ๋์ ๋ ์ด์ ๊ทธ ๋ฐฉํฅ์ผ๋ก ๋ฐ๊ฑฐ๋ ๋ฐ๋ฆฌ์ง ๋ชปํ๊ฒ ๋ง๋ค์ด์ผ ํจ ํ์ ์ด ๋ค์ง ์์์ ํ ์คํธํด๋ณด๊ณ ๋ต๋ณ์ ๋ดใ ใ