SlideShare a Scribd company logo
1 of 41
Download to read offline
View-Dependent Control
of Elastic Rod Simulation
for 3D Character Animation
Yuki Koyama Takeo Igarashi
The University of TokyoThe University of TokyoThe University of Tokyo
SCA ‘13
Motivation
• 2D-like stylizations in 3DCG
– View-dependent, inconsistent shapes
© Fujio, Fujiko F., Shogakukan
Example of inconsistency:
Existing method
• View-dependent geometry (VDG)
– [Rademacher, 1999]
– Changing the geometry according to the view
direction
view-direction
camera
character
Existing method
• View-dependent geometry (VDG)
– [Rademacher, 1999]
– Changing the geometry according to the view
direction
Video
Existing method
• View-dependent geometry (VDG)
– [Rademacher, 1999]
– Changing the geometry according to the view
direction
Only for static geometry
Our goal
• Extending VDG for physical simulation
– Passively deformable rod structures
Target: hairs, ties, long ears, …
DEMO
Big Buck BunnyBig Buck Bunny
Demo
• Side-by-side comparison
Fixed view Camera view
Video
OTHER RESULTS
Other results
• Front hair avoiding the eyes
Video
Other results
• Front hair avoiding the eyes
Without our method With our method
Other results
• Hair always facing the camera
Video
Other results
• Hair always facing the camera
– This “cowlick” effect is popular especially
in recent Japanese 2D animationsin recent Japanese 2D animationsin recent Japanese 2D animationsin recent Japanese 2D animations
OUR METHOD
User inputs
• A skinned mesh
– Whose deformable rods are represented by
joint chains
Joint chains
• A skinned mesh
– Whose deformable rods are represented by
joint chains
• Pairs of…
– Key example pose
– Key view direction
(base pose)
User inputs
P0
P5
P4
P3
P2
P1
Rod simulation framework
• Oriented Particles
– [Müller and Chentanez, 2011]
– Based on position-based dynamics
• Simple distance constraint
– For ensuring inextensibility
Overview of
the runtime operations
1. Calculate weights
2. Blend poses
3. Simulate
(base pose) (example pose)
Current deformed pose
P0
P1
Overview of
the runtime operations
1. Calculate weights
2. Blend poses
3. Simulate
(base pose) (example pose)
Current deformed pose
view direction
P0
P1
w
Overview of
the runtime operations
1. Calculate weights
2. Blend poses
3. Simulate
(base pose) (example pose)
Current deformed pose
P0
P1
P(w)
Overview of
the runtime operations
1. Calculate weights
2. Blend poses
3. Simulate
(base pose) (example pose)
Current deformed pose
Internal elastic force
= goal pose
P0
P1
P(w)
Technical details
• Weight calculation
• Suppression of ghost momentum
Technical details
• Weight calculation
• Suppression of ghost momentum
Weight calculation
• The algorithm of VDG [Rademacher, 1999]
– Wrapping the model with a triangle mesh
• Each vertex corresponds to a key view direction
Video
Weight calculation
• The algorithm of VDG [Rademacher, 1999]
– Wrapping the model with a triangle mesh
• Each vertex corresponds to a key view direction
– Linear interpolation on a triangle
Weight calculation
• The algorithm of VDG [Rademacher, 1999]
– Wrapping the model with a triangle mesh
• Each vertex corresponds to a key view direction
– Linear interpolation on a triangle
– Difficulties
• Necessary to give at least 4 inputs
• No base (default) pose
Weight calculation
• Our algorithm (scattered interpolation)
– Consider Gaussian weights on a sphere
wi
= i i( )= exp i i( )
2
i =1,2,…( )
1
2
3
P w( )=
wi
Pi
i=0
wii=0
w0
= max 0, 1 wii=1( )
Weight calculation
• Our algorithm (scattered interpolation)
– Consider Gaussian weights on a sphere
– Arbitrary number of inputs
– Base (default) pose
– Influence control by i
wi
= i i( )= exp i i( )
2
i =1,2,…( )
1
2
3
w0
= max 0, 1 wii=1( )
Technical details
• Weight calculation
• Suppression of ghost momentum
Problem: ghost momentum
• Ghost momentum
– The rod increases undesired momentum
as the view direction changes
– It looks “alive”
Video
Problem: ghost momentum
• A possible naïve approach
– Suppressing ALL momentum
• Simple damping technique
– Undesirable
• Our solution
– Damping ONLY the ghost momentum
• “Suppression algorithm”
Suppression algorithm
• Separate velocity and position update
(base pose) (example pose)
Current deformed pose
Internal force
External force
P0
P1
P(w)
Suppression algorithm
• Separate velocity and position update
(base pose) (example pose)
(a)
(b)
(a): force that causes the ghost momentum
(b): force that doesn’t cause the ghost momentum
P0
P1
P(w)
Suppression algorithm
• Separate velocity and position update
(base pose) (example pose)
(a)
(b)
(a): force that causes the ghost momentum
(b): force that doesn’t cause the ghost momentum
P0
P1
P(w)P(w )
Suppression algorithm
• Separate velocity and position update
(base pose) (example pose)
Goal pose for
velocity update
Goal pose for
position update
P0
P1
P(w)P(w )
Suppression algorithm
• Comparison
Without suppression With suppression
Video Video
Suppression algorithm
• Comparison
– Failure case (still ghost momentum remaining)
Without suppression With suppression
Video Video
Suppression algorithm
• Limitations
– Cannot completely remove the momentum
• Ghost momentum still remains
– No theoretical ground
• But practically useful?
– Doubled computational costs
• Simulation runs twice (for position and velocity)
CONCLUSION
Conclusion
• Concept
– View-dependent control of simulated rods
• Techniques
– Calculating weights from view directions
– Suppressing ghost momentum
• Limitations
– Suppression algorithm is not complete
• Empirically (not theoretically) derived algorithm
– Not physically accurate
Thank you for listening
• Characters used in our experiments
– Hatsune Miku © Crypton Future Media, Inc.
– Big Buck Bunny © Blender Foundation
• 3D models by Yamamoto, Kio, and Blender Foundation
Video

More Related Content

Viewers also liked

勉強会資料 トピック紹介「音楽と機械学習」
勉強会資料 トピック紹介「音楽と機械学習」勉強会資料 トピック紹介「音楽と機械学習」
勉強会資料 トピック紹介「音楽と機械学習」
Itaru Otomaru
 

Viewers also liked (9)

近年の音楽市場の変化〜同人音楽の登場〜
近年の音楽市場の変化〜同人音楽の登場〜近年の音楽市場の変化〜同人音楽の登場〜
近年の音楽市場の変化〜同人音楽の登場〜
 
勉強会資料 トピック紹介「音楽と機械学習」
勉強会資料 トピック紹介「音楽と機械学習」勉強会資料 トピック紹介「音楽と機械学習」
勉強会資料 トピック紹介「音楽と機械学習」
 
綺麗なデザインの盛り付け方 -超小ネタ編-
綺麗なデザインの盛り付け方 -超小ネタ編-綺麗なデザインの盛り付け方 -超小ネタ編-
綺麗なデザインの盛り付け方 -超小ネタ編-
 
ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14
 
協調フィルタリングを利用した推薦システム構築
協調フィルタリングを利用した推薦システム構築協調フィルタリングを利用した推薦システム構築
協調フィルタリングを利用した推薦システム構築
 
C++ マルチスレッド 入門
C++ マルチスレッド 入門C++ マルチスレッド 入門
C++ マルチスレッド 入門
 
情報推薦システム入門:講義スライド
情報推薦システム入門:講義スライド情報推薦システム入門:講義スライド
情報推薦システム入門:講義スライド
 
よいコード、わるいコード
よいコード、わるいコードよいコード、わるいコード
よいコード、わるいコード
 
推薦システムを構築する手順書 with Azure Machine Learning
推薦システムを構築する手順書 with Azure Machine Learning推薦システムを構築する手順書 with Azure Machine Learning
推薦システムを構築する手順書 with Azure Machine Learning
 

Similar to View-Dependent Control of Elastic Rod Simulation for 3D Character Animation (SCA '13)

Similar to View-Dependent Control of Elastic Rod Simulation for 3D Character Animation (SCA '13) (6)

Design Method of 3D Printable Ergonomically Personalized Stabilizer - HCII 20...
Design Method of 3D Printable Ergonomically Personalized Stabilizer - HCII 20...Design Method of 3D Printable Ergonomically Personalized Stabilizer - HCII 20...
Design Method of 3D Printable Ergonomically Personalized Stabilizer - HCII 20...
 
Scanline Homographies for Rolling-Shutter Plane Absolute Pose
Scanline Homographies for Rolling-Shutter Plane Absolute PoseScanline Homographies for Rolling-Shutter Plane Absolute Pose
Scanline Homographies for Rolling-Shutter Plane Absolute Pose
 
Extending the Animation Rigging package with C# – Unite Copenhagen 2019
Extending the Animation Rigging package with C# – Unite Copenhagen 2019Extending the Animation Rigging package with C# – Unite Copenhagen 2019
Extending the Animation Rigging package with C# – Unite Copenhagen 2019
 
Navigation in 3 d environment with reinforcement learning by Predrag Njegovan...
Navigation in 3 d environment with reinforcement learning by Predrag Njegovan...Navigation in 3 d environment with reinforcement learning by Predrag Njegovan...
Navigation in 3 d environment with reinforcement learning by Predrag Njegovan...
 
Unsupervised Collaborative Learning of Keyframe Detection and Visual Odometry...
Unsupervised Collaborative Learning of Keyframe Detection and Visual Odometry...Unsupervised Collaborative Learning of Keyframe Detection and Visual Odometry...
Unsupervised Collaborative Learning of Keyframe Detection and Visual Odometry...
 
Automatic System for Editing Dance Videos Recorded Using Multiple Cameras
Automatic System for Editing Dance Videos Recorded Using Multiple CamerasAutomatic System for Editing Dance Videos Recorded Using Multiple Cameras
Automatic System for Editing Dance Videos Recorded Using Multiple Cameras
 

More from Yuki Koyama

More from Yuki Koyama (7)

[UIST 2022] BO as Assistant: Using Bayesian Optimization for Asynchronously G...
[UIST 2022] BO as Assistant: Using Bayesian Optimization for Asynchronously G...[UIST 2022] BO as Assistant: Using Bayesian Optimization for Asynchronously G...
[UIST 2022] BO as Assistant: Using Bayesian Optimization for Asynchronously G...
 
[SIGGRAPH 2020] Sequential Gallery for Interactive Visual Design Optimization
[SIGGRAPH 2020] Sequential Gallery for Interactive Visual Design Optimization[SIGGRAPH 2020] Sequential Gallery for Interactive Visual Design Optimization
[SIGGRAPH 2020] Sequential Gallery for Interactive Visual Design Optimization
 
Precomputed Optimal One-Hop Motion Transition for Responsive Character Animat...
Precomputed Optimal One-Hop Motion Transition for Responsive Character Animat...Precomputed Optimal One-Hop Motion Transition for Responsive Character Animat...
Precomputed Optimal One-Hop Motion Transition for Responsive Character Animat...
 
Decomposing Images into Layers with Advanced Color Blending [Pacific Graphics...
Decomposing Images into Layers with Advanced Color Blending [Pacific Graphics...Decomposing Images into Layers with Advanced Color Blending [Pacific Graphics...
Decomposing Images into Layers with Advanced Color Blending [Pacific Graphics...
 
[CHI 2018] OptiMo: Optimization-Guided Motion Editing for Keyframe Character ...
[CHI 2018] OptiMo: Optimization-Guided Motion Editing for Keyframe Character ...[CHI 2018] OptiMo: Optimization-Guided Motion Editing for Keyframe Character ...
[CHI 2018] OptiMo: Optimization-Guided Motion Editing for Keyframe Character ...
 
[SIGGRAPH 2017] Sequential Line Search for Efficient Visual Design Optimizati...
[SIGGRAPH 2017] Sequential Line Search for Efficient Visual Design Optimizati...[SIGGRAPH 2017] Sequential Line Search for Efficient Visual Design Optimizati...
[SIGGRAPH 2017] Sequential Line Search for Efficient Visual Design Optimizati...
 
[IPSJ-ONE 2017] コンピュテーションがつなぐ人とデザイン
[IPSJ-ONE 2017] コンピュテーションがつなぐ人とデザイン[IPSJ-ONE 2017] コンピュテーションがつなぐ人とデザイン
[IPSJ-ONE 2017] コンピュテーションがつなぐ人とデザイン
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Recently uploaded (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

View-Dependent Control of Elastic Rod Simulation for 3D Character Animation (SCA '13)

  • 1. View-Dependent Control of Elastic Rod Simulation for 3D Character Animation Yuki Koyama Takeo Igarashi The University of TokyoThe University of TokyoThe University of Tokyo SCA ‘13
  • 2. Motivation • 2D-like stylizations in 3DCG – View-dependent, inconsistent shapes © Fujio, Fujiko F., Shogakukan Example of inconsistency:
  • 3. Existing method • View-dependent geometry (VDG) – [Rademacher, 1999] – Changing the geometry according to the view direction view-direction camera character
  • 4. Existing method • View-dependent geometry (VDG) – [Rademacher, 1999] – Changing the geometry according to the view direction Video
  • 5. Existing method • View-dependent geometry (VDG) – [Rademacher, 1999] – Changing the geometry according to the view direction Only for static geometry
  • 6. Our goal • Extending VDG for physical simulation – Passively deformable rod structures Target: hairs, ties, long ears, …
  • 8. Demo • Side-by-side comparison Fixed view Camera view Video
  • 10. Other results • Front hair avoiding the eyes Video
  • 11. Other results • Front hair avoiding the eyes Without our method With our method
  • 12. Other results • Hair always facing the camera Video
  • 13. Other results • Hair always facing the camera – This “cowlick” effect is popular especially in recent Japanese 2D animationsin recent Japanese 2D animationsin recent Japanese 2D animationsin recent Japanese 2D animations
  • 15. User inputs • A skinned mesh – Whose deformable rods are represented by joint chains Joint chains
  • 16. • A skinned mesh – Whose deformable rods are represented by joint chains • Pairs of… – Key example pose – Key view direction (base pose) User inputs P0 P5 P4 P3 P2 P1
  • 17. Rod simulation framework • Oriented Particles – [Müller and Chentanez, 2011] – Based on position-based dynamics • Simple distance constraint – For ensuring inextensibility
  • 18. Overview of the runtime operations 1. Calculate weights 2. Blend poses 3. Simulate (base pose) (example pose) Current deformed pose P0 P1
  • 19. Overview of the runtime operations 1. Calculate weights 2. Blend poses 3. Simulate (base pose) (example pose) Current deformed pose view direction P0 P1 w
  • 20. Overview of the runtime operations 1. Calculate weights 2. Blend poses 3. Simulate (base pose) (example pose) Current deformed pose P0 P1 P(w)
  • 21. Overview of the runtime operations 1. Calculate weights 2. Blend poses 3. Simulate (base pose) (example pose) Current deformed pose Internal elastic force = goal pose P0 P1 P(w)
  • 22. Technical details • Weight calculation • Suppression of ghost momentum
  • 23. Technical details • Weight calculation • Suppression of ghost momentum
  • 24. Weight calculation • The algorithm of VDG [Rademacher, 1999] – Wrapping the model with a triangle mesh • Each vertex corresponds to a key view direction Video
  • 25. Weight calculation • The algorithm of VDG [Rademacher, 1999] – Wrapping the model with a triangle mesh • Each vertex corresponds to a key view direction – Linear interpolation on a triangle
  • 26. Weight calculation • The algorithm of VDG [Rademacher, 1999] – Wrapping the model with a triangle mesh • Each vertex corresponds to a key view direction – Linear interpolation on a triangle – Difficulties • Necessary to give at least 4 inputs • No base (default) pose
  • 27. Weight calculation • Our algorithm (scattered interpolation) – Consider Gaussian weights on a sphere wi = i i( )= exp i i( ) 2 i =1,2,…( ) 1 2 3 P w( )= wi Pi i=0 wii=0 w0 = max 0, 1 wii=1( )
  • 28. Weight calculation • Our algorithm (scattered interpolation) – Consider Gaussian weights on a sphere – Arbitrary number of inputs – Base (default) pose – Influence control by i wi = i i( )= exp i i( ) 2 i =1,2,…( ) 1 2 3 w0 = max 0, 1 wii=1( )
  • 29. Technical details • Weight calculation • Suppression of ghost momentum
  • 30. Problem: ghost momentum • Ghost momentum – The rod increases undesired momentum as the view direction changes – It looks “alive” Video
  • 31. Problem: ghost momentum • A possible naïve approach – Suppressing ALL momentum • Simple damping technique – Undesirable • Our solution – Damping ONLY the ghost momentum • “Suppression algorithm”
  • 32. Suppression algorithm • Separate velocity and position update (base pose) (example pose) Current deformed pose Internal force External force P0 P1 P(w)
  • 33. Suppression algorithm • Separate velocity and position update (base pose) (example pose) (a) (b) (a): force that causes the ghost momentum (b): force that doesn’t cause the ghost momentum P0 P1 P(w)
  • 34. Suppression algorithm • Separate velocity and position update (base pose) (example pose) (a) (b) (a): force that causes the ghost momentum (b): force that doesn’t cause the ghost momentum P0 P1 P(w)P(w )
  • 35. Suppression algorithm • Separate velocity and position update (base pose) (example pose) Goal pose for velocity update Goal pose for position update P0 P1 P(w)P(w )
  • 36. Suppression algorithm • Comparison Without suppression With suppression Video Video
  • 37. Suppression algorithm • Comparison – Failure case (still ghost momentum remaining) Without suppression With suppression Video Video
  • 38. Suppression algorithm • Limitations – Cannot completely remove the momentum • Ghost momentum still remains – No theoretical ground • But practically useful? – Doubled computational costs • Simulation runs twice (for position and velocity)
  • 40. Conclusion • Concept – View-dependent control of simulated rods • Techniques – Calculating weights from view directions – Suppressing ghost momentum • Limitations – Suppression algorithm is not complete • Empirically (not theoretically) derived algorithm – Not physically accurate
  • 41. Thank you for listening • Characters used in our experiments – Hatsune Miku © Crypton Future Media, Inc. – Big Buck Bunny © Blender Foundation • 3D models by Yamamoto, Kio, and Blender Foundation Video