Near-exhaustive Precomputation of Secondary Cloth Effects
Doyub Kim1,3, Woojong Koh2, Rahul Narain2, Kayvon Fatahalian1, Adrien Treuille1, and James F . O’Brien2
1Carnegie Mellon University, 2UC Berkeley, 3Microsoft
Near-exhaustive Precomputation of Secondary Cloth Effects Doyub Kim - - PowerPoint PPT Presentation
Near-exhaustive Precomputation of Secondary Cloth Effects Doyub Kim 1,3 , Woojong Koh 2 , Rahul Narain 2 , Kayvon Fatahalian 1 , Adrien Treuille 1 , and James F . OBrien 2 1 Carnegie Mellon University, 2 UC Berkeley, 3 Microsoft Real-time Cloth
Doyub Kim1,3, Woojong Koh2, Rahul Narain2, Kayvon Fatahalian1, Adrien Treuille1, and James F . O’Brien2
1Carnegie Mellon University, 2UC Berkeley, 3Microsoft
29,654 vertices cloth mesh 4,550 CPU-hours of precomputation 66 MB run-time footprint
James and Fatahalian 2003 Wang et al. 2010 Treuille et al. 2006
12 motion capture clips 3,115 frames Source from HDM05
Character Skeleton Pose State
Cloth state (vertex position and velocity)
Unrolled Tree View
Unrolled Tree View
Find the closest neighbor node in same primary state. If found, merge by adding back-link. Unrolled Tree View
Error A Error B
A B
Find the closest neighbor node in same primary state. If found, merge by adding back-link. Unrolled Tree View
Continually run additional simulations to remove largest errors in secondary graph
Error A Error B
A B
Unrolled Tree View
Sort the order of the dead-ends based on the merge error.
Error A Error B
: Sim. work to extend from node A
A B
Unrolled Tree View
Error A
Sort the order of the dead-ends based on the merge error. Then, pop-out the highest-error node and extend the graph.
C
Error C
A
Unrolled Tree View
E D C
Error C
Sort the order of the dead-ends based on the merge error. Then, pop-out the highest-error node and extend the graph.
Error E Error D
Unrolled Tree View
Error C Error D Error E
Max vertex position + time-scaled velocity difference
E D C
Unrolled Tree View
Error C
Error D Error E
E D C
Unrolled Tree View
We can categorize the states with arbitrary metric, such as hood’s state. For example, E is merging two different state of the hood (up and down).
Error C Error D Error E
E D C
Unrolled Tree View
We can categorize the states with arbitrary metric, such as hood’s state. For example, E is merging two different state of the hood (up and down).
Error C Error D Error E
E D C
Unrolled Tree View
Color-coded character motion type (e.g. run, jump, cartwheel, etc)
Back-links
...
b1 b2 bn ...
c1 c2 c3 c4 ... cm
Cloth Simulator Primary Motion Graph Secondary Graph Generation
100k frames over 4,500 CPU-hours
Compression
66 MB
Interactive Playback
70 FPS on my laptop
Error Metric
Cloth Simulator Primary Motion Graph Secondary Graph Generation
100k frames over 4,500 CPU-hours
Compression
66 MB
Interactive Playback
70 FPS on my laptop
Error Metric Error Metric
NSF Grants, UC Lab Fees Research Program Grant Samsung, Google, Qualcomm, Adobe, Pixar, and the Okawa Foundation