Summary

Jiggle Physics๋Š” ์บ๋ฆญํ„ฐ์˜ ๋จธ๋ฆฌ์นด๋ฝ, ์˜ท, ์•ก์„ธ์„œ๋ฆฌ ๋“ฑ์ด ์›€์ง์ž„์— ๋”ฐ๋ผ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ํ”๋“ค๋ฆฌ๋Š” ํšจ๊ณผ๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ์„ธ์ปจ๋”๋ฆฌ ์• ๋‹ˆ๋ฉ”์ด์…˜ ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค.

์–ธ๋ฆฌ์–ผ ์—”์ง„์—์„œ๋Š” Spring Controller๋ฅผ ํ†ตํ•ด ๋ฌผ๋ฆฌ ๊ธฐ๋ฐ˜์˜ ํ”๋“ค๋ฆผ ํšจ๊ณผ๋ฅผ ๊ฐ„ํŽธํ•˜๊ฒŒ ์ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ตฌํ˜„ ๋ฐฉ๋ฒ•: Animation Blueprint ์„ค์ •

์–ธ๋ฆฌ์–ผ ์—”์ง„์—์„œ Jiggle Physics๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” Animation Blueprint(์• ๋‹˜ ๋ธ”๋ฃจํ”„๋ฆฐํŠธ)์—์„œ State Machine๊ณผ Spring Component๋ฅผ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค.

1. State Machine ์ถ”๊ฐ€

  • Anim Graph์—์„œ ์šฐํด๋ฆญํ•˜์—ฌ โ€˜State Machineโ€™์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค

Info

State Machine์€ ์บ๋ฆญํ„ฐ์˜ ๋‹ค์–‘ํ•œ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค

2. State ์ƒ์„ฑ ๋ฐ ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋“ฑ๋ก

  • State Machine ๋‚ด๋ถ€๋กœ ๋“ค์–ด๊ฐ€์„œ โ€˜Add Stateโ€™๋ฅผ ํ†ตํ•ด ์ƒˆ๋กœ์šด ์ƒํƒœ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  • ์ƒ์„ฑ๋œ State๋ฅผ ๋”๋ธ”ํด๋ฆญํ•˜์—ฌ ๋‚ด๋ถ€๋กœ ์ง„์ž…ํ•œ ํ›„, ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๊ทธ๋ž˜ํ”„๋กœ ๋ถˆ๋Ÿฌ์™€ Output Animation Pose ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

3. Spring Component ์„ค์ •

  • Anim Graph๋กœ ๋Œ์•„์™€์„œ Output Pose ์ด์ „์— โ€˜Spring Controllerโ€™ ๋…ธ๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  • Spring Component์˜ Details ํŒจ๋„์—์„œ ๋‹ค์Œ ํ•ญ๋ชฉ๋“ค์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
    • Bone to Modify: ๋ฌผ๋ฆฌ ํšจ๊ณผ๋ฅผ ์ ์šฉํ•  ๋ณธ(Bone)์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค
    • Spring Stiffness: ์Šคํ”„๋ง์˜ ๊ฐ•์„ฑ์„ ์กฐ์ ˆํ•ฉ๋‹ˆ๋‹ค (๊ฐ’์ด ๋‚ฎ์„์ˆ˜๋ก ๋” ์ฒœ์ฒœํžˆ ๋ณต์›๋ฉ๋‹ˆ๋‹ค.)
      • Stiffness = ์›๋ž˜ ์œ„์น˜๋กœ ๋Œ์•„๊ฐ€๋ ค๋Š” ํž˜
    • Spring Damping: ์†๋„ ๊ฐ์‡  ์ •๋„๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
      • ๊ฐ’์ด ๋‚ฎ์„์ˆ˜๋ก ์˜ค๋ž˜ ํ”๋“ค๋ฆฝ๋‹ˆ๋‹ค.

ํ™œ์šฉ ํŒ

  • ๋จธ๋ฆฌ์นด๋ฝ์ด๋‚˜ ์ฒœ ๊ฐ™์€ ๋ถ€๋“œ๋Ÿฌ์šด ์˜ค๋ธŒ์ ํŠธ๋Š” Stiffness ๊ฐ’์„ ๋‚ฎ๊ฒŒ ์„ค์ •ํ•˜์„ธ์š”
  • ๊ธˆ์† ์žฅ์‹ ๊ตฌ์ฒ˜๋Ÿผ ๋ฌด๊ฑฐ์šด ์˜ค๋ธŒ์ ํŠธ๋Š” Damping ๊ฐ’์„ ๋†’์—ฌ ๋น ๋ฅด๊ฒŒ ์•ˆ์ •ํ™”๋˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค
  • ์—ฌ๋Ÿฌ ๋ณธ์— ๊ฐ๊ฐ ๋‹ค๋ฅธ ๋ฌผ๋ฆฌ ์†์„ฑ์„ ์ ์šฉํ•˜๋ฉด ๋”์šฑ ์ž์—ฐ์Šค๋Ÿฌ์šด ๊ฒฐ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

์ฐธ๊ณ ์ž๋ฃŒ