Abstract
Step-and-project is a popular method to simulate non-penetrating deformable bodies in physically based animation. The strategy is to first integrate the system in time without considering contacts and then resolve potential intersections, striking a good balance between plausibility and efficiency. However, existing methods can be defective and unsafe when using large time steps, taking risks of failure or demanding repetitive collision testing and resolving that severely degrade performance. In this article, we propose a novel two-way method for fast and reliable continuous collision handling. Our method launches an optimization from both ends of the intermediate time-integrated state and the previous intersection-free state. It progressively generates a piecewise linear path and eventually obtains a feasible solution for the next time step. The algorithm efficiently alternates between a forward step and a backward step until the result is conditionally converged. Thanks to a set of unified volume-based contact constraints, our method offers flexible and reliable handling of various codimensional deformable bodies, including volumetric bodies, cloth, hair, and sand. Experimental results demonstrate the safety, robustness, physical fidelity, and numerical efficiency of our method, making it particularly suitable for scenarios involving large deformations or large time steps.
Supplemental Material
Available for Download
Supplementary material
- 2012. Speculative parallel asynchronous contact mechanics. ACM Trans. Graph. 31, 6, Article
151 (Nov. 2012), 8 pages.Google ScholarDigital Library . - 2022. Contact and friction simulation for computer graphics. In Proceedings of the ACM SIGGRAPH Courses (SIGGRAPH’22). ACM, New York, NY, Article
3 , 172 pages.Google ScholarDigital Library . - 2003. Untangling cloth. ACM Trans. Graph. 22, 3 (
July 2003), 862–870.Google ScholarDigital Library . - 2010. Subspace self-collision culling. In Proceedings of the ACM SIGGRAPH (SIGGRAPH’10). ACM, New York, NY, Article
81 , 9 pages.Google ScholarDigital Library . - 2006. A quadratic bending model for inextensible surfaces. In Proceedings of the 4th Eurographics Symposium on Geometry Processing (SGP’06). Eurographics Association, Goslar, DEU, 227–230.Google Scholar .
- 2011. A nonsmooth newton solver for capturing exact coulomb friction in fiber assemblies. ACM Trans. Graph. 30, 1, Article
6 (Feb. 2011), 14 pages.Google ScholarDigital Library . - 2002. Robust treatment of collisions, contact and friction for cloth animation. ACM Trans. Graph. 21, 3 (
July 2002), 594–603.Google ScholarDigital Library . - 2005. Simulation of clothing with folds and wrinkles. In Proceedings of the ACM SIGGRAPH 2005 Courses (SIGGRAPH’05). ACM, New York, NY, 28–36.Google ScholarDigital Library .
- 2022. A unified newton barrier method for multibody dynamics. ACM Trans. Graph. 41, 4, Article
66 (July 2022), 14 pages.Google ScholarDigital Library . - 2002. Stable but responsive cloth. ACM Trans. Graph. 21, 3 (July 2002), 604–611.Google ScholarDigital Library .
- 1988. Global convergence of a class of trust region algorithms for optimization with simple bounds. SIAM J. Numer. Anal. 25, 2 (1988), 433–460.Google ScholarDigital Library .
- 2020. Simple and scalable frictional contacts for thin nodal objects. ACM Trans. Graph. 39, 4, Article
61 (July 2020), 16 pages.Google ScholarDigital Library . - 1999. Implicit fairing of irregular meshes using diffusion and curvature flow. In Proceedings of the 26th Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH’99). ACM Press/Addison-Wesley Publishing Co., 317–324.Google ScholarDigital Library .
- 2013. Numerical methods for linear complementarity problems in physics-based animation. In Proceedings of the ACM SIGGRAPH (SIGGRAPH’13). ACM, New York, NY, Article
8 , 42 pages.Google ScholarDigital Library . - 2003. A fast finite element solution for cloth modelling. In Proceedings of the 11th Pacific Conference on Computer Graphics and Applications. IEEE, 244–251.Google ScholarCross Ref .
- 2021. Guaranteed globally injective 3D deformation processing. ACM Trans. Graph. 40, 4, Article
75 (July 2021), 13 pages.Google ScholarDigital Library . - 2016. Vivace: A practical Gauss-Seidel method for stable soft body dynamics. ACM Trans. Graph. 35, 6, Article
214 (Nov. 2016), 9 pages.Google ScholarDigital Library . - 2018. GPU optimization of material point methods. ACM Trans. Graph. 37, 6, Article
254 (Dec. 2018), 12 pages.Google ScholarDigital Library . - 2003. Discrete shells. In Proceedings of the ACM SIGGRAPH/Eurographics Symposium on Computer Animation (SCA’03). Eurographics Association, Goslar, DEU, 62–67.Google Scholar .
- 2009. Asynchronous contact mechanics. ACM Trans. Graph. 28, 3, Article
87 (July 2009), 12 pages.Google ScholarDigital Library . - 2008. Robust treatment of simultaneous collisions. ACM Trans. Graph. 27, 3 (Aug. 2008), 1–4.Google ScholarDigital Library .
- 2011. Asynchronous integration with phantom meshes. In Proceedings of the ACM SIGGRAPH/Eurographics Symposium on Computer Animation (SCA’11). ACM, New York, NY, 247–256.Google ScholarDigital Library .
- 1999. Finite element analysis of nonsmooth contact. Comput. Methods Appl. Mech. Eng. 180, 1-2 (1999), 1–26.Google ScholarCross Ref .
- 2022. Penetration-free projective dynamics on the GPU. ACM Trans. Graph. 41, 4, Article
69 (July 2022), 16 pages.Google ScholarDigital Library . - 2010. gProximity: Hierarchical GPU-based operations for collision and distance queries. In Proceedings of Eurographics, Vol. 29. 419–428.Google ScholarCross Ref .
- 2020b. P-Cloth: Interactive complex cloth simulation on multi-GPU systems using dynamic matrix assembly and pipelined implicit integrators. ACM Trans. Graph. 39, 6, Article
180 (Nov. 2020), 15 pages.Google ScholarDigital Library . - 2020a. Incremental potential contact: Intersection-and inversion-free, large-deformation dynamics. ACM Trans. Graph. 39, 4, Article
49 (July 2020), 20 pages.Google ScholarDigital Library . - 2021. Codimensional incremental potential contact. ACM Trans. Graph. 40, 4, Article
170 (July 2021), 24 pages.Google ScholarDigital Library . - 1999. Newton’s method for large bound-constrained optimization problems. SIAM J. Optimiz. 9, 4 (1999), 1100–1127.Google ScholarDigital Library .
- 2020. Projective dynamics with dry frictional contact. ACM Trans. Graph. 39, 4, Article
57 (July 2020), 8 pages.Google ScholarDigital Library . - 2019. Non-smooth newton methods for deformable multi-body dynamics. ACM Trans. Graph. 38, 5, Article
140 (Oct. 2019), 20 pages.Google ScholarDigital Library . - 2021. A constraint-based formulation of stable neo-hookean materials. In Proceedings of the Conference on Motion, Interaction and Games (MIG’21). ACM, New York, NY, Article
12 , 7 pages.Google ScholarDigital Library . - 2011. Example-based elastic materials. In Proceedings of the ACM SIGGRAPH (SIGGRAPH’11). ACM, New York, NY, Article
72 , 8 pages.Google ScholarDigital Library . - 2017. 3x3 Matrix Diagonalization. Retrieved from http://melax.github.io/diag.html.Google Scholar .
- 2003. Discrete differential-geometry operators for triangulated 2-manifolds. In Visualization and Mathematics III. Springer, 35–57.Google ScholarCross Ref .
- 2000. Timewarp rigid body simulation. In Proceedings of the 27th Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH’00). ACM Press/Addison-Wesley Publishing Co., 193–200.Google ScholarDigital Library .
- 1995. Impulse-based dynamic simulation. In Proceedings of the Workshop on Algorithmic Foundations of Robotics (WAFR). A. K. Peters, Ltd., 407–418.Google ScholarDigital Library .
- 2008. Hierarchical position based dynamics. In Proceedings of Virtual Reality Interactions and Physical Simulations. Grenoble.Google Scholar .
- 2015. Air meshes for robust collision handling. ACM Trans. Graph. 34, 4, Article
133 (July 2015), 9 pages.Google ScholarDigital Library . - 2012. Adaptive anisotropic remeshing for cloth simulation. ACM Trans. Graph. 31, 6, Article
152 (Nov. 2012), 10 pages.Google ScholarDigital Library . - 2006. Numerical Optimization. Springer.Google Scholar .
- 2010. Fast and scalable CPU/GPU collision detection for rigid and deformable surfaces. Comput. Graph. Forum 29, 5 (2010), 1605–1612.Google ScholarCross Ref .
- 1993. Computing discrete minimal surfaces and their conjugates. Exper. Math. 2, 1 (1993), 15–36.Google ScholarCross Ref .
- 1997. Collision and self-collision handling in cloth model dedicated to design garments. In Computer Animation and Simulation. 177–189.Google Scholar .
- 2008. Globally coupled collision handling using volume preserving impulses. In Proceedings of the ACM SIGGRAPH/Eurographics Symposium on Computer Animation (SCA’08). Eurographics Association, Goslar, DEU, 147–153.Google Scholar .
- 2019. Analytic eigensystems for isotropic distortion energies. ACM Trans. Graph. 38, 1, Article
3 (Feb. 2019), 15 pages.Google ScholarDigital Library . - 2015. Bijective parameterization with free boundaries. ACM Trans. Graph. 34, 4, Article
70 (July 2015), 9 pages.Google ScholarDigital Library . - 2009. Nucleus: Towards a unified dynamics solver for computer graphics. In Proceedings of the 11th IEEE International Conference on Computer-Aided Design and Computer Graphics.Google ScholarCross Ref .
- 2010. Continuous collision detection for non-rigid contact computations using local advancement. In Proceedings of the IEEE Robotics & Automation Society Conference (ICRA’10). 4016–4021.Google Scholar .
- 2018a. PSCC: Parallel self-collision culling with spatial hashing on GPUs. Proc. ACM Comput. Graph. Interact. Tech. 1, 1, Article
18 (July 2018), 18 pages.Google ScholarDigital Library . - 2011a. Collision-streams: Fast GPU-based collision detection for deformable models. In Proceedings of the Symposium on Interactive 3D Graphics and Games (I3D’11). ACM, New York, NY, 63–70.Google ScholarDigital Library .
- 2011b. VolCCD: Fast continuous collision culling between deforming volume meshes. ACM Trans. Graph. 30, 5, Article
111 (Oct. 2011), 15 pages.Google ScholarDigital Library . - 2014. Fast and exact continuous collision detection with bernstein sign classification. ACM Trans. Graph. 33, 6, Article
186 (Nov. 2014), 8 pages.Google ScholarDigital Library . - 2016. CAMA: Contact-aware matrix assembly with unified collision handling for GPU-based cloth simulation. Comput. Graph. Forum (Eurographics) 35, 2 (May 2016), 511–521.Google ScholarCross Ref .
- 2018b. I-Cloth: Incremental collision handling for GPU-based interactive cloth simulation. ACM Trans. Graph. 37, 6, Article
204 (Dec. 2018), 10 pages.Google ScholarDigital Library . - 2005. Robust quasistatic finite elements and flesh simulation. In Proceedings of the ACM SIGGRAPH/Eurographics Symposium on Computer Animation (SCA’05). ACM, New York, NY, 181–190.Google ScholarDigital Library .
- 2003. Optimized spatial hashing for collision detection of deformable objects. In Proceedings of Vision, Modeling, Visualization, Vol. 3. 47–54.Google Scholar .
- 2008. Asynchronous cloth simulation. In Proceedings of Computer Graphics International.Google Scholar .
- 2019. Efficient and accurate collision response for elastically deformable models. ACM Trans. Graph. 38, 2, Article
17 (Mar. 2019), 20 pages.Google ScholarDigital Library . - 2006. Resolving surface collisions through intersection contour minimization. In Proceedings of the ACM SIGGRAPH Papers (SIGGRAPH’06). ACM, New York, NY, 1154–1159.Google ScholarDigital Library .
- 1990. Geometric collisions for time-dependent parametric surfaces. SIGGRAPH Comput. Graph. 24, 4 (Sep. 1990), 39–48.Google ScholarDigital Library .
- 2021. A large-scale benchmark and an inclusion-based algorithm for continuous collision detection. ACM Trans. Graph. 40, 5 (2021), 1–16.Google ScholarDigital Library .
- 2014. Defending continuous collision detection against errors. ACM Trans. Graph. 33, 4, Article
122 (July 2014), 10 pages.Google ScholarDigital Library . - 2015. A chebyshev semi-iterative approach for accelerating projective and position-based dynamics. ACM Trans. Graph. 34, 6, Article
246 (Oct. 2015), 9 pages.Google ScholarDigital Library . - 2016. Descent methods for elastic body simulation on the GPU. ACM Trans. Graph. 35, 6, Article
212 (Nov. 2016), 10 pages.Google ScholarDigital Library . - 2017. Efficient and reliable self-collision culling using unprojected normal cones. Comput. Graph. Forum (Eurographics) 36, 8 (2017), 487–498.Google ScholarCross Ref .
- 2006. Untangling cloth with boundaries. In Proceedings of the Conference on Vision, Modeling, and Visualization. 349–356.Google Scholar .
- 2020. A safe and fast repulsion method for GPU-based cloth self collisions. ACM Trans. Graph. 40, 1, Article
5 (Dec. 2020), 18 pages.Google Scholar . - 2022. A fast and robust solution for cubic and higher-order polynomials. In Proceedings of the ACM SIGGRAPH Talks (SIGGRAPH’22). ACM, New York, NY, Article
28 , 2 pages.Google ScholarDigital Library . - 2012. Energy-based self-collision culling for arbitrary mesh deformations. ACM Trans. Graph. 31, 4, Article
98 (July 2012), 12 pages.Google ScholarDigital Library .
Index Terms
- Fast GPU-based Two-way Continuous Collision Handling
Recommendations
Augmented Lagrangian Method with Alternating Constraints for Nonlinear Optimization Problems
The augmented Lagrangian method is a classical solution method for nonlinear optimization problems. At each iteration, it minimizes an augmented Lagrangian function that consists of the constraint functions and the corresponding Lagrange multipliers. If ...
A strongly sub-feasible primal-dual quasi interior-point algorithm for nonlinear inequality constrained optimization
In this paper, a primal-dual quasi interior-point algorithm for inequality constrained optimization problems is presented. At each iteration, the algorithm solves only two or three reduced systems of linear equations with the same coefficient matrix. The ...
An adjoint-based SQP algorithm with quasi-Newton Jacobian updates for inequality constrained optimization
We present a sequential quadratic programming (SQP) type algorithm, based on quasi-Newton approximations of Hessian and Jacobian matrices, which is suitable for the solution of general nonlinear programming problems involving equality and inequality ...
Comments