{"id":19243779,"url":"https://github.com/brocbyte/realtime-deformations","last_synced_at":"2025-08-10T21:03:46.698Z","repository":{"id":134234596,"uuid":"597337100","full_name":"brocbyte/realtime-deformations","owner":"brocbyte","description":"Snow simulation (Material Point Method)","archived":false,"fork":false,"pushed_at":"2023-04-02T07:57:22.000Z","size":16606,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-21T09:52:12.357Z","etag":null,"topics":["cuda","glm","material-point-method","opengl"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/brocbyte.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-04T08:16:24.000Z","updated_at":"2024-03-17T08:36:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"355ec009-a3d5-42ab-a4a5-c5dc8424f1c9","html_url":"https://github.com/brocbyte/realtime-deformations","commit_stats":null,"previous_names":["brocbyte/realtime-deformations"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/brocbyte/realtime-deformations","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brocbyte%2Frealtime-deformations","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brocbyte%2Frealtime-deformations/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brocbyte%2Frealtime-deformations/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brocbyte%2Frealtime-deformations/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/brocbyte","download_url":"https://codeload.github.com/brocbyte/realtime-deformations/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brocbyte%2Frealtime-deformations/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269787312,"owners_count":24475714,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cuda","glm","material-point-method","opengl"],"created_at":"2024-11-09T17:19:38.895Z","updated_at":"2025-08-10T21:03:46.661Z","avatar_url":"https://github.com/brocbyte.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"A toy implementation of so-called \"Material Point Method\" to understand if i'm able to implement a physics-related paper.\nTurns out, i am :).\n\nUses OpenGL for particle visualization, CUDA for (some) parallel processing, GLM for linear algebra operations, Eigen for matrix operations not included in GLM (e.g. SVD matrix decomposition).\n\nRealtime demos (the first is the freshest :))\n\n![demo_last](./demo_last.gif)\n\n![demo](./demo.gif)\n\n![demo2](./demo2.gif)\n\nTODO\n\n[x] APIC\n[ ] Implicit time integration\n[ ] Multithreading for all MPM stages\n[ ] Volume rendering or sth idk separate particles are (not) fine\n\nPapers used:\n* \"A material point method for snow simulation\" [https://www.math.ucla.edu/~jteran/papers/SSCTS13.pdf]\n* \"GPU Optimization of Material Point Methods\" [https://dl.acm.org/doi/pdf/10.1145/3272127.3275044]\n* \"Material point method after 25 years: theory, implementation and applications\" [https://www.researchgate.net/publication/336796234_Material_point_method_after_25_years_theory_implementation_and_applications]\n* \"The Material Point Method for Simulating\nContinuum Materials\" [https://cg.informatik.uni-freiburg.de/intern/seminar/animation%20-%20MPM%20survey%20-%202016.pdf]\n* \"Optimization Integrator for Large Time Steps\" [https://www.math.ucla.edu/~jteran/papers/GSSJT15.pdf]\n* \"Modelling cracks in solid materials using the Material Point Method\" [http://www.diva-portal.org/smash/get/diva2:1091115/FULLTEXT01.pdf]\n* \"Drucker-Prager Elastoplasticity for Sand Animation\" [https://dl.acm.org/doi/pdf/10.1145/2897824.2925906]\n* \"A Moving Least Squares Material Point Method with Displacement Discontinuity and Two-Way Rigid Body Coupling\" [https://yzhu.io/publication/mpmmls2018siggraph/paper.pdf]","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrocbyte%2Frealtime-deformations","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrocbyte%2Frealtime-deformations","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrocbyte%2Frealtime-deformations/lists"}