{"id":30743271,"url":"https://github.com/acgaudette/nmg-vulkan","last_synced_at":"2025-10-11T02:38:34.152Z","repository":{"id":53785140,"uuid":"115453460","full_name":"acgaudette/nmg-vulkan","owner":"acgaudette","description":"Rusty mech engine","archived":false,"fork":false,"pushed_at":"2021-03-14T17:56:05.000Z","size":1255,"stargazers_count":22,"open_issues_count":4,"forks_count":3,"subscribers_count":5,"default_branch":"master","last_synced_at":"2023-08-23T15:52:07.324Z","etag":null,"topics":["3d","engine","gamedev","graphics","mech","nmg","physics","rustlang","vulkan"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/acgaudette.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}},"created_at":"2017-12-26T20:41:38.000Z","updated_at":"2023-08-23T15:52:07.326Z","dependencies_parsed_at":"2022-09-02T12:31:48.147Z","dependency_job_id":null,"html_url":"https://github.com/acgaudette/nmg-vulkan","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"purl":"pkg:github/acgaudette/nmg-vulkan","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/acgaudette%2Fnmg-vulkan","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/acgaudette%2Fnmg-vulkan/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/acgaudette%2Fnmg-vulkan/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/acgaudette%2Fnmg-vulkan/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/acgaudette","download_url":"https://codeload.github.com/acgaudette/nmg-vulkan/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/acgaudette%2Fnmg-vulkan/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273539317,"owners_count":25123499,"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-09-04T02:00:08.968Z","response_time":61,"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":["3d","engine","gamedev","graphics","mech","nmg","physics","rustlang","vulkan"],"created_at":"2025-09-04T02:05:40.619Z","updated_at":"2025-10-11T02:38:29.106Z","avatar_url":"https://github.com/acgaudette.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# The `nmg` Rust x Vulkan Engine\n\nFor the upcoming game, nmg ([original prototype here][3])!\n\n[![Build Status][1]][2]\n\n`nmg-vulkan`\nis a game engine written from scratch in Rust,\nspecialized for two things:\n1. Retro PSX-inspired graphics\n2. High-performance mech physics\n\n![](media/pingpong.gif)\n![](media/softy.gif)\n![](media/pyramid.gif)\n![](media/walking.gif)\n\n## \"Features\"\n- Modular ECS architecture\n- Softbody physics engine\n- Low-level Vulkan backend\n- Bathtub brew math module\n- Cross-platform library crate\n- Mimimal dependency count\n- Could be data oriented\n\n## Notes\n- Currently requires Rust nightly\n\n## Acknowledgements\n- [cogciprocate/voodoo][4]\n\nPapers implemented:\n- [Meshless Deformations Based On Shape Matching (Muller et al. 2016)][5]\n- [A Robust Method to Extract the Rotational Part of Deformations (Muller et al. '05)][6]\n- [Inverse Kinematics with Quaternion Joint Limits (JBlow '02)][7]\n\n[1]: https://travis-ci.org/acgaudette/nmg-vulkan.svg?branch=master\n[2]: https://travis-ci.org/acgaudette/nmg-vulkan\n[3]: https://youtu.be/dD4nkrqb9RY\n[4]: https://github.com/cogciprocate/voodoo\n[5]: https://www.cs.drexel.edu/~david/Classes/Papers/MeshlessDeformations_SIG05.pdf\n[6]: https://animation.rwth-aachen.de/media/papers/2016-MIG-StableRotation.pdf\n[7]: http://number-none.com/product/IK%20with%20Quaternion%20Joint%20Limits/index.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Facgaudette%2Fnmg-vulkan","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Facgaudette%2Fnmg-vulkan","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Facgaudette%2Fnmg-vulkan/lists"}