νƒ„λ§‰μ˜ μƒμ‘΄μ‹œκ°„μ΄ 0μ΄ˆμΌλ•Œ μ΄ˆλ‹Ή 0도λ₯Ό νšŒμ „ν•˜κ³  10초일 λ•Œ 120도λ₯Ό νšŒμ „ν•œλ‹€κ³  치자


이 λ•Œ 탄막을 λ§€ ν”„λ ˆμž„ μ΄λ™μ‹œν‚¬ λ•Œ Time.deltaTime에 κΈ°λŒ€μ„œ μ΄λ™μ‹œν‚€λ©΄ 탄막이 μΌμ •ν•˜μ§€ μ•Šκ²Œ λ‚˜κ°„λ‹€


같은 탄막 aλ₯Ό μ‹œκ°„μ— 걸쳐 λ‘λ²ˆ μƒμ„±ν–ˆκ³  탄막이 Time.deltaTimeλ§ˆλ‹€ 움직이면


처음 μƒμ„±λœ 탄막 1은 μƒμ‘΄μ‹œκ°„μ΄ 0.1, 0.2, 0.3μ΄ˆμΌλ•Œ 이동이 적용되고

κ·Έ ν›„ μƒμ„±λœ 탄막 2λŠ” μƒμ‘΄μ‹œκ°„μ΄ 0.05, 0.16, 0.3일 λ•Œ 이동이 적용될 수 μžˆλ‹€


탄막이 νšŒμ „ν•˜κ³  νƒ„λ§‰μ˜ νšŒμ „μ„ λ§€ ν”„λ ˆμž„ κ³„μ‚°λœ λ°©ν–₯의 μ§μ„ μ΄λ™μœΌλ‘œ μ μš©μ‹œμΌœμ£Όμ—ˆλ‹€λ©΄ - μ™„λ²½ν•œ 원이 μ•„λ‹Œ 80κ°ν˜•μ„ λ– μ˜¬λ¦¬λ©΄ λœλ‹€

탄막 1의 ꢀ적과 탄막 2의 ꢀ적 사이에 차이가 생긴닀


이λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ μ •ν™•νžˆ 1/80μ΄ˆλ§ˆλ‹€ 계산을 μ‹œμΌœμ£Όμ—ˆλ‹€

μ •ν™•νžˆ λ§ν•˜μžλ©΄ μ΄μ•Œμ„ μ΄λ™μ‹œν‚¬ λ•Œ 1/80μ΄ˆλ‹¨μœ„λ‘œ μ΄λ™μ‹œμΌœμ£Όμ—ˆλ‹€


아무리 ν”„λ ˆμž„μ΄ 높아도 ν”„λ ˆμž„μ΄ 항상 80의 λ°°μˆ˜μ— μ™„λ²½νžˆ κ³ μ •λ˜μ§€ μ•ŠλŠ” 이상 μ •ν™•νžˆ 1/80μ΄ˆλ§ˆλ‹€ 호좜 ν•  수 μ—†κΈ° λ•Œλ¬Έμ—

λ§ˆμ§€λ§‰ ν˜ΈμΆœλ‘œλΆ€ν„° 1/80초 이상이 μ§€λ‚¬λ‹€λŠ”κ²ƒμ„ μ•Œκ²Œλ˜λ©΄ 1/80μ΄ˆκ°€ μ§€λ‚œμƒν™©μ΄λΌκ³  κ°€μ •ν•˜κ³  κ³„μ‚°ν•œλ‹€

λ§Œμ•½ n번 μ§€λ‚˜μ³μ„œ(ν”„λ ˆμž„μ΄ ν™• λ–¨μ–΄μ§€λ©΄) n / 80 + x μ΄ˆκ°€ 지났닀면 n/80 μ΄ˆκ°€ 지났닀고 κ°€μ •ν•˜κ³  κ³„μ‚°ν•œλ‹€


λ ˆλ²¨μ—λ””ν„° μƒμ—μ„œλŠ” 항상 1/80초 λ‹¨μœ„λ‘œ κ³„μ‚°ν–ˆκΈ°μ— λͺ°λžλŠ”λ° ν”Œλ ˆμ΄ λͺ¨λ“œμ—μ„œλŠ” Time.deltaTimeλ§ˆλ‹€ μ΄μ•Œμ„ μ΄λ™μ‹œμΌœμ£ΌκΈ° λ•Œλ¬Έμ— ν•΄λ‹Ή 버그가 일어났닀

이제 κ³ μ³€μ§€λ§Œ 문제의 원인을 μ°ΎλŠ”κ²Œ λ„ˆλ¬΄ νž˜λ“€μ—ˆλ‹€

μ§€κΈˆ μƒκ°ν•˜λ©΄ λ‹Ήμ—°ν•œκ±°μ§€λ§Œ 이게 μ™œ μ•ˆλ³΄μ˜€λ˜κ±ΈκΉŒ


ν•΄κ²°ν•˜κ³  λ‚˜λ‹ˆ κ°‘μžκΈ° λ„ˆλ¬΄ μ•„λ¦„λ‹€μ›Œ 보인닀


슀폰 μ‹œμ˜ 졜초 이동방ν–₯이 μ•„λ‹Œ μ΄μ•Œ μžμ²΄μ— μƒμ‘΄μ‹œκ°„μ— λ”°λ₯Έ νšŒμ „μ„ λΆ€μ—¬ν•˜λŠ” νƒ„λ§‰κ²Œμž„μ΄ μžˆλ‹€λ©΄ κ·Έ μ œμž‘μžλ„ λ‚˜μ™€ 같은 고민을 ν–ˆμ„κΉŒ





λ‹€λ₯Έ μ˜μƒμ„ λΆ„μ„ν•œ κ²°κ³Ό

μƒˆλ‘œμš΄ 방법이 λ– μ˜¬λžμ§€λ§Œ μ˜ˆμ „ 방법이 λ‚˜μ•„λ³΄μΈλ‹€


μƒˆλ‘œμš΄ 방법은 μ›μ˜ λ‘˜λ ˆλ₯Ό 따라 μ΄λ™ν•˜λŠ”κ²ƒμΈλ° μ΄λ ‡κ²Œ ν•  μ‹œ λ¬Έμ œμ μ€

1. 에디터 μƒμ—μ„œ λ”°λΌκ°ˆ μ›μ˜ 쀑심을 μ •ν•΄μ•Ό ν•œλ‹€

2. μ΄μ•Œμ˜ νšŒμ „μ— λ³€ν™”λ₯Ό 쀄 λ•Œ ν•΄λ‹Ή μ‹œκ°„μ— μ›μ˜ 쀑심을 μƒˆλ‘œ μ •ν•΄μ•Ό ν•œλ‹€

3. νšŒμ „μ˜ λ³€ν™”λ₯Ό λΆ€λ“œλŸ½κ²Œ μ£Όλ €λ©΄( 30μ—μ„œ 60으둜 λ°”λ€” λ•Œ 30 ~ 60으둜 μ°¨λ‘€λ‘œ μ˜¬λΌκ°„λ‹€) μ›μ˜ μ€‘μ‹¬μ˜ 이동에 λŒ€ν•œ 섀정이 ν•„μš”ν•˜λ‹€

4. μ΄ˆλ‹Ή λͺ‡λ„λ₯Ό νšŒμ „ν•˜λŠ”μ§€μ— λŒ€ν•΄ μ•Œ μˆ˜κ°€ μ—†λ‹€ - μ›μ˜ λ°˜μ§€λ¦„, μ΄μ•Œμ˜ 속도에 따라 κ°ˆλ¦°λ‹€

원이 μž‘μ§€λ§Œ 속도가 맀우 λŠλ¦¬λ‹€λ©΄ μ΄ˆλ‹Ή 10도λ₯Ό νšŒμ „ν•  μˆ˜λ„ μžˆλŠ”κ²ƒμ΄κ³ , 원이 ν¬μ§€λ§Œ 속도가 맀우 λΉ λ₯΄λ‹€λ©΄ μ΄ˆλ‹Ή 360도λ₯Ό νšŒμ „ ν• μˆ˜λ„ μžˆλ‹€

5. μ΄μ•Œμ˜ νšŒμ „μ„ μ •μ˜ν•  방법이 μ—†λ‹€ -> 원 μœ„μ˜ 점이 탄막인데 μ›μ˜ μœ„μΉ˜μ™€ 크기, λ‘œν…Œμ΄μ…˜μ„ λ³€κ²½ν•˜λ©΄μ„œ μ΄μ•Œμ„ μ›€μ§μ΄λŠ” 방식이닀


6. 탄막을 νŽΈμ§‘ν•˜λŠ” μž…μž₯μ—μ„œ 보자면 μ‹¬ν• μ •λ„λ‘œ 직관적이지 λͺ»ν•˜λ‹€

탄막이 μ΄λ ‡κ²Œ νšŒμ „ν–ˆμœΌλ©΄ μ’‹κ² λ‹€ -> μ›μ˜ 쀑심이 μ—¬κΈ°μ„œ μ—¬κΈ°λ‘œ μ΄λ ‡κ²Œ 움직여야 ν•˜κ³  μ›μ˜ λ°˜μ§€λ¦„μ€ aμ—μ„œ b둜 μ„œμ„œνžˆ λŠ˜λ €λ‚˜κ°€μ•Ό ν•œλ‹€?

λ˜ν•œ ν˜„μž¬ μ΄μ•Œμ˜ 속도도 κ³ λ €ν•΄μ•Ό ν•œλ‹€


μž₯점은 μ΄μ•Œμ˜ μœ„μΉ˜λ₯Ό νšŒμ „μ˜ λ³€ν™”κ°€ μ—†κ±°λ‚˜ κ·œμΉ™μ μ΄λΌλŠ” κ°€μ • ν•˜μ— μ •ν™•ν•˜κ²Œ λΉ λ₯΄κ²Œ ν•œλ²ˆμ— ꡬ할 수 μžˆλ‹€ 정도?

일반적인 νƒ„λ§‰κ²Œμž„μ„ λ§Œλ“€ λ•ŒλŠ” 이 방법이 λ‚˜μ•„λ³΄μΈλ‹€


쀑심이 λ˜λŠ” 원이 λΆˆκ·œμΉ™ν•˜κ²Œ λ³€ν™”ν•œλ‹€λ©΄ λ§ˆμ°¬κ°€μ§€λ‘œ nμ΄ˆλ§ˆλ‹€ κ΅¬ν•΄μ„œ λ”ν•΄μ€˜μ•Ό ν•œλ‹€




머리가 λ„ˆλ¬΄ μ•„ν”„λ‹€

μ˜€λžœλ§Œμ— κ²Œμž„ν•΄μ•Όμ§€