{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,27]],"date-time":"2026-03-27T17:12:16Z","timestamp":1774631536330,"version":"3.50.1"},"reference-count":70,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2022,7,1]],"date-time":"2022-07-01T00:00:00Z","timestamp":1656633600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Graph."],"published-print":{"date-parts":[[2022,7]]},"abstract":"<jats:p>We introduce Loki, a new framework for robust simulation of fluid, rigid, and deformable objects with non-compromising fidelity on any single element, and capabilities for coupling and representation transitions across multiple elements. Loki adapts multiple best-in-class solvers into a unified framework driven by a declarative state machine where users declare 'what' is simulated but not 'when,' so an automatic scheduling system takes care of mixing any combination of objects. This leads to intuitive setups for coupled simulations such as hair in the wind or objects transitioning from one representation to another, for example bulk water FLIP particles to SPH spray particles to volumetric mist. We also provide a consistent treatment for components used in several domains, such as unified collision and attachment constraints across 1D, 2D, 3D deforming and rigid objects. Distribution over MPI, custom linear equation solvers, and aggressive application of sparse techniques keep performance within production requirements. We demonstrate a variety of solvers within the framework and their interactions, including FLIPstyle liquids, spatially adaptive volumetric fluids, SPH, MPM, and mesh-based solids, including but not limited to discrete elastic rods, elastons, and FEM with state-of-the-art constitutive models. Our framework has proven powerful and intuitive enough for voluntary artist adoption and has delivered creature and FX simulations for multiple major movie productions in the preceding four years.<\/jats:p>","DOI":"10.1145\/3528223.3530058","type":"journal-article","created":{"date-parts":[[2022,7,22]],"date-time":"2022-07-22T21:06:27Z","timestamp":1658523987000},"page":"1-20","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":29,"title":["Loki"],"prefix":"10.1145","volume":"41","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-8059-036X","authenticated-orcid":false,"given":"Steve","family":"Lesser","sequence":"first","affiliation":[{"name":"Weta Digital, New Zealand"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5081-9108","authenticated-orcid":false,"given":"Alexey","family":"Stomakhin","sequence":"additional","affiliation":[{"name":"Weta Digital, New Zealand"}]},{"given":"Gilles","family":"Daviet","sequence":"additional","affiliation":[{"name":"Weta Digital, New Zealand"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-6375-4315","authenticated-orcid":false,"given":"Joel","family":"Wretborn","sequence":"additional","affiliation":[{"name":"Weta Digital, New Zealand"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-1389-7286","authenticated-orcid":false,"given":"John","family":"Edholm","sequence":"additional","affiliation":[{"name":"Weta Digital, New Zealand"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1126-7419","authenticated-orcid":false,"given":"Noh-Hoon","family":"Lee","sequence":"additional","affiliation":[{"name":"Weta Digital, New Zealand"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-6697-9870","authenticated-orcid":false,"given":"Eston","family":"Schweickart","sequence":"additional","affiliation":[{"name":"Weta Digital, New Zealand"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8964-3704","authenticated-orcid":false,"given":"Xiao","family":"Zhai","sequence":"additional","affiliation":[{"name":"Weta Digital, New Zealand"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1082-9459","authenticated-orcid":false,"given":"Sean","family":"Flynn","sequence":"additional","affiliation":[{"name":"Weta Digital, New Zealand"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7050-7446","authenticated-orcid":false,"given":"Andrew","family":"Moffat","sequence":"additional","affiliation":[{"name":"Weta Digital, New Zealand"}]}],"member":"320","published-online":{"date-parts":[[2022,7,22]]},"reference":[{"key":"e_1_2_2_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/3197517.3201345"},{"key":"e_1_2_2_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/3386569.3392460"},{"key":"e_1_2_2_3_1","volume-title":"Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods","author":"Barrett R.","unstructured":"R. Barrett, M.W. Berry, T.F. Chan, J. Demmel, J. Donato, J. Dongarra, V. Eijkhout, R. Pozo, C. Romine, and H. van der Vorst. 1994. Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods. Society for Industrial and Applied Mathematics. https:\/\/books.google.co.kr\/books?id=8IkWgiZ8kOwC"},{"key":"e_1_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/1275808.1276502"},{"key":"e_1_2_2_5_1","first-page":"1","article-title":"Interactive Simulation of Rigid Body Dynamics in Computer","volume":"33","author":"Bender Jan","year":"2014","unstructured":"Jan Bender, Kenny Erleben, and Jeff Trinkle. 2014. Interactive Simulation of Rigid Body Dynamics in Computer Graphics. Comput. Graph. Forum 33, 1 (feb 2014), 246--270.","journal-title":"Graphics. Comput. Graph. Forum"},{"key":"e_1_2_2_6_1","volume-title":"Discrete Viscous Threads. In ACM SIGGRAPH 2010 Papers (SIGGRAPH '10)","author":"Bergou Mikl\u00f3s","year":"2010","unstructured":"Mikl\u00f3s Bergou, Basile Audoly, Etienne Vouga, Max Wardetzky, and Eitan Grinspun. 2010. Discrete Viscous Threads. In ACM SIGGRAPH 2010 Papers (SIGGRAPH '10). Association for Computing Machinery, New York, NY, USA, Article 116, 10 pages."},{"key":"e_1_2_2_7_1","volume-title":"Discrete Elastic Rods. In ACM SIGGRAPH 2008 Papers (SIGGRAPH '08)","author":"Bergou Mikl\u00f3s","year":"2008","unstructured":"Mikl\u00f3s Bergou, Max Wardetzky, Stephen Robinson, Basile Audoly, and Eitan Grinspun. 2008. Discrete Elastic Rods. In ACM SIGGRAPH 2008 Papers (SIGGRAPH '08). Association for Computing Machinery, New York, NY, USA, Article 63, 12 pages."},{"key":"e_1_2_2_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/2892632"},{"key":"e_1_2_2_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/3450623.3464642"},{"key":"e_1_2_2_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/1028523.1028543"},{"key":"e_1_2_2_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/3355089.3356496"},{"key":"e_1_2_2_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/3272127.3275011"},{"key":"e_1_2_2_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/3386569.3392439"},{"key":"e_1_2_2_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/2897824.2925877"},{"key":"e_1_2_2_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/2070781.2024173"},{"key":"e_1_2_2_16_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.simpa.2020.100037"},{"key":"e_1_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/2037636.2037646"},{"key":"e_1_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/3214745.3214801"},{"key":"e_1_2_2_19_1","volume-title":"Tissue Engineering and Biomaterials","volume":"11","author":"Faure Fran\u00e7ois","year":"2012","unstructured":"Fran\u00e7ois Faure, Christian Duriez, Herv\u00e9 Delingette, J\u00e9r\u00e9mie Allard, Benjamin Gilles, St\u00e9phanie Marchesseau, Hugo Talbot, Hadrien Courtecuisse, Guillaume Bousquet, Igor Peterlik, and St\u00e9phane Cotin. 2012. SOFA: A Multi-Model Framework for Interactive Physical Simulation. In Soft Tissue Biomechanical Modeling for Computer Assisted Surgery, Yohan Payan (Ed.). Studies in Mechanobiology, Tissue Engineering and Biomaterials, Vol. 11. Springer, 283--321."},{"key":"e_1_2_2_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/383259.383260"},{"key":"e_1_2_2_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/3197517.3201392"},{"key":"e_1_2_2_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/3072959.3073630"},{"key":"e_1_2_2_23_1","volume-title":"van Loan","author":"Golub Gene H.","year":"2013","unstructured":"Gene H. Golub and Charles F. van Loan. 2013. Matrix Computations (fourth ed.). JHU Press. http:\/\/www.cs.cornell.edu\/cv\/GVL4\/golubandvanloan.htm"},{"key":"e_1_2_2_24_1","doi-asserted-by":"publisher","DOI":"10.5555\/846276.846284"},{"key":"e_1_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/1186822.1073299"},{"key":"e_1_2_2_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/3355089.3356506"},{"key":"e_1_2_2_27_1","volume-title":"Smoothed aggregation multigrid for incompressible flows. PAMM 7 (12","author":"Janka Ales","year":"2007","unstructured":"Ales Janka. 2007. Smoothed aggregation multigrid for incompressible flows. PAMM 7 (12 2007), 1025901 -- 1025902."},{"key":"e_1_2_2_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/3072959.3073623"},{"key":"e_1_2_2_29_1","volume-title":"The Material Point Method for Simulating Continuum Materials. In ACM SIGGRAPH 2016 Courses (SIGGRAPH '16)","author":"Jiang Chenfanfu","year":"2016","unstructured":"Chenfanfu Jiang, Craig Schroeder, Joseph Teran, Alexey Stomakhin, and Andrew Selle. 2016. The Material Point Method for Simulating Continuum Materials. In ACM SIGGRAPH 2016 Courses (SIGGRAPH '16). Association for Computing Machinery, New York, NY, USA, Article 24, 52 pages."},{"key":"e_1_2_2_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/3099564.3099573"},{"key":"e_1_2_2_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/3388769.3407490"},{"key":"e_1_2_2_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/2866569"},{"key":"e_1_2_2_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/2897824.2925906"},{"key":"e_1_2_2_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/1141911.1141960"},{"key":"e_1_2_2_35_1","doi-asserted-by":"publisher","DOI":"10.1109\/TVCG.2008.37"},{"key":"e_1_2_2_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/3478513.3480493"},{"key":"e_1_2_2_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/2461912.2461984"},{"key":"e_1_2_2_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/2994258.2994272"},{"key":"e_1_2_2_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/3309486.3340247"},{"key":"e_1_2_2_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/1833349.1778776"},{"key":"e_1_2_2_41_1","volume-title":"Proceedings of the 2010 ACM SIGGRAPH\/Eurographics Symposium on Computer Animation (SCA '10)","author":"McAdams A.","unstructured":"A. McAdams, E. Sifakis, and J. Teran. 2010. A Parallel Multigrid Poisson Solver for Fluids Simulation on Large Grids. In Proceedings of the 2010 ACM SIGGRAPH\/Eurographics Symposium on Computer Animation (SCA '10). Eurographics Association, Goslar, DEU, 65--74."},{"key":"e_1_2_2_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/2010324.1964932"},{"key":"e_1_2_2_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/2508363.2508389"},{"key":"e_1_2_2_44_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jvcir.2007.01.005"},{"key":"e_1_2_2_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/2487228.2487235"},{"key":"e_1_2_2_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/3450623.3464653"},{"key":"e_1_2_2_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/3340257"},{"key":"e_1_2_2_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/2485895.2485912"},{"key":"e_1_2_2_49_1","doi-asserted-by":"publisher","DOI":"10.1145\/1360612.1360645"},{"key":"e_1_2_2_50_1","volume-title":"An Unconditionally Stable MacCormack Method. J. Sci. Comput. 35 (06","author":"Selle Andrew","year":"2008","unstructured":"Andrew Selle, Ronald Fedkiw, ByungMoon Kim, Yingjie Liu, and Jarek Rossignac. 2008. An Unconditionally Stable MacCormack Method. J. Sci. Comput. 35 (06 2008), 350--371."},{"key":"e_1_2_2_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/2661229.2661269"},{"key":"e_1_2_2_52_1","volume-title":"GRAPP 2010 - Proceedings of the International Conference on Computer Graphics Theory and Applications 229","author":"Silcowitz Morten","year":"2010","unstructured":"Morten Silcowitz, Sarah Niebe, and Kenny Erleben. 2010. Projected Gauss-Seidel Subspace Minimization Method for Interactive Rigid Body Dynamics - Improving Animation Quality using a Projected Gauss-Seidel Subspace Minimization Method. GRAPP 2010 - Proceedings of the International Conference on Computer Graphics Theory and Applications 229, 38--45."},{"key":"e_1_2_2_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/3180491"},{"key":"e_1_2_2_54_1","volume-title":"Stable Fluids. In Proceedings of the 26th Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH '99)","author":"Stam Jos","year":"1999","unstructured":"Jos Stam. 1999. Stable Fluids. In Proceedings of the 26th Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH '99). ACM Press\/Addison-Wesley Publishing Co., USA, 121--128."},{"key":"e_1_2_2_55_1","doi-asserted-by":"publisher","DOI":"10.1109\/CADCG.2009.5246818"},{"key":"e_1_2_2_56_1","doi-asserted-by":"publisher","DOI":"10.1145\/3306307.3328141"},{"key":"e_1_2_2_57_1","doi-asserted-by":"publisher","DOI":"10.1145\/2461912.2461948"},{"key":"e_1_2_2_58_1","doi-asserted-by":"publisher","DOI":"10.1145\/2601097.2601176"},{"key":"e_1_2_2_59_1","volume-title":"Underwater Bubbles and Coupling. In ACM SIGGRAPH 2020 Talks (SIGGRAPH '20)","author":"Stomakhin Alexey","year":"2020","unstructured":"Alexey Stomakhin, Joel Wretborn, Kevin Blom, and Gilles Daviet. 2020. Underwater Bubbles and Coupling. In ACM SIGGRAPH 2020 Talks (SIGGRAPH '20). Association for Computing Machinery, New York, NY, USA, Article 2, 2 pages."},{"key":"e_1_2_2_60_1","doi-asserted-by":"publisher","DOI":"10.1145\/3414685.3417798"},{"key":"e_1_2_2_61_1","doi-asserted-by":"publisher","DOI":"10.1145\/3478513.3480539"},{"key":"e_1_2_2_62_1","doi-asserted-by":"publisher","DOI":"10.1145\/2816795.2818081"},{"key":"e_1_2_2_63_1","volume-title":"Chrono: An Open Source Multi-physics Dynamics Engine. In Lecture Notes in Computer Science","author":"Tasora Alessandro","year":"2016","unstructured":"Alessandro Tasora, Radu Serban, Hammad Mazhar, Arman Pazouki, Daniel Melanz, Jonathan Fleischmann, Michael Taylor, Hiroyuki Sugiyama, and Dan Negrut. 2016. Chrono: An Open Source Multi-physics Dynamics Engine. In Lecture Notes in Computer Science. Springer International Publishing, 19--49."},{"key":"e_1_2_2_64_1","doi-asserted-by":"publisher","DOI":"10.1145\/2980179.2980229"},{"key":"e_1_2_2_65_1","doi-asserted-by":"publisher","DOI":"10.1145\/2766969"},{"key":"e_1_2_2_66_1","doi-asserted-by":"publisher","DOI":"10.1145\/1559755.1559762"},{"key":"e_1_2_2_67_1","doi-asserted-by":"publisher","DOI":"10.1145\/3528223.3530059"},{"key":"e_1_2_2_68_1","doi-asserted-by":"publisher","DOI":"10.1145\/2816795.2818117"},{"key":"e_1_2_2_69_1","doi-asserted-by":"crossref","unstructured":"David M. Young. 1971. Chapter 4 - CONVERGENCE OF THE BASIC ITERATIVE METHODS. In Iterative Solution of Large Linear Systems David M. Young (Ed.). Academic Press 106--139.","DOI":"10.1016\/B978-0-12-773050-9.50012-7"},{"key":"e_1_2_2_70_1","doi-asserted-by":"publisher","DOI":"10.1145\/1073204.1073298"}],"container-title":["ACM Transactions on Graphics"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3528223.3530058","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3528223.3530058","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T19:02:25Z","timestamp":1750186945000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3528223.3530058"}},"subtitle":["a unified multiphysics simulation framework for production"],"short-title":[],"issued":{"date-parts":[[2022,7]]},"references-count":70,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2022,7]]}},"alternative-id":["10.1145\/3528223.3530058"],"URL":"https:\/\/doi.org\/10.1145\/3528223.3530058","relation":{},"ISSN":["0730-0301","1557-7368"],"issn-type":[{"value":"0730-0301","type":"print"},{"value":"1557-7368","type":"electronic"}],"subject":[],"published":{"date-parts":[[2022,7]]},"assertion":[{"value":"2022-07-22","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}