• Mindscape ๐Ÿ”ฅ
    • Playlist ๐ŸŽง
    • Vim ์‚ฌ์šฉ ๋งค๋‰ด์–ผ
  • ๐Ÿง  Algorithm

    • Python ์‹œ๊ฐ„ ์ดˆ๊ณผ ๋ฐฉ์ง€๋ฅผ ์œ„ํ•œ ํŒ
    • 1966๋ฒˆ: ํ”„๋ฆฐํ„ฐ ํ
    • 1018๋ฒˆ: ์ฒด์ŠคํŒ ๋‹ค์‹œ ์น ํ•˜๊ธฐ
  • ๐Ÿ’ฐ Finance

    • ๋น„ํŠธ์ฝ”์ธ(Bitcoin)
  • ๐Ÿ›๏ธ Humanities

    • Nordvik, Russia
    • North Sentinel Island
    • ๋กฑ๊ณ ๋กฑ๊ณ (Rongorongo)
  • ๐Ÿ‹๏ธ Wellness

    • ๐Ÿซ’ ์—‘์ŠคํŠธ๋ผ ๋ฒ„์ง„ ์˜ฌ๋ฆฌ๋ธŒ์œ  (Extra Virgin Olive Oil)
    • ์ฐจ์ „์žํ”ผ(Psyllium Husk)
  • ๐Ÿ–ฅ๏ธ Computer Graphics

    • 8 - Lighting
    • 9 - Orientation & Rotation
    • 10 - Character Animation
    • 11 - Curves
    • 12 - More Lighting, Texture
  • ๐Ÿ—‚๏ธ Operating System

    • 7. Deadlocks
    • 8. Memory Management(1)
    • 9. Memory Management(2)
    • 10. Virtual Memory(1)
    • 11. Virtual Memory(2)
    • 12. File System
    • 13. Mass Storage Management
    • 14. I/O Systems
  • ๐Ÿ”ฃ Programming Language Theory

    • 13. FPL(1)

10 - Character Animation

Outline

  • Computer-Generated Character Animation
  • Skeletal Animation
  • Forward Kinematics
  • Creating Character Animation
  • BVH File Format

Computer-Generated Animation

  • "๋ Œ๋”๋ง"์„ ํ†ตํ•ด 3D ๊ฐ์ฒด๋ฅผ ์ด๋ฏธ์ง€๋กœ ์ƒ์„ฑ

    • 3D ๊ฐ์ฒด ๋˜๋Š” ์บ๋ฆญํ„ฐ๋ฅผ ๋ชจ๋ธ๋งํ•˜๊ณ  "์›€์ง์ž„(motion)"์„ ๋ถ€์—ฌํ•จ
  • ํ˜„์žฌ๋„ ์†๊ทธ๋ฆผ ๊ธฐ๋ฐ˜ 2D ์• ๋‹ˆ๋ฉ”์ด์…˜์€ ์—ฌ์ „ํžˆ ๋งŽ์ด ์‚ฌ์šฉ๋˜์ง€๋งŒ,
    ๋Œ€๋ถ€๋ถ„์˜ ์ตœ์‹  ์• ๋‹ˆ๋ฉ”์ด์…˜์€ ์ด 3D ๋ฐฉ์‹์œผ๋กœ ์ œ์ž‘๋จ

Encanto, 2021

Computer-Generated Character Animation

  • ์บ๋ฆญํ„ฐ ์• ๋‹ˆ๋ฉ”์ด์…˜์—์„œ

  • Skeletal animation์ด ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋จ. ๊ตฌ์„ฑ ์š”์†Œ:

    • Skeleton: ๋ณธ ๋˜๋Š” ์กฐ์ธํŠธ ๊ณ„์ธต ๊ตฌ์กฐ ๋ฐ ๊ด€๋ จ ๋ฐ์ดํ„ฐ
    • Motion: ๊ด€์ ˆ ์›€์ง์ž„ ๋ฐ์ดํ„ฐ
    • Skin (๋˜๋Š” mesh): ์บ๋ฆญํ„ฐ ๋ Œ๋”๋ง์„ ์œ„ํ•œ ํ‘œ๋ฉด ํ‘œํ˜„

Visualizing Character in Skeletal Animation

  • Skin์€ ๋ณ€ํ˜• ๊ฐ€๋Šฅํ•œ ๋ฉ”์‹œ(deformable mesh)์ผ ์ˆ˜ ์žˆ์Œ

  • Skinning: ์Šค์ผˆ๋ ˆํ†ค์„ skin mesh์— "์ž„๋ฒ ๋”ฉ(embedding)"ํ•˜๋Š” ๊ณผ์ •
    (์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ƒ๋žต)

A human thigh with simple skin weights painted on it
์ถœ์ฒ˜: gameanim.com/gdc/gdc-2011-practices.pdf

  • ์บ๋ฆญํ„ฐ๋Š” ๊ฐœ๋ณ„ ๊ฐ•์ฒด(rigid mesh) ๋ฅผ ์ด์šฉํ•ด ๋” ๋‹จ์ˆœํ•˜๊ฒŒ ์‹œ๊ฐํ™”ํ•  ์ˆ˜๋„ ์žˆ์Œ

  • ์˜ค๋Š˜ ๊ฐ•์˜์˜ ์ดˆ์ ์€ skeletal animation์—์„œ์˜ ๊ณ„์ธต์  ๊ตฌ์กฐ(hierarchical structure) ์™€
    ์›€์ง์ž„(motion) ์ด๋ฉฐ, ์‹œ๊ฐํ™”๋Š” ๋‹ค๋ฃจ์ง€ ์•Š์Œ

  • ์ฐธ๊ณ  ์˜์ƒ:

    • https://youtu.be/PBydW8L6B9Y
    • https://youtu.be/hpqec_twooo

Skeletal Animation

  • Skeletal animation์€ ๋‘ ๊ฐ€์ง€ ๊ตฌ์„ฑ ์š”์†Œ๋กœ ์ด๋ฃจ์–ด์ง:

    • "Skeleton": ์ •์ ์ธ ๋ฐ์ดํ„ฐ
    • "Motion": ์‹œ๊ฐ„์— ๋”ฐ๋ผ ๋ณ€ํ•˜๋Š” ๋ฐ์ดํ„ฐ

https://youtu.be/PBydW8L6B9Y

"Skeleton" Part

  • "Skeleton": ์ •์  ๋ฐ์ดํ„ฐ
    • joint ๊ณ„์ธต ๊ตฌ์กฐ
    • ๋ถ€๋ชจ joint๋กœ๋ถ€ํ„ฐ์˜ ์˜คํ”„์…‹(offset)
      • ์ผ๋ฐ˜์ ์œผ๋กœ translation
      • ๊ธฐ์ค€: ๋ถ€๋ชจ ์ขŒํ‘œ๊ณ„(parent frame)
Hips
 โ”œโ”€โ”€ Spine
 โ”‚    โ”œโ”€โ”€ Head
 โ”‚    โ”œโ”€โ”€ RightArm โ”€ RightForeArm โ”€ RightHand
 โ”‚    โ””โ”€โ”€ LeftArm โ”€ LeftForeArm โ”€ LeftHand
 โ”œโ”€โ”€ RightUpLeg โ”€ RightLeg โ”€ RightFoot
 โ””โ”€โ”€ LeftUpLeg โ”€ LeftLeg โ”€ LeftFoot

Recall: Hierarchical Model - Human Figure

  • ๊ฐ body part์˜ ์›€์ง์ž„์€ ์ž๊ธฐ ๋ถ€๋ชจ์˜ ์ขŒํ‘œ๊ณ„ ๊ธฐ์ค€์œผ๋กœ ์ •์˜๋จ
    โ†’ ์ฆ‰, ๊ฐ ๋ถ€์œ„๋Š” ์ž์ฒด์ ์ธ transformation์„ ๊ฐ€์ง

  • ์ด ๋ณ€ํ™˜์€ ๋‘ ๊ฐ€์ง€๋กœ ๊ตฌ์„ฑ๋จ:

    • ์ •์  ๋ณ€ํ™˜: joint offset
    • ์‹œ๊ฐ„ ๋ณ€ํ™˜: motion

https://youtu.be/Ol7rMbK5C5g
https://youtu.be/0SR86WUngbU

"Motion" Part

  • "Motion": ์‹œ๊ฐ„์— ๋”ฐ๋ผ ๋ณ€ํ•˜๋Š” ๋ฐ์ดํ„ฐ

    • ๋‚ด๋ถ€ joint์˜ ์›€์ง์ž„

      • ๋ณดํ†ต ํšŒ์ „(rotation)
      • ๊ธฐ์ค€: ๊ฐ joint์˜ ๊ธฐ๋ณธ ํ”„๋ ˆ์ž„ (์ฆ‰, joint offset์ด ์ ์šฉ๋œ ์ดํ›„์˜ ๋ถ€๋ชจ ํ”„๋ ˆ์ž„)
    • skeletal root์˜ ์ด๋™ (translation ๋ฐ ํšŒ์ „ ํฌํ•จ)

      • ์ผ๋ฐ˜์ ์œผ๋กœ pelvis joint
      • ๊ธฐ์ค€: world frame

https://youtu.be/PBydW8L6B9Y

Terminologies

  • Posture (pose): ํŠน์ • ํ”„๋ ˆ์ž„์—์„œ์˜ "motion" ์ƒํƒœ
  • Rest pose: ๋ชจ๋“  joint์˜ ์›€์ง์ž„์ด "0"์ธ ์ƒํƒœ
  • Joint: ๋‘ ๊ฐ์ฒด ์‚ฌ์ด๋ฅผ ์—ฐ๊ฒฐํ•˜๊ณ  ํšŒ์ „์„ ํ—ˆ์šฉํ•˜๋Š” ์—ฐ๊ฒฐ์ 
  • Link: joint ์‚ฌ์ด์˜ ๊ฐ•์ฒด
  • End effector: ์šด๋™ ์‚ฌ์Šฌ ๋์˜ ์ž์œ  ๋‹จ๋ง ์ง€์ 

Kinematics

  • Kinematics: ์งˆ๋Ÿ‰์ด๋‚˜ ํž˜์„ ๊ณ ๋ คํ•˜์ง€ ์•Š๊ณ  ์šด๋™๋งŒ์„ ๋‹ค๋ฃจ๋Š” ํ•™๋ฌธ

    • (์ฐธ๊ณ ) Dynamics๋Š” ์šด๋™์˜ ์›์ธ(ํž˜, ์งˆ๋Ÿ‰ ๋“ฑ)์„ ํฌํ•จ
  • ์ปดํ“จํ„ฐ ๊ทธ๋ž˜ํ”ฝ์Šค์—์„œ์˜ Kinematics๋Š” skeletal animation๊ณผ ๋ฐ€์ ‘

    • Forward kinematics: joint angle์„ ์ฃผ๋ฉด end-effector์˜ ์œ„์น˜์™€ ๋ฐฉํ–ฅ ๊ณ„์‚ฐ
    • Inverse kinematics: end-effector์˜ ์œ„์น˜/๋ฐฉํ–ฅ์„ ์ฃผ๋ฉด joint angle ๊ณ„์‚ฐ
  • Forward kinematics ์ดํ•ด๋Š” skeletal animation ์ดํ•ด์— ๋„์›€์ด ๋จ

Forward Kinematics (FK)

  • Forward kinematics๋Š” ์ง€์—ญ ์ขŒํ‘œ๊ณ„ โ†’ ์ „์—ญ ์ขŒํ‘œ๊ณ„๋กœ์˜ ๋ณ€ํ™˜ TTT์„ ๊ณ„์‚ฐ

    • TTT๋Š” joint angle๋กœ๋ถ€ํ„ฐ ๊ณ„์‚ฐ๋จ
  • Forward kinematics (๊ณ„์‚ฐ):
    ์ฃผ์–ด์ง„ joint angle๋กœ๋ถ€ํ„ฐ end-effector์˜ ์œ„์น˜์™€ ๋ฐฉํ–ฅ์„ ๊ณ„์‚ฐ
    โ†’ ์ด๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋กœ ์ด TTT

  • ์‹ค์ œ๋กœ๋Š” end-effector๋ฟ ์•„๋‹ˆ๋ผ,
    ์–ด๋–ค link์— "๋ถ™์–ด ์žˆ๋Š”" ์ž„์˜์˜ ์ง€์ ์—๋„ ์ ์šฉ ๊ฐ€๋Šฅํ•จ

[Demo] Forward / Inverse Kinematics

http://robot.glumbot.de/

  • Forward kinematics: "angles" ๋ฉ”๋‰ด์—์„œ ๊ฐ๋„ ์กฐ์ ˆ
  • Inverse kinematics: ๋งˆ์šฐ์Šค๋กœ end-effector ์œ„์น˜ ๋“œ๋ž˜๊ทธ๋กœ ์ œ์–ด

Forward Kinematics Map

  • Forward kinematics map TTT ๋Š” ๋‹ค์Œ์˜ ๊ณฑ์œผ๋กœ ์ด๋ฃจ์–ด์ง:

    • Joint transformation (์‹œ๊ฐ„์— ๋”ฐ๋ผ ๋ณ€ํ•จ):

      • Joint์˜ "motion" (ํšŒ์ „ ๋“ฑ)
    • Link transformation (์ •์ ):

      • Skeleton ์ƒ์˜ joint offset
  • ์˜ˆ์‹œ:

T=J0L0J1L1J2L2J3T = J_0 L_0 J_1 L_1 J_2 L_2 J_3 T=J0โ€‹L0โ€‹J1โ€‹L1โ€‹J2โ€‹L2โ€‹J3โ€‹

  • JJJ: joint rotation

  • LLL: joint offset (translation)

  • ๊ทธ๋ฆผ ๊ธฐ์ค€:

    • TTT๋Š” 0๋ฒˆ joint(root)์˜ ์œ„์น˜ ๋ฐ ๋ฐฉํ–ฅ (world ๊ธฐ์ค€)์„ ์˜๋ฏธ
  • T=IT = IT=I

    • ํ˜„์žฌ ์œ„์น˜๋Š” ์ •์  ์ƒํƒœ (๋ชจ๋“  joint๊ฐ€ 0๋„)
  • T=J0T = J_0T=J0โ€‹

    • J0J_0J0โ€‹๋งŒ ํšŒ์ „ (๊ทธ ์™ธ๋Š” 0๋„)
  • T=J0L1T = J_0 L_1T=J0โ€‹L1โ€‹

    • J0J_0J0โ€‹ ์ดํ›„ ์ฒซ link (L1L_1L1โ€‹)๊นŒ์ง€ ๊ณ ๋ ค
  • T=J0L1J1T = J_0 L_1 J_1T=J0โ€‹L1โ€‹J1โ€‹

    • J0J_0J0โ€‹ ํšŒ์ „ โ†’ L1L_1L1โ€‹ offset โ†’ J1J_1J1โ€‹ ํšŒ์ „๊นŒ์ง€ ๋ˆ„์ ๋œ ๊ฒฐ๊ณผ

๋ชจ๋“  ์˜ˆ์‹œ์—์„œ, ์ง€์ •๋œ joint๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ joint๋Š” ๋ชจ๋‘ 0๋„

  • T=J0L1J1L2T = J_0 L_1 J_1 L_2T=J0โ€‹L1โ€‹J1โ€‹L2โ€‹

    • J0J_0J0โ€‹ โ†’ L1L_1L1โ€‹ โ†’ J1J_1J1โ€‹ โ†’ L2L_2L2โ€‹๊นŒ์ง€ ๋ˆ„์ ๋œ ๋ณ€ํ™˜
    • (์ด ๊ทธ๋ฆผ์—์„œ๋Š” J0J_0J0โ€‹, J1J_1J1โ€‹๋งŒ ๋น„ํšŒ์ „ ์ƒํƒœ ์•„๋‹˜)
  • T=J0L1J1L2J2T = J_0 L_1 J_1 L_2 J_2T=J0โ€‹L1โ€‹J1โ€‹L2โ€‹J2โ€‹

    • J2J_2J2โ€‹๊นŒ์ง€ ํšŒ์ „ ํฌํ•จ
  • T=J0L1J1L2J2L3T = J_0 L_1 J_1 L_2 J_2 L_3T=J0โ€‹L1โ€‹J1โ€‹L2โ€‹J2โ€‹L3โ€‹

    • L3L_3L3โ€‹๊นŒ์ง€ ํฌํ•จํ•œ ๋ณ€ํ™˜
  • T=J0L1J1L2J2L3J3T = J_0 L_1 J_1 L_2 J_2 L_3 J_3T=J0โ€‹L1โ€‹J1โ€‹L2โ€‹J2โ€‹L3โ€‹J3โ€‹

    • J3J_3J3โ€‹๊นŒ์ง€ ํฌํ•จ๋œ ์ตœ์ข… ๋ˆ„์  ๋ณ€ํ™˜
  • ํฌ์ธํŠธ ๋ณ€ํ™˜ ์˜ˆ์‹œ (3๋ฒˆ link ๊ธฐ์ค€ ์›์ ์—์„œ์˜ ์œ„์น˜ ๊ณ„์‚ฐ):

po{g}=J0L1J1L2J2L3J3po{3}=J0L1J1L2J2L3J3(0,0,0)\mathbf{p}_o^{\{g\}} = J_0 L_1 J_1 L_2 J_2 L_3 J_3 \mathbf{p}_o^{\{3\}} = J_0 L_1 J_1 L_2 J_2 L_3 J_3 (0, 0, 0) po{g}โ€‹=J0โ€‹L1โ€‹J1โ€‹L2โ€‹J2โ€‹L3โ€‹J3โ€‹po{3}โ€‹=J0โ€‹L1โ€‹J1โ€‹L2โ€‹J2โ€‹L3โ€‹J3โ€‹(0,0,0)

  • ํฌ์ธํŠธ ๋ณ€ํ™˜ ์˜ˆ์‹œ (3๋ฒˆ link ์ƒ์˜ ์  pa\mathbf{p}_apaโ€‹):

pa{g}=J0L1J1L2J2L3J3pa{3}\mathbf{p}_a^{\{g\}} = J_0 L_1 J_1 L_2 J_2 L_3 J_3 \mathbf{p}_a^{\{3\}} pa{g}โ€‹=J0โ€‹L1โ€‹J1โ€‹L2โ€‹J2โ€‹L3โ€‹J3โ€‹pa{3}โ€‹

  • ์ด์ฒ˜๋Ÿผ forward kinematics๋Š”
    ๊ณ„์ธต์  joint์™€ link ๋ณ€ํ™˜์„ ๋ชจ๋‘ ๋ˆ„์ ํ•ด
    ์›ํ•˜๋Š” link ๋˜๋Š” point์˜ ์œ„์น˜๋ฅผ world ๊ธฐ์ค€์œผ๋กœ ๋ณ€ํ™˜ํ•จ

Recall: Rendering Hierarchical Models

  • ๊ฐ ๋…ธ๋“œ๋Š” ์ž์‹ ์˜ ๋ถ€๋ชจ ๋…ธ๋“œ ๊ธฐ์ค€์œผ๋กœ ์ •์˜๋œ ๊ณ ์œ ์˜ ๋ณ€ํ™˜(local transformation) ์„ ๊ฐ€์ง

  • ์˜ˆ์‹œ:

    • Hip์˜ ์œ„์น˜/๋ฐฉํ–ฅ (world ๊ธฐ์ค€): J0J_0J0โ€‹
    • LeftUpLeg์˜ ์œ„์น˜/๋ฐฉํ–ฅ (hip ๊ธฐ์ค€): L1L_1L1โ€‹
    • ์ดํ›„์˜ ๋ณ€ํ™˜: M1M_1M1โ€‹, M2M_2M2โ€‹, ...
Hips
 โ”œโ”€โ”€ Spine
 โ”‚    โ”œโ”€โ”€ Head
 โ”‚    โ”œโ”€โ”€ RightArm โ”€ RightForeArm โ”€ RightHand
 โ”‚    โ””โ”€โ”€ LeftArm โ”€ LeftForeArm โ”€ LeftHand
 โ”œโ”€โ”€ RightUpLeg โ”€ RightLeg โ”€ RightFoot
 โ””โ”€โ”€ LeftUpLeg โ”€ LeftLeg โ”€ LeftFoot

Forward Kinematics Map

  • Skeletal animation์€ ์•„๋ž˜๋กœ ์ •์˜๋จ:

    • Joint hierarchy

    • Link transformation LiL_iLiโ€‹ โ†’ "Skeleton"

    • Joint transformation JiJ_iJiโ€‹ โ†’ "Motion"

Creating Character Animation

Methods for Creating Character Animation

  • "skeleton"๊ณผ "motion"์„ ์–ด๋–ป๊ฒŒ ๋งŒ๋“ค๊ณ  ์„ค์ •ํ•  ๊ฒƒ์ธ๊ฐ€?

  • ๋Œ€ํ‘œ์ ์ธ ๋ฐฉ์‹๋“ค:

    • Keyframe Animation
    • Motion Capture
    • Data-Driven Animation
    • Physics-Based Animation

Keyframe Animation

  • ์• ๋‹ˆ๋ฉ”์ดํ„ฐ๊ฐ€ ์ฃผ์š” ์ด๋ฒคํŠธ๋ฅผ keyframe์œผ๋กœ ์ง€์ •

  • ์ปดํ“จํ„ฐ ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์ค‘๊ฐ„ ํ”„๋ ˆ์ž„์„ ๋ณด๊ฐ„(interpolation) ํ•˜์—ฌ ์ƒ์„ฑ

    • ๊ณผ๊ฑฐ์—๋Š” ์‚ฌ๋žŒ์ด ์ผ์ผ์ด ๊ทธ๋ฆฌ๋˜ ์ž‘์—… (2D ์• ๋‹ˆ๋ฉ”์ด์…˜์—์„œ inbetweening)
    • โ†’ ์ปดํ“จํŒ…์ด ์ด๋ฅผ ์ž๋™ํ™”ํ•˜์—ฌ ๋ฐ˜๋ณต ์ž‘์—…์„ ์ค„์ž„
  • ์ผ๋ฐ˜์ ์œผ๋กœ "skeleton"์€ ์ˆ˜๋™ ์ œ์ž‘

  • "Motion"์€ keyframe ์„ค์ • ๋ฐ ๋‹ค์–‘ํ•œ ํŒŒ๋ผ๋ฏธํ„ฐ ์ œ์–ด๋กœ ๊ตฌ์„ฑ

์ถœ์ฒ˜ ์ด๋ฏธ์ง€:
[https://book.co...](https://book.co... MATLAB 2021 ๊ธฐ์ค€)

  • ์†๊ทธ๋ฆผ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ „ํ†ต์— ๋ฟŒ๋ฆฌ๋ฅผ ๋‘” ์ „ํ†ต์ ์ธ ๋ฐฉ์‹

  • ํ˜„์‹ค์ ์ด๊ฑฐ๋‚˜ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ํƒ€๋‹นํ•œ ์›€์ง์ž„์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์–ด๋ ค์›€

    • ๊ฒฐ๊ณผ์˜ ํ’ˆ์งˆ์€ ์•„ํ‹ฐ์ŠคํŠธ์˜ ์—ญ๋Ÿ‰์— ํฌ๊ฒŒ ์˜์กด
  • ํ˜„์žฌ๋„ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ๋ฒ•

Motion Capture

  • ์•„์ด๋””์–ด: ์‹ค์ œ ์ธ๊ฐ„์˜ ์›€์ง์ž„์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ˜„์‹ค์ ์ธ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ƒ์„ฑ

  • Motion capture ์‹œ์Šคํ…œ์€ ๋‹ค์Œ์„ ์ธก์ •ํ•˜์—ฌ ์‚ฌ๋žŒ ๋˜๋Š” ๋ฌผ์ฒด์˜ ์›€์ง์ž„์„ "์บก์ฒ˜":

    • ํ”ผ๋ถ€ ์œ„์˜ ๋งˆ์ปค ์œ„์น˜
    • ๊ฐ ์‹ ์ฒด ๋ถ€์œ„(๋˜๋Š” joint)์˜ ์œ„์น˜ ๋ฐ ๋ฐฉํ–ฅ
  • "Motion"๊ณผ "skeleton"์€ ํ›„์ฒ˜๋ฆฌ๋ฅผ ํ†ตํ•ด ์ถ”์ถœ๋จ

https://youtu.be/YcS73UCkO20

  • ์‹ค์‹œ๊ฐ„ ์บก์ฒ˜ ํ˜„์žฅ ์‚ฌ์ง„

Bvh Motion Capture Data Example

HIERARCHY
  "Skeleton" {
    ROOT Hips
    {
      OFFSET 0.0 0.0 0.0
      CHANNELS 6 Xposition Yposition Zposition Xrotation Yrotation Zrotation
      JOINT Spine {
        OFFSET 0.0 10.0 0.0
        CHANNELS 3 Xrotation Yrotation Zrotation
        ...
      }
      ...
    }
  }

MOTION {
  Frames: 612
  Frame Time: 0.016667
  0.0000 0.0000 0.0000 -1.4195 -1.4889 0.4398 ...
  0.0177 0.0001 -0.0001 -1.4205 -1.4860 0.4411 ...
  ...
}
  • ์œ„ ๊ตฌ์กฐ๋Š” BVH (Biovision Hierarchy) ํ˜•์‹
    • HIERARCHY๋Š” skeleton์„
    • MOTION์€ ์‹œ๊ฐ„์— ๋”ฐ๋ฅธ joint ์›€์ง์ž„์„ ๊ธฐ์ˆ 

Motion Capture

  • ํ˜„์žฌ๋Š” ์˜ํ™” ๋ฐ ๊ฒŒ์ž„ ์‚ฐ์—… (์ฃผ๋กœ ๋Œ€ํ˜• ์ŠคํŠœ๋””์˜ค)์—์„œ ๋„๋ฆฌ ์‚ฌ์šฉ๋จ

  • ๋‹จ์ :

    • ๋งค์šฐ ๋น„์Œˆ (๊ณ ๊ฐ€ ์žฅ๋น„, ๋†’์€ ์šด์šฉ ๋น„์šฉ)
    • ํ˜„์‹ค์ ์ธ ๋™์ž‘์„ ์ƒ์„ฑํ•˜๊ธด ํ•˜์ง€๋งŒ,
      ์ดฌ์˜ ํ™˜๊ฒฝ๊ณผ ๋™์ผํ•œ ๊ฐ€์ƒ ํ™˜๊ฒฝ์—์„œ๋งŒ ํšจ๊ณผ์ ์ž„

Data-Driven Animation

  • ์•„์ด๋””์–ด:
    ์บก์ฒ˜๋œ motion ๋ฐ์ดํ„ฐ๋ฅผ ํŽธ์ง‘ํ•˜๊ฑฐ๋‚˜ ์žฌ๊ตฌ์„ฑํ•˜๊ฑฐ๋‚˜ ํ•™์Šตํ•˜์—ฌ
    ์žฌ์‚ฌ์šฉ์„ ๊ทน๋Œ€ํ™”ํ•˜๊ณ  ์œ ์—ฐ์„ฑ์„ ๋†’์ž„

  • ๊ตฌ์„ฑ:

    • "Skeleton": motion ๋ฐ์ดํ„ฐ์…‹์—์„œ ์‚ฌ์šฉ
    • "Motion": motion ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜์œผ๋กœ ํŽธ์ง‘/์žฌ๊ตฌ์„ฑ/ํ•ฉ์„ฑ๋จ
  • ์ฃผ์š” ๊ธฐ์ˆ :

    • Motion editing: time warping, motion blending ๋“ฑ
    • Data-driven: motion graph, motion matching ๋“ฑ
    • ๋”ฅ๋Ÿฌ๋‹ ๊ธฐ๋ฐ˜ motion synthesis

Motion Warping ์˜ˆ์‹œ: https://youtu.be/H9dQ42m6rfg
Deep Learning ๊ธฐ๋ฐ˜ synthesis (PFNN 2017): https://youtu.be/k0KfGiwgGkw

Physics-Based Animation (Simulation-Based)

  • ์•„์ด๋””์–ด:
    ๋ฌผ๋ฆฌ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ๊ธฐ๋ฐ˜์œผ๋กœ motion์„ ์ƒ์„ฑ

  • ํŠน์ง•:

    • ๋ฌผ๋ฆฌ์ ์œผ๋กœ ํ•ญ์ƒ ํƒ€๋‹นํ•œ ๋™์ž‘๋งŒ ์ƒ์„ฑ๋จ
    • ์ข…์ข… .urdf ๋“ฑ์˜ ๋ชจ๋ธ ํŒŒ์ผ์—์„œ skeleton์„ ๋ถˆ๋Ÿฌ์˜ด
    • Motion์€ ๋ฌผ๋ฆฌ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์œผ๋กœ ๊ณ„์‚ฐ๋จ
  • ์กฐ๊ฑด:

    • "Controller" ํ•„์š”
      • ๋งค ํ”„๋ ˆ์ž„๋งˆ๋‹ค joint torque๋ฅผ ์กฐ์ ˆํ•ด ๋ชฉํ‘œ ๋™์ž‘ ์ˆ˜ํ–‰ + ๊ท ํ˜• ์œ ์ง€
  • ์ตœ๊ทผ์—๋Š” ๊ฐ•ํ™”ํ•™์Šต(DRL) ๋กœ controller๋ฅผ ํ•™์Šตํ•˜๋Š” ๋ฐฉ์‹์ด ๋„๋ฆฌ ์‚ฌ์šฉ๋จ

DeepMimic (Peng et al. 2018): https://youtu.be/pXp5v2gcz90
PhysicsFC (Kim et al. 2025): https://youtu.be/sdWRBWESC4A

BVH File Format

  • BVH (BioVision Hierarchical data)

    • Biovision์ด๋ผ๋Š” motion capture ํšŒ์‚ฌ๊ฐ€ ๊ฐœ๋ฐœ
    • text ๊ธฐ๋ฐ˜ ํฌ๋งท (์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ์Œ)
  • ๊ตฌ์„ฑ ์š”์†Œ:

    1. Hierarchy section: "Skeleton"์˜ ์ •์  ๋ฐ์ดํ„ฐ
    2. Motion section: "Motion"์˜ ์‹œ๊ฐ„ ๋ณ€ํ™” ๋ฐ์ดํ„ฐ

Biovision BVH - Hierarchy Section

  • "HIERARCHY"๋กœ ์‹œ์ž‘

  • "ROOT": ์ตœ์ƒ์œ„ joint์˜ ์ด๋ฆ„

    • "OFFSET": parent joint๋กœ๋ถ€ํ„ฐ์˜ ๋ณ€์œ„
      โ†’ ์ด๋Š” link transformation LLL์— ํ•ด๋‹น
    • "CHANNELS": ์ด joint์—์„œ์˜ transformation ์ข…๋ฅ˜
      • root์˜ ๊ฒฝ์šฐ 6๊ฐœ (Tx Ty Tz Rx Ry Rz)
      • ๋‚˜๋จธ์ง€๋Š” ๋ณดํ†ต 3๊ฐœ (Rx Ry Rz)
  • "JOINT": ํ•˜์œ„ ๊ด€์ ˆ (๊ตฌ์กฐ๋Š” ROOT์™€ ์œ ์‚ฌํ•จ)

  • "End Site": ๋” ์ด์ƒ ์ž์‹ joint๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ

    • "OFFSET"๋งŒ ๊ฐ€์ง (์›€์ง์ž„ ์—†์Œ)

์˜ˆ์‹œ (๊ตฌ์กฐ๋งŒ ๋ฐœ์ทŒ)

HIERARCHY
ROOT Hips
{
  OFFSET 0.0 0.0 0.0
  CHANNELS 6 Xposition Yposition Zposition Xrotation Yrotation Zrotation
  JOINT chest
  {
    OFFSET ...
    CHANNELS 3 Xrotation Yrotation Zrotation
    JOINT neck
    {
      OFFSET ...
      CHANNELS 3 Xrotation Yrotation Zrotation
      JOINT head
      {
        OFFSET ...
        CHANNELS 3 Xrotation Yrotation Zrotation
        JOINT LeftEye
        ...
      }
    }
  }
}
  • J0: Hips
  • L1: chest๊นŒ์ง€์˜ offset
  • J1: chest
  • L2: neck๊นŒ์ง€์˜ offset
  • J2: neck
  • L3: head๊นŒ์ง€์˜ offset
  • J3: head

Biovision BVH - Motion Section

  • "MOTION"์œผ๋กœ ์‹œ์ž‘

  • "Frames:": ํ”„๋ ˆ์ž„ ์ˆ˜ (์˜ˆ: 179)

  • "Frame Time:": ํ•œ ํ”„๋ ˆ์ž„๋‹น ์‹œ๊ฐ„ (์˜ˆ: 0.016667์ดˆ)

  • ๊ทธ ๋‹ค์Œ ์ค„๋ถ€ํ„ฐ๋Š” ํ”„๋ ˆ์ž„๋ณ„ motion ๊ฐ’์ด ๋‚˜์—ด๋จ

    • ๊ฐ ์ค„์€ 1 ํ”„๋ ˆ์ž„์— ํ•ด๋‹น
    • ๊ฐ ๊ฐ’์€ hierarchy์— ์ง€์ •๋œ channel ์ˆœ์„œ๋Œ€๋กœ ์ •๋ ฌ๋จ
    • ๊ฐ ์—ด์€ 1๊ฐœ์˜ channel์— ํ•ด๋‹น
    • ํšŒ์ „ ๊ฐ’์€ ๋„(degree) ๋‹จ์œ„

์˜ˆ์‹œ (Motion Section)

MOTION
Frames: 179
Frame Time: 0.016667
1.5796 0.099733323 0.091933 -4.117298987 ...
1.5796 0.098974237 0.092352 -4.100061894 ...
...
  • ๊ฐ ์ค„์€ 1 ํ”„๋ ˆ์ž„
  • ๊ฐ ์—ด์€ Hips โ†’ chest โ†’ neck โ†’ head ์ˆœ์œผ๋กœ
    channel ๊ฐœ์ˆ˜๋งŒํผ ๋‚˜์—ด๋จ (6, 3, 3, 3 = ์ด 15๊ฐœ ์—ด)
    • ์˜ˆ:
      • Column 1~6: Hips์˜ Tx Ty Tz Rx Ry Rz
      • Column 7~9: chest์˜ Rx Ry Rz
      • Column 10~12: neck์˜ Rx Ry Rz
      • Column 13~15: head์˜ Rx Ry Rz

Biovision BVH

โ–  ๋ฐ์ดํ„ฐ ํ•ด์„ ๋ฐฉ๋ฒ•

  • ํŠน์ • segment์˜ ์œ„์น˜๋ฅผ ๊ณ„์‚ฐํ•˜๋ ค๋ฉด:

    • Translation ์ •๋ณด

      • ์ผ๋ฐ˜ joint segment:
        • translation ์ •๋ณด๋Š” hierarchy section์˜ OFFSET ๊ฐ’
      • root ๊ฐ์ฒด:
        • OFFSET + motion section์˜ translation ๊ฐ’์˜ ํ•ฉ์ด ์‹ค์ œ translation
    • Rotation ์ •๋ณด

      • motion section์—์„œ ์ œ๊ณต๋จ
  • "CHANNELS" ์ˆœ์„œ๊ฐ€ ๋งค์šฐ ์ค‘์š”:

    • ์˜ˆ: "Zrotation Xrotation Yrotation" ์ˆœ์„œ์ผ ๊ฒฝ์šฐ,
      • Z์ถ• ํšŒ์ „ โ†’ X์ถ• ํšŒ์ „ โ†’ Y์ถ• ํšŒ์ „ ์ˆœ์„œ๋กœ ๋ณ€ํ™˜ ์ ์šฉ
      • ์ด๋Š” ZXY Euler ๊ฐ๋„ ์ฒด๊ณ„์— ํ•ด๋‹น
  • ZXY Euler ๊ฐ๋„๋งŒ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๋ฉด ์•ˆ ๋จ!

    • ์‹ค์ œ BVH ํŒŒ์ผ์— ๋”ฐ๋ผ ์ˆœ์„œ๊ฐ€ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Œ

[Demo] BVH Viewer

![demo image]

http://motion.hahasoha.net/

  • ๋ชฉ๋ก์—์„œ ๋‹ค๋ฅธ motion ์„ ํƒ ๊ฐ€๋Šฅ
  • ํ•ด๋‹น BVH ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ํ…์ŠคํŠธ ์—๋””ํ„ฐ์—์„œ ์—ด์–ด๋ณผ ์ˆ˜ ์žˆ์Œ

10 - Lab - Character Animation

๊ฐœ์š”

  • ์˜ˆ์ œ: Joint & Link ๋ณ€ํ™˜
  • CGR ์—ฐ๊ตฌ์‹ค์˜ ์ตœ์‹  ์—ฐ๊ตฌ ๊ฐ„๋žตํ•œ ์†Œ๊ฐœ

์˜ˆ์ œ: Joint & Link ๋ณ€ํ™˜

์ƒ๊ธฐ: ์ˆœ๋ฐฉํ–ฅ ์šด๋™ํ•™ ๋งต (Forward Kinematics Map)

์ˆœ๋ฐฉํ–ฅ ์šด๋™ํ•™ ๋งต T๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ณ€ํ™˜๋“ค์˜ ๊ต์ฐจ ๊ณฑ์œผ๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค.

  • ๊ด€์ ˆ(Joint) ๋ณ€ํ™˜ (์‹œ๊ฐ„์— ๋”ฐ๋ผ ๋ณ€ํ•จ)
    • ๊ด€์ ˆ ์›€์ง์ž„ (๋ชจ์…˜, motion)
  • ๋งํฌ(Link) ๋ณ€ํ™˜ (์ •์ )
    • ๊ด€์ ˆ ์˜คํ”„์…‹ (์Šค์ผˆ๋ ˆํ†ค, skeleton)

T=โ€ฆTiLiRiโ€ฆT1L1R1T = \dots T_i L_i R_i \dots T_1 L_1 R_1T=โ€ฆTiโ€‹Liโ€‹Riโ€‹โ€ฆT1โ€‹L1โ€‹R1โ€‹

(์—ฌ๊ธฐ์„œ TiT_iTiโ€‹๋Š” i๋ฒˆ์งธ ๊ด€์ ˆ๋กœ์˜ ์ด๋™(translation), RiR_iRiโ€‹๋Š” i๋ฒˆ์งธ ๊ด€์ ˆ์—์„œ์˜ ํšŒ์ „(rotation)์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.)

[์ฝ”๋“œ] 1-joint-link-transform

7-Lab-Hierarchical-Mesh/1-hierarchical.py ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜์—ฌ, ๋™์ผํ•œ ๊ธฐ๋Šฅ์€ ์œ ์ง€ํ•˜๋˜ ์ง€์—ญ(local) ๋ณ€ํ™˜ ๋Œ€์‹  ๊ด€์ ˆ(joint) & ๋งํฌ(link) ๋ณ€ํ™˜์„ ์‚ฌ์šฉํ•˜๋„๋ก ๋งŒ๋“ค์–ด ๋ด…์‹œ๋‹ค.

# ๊ธฐ์กด hierarchical.py์˜ Node ํด๋ž˜์Šค (์ผ๋ถ€)
class Node:
    def __init__(self, name, vao, color, local_transform):
        # ...
        self.local_transform = local_transform
        self.global_transform = glm.mat4()
        # ...
    
    def update_tree_global_transform(self, parent_global_transform):
        self.global_transform = parent_global_transform * self.local_transform
        for child in self.children:
            child.update_tree_global_transform(self.global_transform)
            
# ์ˆ˜์ •๋œ 1-joint-link-transform.py์˜ Node ํด๋ž˜์Šค (์ผ๋ถ€)
class Node:
    def __init__(self, name, vao, color, link_transform):
        self.name = name
        self.vao = vao
        self.color = color
        self.link_transform = link_transform
        self.joint_transform = glm.mat4()
        # self.local_transform = glm.mat4() # ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ
        self.global_transform = glm.mat4()
        # self.children = [] # ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ

    def set_joint_transform(self, joint_transform):
        self.joint_transform = joint_transform

    def update_tree_global_transform(self, parent_global_transform):
        link_transform_from_parent = self.link_transform
        joint_transform = self.joint_transform
        self.global_transform = parent_global_transform * link_transform_from_parent * joint_transform

# ๋ฉ”์ธ ๋ฃจํ”„์—์„œ์˜ ๋ณ€ํ™˜ ์„ค์ •
def main():
    # ... ์ดˆ๊ธฐํ™” ์ฝ”๋“œ ...

    while not glfw.window_should_close(window):
        # ...
        
        # ๊ธฐ์กด hierarchical.py ๋ฐฉ์‹
        # th = glfw.get_time()
        # box.set_local_transform(glm.rotate(th, (0,0,1)))
        # blue.set_local_transform(glm.translate((0,.5,0)) * glm.rotate(th, (0,0,1)))
        # red.set_local_transform(glm.translate((0,.5,0)) * glm.rotate(th, (0,0,1)))
        
        # ์ˆ˜์ •๋œ 1-joint-link-transform.py ๋ฐฉ์‹
        # joint ํ‚คํ”„๋ ˆ์ž„ ๋ณ€ํ™˜
        t = glfw.get_time()
        th = np.sin(t*np.pi)*.5 + np.pi/2.
        joint_transform = glm.rotate(th, (0,0,1))

        # ๊ฐ ๋…ธ๋“œ์˜ joint ๋ณ€ํ™˜ ์„ค์ •
        box.set_joint_transform(glm.mat4())
        blue.set_joint_transform(joint_transform)
        red.set_joint_transform(joint_transform)
        
        # ... ๋ Œ๋”๋ง ์ฝ”๋“œ ...

CGR ์—ฐ๊ตฌ์‹ค์˜ ์ตœ์‹  ์—ฐ๊ตฌ ๊ฐ„๋žตํ•œ ์†Œ๊ฐœ

CGR ์—ฐ๊ตฌ์‹ค ์†Œ๊ฐœ

์ปดํ“จํ„ฐ ๊ทธ๋ž˜ํ”ฝ์Šค & ๋กœ๋ณดํ‹ฑ์Šค ์—ฐ๊ตฌ์‹ค (Computer Graphics & Robotics Lab.)

์ €ํฌ ์—ฐ๊ตฌ ๊ทธ๋ฃน์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ชฉํ‘œ๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

  • ์ธ๊ฐ„, ๋™๋ฌผ, ๋กœ๋ด‡ ๋“ฑ ์ž์—ฐ์ ์ด๊ฑฐ๋‚˜ ์ธ๊ณต์ ์ธ ์ƒ๋ช…์ฒด์˜ ๋‹ค์–‘ํ•œ ์ธก๋ฉด(์›€์ง์ž„, ๊ทผ๋ณธ์ ์ธ ๋ฉ”์ปค๋‹ˆ์ฆ˜ ๋“ฑ)์„ ์ดํ•ดํ•˜๊ณ 
  • ๊ฐ€์ƒ ํ™˜๊ฒฝ์—์„œ ์‹ค์ œ ์„ธ๊ณ„๋กœ ๊ทธ๊ฒƒ๋“ค์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

์ฃผ์š” ์—ฐ๊ตฌ ๋ฐฉํ–ฅ

'์–ด๋–ป๊ฒŒ ์›€์ง์ผ ๊ฒƒ์ธ๊ฐ€?'

  • ๊ด€์ ˆ์ด ์žˆ๋Š” ์บ๋ฆญํ„ฐ
  • ๋กœ๋ด‡

'์›€์ง์ด๋Š” ๋ฒ•์„ ๋ฐฐ์šฐ๊ธฐ (Learning How to Move)'

PhysicsFC: ๋ฌผ๋ฆฌ ๊ธฐ๋ฐ˜ ์ถ•๊ตฌ ์„ ์ˆ˜ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์œ„ํ•œ ์‚ฌ์šฉ์ž ์ œ์–ด ์Šคํ‚ฌ ํ•™์Šต

(PhysicsFC: Learning User-Controlled Skills for a Physics-Based Football Player Controller)

ํ•™ํšŒ: SIGGRAPH 2025, ๋ฐด์ฟ ๋ฒ„, 8์›” 10-14์ผ

์ธ์šฉ: Minsu Kim, Eunho Jung, Yoonsang Lee. "PhysicsFC: Learning User-Controlled Skills for a Physics-Based Football Player Controller." ACM Transactions on Graphics (SIGGRAPH 2025) ๊ฒŒ์žฌ ์Šน์ธ.

ํƒ€๊ฒŸ ์œ„์น˜ ๋„๋‹ฌ ๊ณผ์—…์„ ์œ„ํ•œ ๋”ฅ ๊ฐ•ํ™”ํ•™์Šต ๊ธฐ๋ฐ˜ ๋ชจ์…˜ ๋งค์นญ ํ™œ์šฉ

(Utilizing Motion Matching with Deep Reinforcement Learning for Target Location Tasks)

์›€์ง์ด๋Š” ์žฅ์• ๋ฌผ์ด ์žˆ๋Š” ํƒ€๊ฒŸ ์œ„์น˜ ๋„๋‹ฌ ๊ณผ์—…์„ ์œ„ํ•ด, ์šฐ๋ฆฌ๋Š” 'ํžˆํŠธ ๋ณด์ƒ(hit reward)'๊ณผ '์žฅ์• ๋ฌผ ์ปค๋ฆฌํ˜๋Ÿผ(obstacle curriculum)'์ด๋ผ๋Š” ๋‘ ๊ฐ€์ง€ ์ƒˆ๋กœ์šด ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. (์ด ๊ณผ์—…์—์„œ, ์ •์ฑ…์€ ๋ณด์กฐ ์„ผ์„œ ์ž…๋ ฅ์„ ๋ฐ›์Šต๋‹ˆ๋‹ค.)

์ธ์šฉ: Jeongun Lee, Taesoo Kwon, Hyunjin Shin, Yoonsang Lee. โ€œUtilizing Motion Matching with Deep Reinforcement Learning for Target Location Tasks.โ€ Eurographics 2024 Short Papers, 2024๋…„ 4์›”.

๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ์—์„œ์˜ ๋‹จ์ผ ๊ฐ•์ฒด ์บ๋ฆญํ„ฐ์˜ ์ ์‘ํ˜• ์ถ”์ 

(Adaptive Tracking of a Single-Rigid-Body Character in Various Environments)

์›€์ง์ด๋Š” ์žฅ์• ๋ฌผ์ด ์žˆ๋Š” ํƒ€๊ฒŸ ์œ„์น˜ ๋„๋‹ฌ ๊ณผ์—…์„ ์œ„ํ•ด, ์šฐ๋ฆฌ๋Š” 'ํžˆํŠธ ๋ณด์ƒ(hit reward)'๊ณผ '์žฅ์• ๋ฌผ ์ปค๋ฆฌํ˜๋Ÿผ(obstacle curriculum)'์ด๋ผ๋Š” ๋‘ ๊ฐ€์ง€ ์ƒˆ๋กœ์šด ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. (์ด ๊ณผ์—…์—์„œ, ์ •์ฑ…์€ ๋ณด์กฐ ์„ผ์„œ ์ž…๋ ฅ์„ ๋ฐ›์Šต๋‹ˆ๋‹ค.)

์ธ์šฉ: Taesoo Kwon, Taehong Gu, Jaewon Ahn, Yoonsang Lee. "Adaptive Tracking of a Single-Rigid-Body Character in Various Environments." SA '23: SIGGRAPH Asia 2023 Conference Papers, ๋…ผ๋ฌธ ๋ฒˆํ˜ธ: 118, 2023๋…„ 12์›”.

๋ชจ์…˜ ๋งค์นญ (Motion Matching)

์šฐ๋ฆฌ๋Š” ๋ชจ์…˜ ๋งค์นญ์— ๊ธฐ๋ฐ˜ํ•œ ์ƒํ˜ธ์ž‘์šฉ์  ์บ๋ฆญํ„ฐ ์ œ์–ด ๋ฐฉ๋ฒ•์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.

์ธ์šฉ: Jeongun Lee, Taesoo Kwon, Yoonsang Lee. โ€œInteractive Character Path-Following Using Long-Horizon Motion Matching With Revised Future Queries.โ€ IEEE Access, 2023๋…„ 1์›”.

์ตœ๊ทผ ์ˆ˜์ •:: 25. 6. 19. ์˜คํ›„ 8:26
Contributors: kmbzn
Prev
9 - Orientation & Rotation
Next
11 - Curves

BUILT WITH

CloudflareNode.jsGitHubGitVue.jsJavaScriptVSCodenpm

All trademarks and logos are property of their respective owners.
ยฉ 2025 kmbzn ยท MIT License