This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Dynamic Cloth Simulation: A Comparative Study of Explicit and Implicit NumericalIntegration
Laise Lima de Carvalho, Creto Augusto Vidal, Joaquim Bento Cavalcante-Neto, Suzana Matos Franca de Oliveira
Departamento de ComputacaoUniversidade Federal do Ceara
Abstract—Physically based cloth animation has gained muchattention from researchers in the last two decades, due to thechallenges of realism placed by the film and game industries, aswell as by the applications of virtual reality and e-commerce.Despite the overwhelming achievements in this area, a deeperunderstanding of the numerical techniques involved in thesimulations is still in order. This paper analyzes the behaviorof some useful integration techniques, and tests them in threetypical simulations of cloth animation.
da simulacao, dado que o Δt de cada metodo e diferente,
e de aproximadamente 4s neste exemplo. Na quarta coluna,
estao registrados os tempos de CPU gastos para obter os 4sde simulacao. Na quinta coluna, estao registradas as taxas
medias de frames por segundo obtidas por cada metodo de
simulacao.
O metodo de Euler explıcito gasta pouquıssimo tempo
para produzir um frame, porem precisou de um Δt muito
menor se comparado a todos os outros metodos, por isso
entre os explıcitos foi o que se saiu pior computacional-
mente. Embora os metodos implıcitos sejam incondicional-
mente estaveis, os tamanhos dos passos sao limitados pelo
realismo fısico da simulacao, ou seja, os passos tem que ser
suficientemente pequenos para que as oscilacoes do tecido
durante seu deslocamento seja capturadas corretamente.
Com essa limitacao e devido ao elevado custo computacional
envolvido, seus desempenhos foram muito piores do que
os desempenhos dos metodos explıcitos. Nesse exemplo, o
metodo que teve melhor desempenho computacional foi o
metodo do ponto intermediario.
Todos os metodos produziram animacoes plausıveis. Em-
bora os metodos explıcitos tenham gerado solucoes super-
amortecidas, isto e, a ponta da toalha nao oscila tanto antes
de parar. Os desempenhos dos metodos explıcitos, apesar
de gerarem um numero bem maior de frames durante a
simulacao, foram consistentemente melhores do que os de-
sempenhos dos metodos implıcitos. Esse tipo de constatacao
tambem foi reportado em Volino e Thalmann [24].
Tabela IICOMPARACAO DOS DESEMPENHOS DOS METODOS DE INTEGRACAO
PARA SIMULACAO I.
Metodo Δtmax(s) t(s) Tempo total(s) FPSEuler Explicito 0,0002 4,0002 28,731 696,147Ponto Intermediaro 0,0017 4,0001 6,108 385,232Runge-Kutta 0,0024 4,0008 8,737 190,798Verlet Modificado 0,0012 4,0008 12,908 258,289Kang e Cho [10] 0,002 4,002 53,772 37,212Zhou et al. [27] 0,0018 4,0014 70,955 31,329
A verificacao do realismo pode ser feita na comparacao
dos metodos mostrada na Figura 4. Os metodos explıcitos
e os metodos implıcitos tem comportamentos parecidos.
Porem, os dois metodos implıcitos apresentam oscilacoes
mais realistas. O metodo explıcito de Verlet modificado
[7] mostrou-se mais realista do que os outros metodos
explıcitos, os quais tiveram comportamentos muito amorte-
cidos.
B. Simulacao II: Draping de um tecido sobre uma esfera
A Figura 5 ilustra o estado inicial de uma simulacao
do draping de um tecido sobre uma esfera. Esse teste foi
realizado com um tecido quadrado de 2m×2m, discretizado
como uma grade regular 17×17. O tecido cai em queda livre
(a) t = 0,5002 (b) t = 1,0002 (c) t = 2,7502 (d) t = 4,0002
(e) t = 0,5015 (f) t = 1,0013 (g) t = 2,7506 (h) t = 4,0001
(i) t = 0,5016 (j) t = 1,0008 (k) t = 2,7504 (l) t = 4,0008
(m) t = 0,5004 (n) t = 1,0008 (o) t = 2,7504 (p) t = 4,0008
(q) t = 0,502 (r) t = 1,002 (s) t = 2,752 (t) t = 4,002
(u) t = 0,5004 (v) t = 1,0008 (w) t = 2,7504 (x) t = 4,0014
Figura 4. Comparacao das configuracoes simuladas nos instantes t =0,5s; 1s; 2,75s e 4s. Metodo explıcito de Euler sao mostrados em (a)-(d);Metodo do ponto intermediario em (e)-(h); Metodo de Runge-Kutta em(i)-(l); Metodo de Verlet modificado em (m)-(p); Metodo de Kang e Cho[10] em (q)-(t); Metodo de Zhou et al. [27] em (u)-(x).
sobre uma esfera de raio, r = 0,5m, situada logo abaixo do
tecido. As constantes usadas neste exemplo estao mostradas
na Tabela III. Em comparacao com o primeiro exemplo, o
ka da partıcula foi bem menor, pelo fato da grade ser mais
discretizada.
Tabela IIICONSTANTES DA SIMULACAO II.
Total de partıculas 289Densidade(ρ) 2050kg/m3
Espessura(ε) 0,0001mPeso total 0,82kgka (partıcula) 0,008ks (mola estrutural) 2000N/mkd (mola estrutural) 2N/mks (mola de cisalhamento) 100N/mkd (mola de cisalhamento) 1N/mks (mola de flexao) 0,001N/mkd (mola de flexao) 0,0005N/m
O teste de colisao empregado em todas as simulacoes
e simplificado e consiste apenas de uma comparacao da
distancia de cada partıcula ao centro da esfera, com o
raio da esfera. Para que nao haja penetracao, e aplicada
uma correcao na posicao da partıcula, levando em conta a
velocidade da partıcula no momento da colisao e o vetor
normal a superfıcie da esfera no ponto de colisao com a
partıcula.
A Tabela IV segue o mesmo modelo da Tabela II. A
duracao da simulacao fısica para a analise dos metodos
foi de 3s. Nesse exemplo, todos os metodos explıcitos
necessitaram, como esperado, de um Δt menor do que aque-
les dos metodos implıcitos. Porem, ainda assim, o tempo
necessario para toda a simulacao dos metodos implıcitos foi
bem maior, e estes, por se apresentarem menos amortecidos,
ainda nao chegaram totalmente em um estado de repouso
no instante tempo de 3s. Neste exemplo, o metodo que
teve o melhor desempenho computacional foi o metodo de
Verlet modificado [9]. Como foram usadas muitas partıculas,
todos os metodos tiveram um numero baixo de frames por
segundo.
Tabela IVCOMPARACAO DOS DESEMPENHOS DOS METODOS DE INTEGRACAO
PARA SIMULACAO II.
Metodo Δtmax(s) t(s) Tempo total(s) FPSEuler Explicito 0,00032 3,00032 129,56 72,368Ponto Intermediaro 0,00034 3,00016 245,774 35,9029Runge-Kutta 0,00051 3,00033 314,695 18,6943Verlet Modificado 0,0008 3,0008 107,059 35,0368Kang e Cho [10] 0,00086 3,00054 432,543 8,066Zhou et al. [27] 0,001 3,0 434,861 6,898
A Figura 6 mostra a comparacao entre os metodos na
Simulacao II. Os comportamentos dos metodos foram com-
patıveis com os comportamentos observados na Simulacao
I. Observa-se que o caimento da toalha em cada instante
de tempo e praticamente identico nas tres primeiras li-
nhas da Figura 6 (tres primeiros metodos explıcitos). O
metodo de Verlet modificado [9] (na quarta linha) mostra
uma configuracao um pouco diferente para o instante de
0,6s, mas as duas ultimas configuracoes sao praticamente
identicas as obtidas pelos outros metodos explıcitos. Ja os
metodos implıcitos (nas duas ultimas linhas) apresentaram
configuracoes mais proximas entre si, mas bastante diferen-
tes das configuracoes obtidas com os metodos explıcitos.
O comportamento menos amortecido dos dois metodos
implıcitos faz com que a simulacao se defase das simulacoes
feitas com os metodos explıcitos, o que explica as dis-
crepancias das configuracoes nos instantes de tempo regis-
trados na Figura 6.
(a) t = 0,30016 (b) t = 0,60032 (c) t = 1,20032 (d) t = 3,00032
(e) t = 0,30022 (f) t = 0,6001 (g) t = 1,2002 (h) t = 3,00016
(i) t = 0,30039 (j) t = 0,60027 (k) t = 1,20003 (l) t = 3,00033
(m) t = 0,3008 (n) t = 0,6008 (o) t = 1,2008 (p) t = 3,0008
(q) t = 0,30014 (r) t = 0,60028 (s) t = 1,20056 (t) t = 3,00054
(u) t = 0,301 (v) t = 0,601 (w) t = 1,201 (x) t = 3
Figura 6. Comparacao das configuracoes simuladas nos instantes t =0,3s; 0,6s; 1,2s e 3s. Metodo explıcito de Euler sao mostrados em (a)-(d);Metodo do ponto intermediario em (e)-(h); Metodo de Runge-Kutta em(i)-(l); Metodo de Verlet modificado em (m)-(p); Metodo de Kang e Cho[10] em (q)-(t); Metodo de Zhou et al. [27] em (u)-(x).
C. Simulacao III: Bandeira tremulando ao vento
A Figura 8 ilustra a simulacao de uma bandeira submetida
a rajadas de vento. Esse teste foi realizado com um tecido
de forma retangular de 2m× 1,47m discretizado como uma
grade regular 19× 14. Uma das mudancas, em comparacao
aos outros exemplos, foi na constante de rigidez da mola
de flexao que foi usada com o valor 1,5. Essa mudanca
foi feita para que nao haja tanta autocolisao, ja que esta
nao esta sendo tratada. O tecido comeca parado e estirado
na vertical a um angulo de 45o com a direcao de um
vento com viscosidade de 0,01780kg/s, como mostrado na
Figura 7. A magnitude da velocidade e dada por uma funcao
(a) t = 0,5002 (b) t = 0,1000 (c) t = 2,7500 (d) t = 4,0002
(e) t = 0,5002 (f) t = 1,0021 (g) t = 2,7500 (h) t = 4,0002
(i) t = 0,5004 (j) t = 1,0003 (k) t = 2,7504 (l) t = 4,0005
(m) t = 0,5002 (n) t = 1,0005 (o) t = 2,7502 (p) t = 4,0005
(q) t = 0,5004 (r) t = 1,0008 (s) t = 2,7504 (t) t = 4,0008
(u) t = 0,5005 (v) t = 1,001 (w) t = 2,7508 (x) t = 4,0001
Figura 9. Comparacao das configuracoes simuladas nos instantes t =0,5s; 1s; 2,75s e 4s. Metodo explıcito de Euler sao mostrados em (a)-(d);Metodo do ponto intermediario em (e)-(h); Metodo de Runge-Kutta em(i)-(l); Metodo de Verlet modificado em (m)-(p); Metodo de Kang e Cho[10] em (q)-(t); Metodo de Zhou et al. [27] em (u)-(x).
ha partes do tecido, proximas dos pontos de contato com o
corpo do personagem, que praticamente se movem como um
corpo rıgido. Nessas condicoes, malhas adaptativas poderiam
ser mais vantajosas em relacao as malhas regulares. Os
autores pretendem explorar essa linha de investigacao.
REFERENCIAS
[1] D. Baraff and A. P. Witkin. Large steps in cloth simulation.In Proceedings of SIGGRAPH 98, Computer Graphics Pro-ceedings, Annual Conference Series, pages 43–54, July 1998.
[2] D. Beeman. Some multistep methods for use in moleculardynamics calculations. Journal of Computational Physics,20:130–139, Feb. 1976.
[3] D. E. Breen, D. H. House, and M. J. Wozny. Predictingthe drape of woven cloth using interacting particles. InSIGGRAPH, pages 365–372, 1994.
[4] N. Burtnyk and M. Wein. Computer-generated key frameanimation. Journal of the Society of Motion Picture andTelevision Engineers, 80(3):149–153, Mar. 1971.
[5] E. Catmull. The problems of computer-assisted animation.SIGGRAPH78, 12(3):348–353, Aug. 1978.
[6] K.-J. Choi and H.-S. Ko. Stable but responsive cloth. InProceedings of the 29th annual conference on Computergraphics and interactive techniques, SIGGRAPH ’02, pages604–611. ACM, 2002.
[7] M. Desbrun, P. Schroder, and A. H. Barr. Interactiveanimation of structured deformable objects. In GraphicsInterface’99, pages 1–8, 1999.
[8] V. Dochev and T. Vassilev. Efficient super-elasticity han-dling in mass-spring systems. In Proceedings of the 4thinternational conference conference on Computer systems andtechnologies: e-Learning, pages 483–490. ACM, 2003.
[9] Y. Jiang and R. Wang. Real-time cloth simulation basedon improved verlet algorithm. In Computer-Aided IndustrialDesign Conceptual Design (CAIDCD), 2010 IEEE 11th In-ternational Conference on, volume 1, pages 443–446, Nov.2010.
[10] Y.-M. Kang and H.-G. Cho. Real-time animation of complexvirtual cloth with physical plausibility and numerical stability.Presence: Teleoper. Virtual Environ., 13:668–680, Dec. 2004.
[11] Y.-M. Kang, J.-H. Choi, H.-G. Cho, and C.-J. Park. Fastand stable animation of cloth with an approximated implicitmethod. In Proceedings of the International Conference onComputer Graphics, CGI ’00, pages 247–255. IEEE Com-puter Society, 2000.
[12] S. Kawabata. The standardization and analysis of handevaluation. The Textile Machinery Society of Japan, 1975.
[13] H. Li, Y. Wan, and G. Ma. A cpu-gpu hybrid comput-ing framework for real-time clothing animation. In CloudComputing and Intelligence Systems (CCIS), 2011 IEEEInternational Conference on, pages 391–396, Sept. 2011.
[14] Y.-J. Liu, D.-L. Zhang, and M. M.-F. Yuen. A survey oncad methods in 3d garment design. Computers in Industry,61(6):576–593, 2010.
[15] N. Magnenat-Thalmann, C. Luible, P. Volino, and E. Lyard.From measured fabric to the simulation of cloth. Comput-erAided Design and Computer Graphics 2007 10th IEEEInternational Conference on, pages 7–18, 2007.
[16] S. Min and M. Tianlu. Cloth animation based on particlemodel with constraint. In Proceedings of the 2011 Workshopon Digital Media and Digital Content Management, DMDCM’11, pages 141–145. IEEE Computer Society, 2011.
[17] O. Ozgen and M. Kallmann. Directional constraint enforce-ment for fast cloth simulation. In Proceedings of the 4thInternational Conference on Motion In Games (MIG), 2011.
[18] X. Provot. Deformation constraints in a mass-spring model todescribe rigid cloth behavior. In IN GRAPHICS INTERFACE,pages 147–154, 1995.
[19] G. K. Stylios, T. Wan, and N. Powell. Modelling thedynamic drape of garments on synthetic humans in a virtualfashion show. International Journal of Clothing Science andTechnology, 8(3):95–112, Aug. 1996.
[20] D. Terzopoulos, J. Platt, A. Barr, and K. Fleischert. Elasticallydeformable models. Computer Graphics, 21:205–214, 1987.
[21] D. Tian-Xiang and L. Ji-Jun. Software design of clothdesign and simulation system. In Computer-Aided IndustrialDesign Conceptual Design, 2009. CAID CD 2009. IEEE 10thInternational Conference on, pages 605–609, Nov. 2009.
[22] T. Vassilev, B. Spanlang, and Y. Chrysanthou. Fast clothanimation on walking avatars. Computer Graphics Forum,20(3):260–267, 2001.
[23] L. Verlet. Computer ”experiments”on classical fluids. i. ther-modynamical properties of lennard-jones molecules. Phys.Rev., 159:98–103, July 1967.
[24] P. Volino and N. Magnenat-thalmann. Comparing efficiencyof integration methods for cloth simulation. In ComputerGraphics International Proceedings, pages 265–274. IEEEComputer Society, 2001.
[25] P. Volino and N. Magnenat-Thalmann. Implicit midpoint in-tegration and adaptive damping for efficient cloth simulation.In In proceedings of Computer Animation and Virtual Worlds,pages 3–4. Wiley, 2005.
[26] J. Wang, X. Hu, and Y. Zhuang. The dynamic cloth sim-ulation performance analysis based on the improved spring-mass model. Wireless Networks and Information Systems,International Conference on, pages 282–285, 2009.
[27] C. Zhou, H. Zhu, X. Jin, and J. Feng. Efficient and simplecloth animation. In Proceedings of the Ninth InternationalConference on Computer Aided Design and Computer Graph-ics, CAD-CG ’05, pages 483–488. IEEE Computer Society,2005.