ExpressionSettings
human/expression/expression.pyInherits from PreviewCollectionContent
Class for manipulating human expression.
Either using 1-click expressions or with the facial rig.
| Attributes | ||
|---|---|---|
| has_facial_rig | bool | — |
| keys | list[ShapeKeyItem] | Filtered list from HumGen3D.human.keys for keys part of expressions. |
| Methods | ||
| set() | Loads the passed 1-click expression preset on the human. | |
| load_facial_rig() | Imports all necessary shape keys and unhides the bones used to control face. | |
| remove_facial_rig() | Remove the facial rig from the human, including all it's shape keys. | |
| set_random() | Set this content type to a random content item.from PreviewCollectionContent | |
| get_options() | List[str] | Get a list of options you can use for the set() method of this content.from PreviewCollectionContent |
| get_categories() | list[str] | Get a list of categoris this content type is organized in.from PreviewCollectionContent |
| refresh_pcoll() | Refresh the items of this preview collection.from PreviewCollectionContent | |
Attributes
human.expression.has_facial_rig: boolread-only
sourceNo description yet.
human.expression.keys: list[ShapeKeyItem]read-only
sourceFiltered list from HumGen3D.human.keys for keys part of expressions.
Methods
Loads the passed 1-click expression preset on the human.
This will import the shapekey from the .npz file and set the value to 1.0.
| Parameter | Type | Description |
|---|---|---|
| preset | str | Preset to load. You can get a list of available presets with `get_options()`. |
human.expression.load_facial_rig(context: C = None, reset_expressions: bool = True)
sourceImports all necessary shape keys and unhides the bones used to control face.
| Parameter | Type | Description |
|---|---|---|
| context | C default None | Blender context. bpy.context if not provided. |
| reset_expressions | bool default True | Set the 1-click expressions to 0, as they would otherwise combine with the face rig. |
human.expression.remove_facial_rig()
sourceRemove the facial rig from the human, including all it's shape keys.
Will also hide the bones again.
Raises HumGenException — If no facial rig is loaded on this human.
human.expression.set_random(context: C = None, update_ui: bool = False)from PreviewCollectionContent
sourceSet this content type to a random content item.
This will use random.choice to select a random item from the output of get_options().
| Parameter | Type | Description |
|---|---|---|
| context | C default None | Blender context. bpy.context if not provided. |
| update_ui | bool default False | Will also show the chosen item as the active thumbnail in the template_icon_view. Defaults to False. |
human.expression.get_options(context: C = None, category: str = 'All') → List[str]from PreviewCollectionContent
sourceGet a list of options you can use for the set() method of this content.
These represent the choises the user sees in the UI. The output is a list of relative paths to the content files, starting from the Human Generator folder.
| Parameter | Type | Description |
|---|---|---|
| context | C default None | Blender context. bpy.context if not provided. |
| category | str default 'All' | Category to filter the content by. Defaults to "All". You can get a list of categories from the get_categories() method. |
Returns List[str] — List[str]: List of relative paths to content files. You can pick one of these and pass it to the set() method.
Raises ValueError — If the passed category is not present in the list of categories.
Raises HumGenException — If no options can be found, this can be caused by the content pack for this type of content not being installed.
human.expression.get_categories() → list[str]from PreviewCollectionContent
sourceGet a list of categoris this content type is organized in.
You can choose one of these categories to filter the content retreived from get_options().
Returns list[str] — list[str]: List of categories. These are the names of the folders the content is saved in.
human.expression.refresh_pcoll(context: C = None, override_category: Optional[str] = None, ignore_searchterm: bool = False)from PreviewCollectionContent
sourceRefresh the items of this preview collection.
This is low level functionality, you should not need to use this. It is used to refresh the list of possible content for this human. If you use get_options() this is automatically done for you.
| Parameter | Type | Description |
|---|---|---|
| context | C default None | Blender context. bpy.context if not provided. |
| override_category | Optional[str] default None | Override the category to use, if not provided all items regardless of category will be shown. |
| ignore_searchterm | bool default False | If True, the searchterm set by the user will be ignored. Defaults to False. |