Age | Commit message (Collapse) | Author |
|
Only objects in the current view layer can be deselected, this would throw an
error when there exist objects not in the current view layer.
|
|
After the change in PoseBone.bone behavior, drivers will be added there.
|
|
Only visible and selectable collections can be used for temporary
objects during generation due to the way operators work.
|
|
As suggested by @icappielo, and after discussion with @meta-androcto,
I start a public request to commit third-party contributions already
accepted to https://github.com/eigen-value/rigify/tree/rigify_0.6_beta
Specifically, this includes:
* User-defined rig package (feature set) support by @pioverfour.
This allows users to install pre-packaged rig sets via zip
files, which become accessible together with built-in rigs,
as discussed in T52758.
https://github.com/eigen-value/rigify/pull/1
* Modularization of python script generation, allowing rigs to
add their own utility functions and operators to the generated
script. This is critical to make custom rig support really
useful.
https://github.com/eigen-value/rigify/pull/5
* The utils.py file is split into multiple modules with a backward
compatibility proxy for old functions.
* Automatic verification that different rigs don't try to create
different rig settings with the same name to alleviate increased
risk of namespace conflicts with custom rigs.
https://github.com/eigen-value/rigify/pull/7
* New utility class that implements bone layer selection UI.
https://github.com/eigen-value/rigify/pull/6
* New utilities to replace copy & pasted boilerplate code for
creating custom properties, constraints and drivers.
https://github.com/eigen-value/rigify/pull/11
Some other random changes by MAD have likely slipped through.
These changes have already been extensively discussed and accepted
into the branch by @luciorossi, so I see no reason not to commit
them to the official repository to be tested during 2.8 beta.
Reviewers: icappiello
Differential Revision: https://developer.blender.org/D4364
|
|
The code attaching the UI script to the rig didn't check
that animation_data exists before accessing it.
|
|
|
|
|
|
|
|
Now all the widget elements are in the Widgets collection.
And the collection is hidden for the viewport.
There is one thing still not fully working, but it is a bug in Blender I
believe. Basically not all the custom bones are shown until you go to an
object that has its mesh and toggle in and out of edit mode.
|
|
With those changes the addon is working in some functional state.
Thus I'm bumping its version to 2.80.
TODOS:
* Handle collections (put all the new objects in a collection).
* We should also replace the old WGT_LAYERS with subcollections.
* Move toolshelf operators out of there (make tools or move to sidebar).
|
|
This replaces the old trick of using game controllers.
|
|
|
|
Reason for rename is that 'set' is a python builtin data structure.
|
|
|
|
small fixes & UI improvements
|
|
CREDITS and README files
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
PitchiPoy Animation Productions is sharing its custom rig types
with the Blender community at large. The new rig types all start
with "pitchipoy." and are used in PitchiPoy's productions.
Of particular interest is a face rig type for auto-rigging faces.
Other rig types include:
- Tentacles
- Fingers
- Arms/Legs
- Spine/Torso
Many thanks to PitchiPoy for their hard work and for sharing this back!
|
|
Arm/leg rig upgrades:
- Arms and legs no longer scale with their parents, which was
problematic when e.g. the torso of a character did
squash-and-stretch causing the arms/legs to distort and shear.
- Squash-and-stretch for both FK and IK rigs.
- Rubber hose controls.
Misc changes/bugfixes:
- Rigify now locks all pose transforms for non-control bones
automatically.
- The README file now correctly reflects the new rig-type API.
- Scrubbed the code for unused variables and imports.
- PEP8 cleanups.
|
|
This makes it much easier for e.g. someone to branch Rigify for
custom purposes, since there won't be weird name conflicts.
Also changed from using __import__() for dynamic imports to using
importlib.import_module(). This simplifies the code and should
be more robust.
Finally, misc pep8 cleanups.
|
|
The biggest fixes relate to keeping ID data modification out of
draw methods. This was breaking Rigify with the current API.
Secondary fix was to move widget meshes to match the bones, even
if the widget meshes already exist. It's nice for when the user
is progressively tweaking the metarig.
|
|
Blender increased object name length limit from 21 to 63 at some point,
and I hadn't update Rigify to reflect that. This enables better reliability
with respect to widget shapes.
|
|
|
|
|
|
involve any drivers.
|
|
- remove/comment unused variables
- remove unused imports
- fixed some bugs using incorrect variables
|
|
|
|
This is the last piece that should allow some pretty extensive custom rigging
in the metarig, if advanced users choose to do so.
|
|
This allows advanced users to do certain limited custom rigging work
in the metarig, and have it transfer to the generated rig.
Custom properties are also copied when using the copy_bone function
in utils.
TODO: transfer drivers from the metarig as well.
|
|
|
|
The layer names are then used in creating the custom rig layer UI. This is
useful for users that do not want to--or do not have the knowledge to--edit
the generated python script by hand. It is also handy even for more advanced
users when regerating the rig over and over (which over-writes the script
and any hand-made edits).
Also misc bug fixes in some of the rig types.
|
|
|
|
|
|
the rig.
|
|
Clean-up of the IK/FK snapping code. Should be much more maintainable now.
Also changed rig id generation. Rig id's now consist of a random
alphanumeric string 8 characters long, with the smallest 8 digits of seconds
since the epoc (in hex) at the time of rig generation appended on the end.
This results in a 16-character string that is ludicrously unlikely to
have any collisions between rigs. 36^8 * 16^8, with the 16^8 being very well
distributed over time. Ah... paranoia.
|
|
Also cleaned up how some of the operators work. They weren't playing nice
with undo.
|
|
|
|
|