{"id":17722470,"url":"https://github.com/leixingyu/autorigger","last_synced_at":"2025-07-10T08:39:45.144Z","repository":{"id":58034923,"uuid":"169181473","full_name":"leixingyu/autoRigger","owner":"leixingyu","description":"Procedural rigging tool for Maya","archived":false,"fork":false,"pushed_at":"2023-01-12T15:46:23.000Z","size":4738,"stargazers_count":28,"open_issues_count":3,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2023-06-26T00:23:07.091Z","etag":null,"topics":["auto-rigging","maya","maya-python","python","rigging"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/leixingyu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-02-05T02:37:31.000Z","updated_at":"2023-06-22T11:56:36.000Z","dependencies_parsed_at":"2023-02-09T12:31:55.339Z","dependency_job_id":null,"html_url":"https://github.com/leixingyu/autoRigger","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leixingyu%2FautoRigger","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leixingyu%2FautoRigger/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leixingyu%2FautoRigger/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leixingyu%2FautoRigger/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leixingyu","download_url":"https://codeload.github.com/leixingyu/autoRigger/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253146569,"owners_count":21861426,"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","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":["auto-rigging","maya","maya-python","python","rigging"],"created_at":"2024-10-25T15:38:26.136Z","updated_at":"2025-05-08T20:37:28.392Z","avatar_url":"https://github.com/leixingyu.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\u003ch1 align=\"center\"\u003eAutoRigger 2.0\u003c/h1\u003e\n\n  \u003cp align=\"center\"\u003e\n    AutoRigger is an automated rig builder used in Maya. It currently supports procedural\nrigging based on modules as well as pre-made template for biped, quadruped and chain.\n    \u003cbr /\u003e\n    \u003ca href=\"https://youtu.be/893BSzy3lCs\"\u003eChain Demo\u003c/a\u003e\n    |\n    \u003ca href=\"https://youtu.be/GT15B_x8R9w\"\u003eQuadruped Demo\u003c/a\u003e\n    |\n    \u003ca href=\"https://youtu.be/tMrX3lT2Iy8\"\u003eBiped Demo\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n\n## About The Project\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"https://i.imgur.com/9E5V0Rn.png\" alt=\"autoRigger\" height=\"280px\"/\u003e\n\u003c/div\u003e\n\nThe AutoRigger tool started out as my practice for maya scripting back in late 2018. \nBut Little by little,\nI started to implement new rigging knowledge on to it. After years\nof expansion, it became my rigging tool kit which handles a lot of the automation\nin general rigging process.\n\n## Getting Started\n\n### Prerequisites\n\n- [enum34 package](https://pypi.org/project/enum34/) for Python 2.7\n\n  `pip install enum34`\n\n### Launch\n1. Unzip the [autoRigger.zip package](https://github.com/leixingyu/autoRigger/releases/tag/v2.0.1) under\n`%USERPROFILE%/Documents/maya/[current maya version]/scripts/`\nor a custom directory under `PYTHONPATH` env variable. \n\n2. Run through script editor:\n    ```python\n    from autoRigger import autoRigger\n    autoRigger.show()\n    ```\n\n## Usage\n\nThe autoRigger is modular and very straight forward to use; Each item on the left is referred as a rig object, you create them in the scene\nindividually and piece together to build the final rig; there are also\npre-made template for standard characters like biped and quadruped.\n\n\u003e note: autoRigger isn't a skinning tool\n\n**Create Guide**\n- choose a rig object, and then enter specific properties on the right-side field, finally click guide.\n\n- this creates a guided locators or the rough joint placement of the rig.\nyou are now free to move, rotate, scale the locators around to better match the\ntarget mesh.\n\n**Build Rig**\n\n- when you are satisfied with the guide placement, click build. it will\ngenerate all the joints, controllers and constraints. \n- The next step if for you to skin your character/creature using anything you\nprefer\n\n\u003cimg src=\"https://i.imgur.com/Gi6GMUT.png\" alt=\"interface\" height=\"320px\" style=\"margin: 40px 10px\"/\u003e\n\n\n## Scripting Example\n\nthe rig object and all of its components can be accessed through scripting \nwith ease, as each rig object is a class inheriting the abstract bone class.\n\nTo instantiate a rig object, build guide and rig\n```python\nfrom autoRigger.constant import Side\nfrom autoRigger.chain import chainEP\n\ntest_chain = chainEP.ChainEP(\n   name='rope',\n   side=Side.LEFT,\n   segment=20,\n   curve='curve1',\n   cv=10\n)\n\ntest_chain.build_guide()\ntest_chain.build_rig()\n```\n\nAccess rig object properties:\n\n```\n\u003e\u003e\u003e test_chain.name\noutput: rope\n```\n\n```\n\u003e\u003e\u003e test_chain.side\noutput: Side.LEFT\n```\n\n```\n\u003e\u003e\u003e test_chain.type\noutput: chain\n```\n\n```\n\u003e\u003e\u003e test_chain.scale\noutput: 1\n```\n```\n\u003e\u003e\u003e test_chain.components\n\n# this is used mostly in template such as biped or quadruped\n# which will yield all rig sub-components\noutput: []\n```\n\nAccess rig object nodes in maya scene\n\n```python\n# shared maya nodes\njnts = test_chain.jnts\nroot_jnt = jnts[0]\ntop_jnt = jnts[-1]\n\n\"\"\"\nsubsequently:\n['chain_l_rope0_jnt']\n['chain_l_rope19_jnt']\n\"\"\"\n\nctrls = test_chain.ctrls\nlocators = test_chain.locs\noffset_group = test_chain.offsets\n\n# chain specific maya nodes\ntest_chain.clusters\ntest_chain.guide_curve\ntest_chain.curve\ntest_chain.cvs\n```\n\n\n## Roadmap\n\n- [ ] integrate facial rigging\n- [ ] bird template\n- [ ] vehicle template\n- [ ] refactor quadruped leg modules\n\n## Versions\n\u003cdetails\u003e\n  \u003csummary\u003eUpdate 2.0 (current)\u003c/summary\u003e\n    \u003cul\u003e\n      \u003cli\u003erig object abstraction\u003c/li\u003e\n      \u003cli\u003eadded chain modular rigging package\u003c/li\u003e\n      \u003cli\u003eadded dynamic property widget\u003c/li\u003e\n    \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eUpdate 1.2 (01/05/2021)\u003c/summary\u003e\n    \u003cul\u003e\n      \u003cli\u003ePEP8 code re-formatting\u003c/li\u003e\n      \u003cli\u003eupdated naming convention\u003c/li\u003e\n      \u003cli\u003eupdated user-interface\u003c/li\u003e\n    \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eUpdate 1.1 (04/08/2020)\u003c/summary\u003e\n    \u003cul\u003e\n      \u003cli\u003eadded quadruped template rigging\u003c/li\u003e\n      \u003cli\u003eadded biped template rigging\u003c/li\u003e\n    \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eUpdate 1.0 (10/19/2019)\u003c/summary\u003e\n    \u003cul\u003e\n      \u003cli\u003ere-built autoRigger as a modular rig system\u003c/li\u003e\n      \u003cli\u003eupdated user-interface\u003c/li\u003e\n    \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eUpdate 0.4 (04/21/2019)\u003c/summary\u003e\n    \u003cul\u003e\n      \u003cli\u003eintegrated body and face rigging\u003c/li\u003e\n      \u003cli\u003eadded face picker\u003c/li\u003e\n    \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eUpdate 0.2 (03/22/2019)\u003c/summary\u003e\n    \u003cul\u003e\n      \u003cli\u003eadded FK/IK to limb\u003c/li\u003e\n      \u003cli\u003eadded flexible spine control\u003c/li\u003e\n    \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eUpdate 0.1 (12/29/2018)\u003c/summary\u003e\n    \u003cul\u003e\n      \u003cli\u003einitial release of the autoRigger tool\u003c/li\u003e\n      \u003cli\u003eincluded one-click rig building\u003c/li\u003e\n      \u003cli\u003eincluded default skin binding\u003c/li\u003e\n    \u003c/ul\u003e\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleixingyu%2Fautorigger","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleixingyu%2Fautorigger","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleixingyu%2Fautorigger/lists"}