ํ๋ ์ด์ด๊ฐ ์ ์ ๋ฟ์ผ๋ฉด ๋๋ฐฑ๋๊ฒ ๋ง๋ค์๋๋ฐ
์ปดํจํฐ๋ก ์์ ํ๋๊ฑฐย ๋ ธํธ๋ถ์์ ํ๋ก์ ํธ ์คํ์ํค๋๊นย ์ปดํจํฐ๋ ๋ค๋ฅด๊ฒ ๋๋ฐฑ์ด ๋๋ฌด ์ธ๊ฒ ๋ค์ด๊ฐ๋๋ผ?
๊ทธ๋์ ๋ ธํธ๋ถ ๊ธฐ์ค์ผ๋กย ๋๋ฐฑ ํ ์ค์ฌ์ย ์๋ง๊ฒ ์กฐ์ ํ๋๋ฐย ๊ทธ๊ฑธ ์ปดํจํฐ์์ ์คํํ๋ฉดย ๋๋ฐฑ์ด ๋๋ฌด ์ฝํจ...ย ์ ์ด๋ฌ๋๊ฑฐ??
๊ฒ์์ 2Dํ๋ซํฌ๋จธ์ ์บ๋ฆญํฐ๊ฐ ์ค๋ฅธ์ชฝ์ผ๋ก ์๋ย ์ด๋ํ๋ ๋ฐฉ์์
๋๋ฐฑ ์ฝ๋ฃจํด ์ฝ๋ (AddForce๋ก ๋ง๋ ๋๋ฐฑ์ด ๋ง์์ ์๋ค์ด์ velocity๋ก ๋ง๋ฌ)
IEnumerator KnockBack(float power)
{
ย ย rigid.velocity = Vector2.zero;
ย ย while (power >= 0)
ย ย {
ย ย ย ย rigid.velocity = Vector2.left * power;
ย ย ย ย yield return new WaitForSeconds(0.0001f);
ย ย ย ย power -= 0.1f;
ย ย }
ย ย yield return null;
}
์ฝ๋ฃจํด ์ฌ์ฉ (๋๋ฐฑ ์์น๋ ์ปดํจํฐย 18, ๋ ธํธ๋ถย 9 ์ ๋๊ฐ ์ ๋น)
StartCoroutine(KnockBack(18));
๋ธํํ์์ ์ฐ์์ง์
์ด๋ฐ๊ฑฐ ์ฝ๋ฃจํด์ผ๋ก ์ง๋ฉด ๋์2๊ฐ ์คํ๋๊ณ ๊ทธ๋ฐ๊ฑฐ๋๋ฌธ์ ๋๋ฆฌ๋ ํ ๋ฐ
์ด๋ณด์์ ์ฅ์) ์๊ทผ๋ฐ ์ฝ๋ฃจํด์ผ๋กํจ? ์ด๋ฐ๊ฑด ํฝ์ค๋ ์ ๋ฐ์ดํธ์์ ํด์ผํ๋๋ฐ. ๊ฒ๋ค๊ฐ 0.0001f์์ขโฆ. ๊ทธ๋ฆฌ๊ณ 18๋ฒ ์คํ๋๋๊ฒ๋ ๋๋ฌด ์ด์. ๊ทธ๋ฅ 2~3๋ฒ ๋ฐ๋ฆฌ๋๊ฑธ๋กํ๊ณ ํฝ์ค๋ ์ ๋ฐ์ดํธ์์ ์คํํ๋๊ฑธ๋ก ํ์ํ
์ผ๋ ๋ฆฌํด์์ ๊ธฐ๋ค๋ฆด๋ ๋ฌผ๋ฆฌ ๊ฐ์๊ฐ ํ๋ ์์ ๋ฐ๋ผ ์ํฅ์ด ์์์๋? - dc App
์ผ๋จ ๋ธํํ์ ์์ด์ ์ปดํฐ๋ง๋ค fps ๋ค๋ฅด๋๊น ๋ค๋ฅด๊ฒ ๋ฐ๋ ค๋ ๊ฑฐ๊ณ , ๋๋ฐฑ์ ์ฝ๋ฃจํด์ผ๋ก ํ์ง ๋ง๊ณ ๊ทธ๋ฅ ์ผ์ ๋๋งํผ velocity ๋ฐ๊ฟ์ฃผ๋๊ฒ ๋๋ฐฑ ์ค์ ๋๋ฐฑ ๋ ๋์์๋ ์ถฉ๋ ์ํด์ ์ข์๋ฏ