Skip to content
Snippets Groups Projects
Commit 5a23aa90 authored by bobarna's avatar bobarna
Browse files

further work section

parent 4906efe8
No related branches found
No related tags found
No related merge requests found
...@@ -24,25 +24,34 @@ ...@@ -24,25 +24,34 @@
\citation{PixarPaper} \citation{PixarPaper}
\citation{PixarPaper} \citation{PixarPaper}
\citation{PixarPaper} \citation{PixarPaper}
\citation{MullerPBD}
\citation{UmenhofferSimulation} \citation{UmenhofferSimulation}
\bibstyle{ACM-Reference-Format} \citation{MullerPBD}
\bibdata{references} \citation{FTLHair}
\bibcite{PixarPaper}{{1}{2013}{{Iben et~al\mbox {.}}}{{Iben, Meyer, Petrovic, Soares, Anderson, and Witkin}}} \citation{FTLHair}
\bibcite{UmenhofferSimulation}{{2}{2016}{{Umenhoffer et~al\mbox {.}}}{{Umenhoffer, Marschal, and Suti}}}
\@writefile{toc}{\contentsline {section}{\numberline {2}Overview of considered methods}{2}{section.2}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {2}Overview of considered methods}{2}{section.2}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Mass Spring System}{2}{subsection.2.1}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Mass Spring System}{2}{subsection.2.1}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {2.2}Position Based Dynamics (PBD)}{2}{subsection.2.2}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {2.2}Position Based Dynamics (PBD)}{2}{subsection.2.2}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {2.3}Follow the Leader (FTL)}{2}{subsection.2.3}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {2.3}Follow-the-Leader (FTL)}{2}{subsection.2.3}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{Acknowledgments}{2}{section*.7}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {3}Results}{2}{section.3}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{References}{2}{section*.9}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {4}Conclusion}{2}{section.4}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {A}Supplementary development}{2}{appendix.A}\protected@file@percent } \bibstyle{ACM-Reference-Format}
\@writefile{toc}{\contentsline {subsection}{\numberline {A.1}OBJ Reader}{2}{subsection.A.1}\protected@file@percent } \bibdata{references}
\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Supported OBJ Data Types\relax }}{2}{table.caption.10}\protected@file@percent } \bibcite{PixarPaper}{{1}{2013}{{Iben et~al\mbox {.}}}{{Iben, Meyer, Petrovic, Soares, Anderson, and Witkin}}}
\newlabel{tab:objdatatypes}{{1}{2}{Supported OBJ Data Types\relax }{table.caption.10}{}} \bibcite{MullerPBD}{{2}{2007}{{M\"{u}ller et~al\mbox {.}}}{{M\"{u}ller, Heidelberger, Hennix, and Ratcliff}}}
\@writefile{toc}{\contentsline {subsection}{\numberline {A.2}Recording the simulation on-the-fly}{2}{subsection.A.2}\protected@file@percent } \bibcite{FTLHair}{{3}{2012}{{Müller et~al\mbox {.}}}{{Müller, Kim, and Chentanez}}}
\bibcite{UmenhofferSimulation}{{4}{2016}{{Umenhoffer et~al\mbox {.}}}{{Umenhoffer, Marschal, and Suti}}}
\newlabel{tocindent-1}{0pt} \newlabel{tocindent-1}{0pt}
\newlabel{tocindent0}{0pt} \newlabel{tocindent0}{0pt}
\newlabel{tocindent1}{6.95pt} \newlabel{tocindent1}{6.95pt}
\newlabel{tocindent2}{13.79999pt} \newlabel{tocindent2}{13.79999pt}
\newlabel{tocindent3}{0pt} \newlabel{tocindent3}{0pt}
\@writefile{toc}{\contentsline {section}{\numberline {5}Further Work}{3}{section.5}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{Acknowledgments}{3}{section*.7}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{References}{3}{section*.9}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {A}Supplementary development}{3}{appendix.A}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {A.1}OBJ Reader}{3}{subsection.A.1}\protected@file@percent }
\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Supported OBJ Data Types\relax }}{3}{table.caption.10}\protected@file@percent }
\newlabel{tab:objdatatypes}{{1}{3}{Supported OBJ Data Types\relax }{table.caption.10}{}}
\@writefile{toc}{\contentsline {subsection}{\numberline {A.2}Recording the simulation on-the-fly}{3}{subsection.A.2}\protected@file@percent }
\newlabel{TotPages}{{3}{3}{}{page.3}{}} \newlabel{TotPages}{{3}{3}{}{page.3}{}}
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
%%% Do NOT edit. File created by BibTeX with style %%% Do NOT edit. File created by BibTeX with style
%%% ACM-Reference-Format-Journals [18-Jan-2012]. %%% ACM-Reference-Format-Journals [18-Jan-2012].
\begin{thebibliography}{2} \begin{thebibliography}{4}
%%% ==================================================================== %%% ====================================================================
%%% NOTE TO THE USER: you can override these defaults by providing %%% NOTE TO THE USER: you can override these defaults by providing
...@@ -59,6 +59,38 @@ ...@@ -59,6 +59,38 @@
\shownote{\url{http://graphics.pixar.com/library/CurlyHairB/paper.pdf}.} \shownote{\url{http://graphics.pixar.com/library/CurlyHairB/paper.pdf}.}
\bibitem[\protect\citeauthoryear{M\"{u}ller, Heidelberger, Hennix, and
Ratcliff}{M\"{u}ller et~al\mbox{.}}{2007}]%
{MullerPBD}
\bibfield{author}{\bibinfo{person}{Matthias M\"{u}ller}, \bibinfo{person}{Bruno
Heidelberger}, \bibinfo{person}{Marcus Hennix}, {and} \bibinfo{person}{John
Ratcliff}.} \bibinfo{year}{2007}\natexlab{}.
\newblock \showarticletitle{Position Based Dynamics}.
\newblock \bibinfo{journal}{\emph{J. Vis. Comun. Image Represent.}}
\bibinfo{volume}{18}, \bibinfo{number}{2} (\bibinfo{date}{April}
\bibinfo{year}{2007}), \bibinfo{pages}{109–118}.
\newblock
\showISSN{1047-3203}
\urldef\tempurl%
\url{https://doi.org/10.1016/j.jvcir.2007.01.005}
\showDOI{\tempurl}
\bibitem[\protect\citeauthoryear{Müller, Kim, and Chentanez}{Müller
et~al\mbox{.}}{2012}]%
{FTLHair}
\bibfield{author}{\bibinfo{person}{Matthias Müller}, \bibinfo{person}{Tae
Kim}, {and} \bibinfo{person}{Nuttapong Chentanez}.}
\bibinfo{year}{2012}\natexlab{}.
\newblock \showarticletitle{Fast Simulation of Inextensible Hair and Fur}.
\newblock \bibinfo{journal}{\emph{VRIPHYS 2012 - 9th Workshop on Virtual
Reality Interactions and Physical Simulations}}.
\newblock
\urldef\tempurl%
\url{https://doi.org/10.2312/PE/vriphys/vriphys12/039-044}
\showDOI{\tempurl}
\bibitem[\protect\citeauthoryear{Umenhoffer, Marschal, and Suti}{Umenhoffer \bibitem[\protect\citeauthoryear{Umenhoffer, Marschal, and Suti}{Umenhoffer
et~al\mbox{.}}{2016}]% et~al\mbox{.}}{2016}]%
{UmenhofferSimulation} {UmenhofferSimulation}
......
...@@ -11,49 +11,51 @@ Reallocated glb_str_ptr (elt_size=4) to 20 items from 10. ...@@ -11,49 +11,51 @@ Reallocated glb_str_ptr (elt_size=4) to 20 items from 10.
Reallocated global_strs (elt_size=200001) to 20 items from 10. Reallocated global_strs (elt_size=200001) to 20 items from 10.
Reallocated glb_str_end (elt_size=4) to 20 items from 10. Reallocated glb_str_end (elt_size=4) to 20 items from 10.
Reallocated singl_function (elt_size=4) to 100 items from 50. Reallocated singl_function (elt_size=4) to 100 items from 50.
Warning--empty booktitle in FTLHair
Warning--no number and no volume in FTLHair
Warning--empty booktitle in UmenhofferSimulation Warning--empty booktitle in UmenhofferSimulation
Warning--empty publisher in UmenhofferSimulation Warning--empty publisher in UmenhofferSimulation
Warning--empty address in UmenhofferSimulation Warning--empty address in UmenhofferSimulation
Warning--page numbers missing in both pages and numpages fields in UmenhofferSimulation Warning--page numbers missing in both pages and numpages fields in UmenhofferSimulation
You've used 2 entries, You've used 4 entries,
5959 wiz_defined-function locations, 5959 wiz_defined-function locations,
1349 strings with 15369 characters, 1372 strings with 15950 characters,
and the built_in function-call counts, 2600 in all, are: and the built_in function-call counts, 5148 in all, are:
= -- 243 = -- 641
> -- 115 > -- 208
< -- 0 < -- 0
+ -- 38 + -- 68
- -- 36 - -- 64
* -- 204 * -- 378
:= -- 271 := -- 502
add.period$ -- 11 add.period$ -- 21
call.type$ -- 2 call.type$ -- 4
change.case$ -- 17 change.case$ -- 32
chr.to.int$ -- 2 chr.to.int$ -- 4
cite$ -- 6 cite$ -- 10
duplicate$ -- 234 duplicate$ -- 438
empty$ -- 158 empty$ -- 294
format.name$ -- 44 format.name$ -- 80
if$ -- 574 if$ -- 1246
int.to.chr$ -- 2 int.to.chr$ -- 2
int.to.str$ -- 1 int.to.str$ -- 1
missing$ -- 10 missing$ -- 19
newline$ -- 62 newline$ -- 85
num.names$ -- 16 num.names$ -- 32
pop$ -- 101 pop$ -- 172
preamble$ -- 1 preamble$ -- 1
purify$ -- 35 purify$ -- 68
quote$ -- 0 quote$ -- 0
skip$ -- 90 skip$ -- 172
stack$ -- 0 stack$ -- 0
substring$ -- 148 substring$ -- 301
swap$ -- 26 swap$ -- 54
text.length$ -- 0 text.length$ -- 0
text.prefix$ -- 0 text.prefix$ -- 0
top$ -- 0 top$ -- 0
type$ -- 60 type$ -- 107
warning$ -- 4 warning$ -- 6
while$ -- 9 while$ -- 18
width$ -- 0 width$ -- 0
write$ -- 80 write$ -- 120
(There were 4 warnings) (There were 6 warnings)
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/Debian) (preloaded format=pdflatex 2020.12.8) 8 DEC 2020 01:06 This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/Debian) (preloaded format=pdflatex 2020.12.8) 8 DEC 2020 15:05
entering extended mode entering extended mode
restricted \write18 enabled. restricted \write18 enabled.
%&-line parsing enabled. %&-line parsing enabled.
...@@ -945,7 +945,7 @@ File: mt-msa.cfg 2006/02/04 v1.1 microtype config. file: AMS symbols (a) (RS) ...@@ -945,7 +945,7 @@ File: mt-msa.cfg 2006/02/04 v1.1 microtype config. file: AMS symbols (a) (RS)
(/usr/share/texlive/texmf-dist/tex/latex/microtype/mt-msb.cfg (/usr/share/texlive/texmf-dist/tex/latex/microtype/mt-msb.cfg
File: mt-msb.cfg 2005/06/01 v1.0 microtype config. file: AMS symbols (b) (RS) File: mt-msb.cfg 2005/06/01 v1.0 microtype config. file: AMS symbols (b) (RS)
) )
<teaser.png, id=51, 602.25pt x 401.5pt> <teaser.png, id=63, 602.25pt x 401.5pt>
File: teaser.png Graphic file (type png) File: teaser.png Graphic file (type png)
<use teaser.png> <use teaser.png>
Package pdftex.def Info: teaser.png used on input line 109. Package pdftex.def Info: teaser.png used on input line 109.
...@@ -984,6 +984,9 @@ Overfull \hbox (5.12202pt too wide) in paragraph at lines 109--109 ...@@ -984,6 +984,9 @@ Overfull \hbox (5.12202pt too wide) in paragraph at lines 109--109
[1.1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map} [1.1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}
<./teaser.png>] <./teaser.png>]
Underfull \vbox (badness 7667) has occurred while \output is active []
[2.2]
Processing 'acks' comment. Processing 'acks' comment.
\openout3 = `comment.cut'. \openout3 = `comment.cut'.
...@@ -991,47 +994,53 @@ Processing 'acks' comment. ...@@ -991,47 +994,53 @@ Processing 'acks' comment.
Straight input of comment.cut. (./comment.cut) (./documentation.bbl Straight input of comment.cut. (./comment.cut) (./documentation.bbl
LaTeX Font Info: Font shape `T1/LinuxLibertineT-TLF/m/it' will be LaTeX Font Info: Font shape `T1/LinuxLibertineT-TLF/m/it' will be
(Font) scaled to size 8.0pt on input line 49. (Font) scaled to size 8.0pt on input line 49.
LaTeX Info: Redefining \tempurl on input line 75.
LaTeX Info: Redefining \tempurl on input line 90.
) )
LaTeX Font Info: Trying to load font information for T1+zi4 on input line 20 LaTeX Font Info: Trying to load font information for T1+zi4 on input line 27
6. 9.
(/usr/share/texlive/texmf-dist/tex/latex/inconsolata/t1zi4.fd (/usr/share/texlive/texmf-dist/tex/latex/inconsolata/t1zi4.fd
File: t1zi4.fd 2018/01/14 T1/zi4 (Inconsolata) File: t1zi4.fd 2018/01/14 T1/zi4 (Inconsolata)
) )
LaTeX Font Info: Font shape `T1/zi4/m/n' will be LaTeX Font Info: Font shape `T1/zi4/m/n' will be
(Font) scaled to size 10.0pt on input line 206. (Font) scaled to size 10.0pt on input line 279.
Package microtype Info: Loading generic protrusion settings for font family Package microtype Info: Loading generic protrusion settings for font family
(microtype) `zi4' (encoding: T1). (microtype) `zi4' (encoding: T1).
(microtype) For optimal results, create family-specific settings. (microtype) For optimal results, create family-specific settings.
(microtype) See the microtype manual for details. (microtype) See the microtype manual for details.
[2.2]
Overfull \hbox (11.38634pt too wide) in paragraph at lines 258--261 Overfull \hbox (11.38634pt too wide) in paragraph at lines 331--334
\T1/LinuxLibertineT-TLF/m/n/10 (-20) at 24 FPS, with the nam-ing con-ven-tion r \T1/LinuxLibertineT-TLF/m/n/10 (-20) at 24 FPS, with the nam-ing con-ven-tion r
en-derXXXX[.bmp/.png], en-derXXXX[.bmp/.png],
[] []
Overfull \hbox (3.58836pt too wide) in paragraph at lines 263--267 Overfull \hbox (3.58836pt too wide) in paragraph at lines 336--340
\T1/zi4/m/n/10 make_video.sh \T1/LinuxLibertineT-TLF/m/n/10 (-20) script to as- \T1/zi4/m/n/10 make_video.sh \T1/LinuxLibertineT-TLF/m/n/10 (-20) script to as-
sem-ble the \T1/zi4/m/n/10 output.mp4 \T1/LinuxLibertineT-TLF/m/n/10 (-20) and sem-ble the \T1/zi4/m/n/10 output.mp4 \T1/LinuxLibertineT-TLF/m/n/10 (-20) and
delete delete
[] []
Package balance Warning: You have called \balance in second column
(balance) Columns might not be balanced.
[3.3] [3.3]
Package atveryend Info: Empty hook `BeforeClearDocument' on input line 270. Package atveryend Info: Empty hook `BeforeClearDocument' on input line 343.
Package atveryend Info: Empty hook `AfterLastShipout' on input line 270. Package atveryend Info: Empty hook `AfterLastShipout' on input line 343.
(./documentation.aux) (./documentation.aux)
Package atveryend Info: Executing hook `AtVeryEndDocument' on input line 270. Package atveryend Info: Executing hook `AtVeryEndDocument' on input line 343.
Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 270. Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 343.
Package rerunfilecheck Info: File `documentation.out' has not changed. Package rerunfilecheck Info: File `documentation.out' has not changed.
(rerunfilecheck) Checksum: 65AB89341A630399D97F71DAD998CCBB;1840. (rerunfilecheck) Checksum: DBF0C13B581DE0E363C522F5DE55ECDB;2153.
) )
Here is how much of TeX's memory you used: Here is how much of TeX's memory you used:
19060 strings out of 481239 19112 strings out of 481239
286199 string characters out of 5920377 287292 string characters out of 5920377
587324 words of memory out of 5000000 588528 words of memory out of 5000000
33588 multiletter control sequences out of 15000+600000 33600 multiletter control sequences out of 15000+600000
657494 words of font info for 203 fonts, out of 8000000 for 9000 660874 words of font info for 227 fonts, out of 8000000 for 9000
1302 hyphenation exceptions out of 8191 1302 hyphenation exceptions out of 8191
63i,15n,100p,804b,468s stack positions out of 5000i,500n,10000p,200000b,80000s 63i,15n,100p,804b,468s stack positions out of 5000i,500n,10000p,200000b,80000s
{/usr/share/texlive/texmf-dist/fonts/enc/dvips/inconsolata/i4-t1-4.enc}{/usr/ {/usr/share/texlive/texmf-dist/fonts/enc/dvips/inconsolata/i4-t1-4.enc}{/usr/
...@@ -1050,10 +1059,10 @@ ublic/libertine/LinLibertineTBI.pfb></usr/share/texlive/texmf-dist/fonts/type1/ ...@@ -1050,10 +1059,10 @@ ublic/libertine/LinLibertineTBI.pfb></usr/share/texlive/texmf-dist/fonts/type1/
public/libertine/LinLibertineTI.pfb></usr/share/texlive/texmf-dist/fonts/type1/ public/libertine/LinLibertineTI.pfb></usr/share/texlive/texmf-dist/fonts/type1/
public/newtx/txmiaX.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/newtx public/newtx/txmiaX.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/newtx
/txsys.pfb> /txsys.pfb>
Output written on documentation.pdf (3 pages, 429889 bytes). Output written on documentation.pdf (3 pages, 437482 bytes).
PDF statistics: PDF statistics:
173 PDF objects out of 1000 (max. 8388607) 197 PDF objects out of 1000 (max. 8388607)
142 compressed objects within 2 object streams 166 compressed objects within 2 object streams
32 named destinations out of 1000 (max. 500000) 37 named destinations out of 1000 (max. 500000)
36462 words of extra memory for PDF output out of 42996 (max. 10000000) 36486 words of extra memory for PDF output out of 42996 (max. 10000000)
...@@ -3,9 +3,12 @@ ...@@ -3,9 +3,12 @@
\BOOKMARK [1][-]{section.2}{\376\377\0002\000\040\000O\000v\000e\000r\000v\000i\000e\000w\000\040\000o\000f\000\040\000c\000o\000n\000s\000i\000d\000e\000r\000e\000d\000\040\000m\000e\000t\000h\000o\000d\000s}{}% 3 \BOOKMARK [1][-]{section.2}{\376\377\0002\000\040\000O\000v\000e\000r\000v\000i\000e\000w\000\040\000o\000f\000\040\000c\000o\000n\000s\000i\000d\000e\000r\000e\000d\000\040\000m\000e\000t\000h\000o\000d\000s}{}% 3
\BOOKMARK [2][-]{subsection.2.1}{\376\377\0002\000.\0001\000\040\000M\000a\000s\000s\000\040\000S\000p\000r\000i\000n\000g\000\040\000S\000y\000s\000t\000e\000m}{section.2}% 4 \BOOKMARK [2][-]{subsection.2.1}{\376\377\0002\000.\0001\000\040\000M\000a\000s\000s\000\040\000S\000p\000r\000i\000n\000g\000\040\000S\000y\000s\000t\000e\000m}{section.2}% 4
\BOOKMARK [2][-]{subsection.2.2}{\376\377\0002\000.\0002\000\040\000P\000o\000s\000i\000t\000i\000o\000n\000\040\000B\000a\000s\000e\000d\000\040\000D\000y\000n\000a\000m\000i\000c\000s\000\040\000\050\000P\000B\000D\000\051}{section.2}% 5 \BOOKMARK [2][-]{subsection.2.2}{\376\377\0002\000.\0002\000\040\000P\000o\000s\000i\000t\000i\000o\000n\000\040\000B\000a\000s\000e\000d\000\040\000D\000y\000n\000a\000m\000i\000c\000s\000\040\000\050\000P\000B\000D\000\051}{section.2}% 5
\BOOKMARK [2][-]{subsection.2.3}{\376\377\0002\000.\0003\000\040\000F\000o\000l\000l\000o\000w\000\040\000t\000h\000e\000\040\000L\000e\000a\000d\000e\000r\000\040\000\050\000F\000T\000L\000\051}{section.2}% 6 \BOOKMARK [2][-]{subsection.2.3}{\376\377\0002\000.\0003\000\040\000F\000o\000l\000l\000o\000w\000-\000t\000h\000e\000-\000L\000e\000a\000d\000e\000r\000\040\000\050\000F\000T\000L\000\051}{section.2}% 6
\BOOKMARK [1][-]{section*.7}{\376\377\000A\000c\000k\000n\000o\000w\000l\000e\000d\000g\000m\000e\000n\000t\000s}{}% 7 \BOOKMARK [1][-]{section.3}{\376\377\0003\000\040\000R\000e\000s\000u\000l\000t\000s}{}% 7
\BOOKMARK [1][-]{section*.9}{\376\377\000R\000e\000f\000e\000r\000e\000n\000c\000e\000s}{}% 8 \BOOKMARK [1][-]{section.4}{\376\377\0004\000\040\000C\000o\000n\000c\000l\000u\000s\000i\000o\000n}{}% 8
\BOOKMARK [1][-]{appendix.A}{\376\377\000A\000\040\000S\000u\000p\000p\000l\000e\000m\000e\000n\000t\000a\000r\000y\000\040\000d\000e\000v\000e\000l\000o\000p\000m\000e\000n\000t}{}% 9 \BOOKMARK [1][-]{section.5}{\376\377\0005\000\040\000F\000u\000r\000t\000h\000e\000r\000\040\000W\000o\000r\000k}{}% 9
\BOOKMARK [2][-]{subsection.A.1}{\376\377\000A\000.\0001\000\040\000O\000B\000J\000\040\000R\000e\000a\000d\000e\000r}{appendix.A}% 10 \BOOKMARK [1][-]{section*.7}{\376\377\000A\000c\000k\000n\000o\000w\000l\000e\000d\000g\000m\000e\000n\000t\000s}{}% 10
\BOOKMARK [2][-]{subsection.A.2}{\376\377\000A\000.\0002\000\040\000R\000e\000c\000o\000r\000d\000i\000n\000g\000\040\000t\000h\000e\000\040\000s\000i\000m\000u\000l\000a\000t\000i\000o\000n\000\040\000o\000n\000-\000t\000h\000e\000-\000f\000l\000y}{appendix.A}% 11 \BOOKMARK [1][-]{section*.9}{\376\377\000R\000e\000f\000e\000r\000e\000n\000c\000e\000s}{}% 11
\BOOKMARK [1][-]{appendix.A}{\376\377\000A\000\040\000S\000u\000p\000p\000l\000e\000m\000e\000n\000t\000a\000r\000y\000\040\000d\000e\000v\000e\000l\000o\000p\000m\000e\000n\000t}{}% 12
\BOOKMARK [2][-]{subsection.A.1}{\376\377\000A\000.\0001\000\040\000O\000B\000J\000\040\000R\000e\000a\000d\000e\000r}{appendix.A}% 13
\BOOKMARK [2][-]{subsection.A.2}{\376\377\000A\000.\0002\000\040\000R\000e\000c\000o\000r\000d\000i\000n\000g\000\040\000t\000h\000e\000\040\000s\000i\000m\000u\000l\000a\000t\000i\000o\000n\000\040\000o\000n\000-\000t\000h\000e\000-\000f\000l\000y}{appendix.A}% 14
No preview for this file type
...@@ -151,17 +151,90 @@ The \citet{PixarPaper} paper also features great further readings in their ...@@ -151,17 +151,90 @@ The \citet{PixarPaper} paper also features great further readings in their
citations, which gives a great glimpse into related previous works. citations, which gives a great glimpse into related previous works.
The main characteristic of this approach is that a Mass Spring System deals with The main characteristic of this approach is that a Mass Spring System deals with
forces, and tries to stay true to the laws of physics. This will not be the case forces, and tries to stay true to the laws of physics. It accounts for internal
and external forces from which accelerations are computed based on Newton's
second law of motion. A time integration method is then used to update the
velocities and finally the positions of the particles. This will not be the case
with Position Based Dynamics. with Position Based Dynamics.
\subsection{Position Based Dynamics (PBD)} \subsection{Position Based Dynamics (PBD)}
\citet{UmenhofferSimulation}
Position Based Dynamics (PBD)
The paper by \citet{MullerPBD} presents an approach that omits the velocity as
well as the force layer of the then-present popular approaches for simulation
methods of dynamic systems in computer graphics.
Position Based Dynamics (PBD) -- as its name suggests -- works with the position
of particles. A big advantage of such a system lies in its controllability, and
the easy reducability of overshooting problems present in force based systems.
Another favorable aspect is that PBD methods are generally easier with the maths
and somewhat easier to implement in terms of the needed mathematical and
physical background needed to grasp its inner workings. In addition, -- as it
works directly with the position of particles -- collision constraints can be
handled easily and penetrations can be resolved completely by projecting points
onto the penetrated surface. Although such measures can only be applied on the
expanse of physical accuracy, position based dynamics being only a ``good
enough'' approximation of how objects behave in real life.
Chapter 2 of the paper by \citet{UmenhofferSimulation} builds on the
\citet{MullerPBD} paper and gives a concise overview of the position based
dynamics method, and goes on to show the type of constraints that can be applied
to control to behaviour of such a system -- which is present in both papers.
\subsection{Follow-the-Leader (FTL)}
The Dynamic Follow-The-Leader (FTL) method outlined in \citet{FTLHair} focuses
on the fast simulation of hair and fur on animated characters. The sheer number
of computation needed for simulating thousands of hair strands, each consisting
of numerous particles presents a big challenge. Also, as each strand is
inextensible, it is not trivial to come up with an algorithm that does its job
in feasible time.
As it will be covered later in this article, the already introduced PBD method
needs multiple iterations per frame in order to keep the system from stretching
and becoming unstable. The FTL method by \citet{FTLHair} presents a method that
takes only a single iteration through the particles of each hair strand per
frame to achieve the desired results.
As this sounds fascinating, and cuts the computation time needed substantially,
in the early stages of my project, I implemented the FTL method alongside PBD.
It \textit{works}, and is fast, although due to the iteration count being one,
when greater forces are being applied to the system, a substantial amount of
stretching was introduced to the system. As it seemed in comparison that the
``basic'' PBD method yielded the same -- or even more accurate -- results, and
it was feasible to allow myself to use multiple iterations per frame, I did
not further investigate if there could have been improvements made to my
implementation to eliminate the stretching in the presence of greater forces.
\section{Results}
\section{Conclusion}
After investigating and trying out multiple methods to simulate hair, we arrived
at the Position Based Dynamics (PBD) method. An overview of the PBD method, and
an introduction to the constraint types used in our implementation was given.
An implementation was made in C++ and OpenGL, which easily simulates the hair
strands in real time, although the limit of the real-time nature can easily be
surpassed when adding thousands of strands with hundreds of particles.
\section{Further Work}
As this was part only of a semester-long Project Laboratory course, a great deal
of time was dedicated in the early stages of the project to investigate and
explore the subject area. This left only a sub-optimal time for implementing all
desired aspects of the simulation.
\subsection{Follow the Leader (FTL)} \begin{itemize}
The Dynamic Follow-The-Leader method outlined in \TODO{reference article} \item Hair-hair collisions
\begin{itemize}
\item
\end{itemize}
\item Refinement and proper customizability of the propagation of hair
strands on the Head Object.
\begin{itemize}
\item A drawable texture map is considered for the ability to
tell the simulation where to put the hair strands on the
surface of the hair.
\end{itemize}
\item
\end{itemize}
%% %%
%% The acknowledgments section is defined using the "acks" environment %% The acknowledgments section is defined using the "acks" environment
......
...@@ -23,3 +23,43 @@ keywords = {mass-spring models, hair simulation}, ...@@ -23,3 +23,43 @@ keywords = {mass-spring models, hair simulation},
location = {Anaheim, California}, location = {Anaheim, California},
series = {SCA '13} series = {SCA '13}
} }
@article{MullerPBD,
author = {M\"{u}ller, Matthias and Heidelberger, Bruno and Hennix, Marcus and Ratcliff, John},
title = {Position Based Dynamics},
year = {2007},
issue_date = {April, 2007},
publisher = {Academic Press, Inc.},
address = {USA},
volume = {18},
number = {2},
issn = {1047-3203},
url = {https://doi.org/10.1016/j.jvcir.2007.01.005},
doi = {10.1016/j.jvcir.2007.01.005},
abstract = {The most popular approaches for the simulation of dynamic systems in computer graphics are force based. Internal and external forces are accumulated from which accelerations are computed based on Newton's second law of motion. A time integration method is then used to update the velocities and finally the positions of the object. A few simulation methods (most rigid body simulators) use impulse based dynamics and directly manipulate velocities. In this paper we present an approach which omits the velocity layer as well and immediately works on the positions. The main advantage of a position based approach is its controllability. Overshooting problems of explicit integration schemes in force based systems can be avoided. In addition, collision constraints can be handled easily and penetrations can be resolved completely by projecting points to valid locations. We have used the approach to build a real time cloth simulator which is part of a physics software library for games. This application demonstrates the strengths and benefits of the method.},
journal = {J. Vis. Comun. Image Represent.},
month = apr,
pages = {109–118},
numpages = {10},
keywords = {Physically based simulation, Cloth simulation, Integration schemes, Game physics}
}
@inproceedings{FTLHair,
author = {Müller, Matthias and Kim, Tae and Chentanez, Nuttapong},
year = {2012},
month = {12},
pages = {},
title = {Fast Simulation of Inextensible Hair and Fur},
journal = {VRIPHYS 2012 - 9th Workshop on Virtual Reality Interactions and
Physical Simulations},
doi = {10.2312/PE/vriphys/vriphys12/039-044},
url = {https://matthias-research.github.io/pages/publications/FTLHairFur.pdf}
}
@inproceedings{PixarVolumetricHair,
title={Volumetric Methods for Simulation and Rendering of Hair},
author={L. Petrovic and M. Henne and John Anderson Pixar},
year={2006},
url = {https://graphics.pixar.com/library/Hair/paper.pdf}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment