GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - geometryprocessing/GCP-toolkit: Contact potential utilities for the paper "Geometric Contact Potential" at Siggraph 2025

This repository was archived by the owner on Oct 22, 2025. It is now read-only.
BranchesTags
Open more actions menu

Latest commit

 

History

936 Commits
936 Commits

Folders and files

NameName
Last commit message
Last commit date
.devcontainer
.devcontainer
 
 
.github
.github
 
 
cmake
cmake
 
 
docs
docs
 
 
notebooks
notebooks
 
 
python
python
 
 
src/ipc
src/ipc
 
 
tests
tests
 
 
.clang-format
.clang-format
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
.pre-commit-config.yaml
.pre-commit-config.yaml
 
 
CMakeLists.txt
CMakeLists.txt
 
 
CMakePresets.json
CMakePresets.json
 
 
IPCToolkitOptions.cmake.sample
IPCToolkitOptions.cmake.sample
 
 
LICENSE
LICENSE
 
 
MANIFEST.in
MANIFEST.in
 
 
README.md
README.md
 
 
codecov.yml
codecov.yml
 
 
pyproject.toml
pyproject.toml
 
 
setup.py
setup.py
 
 

Repository files navigation

[Siggraph 2025] Geometric Contact Potential

Teaser

Description

GCP toolkit is a set of reusable functions to integrate Geometric Contact Potential (GCP) into a simulation, built on top of the IPC toolkit. GCP has been merged into IPC toolkit and this repository is no longer being actively maintained.

Features

Geometric Contact Potential introduces a new type of barrier-based collision model, with the following features different from IPC:

  • Large $\hat{d}$ allowed: In IPC, if $\hat{d}$ is larger than any edge length, spurious contact forces would push neighboring vertices apart, which does not happen to GCP.
  • Convergence under refinement: The GCP potential is derived from a continuous formulation, and the discretized potential converges to the continuous version under mesh refinement.
  • No spurious forces: GCP elliminates the spurious forces of IPC in various cases (check the paper for details) by considering the local normal and tangent directions.

Limitations

This is not a full simulation library. As such it does not include any physics or solvers. A full simulation implementation in PolyFEM is available here.

Usage

Geometric Contact Potential differs from IPC only in the potential formulation. It reuses existing utilities in IPC toolkit to collect collision candidates, perform narrow phase CCD, etc. Below shows a table of GCP classes with their IPC counterparts.

GCP IPC Description
SmoothCollision Collision Base class of various collision pair type
SmoothCollisionTemplate EdgeEdgeCollision, FaceVertexCollision, etc. Specific collision pair type
SmoothCollisionsBuilder CollisionsBuilder To construct collision pairs from collision candidates
SmoothCollisions Collisions Collection of all collision pairs
SmoothContactPotential BarrierPotential Collision potential

About

Contact potential utilities for the paper "Geometric Contact Potential" at Siggraph 2025

Resources

Readme
MIT license

Code of conduct

Code of conduct

Contributing

Contributing
Activity
Custom properties

Stars

0 stars

Watchers

4 watching

Forks

4 forks
Report repository

Releases

Sponsor this project

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.