{"id":16378046,"url":"https://github.com/skytasul/skeleton2mjcf","last_synced_at":"2026-05-16T15:35:37.139Z","repository":{"id":252087597,"uuid":"838779570","full_name":"SkytAsul/skeleton2mjcf","owner":"SkytAsul","description":"Convert a rigged mesh to a MuJoCo model with bodies hierarchy and skin.","archived":false,"fork":false,"pushed_at":"2024-08-07T14:08:58.000Z","size":13,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-11T15:24:33.666Z","etag":null,"topics":["blender","mujoco","rigging","skin"],"latest_commit_sha":null,"homepage":"","language":"Python","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/SkytAsul.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":"2024-08-06T10:24:08.000Z","updated_at":"2024-08-07T14:09:01.000Z","dependencies_parsed_at":"2024-08-07T17:08:05.676Z","dependency_job_id":"d7de03f4-14da-4cd7-915e-7694abfb1d10","html_url":"https://github.com/SkytAsul/skeleton2mjcf","commit_stats":null,"previous_names":["skytasul/skeleton2mjcf"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SkytAsul/skeleton2mjcf","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SkytAsul%2Fskeleton2mjcf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SkytAsul%2Fskeleton2mjcf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SkytAsul%2Fskeleton2mjcf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SkytAsul%2Fskeleton2mjcf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SkytAsul","download_url":"https://codeload.github.com/SkytAsul/skeleton2mjcf/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SkytAsul%2Fskeleton2mjcf/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33108217,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-16T04:41:52.686Z","status":"ssl_error","status_checked_at":"2026-05-16T04:41:52.009Z","response_time":115,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["blender","mujoco","rigging","skin"],"created_at":"2024-10-11T03:44:30.784Z","updated_at":"2026-05-16T15:35:37.120Z","avatar_url":"https://github.com/SkytAsul.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# skeleton2mjcf\n\nThis Python script is made to convert a skeleton and mesh to a MuJoCo bodies hierarchy, alongside with a skin.\n\nIt gets its data from a Blender scene, because I have not found a regular 3D model file type which contains the necessary data.\n\nThe script is not complete and I will probably never finish it (see the TODO items below) but the structure is there and it can already be used. Adding those features should not be really complicated for future contributors.\n\n## Usage\n\nDownload the repository, install the dependencies (in a venv!) using\n```sh\n$ pip install -r requirements.txt\n```\n\nLaunch the script with\n```sh\n$ python3 skeleton2mjcf.py [OPTIONS] INPUT_FILE OUTPUT_DIR\n```\n\nYou can get a list of all available options with\n```sh\n$ python3 skeleton2mjcf.py --help\n```\n\n## What does it do?\n\n1. Loads a Blender scene from the input file\n1. For each object (selected in the scene or specified with the `--objects` parameter):\n    1. Converts the hierarchy of bones to a hierarchy of MuJoCo bodies\n        - bodies are positioned correctly\n        - they do not have proper orientations (TODO)\n        - bodies cannot move, there are no joint between them (TODO)\n    1. Creates a MuJoCo skin according to the object mesh\n        - skins are properly linked to the bodies and will move with them\n        - skins do not have textures (TODO)\n1. Writes a .xml file with the MuJoCo model in the output directory and saves the created skins in files\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskytasul%2Fskeleton2mjcf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fskytasul%2Fskeleton2mjcf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskytasul%2Fskeleton2mjcf/lists"}