Rename Eevee to EEVEE #104561
@ -49,7 +49,7 @@ Align View from
|
||||
Lock View to Object
|
||||
Select an object to align view, from the list.
|
||||
|
||||
View to Select
|
||||
View to Selected
|
||||
Align view on selected object.
|
||||
|
||||
Cursor
|
||||
|
@ -32,7 +32,7 @@ A bone can belong to more than one selection set.
|
||||
|
||||
.. seealso::
|
||||
|
||||
:doc:`/animation/armatures/properties/bone_groups` for a way to visually distinguish groups of bones.
|
||||
:doc:`/animation/armatures/properties/bone_collections` for a way to organise groups of bones.
|
||||
|
||||
|
||||
.. reference::
|
||||
|
@ -52,7 +52,7 @@ Compositing Nodes
|
||||
-----------------
|
||||
|
||||
Setup Corner Pin
|
||||
Add a compositing setup of the Image Texture, Scale, and :doc:`Corner Pin </compositing/types/distort/corner_pin>`
|
||||
Add a compositing setup of the Image Texture, Scale, and :doc:`Corner Pin </compositing/types/transform/corner_pin>`
|
||||
nodes to inject a warped view of the image into the compositor output. The add-on adds drivers to
|
||||
the corner values of the Corner Pin node so that transforms of the plane and camera drive them.
|
||||
Make sure to have an active camera in the scene before the import.
|
||||
|
@ -52,6 +52,8 @@ Principled BSDF
|
||||
- Metallic
|
||||
- IOR
|
||||
- Transmission
|
||||
- Emission
|
||||
- Emission Strength
|
||||
- Alpha
|
||||
|
||||
Normal Map
|
||||
|
@ -7,8 +7,8 @@ Autodesk 3DS
|
||||
|
||||
:Category: Import-Export
|
||||
:Menu: :menuselection:`File --> Import/Export --> 3D Studio (.3ds)`
|
||||
:Version: 2.4.6
|
||||
:Blender: 3.6
|
||||
:Version: 2.4.8
|
||||
:Blender: 4.0
|
||||
:Authors: Bob Holcomb, Campbell Barton, Sebastian Schrand
|
||||
:Maintainer: Sebastian Sille (NRGSille)
|
||||
:Support Level: Community
|
||||
@ -163,7 +163,7 @@ they must be color inverted afterwards to match with Blender definition.
|
||||
The material mappings are defined as following:
|
||||
|
||||
- 3ds Diffuse Map <-> blender Base Color Texture
|
||||
- 3ds Specular Map <-> blender Specular Texture
|
||||
- 3ds Specular Map <-> blender Specular Tint Texture
|
||||
- 3ds Shininess Map <-> blender Roughness Texture
|
||||
- 3ds Reflection Map <-> blender Metallic Texture
|
||||
- 3ds Opacity Map <-> blender Alpha Texture
|
||||
|
@ -42,6 +42,16 @@ compared to Blender, as such vertices are separated for export.
|
||||
Likewise, curves and other non-mesh data are not preserved,
|
||||
and must be converted to meshes prior to export.
|
||||
|
||||
GPU Instances
|
||||
-------------
|
||||
|
||||
When the option is enable in Exporter, instances are exported using the ``EXT_mesh_gpu_instancing`` extension.
|
||||
There are some limitations, at export:
|
||||
- Instances must be meshes, and don't have any children themselves
|
||||
- Instances must all be children of the same object.
|
||||
- This extension doesn't manage material variation. That means that the generated file may include all instances with same materials.
|
||||
- Instances detected are objects sharing the same mesh data.
|
||||
At import, instances are created by creating objects sharing the same mesh data.
|
||||
|
||||
Materials
|
||||
=========
|
||||
@ -257,9 +267,9 @@ All Image Texture nodes used for clearcoat shading should have their *Color Spac
|
||||
Sheen
|
||||
^^^^^
|
||||
|
||||
When the *Velvet BSDF* node is used in addition to Principled BSDF node, the ``KHR_materials_sheen`` glTF
|
||||
extension will be included in the export. The Sheen Color will be exported from Color socket of Velvet node.
|
||||
Sheen Roughness will be exported from Sigma socket.
|
||||
When the *Sheen BSDF* node is used in addition to Principled BSDF node, the ``KHR_materials_sheen`` glTF
|
||||
extension will be included in the export. The Sheen Color will be exported from Color socket of Sheen node.
|
||||
Sheen Roughness will be exported from Roughness socket.
|
||||
|
||||
If a Sheen Roughness Texture is used, glTF requires the values be written to the alpha (``A``) channel.
|
||||
|
||||
@ -267,7 +277,7 @@ If a Sheen Roughness Texture is used, glTF requires the values be written to the
|
||||
|
||||
.. tip::
|
||||
|
||||
Velvet BSDF node is only available on Cycles render engine.
|
||||
Sheen BSDF node is only available on Cycles render engine.
|
||||
You may have to temporary switch to Cycles to add this node, and get back to EEVEE.
|
||||
|
||||
.. note::
|
||||
@ -276,7 +286,7 @@ If a Sheen Roughness Texture is used, glTF requires the values be written to the
|
||||
the resulting shader is not fully energy conservative.
|
||||
You may find some difference between Blender render, and glTF render.
|
||||
Sheen models are not fully compatible between Blender and glTF.
|
||||
This trick about adding Velvet Shader is the most accurate
|
||||
This trick about adding Sheen Shader is the most accurate
|
||||
approximation (better that using Sheen Principled sockets).
|
||||
|
||||
|
||||
@ -569,6 +579,7 @@ are supported directly by this add-on:
|
||||
- ``KHR_lights_punctual``
|
||||
- ``KHR_texture_transform``
|
||||
- ``KHR_mesh_quantization``
|
||||
- ``EXT_mesh_gpu_instancing``
|
||||
|
||||
|
||||
.. rubric:: Export
|
||||
@ -585,6 +596,7 @@ are supported directly by this add-on:
|
||||
- ``KHR_materials_ior``
|
||||
- ``KHR_materials_variants``
|
||||
- ``KHR_texture_transform``
|
||||
- ``EXT_mesh_gpu_instancing``
|
||||
|
||||
|
||||
Third-party glTF Extensions
|
||||
@ -795,11 +807,16 @@ Bone Direction
|
||||
Changes the heuristic the importer uses to decide where to place bone tips.
|
||||
Note that the Fortune setting may cause inaccuracies in models that use non-uniform scaling.
|
||||
Otherwise this is purely aesthetic.
|
||||
The default value will not change axis, and is best for re-exporting from Blender.
|
||||
This default option will change display mode (adding shape and changing relationship line) to have a better view,
|
||||
even if original bones axis are not the most accurate (estheticaly speaking)
|
||||
Lighting Mode
|
||||
Optional backwards compatibility for non-standard render engines. Applies to lights.
|
||||
Standard: Physically-based glTF lighting units (cd, lx, nt).
|
||||
Unitless: Non-physical, unitless lighting. Useful when exposure controls are not available
|
||||
Raw (Deprecated): Blender lighting strengths with no conversion
|
||||
Import Webp textures
|
||||
If a texture exists in webp format, loads the webp texture instead of the fallback png/jpg one.
|
||||
|
||||
|
||||
Export
|
||||
@ -850,6 +867,11 @@ Transform
|
||||
Y Up
|
||||
Export using glTF convention, +Y up.
|
||||
|
||||
Data - Scene Graph
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
GPU Instances
|
||||
Export using ``EXT_mesh_gpu_instancing`` extensions.
|
||||
|
||||
Data - Mesh
|
||||
^^^^^^^^^^^
|
||||
@ -881,9 +903,15 @@ Materials
|
||||
Images
|
||||
Output format for images. PNG is lossless and generally preferred, but JPEG might be preferable for
|
||||
web applications due to the smaller file size.
|
||||
If webp is chosen, all textures will be saved as Webp, without any png/jpg fallback.
|
||||
If None is chosen, materials are exported without textures.
|
||||
JPEG Quality
|
||||
When exporting jpeg files, the quality of the exported file.
|
||||
Image Quality
|
||||
When exporting jpeg or Webp files, the quality of the exported file.
|
||||
Create Webp
|
||||
Creates webp textures for every textures, in addition to the existing texture.
|
||||
For already webp textures, nothing happen.
|
||||
Webp fallback
|
||||
For all webp textures, create a png fallback texture.
|
||||
Export Original PBR Specular
|
||||
When On, specular data are exported from glTF Material Output node,
|
||||
Instead of using sockets from Principled BSDF Node.
|
||||
@ -898,6 +926,14 @@ Shape Key Normals
|
||||
Shape Key Tangents
|
||||
Export vertex tangents with shape keys (morph targets).
|
||||
|
||||
Data - Shape Keys - Optimize
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Use Sparse Accessor if better
|
||||
Sparse Accessor will be used if it save space (if the exported file is smaller)
|
||||
Omitting Sparse Accessor if data is empty
|
||||
If data is empty, omit to export SParce Accessor. Not all viewer managed it correctly, so this option is Off by default
|
||||
|
||||
Data - Armature
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
@ -914,8 +950,11 @@ Data - Skinning
|
||||
|
||||
Export skinning data
|
||||
|
||||
Bone influences
|
||||
How many joint verex influences will be exported. Models may appear incorrectly in many viewers with value different to 4 or 8.
|
||||
|
||||
Include All Bone Influences
|
||||
Allow more than 4 joint vertex influences. Models may appear incorrectly in many viewers.
|
||||
Export all joint vertex influences. Models may appear incorrectly in many viewers.
|
||||
|
||||
Data - Lighting
|
||||
^^^^^^^^^^^^^^^
|
||||
|
@ -64,14 +64,14 @@ Rigify Human Alignment Tips
|
||||
they are almost useless if you plan to make facial animation through shape keys.
|
||||
Consider removing face features from your character if they aren't really needed.
|
||||
If you don't need the face all the face bones can be deleted.
|
||||
All the face bones are on the first armature layer by default.
|
||||
You can select them by displaying only bone layer 1, selecting all of its content and
|
||||
All the face bones are in the *Face* armature bone collection by default.
|
||||
You can select them by displaying only that collection, selecting all of its content and
|
||||
then deleting the bones in Edit Mode to correctly remove the face.
|
||||
|
||||
If you want to scale all the face bones at once, consider scaling the face master bone
|
||||
in Pose Mode (see Pose Mode matching method).
|
||||
The face master bone is placed in the same position of the head bone.
|
||||
To select it easily, hide all other bone layers.
|
||||
To select it easily, hide all other bone collections.
|
||||
|
||||
For more tips, see the :doc:`Positioning Guide </addons/rigging/rigify/bone_positioning>`.
|
||||
|
||||
@ -147,13 +147,13 @@ Binding the Geometry to the Rig
|
||||
|
||||
To bind the geometry to the rig you can use your preferred tools. Just few things you have to know:
|
||||
|
||||
- All the deforming bones are on the armature layer 30.
|
||||
- All the deforming bones are in the *DEF* bone collection.
|
||||
- Eyes and Teeth bones of the legacy face are not deforming. You are supposed to bind the eyes and
|
||||
teeth geometry through Child Of constraints.
|
||||
- Usually armature deform with automatic weights do a really good job out of the box
|
||||
if you correctly place your bones (and there is enough topology to work with!).
|
||||
|
||||
For more detailed information on armature layers, Armature modifier and weight painting refer to the Blender manual.
|
||||
For more detailed information on bone collections, Armature modifier and weight painting refer to the Blender manual.
|
||||
|
||||
|
||||
.. _bpy.types.Armature.rigify:
|
||||
@ -172,27 +172,36 @@ By using options in the Advanced sub-panel, it is possible to:
|
||||
- Choose whether to use linked duplicates for left and right side widgets.
|
||||
- Execute a script data-block after generation.
|
||||
|
||||
|
||||
Advanced Options Sub-Panel
|
||||
--------------------------
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_basics_advanced-panel.png
|
||||
:align: right
|
||||
:width: 300px
|
||||
|
||||
Advanced rig generation options are by default hidden in a sub-panel. Click on the *Advanced* line to open it.
|
||||
|
||||
Some of the options will be automatically set by Rigify if they have no value when a rig is generated,
|
||||
while others are fully controlled by the user.
|
||||
|
||||
Target Rig :guilabel:`auto`
|
||||
This option specifies the generated rig to overwrite when re-generating from this metarig.
|
||||
Rig Name
|
||||
When a brand new rig is generated, as opposed to overwriting an existing one, the value of this option
|
||||
is used to name it.
|
||||
|
||||
If the option is not set, Rigify will generate a new rig object and store it in this option.
|
||||
The new object will be named based on the name of the metarig according to the following rules:
|
||||
If this field is empty, the new object will be named based on the name of the metarig according
|
||||
to the following rules:
|
||||
|
||||
* If the name contains ``META``, it is replaced with ``RIG``.
|
||||
* If the name contains ``metarig``, it is replaced with ``rig``.
|
||||
* Otherwise, ``RIG-`` is prepended to the name.
|
||||
|
||||
When overwriting an existing rig object specified by the option, its name is not changed,
|
||||
allowing it to be freely renamed if the default naming scheme doesn't fit.
|
||||
When overwriting an existing rig object specified by the *Target Rig* option, its name is not changed,
|
||||
allowing it to be freely renamed without having to keep the value of this option in sync.
|
||||
|
||||
Target Rig :guilabel:`auto`
|
||||
This option specifies the generated rig to overwrite when re-generating from this metarig.
|
||||
|
||||
If the option is not set, Rigify will generate a new rig object and store it in this option.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -204,13 +213,13 @@ Rig UI Script :guilabel:`auto`
|
||||
works in the same manner as *Target Rig*.
|
||||
|
||||
The script controls the UI in the 3D Viewport that allows conveniently switching visible
|
||||
bone layers, changing custom properties, converting between IK and FK and so on.
|
||||
bone collections, changing custom properties, converting between IK and FK and so on.
|
||||
|
||||
Widgets Collection :guilabel:`auto`
|
||||
This reference specifies the collection containing generated widgets, and
|
||||
works in the same manner as *Target Rig*.
|
||||
|
||||
Force Widget Update
|
||||
Overwrite Widget Meshes
|
||||
If enabled, Rigify will generate new widgets every time the rig is re-generated. By default,
|
||||
it tries to reuse the already generated widget objects that exist in the widget collection,
|
||||
allowing them to be manually edited to fit the character better.
|
||||
|
@ -5,7 +5,8 @@ Creating Meta-rigs
|
||||
|
||||
#. Add a single bone from the :menuselection:`Add --> Armature` menu.
|
||||
#. Go in armature Edit Mode and build the meta rig by samples or Rigify-types.
|
||||
#. Define Rigify layers, bone grouping and selection sets.
|
||||
#. Define the :ref:`Rigify bone collection UI <bpy.types.BoneCollection.rigify_ui_row>`,
|
||||
:ref:`color sets <bpy.types.Armature.rigify_colors>`, and selection sets.
|
||||
#. In the armature properties click on the *Generate* button to generate the rig.
|
||||
|
||||
|
||||
@ -59,7 +60,7 @@ Just add a single bone from the *Add* menu.
|
||||
|
||||
.. tip::
|
||||
|
||||
At this stage naming the newly added armature "meta-rig" is a good idea.
|
||||
At this stage naming the newly added armature ``metarig`` is a good idea.
|
||||
You can do it at any time (or not at all) but it's suggested to do it before going on
|
||||
so it will always be clear on which armature you have to work when editing the meta-rig structure.
|
||||
|
||||
@ -77,7 +78,7 @@ Building a meta-rig from scratch in Edit Mode can be done in two ways:
|
||||
Adding Samples (Basic)
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Adding samples in Edit Mode is a good way to start building a meta-rig.
|
||||
Adding pre-defined samples in Edit Mode is a good way to start building a meta-rig.
|
||||
This way you can become familiar with the available building blocks and how they are meant to be used.
|
||||
To add a rig sample:
|
||||
|
||||
@ -90,11 +91,38 @@ To add a rig sample:
|
||||
For the list of available samples, see the :doc:`Rig Types </addons/rigging/rigify/rig_types/index>` page.
|
||||
|
||||
|
||||
.. _bpy.types.PoseBone.rigify_type:
|
||||
.. _bpy.types.RigifyParameters:
|
||||
|
||||
Using Rig Types (Advanced)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
#. Create your bone chains in Edit Mode.
|
||||
#. Assign the correct rig type to the first bone of each chain in Pose Mode.
|
||||
.. figure:: /images/addons_rigging_rigify_metarigs_rigify-type-panel.png
|
||||
:align: right
|
||||
:width: 300px
|
||||
|
||||
For full control, you can use the Rigify Type panel of bone properties in Pose Mode to assign
|
||||
any Rigify sub-rig type to any bone, as well as change its options.
|
||||
|
||||
For the list of available sub-rig types and their options, see the :doc:`Rig Types </addons/rigging/rigify/rig_types/index>` page.
|
||||
|
||||
At the top of the panel you can find a field specifying the rig type for the active bone. The drop-down list
|
||||
can be optionally filtered by the :doc:`Feature Set </addons/rigging/rigify/feature_sets>` it belongs to.
|
||||
|
||||
Below that you can change options relevant to the selected rig type, if it has any.
|
||||
|
||||
Bone Collection References
|
||||
""""""""""""""""""""""""""
|
||||
|
||||
Some rig types that generate many control bones have options that reference
|
||||
:ref:`Bone Collections <bpy.types.BoneCollection.rigify_ui_row>`. These reference lists have a standard UI with
|
||||
the following features:
|
||||
|
||||
* A checkbox controlling whether the reference should be used.
|
||||
* A button to copy the reference list contents from the active to all selected bones.
|
||||
* A plus button to add a new reference to the list.
|
||||
* A list of references, each entry with a field to specify the target collection,
|
||||
and a button to remove the entry from the list.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -113,7 +141,7 @@ Using Rig Types (Advanced)
|
||||
Custom Root Bone
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
If the meta-rig contains a bone called "root", it is used as the root control bone instead of creating a new one.
|
||||
If the meta-rig contains a bone called ``root``, it is used as the root control bone instead of creating a new one.
|
||||
This allows changing the rest position of the root bone, assigning a custom widget,
|
||||
or adding custom properties to the bone.
|
||||
|
||||
@ -121,71 +149,130 @@ The custom root bone must have no parent, and use the :ref:`basic.raw_copy <rigi
|
||||
type or none.
|
||||
|
||||
|
||||
Layers, Bone Groups & Selection Sets
|
||||
====================================
|
||||
.. _bpy.types.Armature.rigify_colors:
|
||||
|
||||
:ref:`Armature Layers <bpy.types.Armature.layers>` are usually used to isolate bones.
|
||||
Rigify can take advantage of armature layer to generate extra features and the user interface for the final rig.
|
||||
Rigify layers are displayed in a vertical layout inside their own separate panel named Rigify Layer Names.
|
||||
Color Sets
|
||||
==========
|
||||
|
||||
- The first column shows the layer number.
|
||||
- The second column is a display toggle.
|
||||
.. figure:: /images/addons_rigging_rigify_metarigs_color-sets-panel.png
|
||||
:align: right
|
||||
:width: 300px
|
||||
|
||||
This toggle controls the armature layer visibility.
|
||||
It has the same effect of enabling/disabling the layer visibility from the top armature layers menu.
|
||||
It is just redrawn here for a simplicity.
|
||||
The Color Sets panel is used to define the bone color scheme for the final rig. The colors from the list
|
||||
can be associated with bone collections from the relevant panel.
|
||||
|
||||
- The third column sets a specific layer name to be used to build the rig UI of the final rig.
|
||||
If set, a button with the specified name will be created in the ``rig_ui_template`` to control the visibility of
|
||||
this specific armature layer. If layer contains at least one bone but its name field is empty,
|
||||
a button with no name will be created in the rig UI.
|
||||
|
||||
- The fourth column defines in which UI row the layer button will be created.
|
||||
|
||||
This numbers define the layer ordering in the UI and will ignore the effective layer number.
|
||||
If two layer have the same row number their UI buttons will be created in the same row.
|
||||
|
||||
- The fifth column is a toggle for the selection set.
|
||||
|
||||
If checked a selection set with that name will be created and associated to the final rig.
|
||||
|
||||
- The sixth column defines the Rigify Bone Grouping.
|
||||
|
||||
If Rigify Bone Groups are set, the user can make the association between
|
||||
the bones on the layer and the specified bone group from the list.
|
||||
The controls on the final rig will inherit the bone grouping through this value.
|
||||
|
||||
- The seventh column displays -- if set -- the associated bone group name.
|
||||
|
||||
In order to use the Bone Groups in the *Rigify Layer Names* fields,
|
||||
*Rigify Bone Groups* must be set through the specific panel.
|
||||
Usually this panel is displayed just above Rigify Layer Names panel.
|
||||
|
||||
Rigify Bone Groups are used to define bone colors on the final rig.
|
||||
The top two rows of the Rigify Bone Groups panel are used to define the bone colors general behavior.
|
||||
The top two rows of the Color Sets panel are used to define the general behavior of the bone colors.
|
||||
Usually color themes use a gradient of colors to define the different bone states: default, selected and active.
|
||||
When multiple color themes are used in the same rig, identifying which bone is selected or
|
||||
active can be tricky since each color will have its corresponding state.
|
||||
|
||||
To override this behavior Rigify Bone Groups unifies the active and selected states with the same color.
|
||||
To override this behavior Rigify unifies the active and selected states using the same color.
|
||||
This is defined by two values:
|
||||
|
||||
Unified Selected/Active Colors
|
||||
When this option is active adding a bone group in the list will always keep the colors consistent.
|
||||
When a color scheme is added as from a theme, the color scheme is loaded as is.
|
||||
When a color scheme is added from a theme, the color scheme is loaded as is.
|
||||
Click on the *Apply* button to force the system to unify selected and active colors.
|
||||
|
||||
Selected/Active Colors
|
||||
This two color fields define respectively *Selected* and *Active* colors.
|
||||
By default Rigify reads this colors from the theme defined by the user in the Blender preferences.
|
||||
This two color fields define respectively the *Selected* and *Active* colors.
|
||||
By default Rigify reads these colors from the theme defined by the user in the Blender preferences.
|
||||
This way the *Selected*/*Active* colors can always have a predictable and consistent behavior in the UI.
|
||||
The colors can be customized by clicking on the relative color field.
|
||||
The colors can be customized by clicking on the relevant color field.
|
||||
To reset them to the Blender current theme value just click on the button with the update icon.
|
||||
|
||||
Bone Groups can be added and deleted as done in the general Bone Group panel
|
||||
by clicking on the ``+`` or ``-`` buttons.
|
||||
All Bone Groups can be deleted at once by clicking on the Specials menu.
|
||||
Color Sets can be added and deleted by clicking on the ``+`` or ``-`` buttons.
|
||||
All color sets can be deleted at once by clicking on the Specials menu.
|
||||
|
||||
To add the predefined Rigify Default Bone Groups list click on *Add Standard* button.
|
||||
To add the colors from the predefined Rigify default color scheme (as shown in the image) to the list click
|
||||
the *Add Standard* button.
|
||||
|
||||
To add a specific theme with its own color scheme, select it from the list and click on the *Add From Theme* button.
|
||||
|
||||
|
||||
.. _bpy.types.BoneCollection.rigify_ui_row:
|
||||
|
||||
Bone Collections UI
|
||||
===================
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_metarigs_bone-collections-panel.png
|
||||
:align: right
|
||||
:width: 300px
|
||||
|
||||
:doc:`Bone Collections </animation/armatures/bones/bone_collections>` are used to group related bones together
|
||||
so that they can be hidden or revealed together.
|
||||
|
||||
Rigify can take advantage of collections to generate extra features and the user interface for the final rig.
|
||||
A panel named :ref:`Rig Layers <rigify.rig_ui_template.RigLayers>` is generated with buttons for hiding the
|
||||
collections, arranged in an intuitive layout.
|
||||
|
||||
The Bone Collections UI panel allows configuring the layout of that generated panel, as well as specifying some
|
||||
other settings for bone collections, such as the color set to use.
|
||||
|
||||
The top of the panel is occupied by a list that duplicates the main bone collection list, but displays additional
|
||||
properties, such as the color set, whether the collection has a button, or whether it generates a selection set.
|
||||
|
||||
Validate Collection References
|
||||
Some sub-rig types have :ref:`references <bpy.types.RigifyParameters>` to bone collections in their properties.
|
||||
Rigify uses a referencing scheme that is robust to collection renames, but deleting collections or joining armatures
|
||||
can still lead to broken references.
|
||||
|
||||
This button runs a scan that validates and normalizes all collection references, reporting any errors, and
|
||||
reducing the chance of breakage being caused by subsequent user actions.
|
||||
|
||||
This scan is also performed automatically every time the rig is generated.
|
||||
|
||||
.. warning::
|
||||
To avoid breakage this operation should be used both immediately before and after joining two metarig armatures.
|
||||
More specifically, it must be always done between the actions of renaming any collections and joining.
|
||||
|
||||
Color Set
|
||||
Specifies the :ref:`color set <bpy.types.Armature.rigify_colors>` to use for bones in this collection. If a bone
|
||||
belongs to multiple collections, in general the collection located earlier in the list has priority.
|
||||
|
||||
Add Selection Set
|
||||
Specifies whether a selection set should be generated for this collection.
|
||||
|
||||
UI Row
|
||||
If nonzero, specifies which row of the :ref:`Rig Layers <rigify.rig_ui_template.RigLayers>` panel should contain the
|
||||
button controlling the visibility of this collection. When zero, no button is generated, and the collection is hidden.
|
||||
|
||||
UI Title
|
||||
This field can be used to override the title used on the UI button to be distinct from the true collection name.
|
||||
Unlike collection names, titles are not required to be unique, so this can be used to reduce clutter by relying
|
||||
on contextual cues within the panel.
|
||||
|
||||
UI Layout sub-panel
|
||||
-------------------
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_metarigs_bone-collections-layout-panel.png
|
||||
:align: right
|
||||
:width: 300px
|
||||
|
||||
The UI Layout sub-panel provides a WYSIWYG editor for the layout of the generated UI panel
|
||||
(as defined by the UI Row and UI Title settings above).
|
||||
|
||||
Each row contains three buttons at the end:
|
||||
|
||||
Arrow
|
||||
Moves the active collection button to this row.
|
||||
Plus
|
||||
Inserts a new row before the current one.
|
||||
Minus
|
||||
Removes the current row and shifts all buttons up.
|
||||
|
||||
To the left of the editing control buttons, rows display buttons corresponding to the collections, same as the final
|
||||
UI, except that rather than hiding or unhiding, clicking these buttons selects the collection.
|
||||
|
||||
For the active collection the selection button is replaced with an input field for editing the UI Title, and an **X**
|
||||
button to unassign the collection from the UI.
|
||||
|
||||
For any collections not assigned to the UI, their select buttons are displayed in a separate section at the bottom
|
||||
of the sub-panel.
|
||||
|
||||
The ``Root`` collection will be added and/or assigned a UI button automatically if necessary when the rig is generated.
|
||||
If desired, it is possible to manually assign UI buttons to the internal ``ORG``, ``DEF`` and ``MCH`` collections.
|
||||
|
||||
.. tip::
|
||||
Blank rows appear much thinner in the final interface, since they don't have to contain editing buttons, and can be
|
||||
used as logical separators.
|
||||
|
@ -6,23 +6,165 @@ Generated Rig Features
|
||||
After human rig generation a new armature named ``rig`` will be added to your scene.
|
||||
This is the character rig you have generated from the human meta-rig and will contain all the features.
|
||||
|
||||
|
||||
Common Features
|
||||
===============
|
||||
|
||||
.. _rigify.rig_ui_template.RigBakeSettings:
|
||||
.. _rigify.rig_ui_template.RigUI:
|
||||
.. _rigify.rig_ui_template.RigLayers:
|
||||
|
||||
Rig UI Panels
|
||||
-------------
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_rig-ui-panels.png
|
||||
:align: right
|
||||
:width: 200px
|
||||
|
||||
The generated rig is accompanied by a script that implements a set of panels that appear in the Item
|
||||
tab of the 3D view sidebar when a bone belonging to the generated rig is active.
|
||||
|
||||
Rig Bake Settings
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
This panel is displayed if the armature has an active :doc:`Action </animation/actions>`, and
|
||||
is used by operators that apply an operation to multiple keyframes.
|
||||
|
||||
Bake All Keyed Frames
|
||||
When enabled, the operator computes and keyframes its result on every frame that has a key for any of the
|
||||
bones, as opposed to just relevant ones.
|
||||
Limit Frame Range
|
||||
When enabled, the operator is limited to a certain frame range.
|
||||
|
||||
Start, End
|
||||
Specify the frame range to process.
|
||||
Get Frame Range
|
||||
Sets the baking frame range from the scene frame range.
|
||||
|
||||
Rig Main Properties
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This panel shows properties and operators that are relevant to the selected bones.
|
||||
|
||||
Rig Layers
|
||||
^^^^^^^^^^
|
||||
|
||||
This panel contains buttons for toggling visibility of bone collections.
|
||||
|
||||
The layout and labels of the buttons are defined in the metarig
|
||||
:ref:`Bone Collection UI <bpy.types.BoneCollection.rigify_ui_row>` panel.
|
||||
|
||||
|
||||
Common Controls
|
||||
---------------
|
||||
|
||||
Rigify rigs are built from standardized components called sub-rigs, which are linked together in a parent-child
|
||||
hierarchy. Although the precise behavior of each sub-rig is determined by its implementation, there are certain
|
||||
conventions that are followed by many of them.
|
||||
|
||||
Root Bone
|
||||
^^^^^^^^^
|
||||
|
||||
Every Rigify rig has a bone called `root`, which serves as a parent for all bones of the rig.
|
||||
It is assigned to a bone collection called `Root`. Unless the metarig has a custom bone
|
||||
of that name, it is positioned at the origin of the rig object. Its widget looks like
|
||||
a circle with four arrow shaped protrusions.
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_arm-controls.png
|
||||
:align: right
|
||||
:width: 200px
|
||||
|
||||
Limb Master
|
||||
^^^^^^^^^^^
|
||||
|
||||
Many limb-like sub-rigs have a gear-shaped bone at their base.
|
||||
|
||||
This bone can in some cases be used to transform the whole sub-rig as a rigid unit, and is also used as a container
|
||||
for its custom properties that are displayed in the *Rig Main Properties* panel. If you are looking in the Graph editor
|
||||
for the animated values of the properties, this is most likely the bone to look at.
|
||||
|
||||
As an exception, if multiple controls of the sub-rig need their own copy of conceptually the same property,
|
||||
it may be placed on those controls directly instead.
|
||||
|
||||
Tweak Controls
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
These controls look like blue spheres in the default color scheme, and are the final control layer above the
|
||||
deformation bones themselves.
|
||||
|
||||
Tweaks are subordinate to the general IK or FK limb position but can be moved apart, twisted and scaled freely,
|
||||
even reaching virtually impossible limb shapes.
|
||||
|
||||
Rubber Tweak
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_rubber-tweak.png
|
||||
:align: right
|
||||
:width: 200px
|
||||
|
||||
Some sub-rigs provide a slider in their *Rig Main Properties* when tweaks are selected, which controls
|
||||
the smoothness of the Bendy Bone joint at that position. When zero, the joint deforms with a sharp bend,
|
||||
while setting it to 1 makes the transition smooth for a more rubber hose cartoon like appearance.
|
||||
|
||||
Custom Pivots
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
Some bones that can be freely moved in space (like IK controls) can be optionally accompanied by a custom pivot
|
||||
control. These controls usually look like a plain axes empty with the axis lines capped with squares or crosses,
|
||||
like the one in the image above. The control can be freely moved to change the location of the pivot, and then
|
||||
rotated or scaled to transform the target bone around the pivot.
|
||||
|
||||
IK and FK Switching
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_ik-fk-switch.png
|
||||
:align: right
|
||||
:width: 200px
|
||||
|
||||
A number of rig types provides both IK and FK controls (red for IK and green for FK in the image above),
|
||||
with an ability to switch and snap between them.
|
||||
|
||||
Switching is controlled by a slider in *Rig Main Properties*, usually blending between full IK at 0 and full FK at 1.
|
||||
|
||||
Snapping one type of controls to the shape of the other is done via buttons, which form a group of three
|
||||
in their complete set:
|
||||
|
||||
* The main button will snap on the current frame, and auto-key the result if enabled.
|
||||
* The *Action* button will bake the change on multiple keyframes, according to *Rig Bake Settings*.
|
||||
* The *Clear* button will delete keyframes on the corresponding controls within the bake interval.
|
||||
|
||||
Parent Switching
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_parent-switch.png
|
||||
:align: right
|
||||
:width: 200px
|
||||
|
||||
Some freely movable controls, e.g. usually the IK controls, can have a mechanism to switch their parent bone
|
||||
between a set of choices, including the root bone, or none at all.
|
||||
|
||||
This mechanism is exposed in the *Rig Main Properties* panel through a row with three controls:
|
||||
|
||||
* A button that presents a dropdown menu, which allows switching the parent on the current frame while
|
||||
preserving the bone position and orientation in the world space.
|
||||
* An input field that exposes the raw switch property for keyframing and direct manipulation. Values correspond to
|
||||
positions in the dropdown list.
|
||||
* A button to apply the position preserving parent switch over the bake range of keyframes.
|
||||
|
||||
.. note::
|
||||
When manually placing a Child Of constraint on the control bone, the built-in parent should be switched to none.
|
||||
|
||||
Limbs
|
||||
=====
|
||||
|
||||
Each limb will have a gear widget at its base. This is the utility bone that
|
||||
contains all the sub-rig properties. The rig features will be displayed anyway
|
||||
when the affected bone is selected but if you are looking in the Graph editor for
|
||||
those properties' animated values, this is most likely the bone to look at.
|
||||
Limbs have a master bone and tweaks. Depending on the user defined meta-rig options,
|
||||
multiple deform bone segments with tweaks will be created.
|
||||
|
||||
Depending on the user defined meta-rig options, multiple deform bone segments will be created.
|
||||
Each bone can be controlled by tweak controls placed at the respective bone's head/tail.
|
||||
Tweaks are subordinate to the general IK or FK limb position but can be moved apart,
|
||||
twisted and scaled freely, even reaching virtually impossible limb shapes.
|
||||
The IK control may have an optional custom pivot, as well as additional predefined pivots.
|
||||
|
||||
Rigify's limbs have the following controls in the Sidebar panel:
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_limb-properties.png
|
||||
:align: right
|
||||
:width: 200px
|
||||
|
||||
FK Limb Follow :guilabel:`Slider`
|
||||
When set to 1 the FK limb will not rotate with the torso and will retain is rotation
|
||||
@ -32,11 +174,7 @@ IK-FK :guilabel:`Slider`
|
||||
Controls whether the limb follows IK or FK controls, blending between full IK at 0 and full FK at 1.
|
||||
|
||||
IK<->FK Snapping :guilabel:`Buttons`
|
||||
To snap one type of controls to another use the appropriate buttons.
|
||||
|
||||
Each snap direction has buttons to update just the current pose, bake the whole animation in the
|
||||
current *Action*, or *Clear* keyframes instead of snapping. The buttons dealing with keyframes
|
||||
use options from an additional panel to control the range of frames to bake.
|
||||
Snaps one type of controls to another.
|
||||
|
||||
IK Stretch :guilabel:`Slider`
|
||||
Blends between the limb stretching freely at 1, or having its maximum length constrained at 0.
|
||||
@ -47,19 +185,205 @@ Toggle Pole :guilabel:`Switch`
|
||||
When set to 1 the classic pole vector will be displayed and used to orient the IK limb.
|
||||
The arrow will continue to handle the scale and the location of the IK limb base.
|
||||
|
||||
Similar to IK-FK Snapping, the row includes buttons to convert the current pose between types,
|
||||
Similar to *Parent Switching*, the row includes buttons to convert the current pose between types,
|
||||
or bake the whole action.
|
||||
|
||||
IK Parent :guilabel:`Switch`
|
||||
Switches the effective parent of the main IK control, with different integer values corresponding
|
||||
to choices from a list.
|
||||
|
||||
The row includes buttons that allow converting the current pose via choosing from a menu,
|
||||
or baking the whole action.
|
||||
Switches the effective parent of the main IK control.
|
||||
|
||||
Pole Parent :guilabel:`Switch`
|
||||
Switches the effective parent of the classic IK Pole control.
|
||||
|
||||
Arms
|
||||
----
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_hand-controls.png
|
||||
:align: right
|
||||
:width: 200px
|
||||
|
||||
:ref:`Arms <rigify.rigs.limbs.arm>` have the simplest control structure: the IK controls consist of the main IK
|
||||
control, the optional custom pivot control, and the optional wrist control (the bent circle), which pivots around
|
||||
the tail rather than the head of the hand bone.
|
||||
|
||||
There are no additional controls in the *Rig Main Properties* panel.
|
||||
|
||||
Legs
|
||||
----
|
||||
|
||||
:ref:`Legs <rigify.rigs.limbs.leg>` have a more complicated setup, which has:
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_foot-controls.png
|
||||
:align: right
|
||||
:width: 200px
|
||||
|
||||
IK & FK Toe :guilabel:`Optional`
|
||||
Two separate IK and FK controls for the toe (this is on by default and recommended for stable IK<->FK snapping).
|
||||
IK Heel
|
||||
A heel control which can be rotated to command forward or backward roll, sideways rock, or yaw of the heel.
|
||||
Toe Pivot :guilabel:`Optional`
|
||||
An extra pivot control rotating around the base of the toe.
|
||||
Custom Pivot :guilabel:`Optional`
|
||||
A custom pivot control.
|
||||
|
||||
The properties panel has two additional features:
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_foot-properties.png
|
||||
:align: right
|
||||
:width: 200px
|
||||
|
||||
IK->FK Snap With Roll :guilabel:`Buttons`
|
||||
Standard IK to FK snapping resets the transformations of all IK controls other than the main one. This is
|
||||
not convenient to use in an animation that involves the use of the heel control, because roll and rock would
|
||||
be folded into the transformation of the main control.
|
||||
|
||||
This alternative snapping operator tries to deduce the rotation of the heel control so as to keep the main
|
||||
IK control parallel to the ground plane inferred from the *current* orientation of the IK control. The operator
|
||||
has options to specify which rotational axes to use for the heel control rotation.
|
||||
|
||||
Roll On Toe :guilabel:`Slider` :guilabel:`Optional`
|
||||
If enabled in the sub-rig settings, this slider can be used to control whether the heel rotation (excluding
|
||||
backward roll) is applied at the base or the tip of the toe.
|
||||
|
||||
Fingers & Tentacles
|
||||
===================
|
||||
|
||||
Simple Tentacle
|
||||
---------------
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_simple-controls.png
|
||||
|
||||
The simplest type of rig for a finger or appendage in general is the
|
||||
:ref:`simple tentacle <rigify.rigs.limbs.simple_tentacle>` sub-rig. It has only basic FK controls and tweaks,
|
||||
with the only automation being the ability to copy the local rotation of a FK joint to the next one.
|
||||
|
||||
Advanced Finger
|
||||
---------------
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_finger-controls.png
|
||||
|
||||
For the case of fingers, there is a dedicated :ref:`finger <rigify.rigs.limbs.super_finger>` sub-rig type,
|
||||
which provides:
|
||||
|
||||
Master
|
||||
A master control, which can be used to rotate the finger as a whole, as well as to bend it via Y scaling.
|
||||
FK Chain
|
||||
FK control chain (green) that can operate as semi-tweaks through allowing translation.
|
||||
IK Control :guilabel:`Optional`
|
||||
IK control for the tip.
|
||||
|
||||
.. note::
|
||||
IK in this sub-rig is rudimentary and operates as an adjustment for FK. The intended way of use is to pose
|
||||
the finger in FK, and then use FK->IK snap and enable IK if it is necessary to pin the tip of the finger
|
||||
in place.
|
||||
|
||||
The properties panel has the following features:
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_finger-properties.png
|
||||
:align: right
|
||||
:width: 200px
|
||||
|
||||
Finger IK :guilabel:`Slider` :guilabel:`Optional`
|
||||
Slider controlling the influence of the IK.
|
||||
|
||||
FK<->IK Snapping :guilabel:`Buttons` :guilabel:`Optional`
|
||||
Snaps the IK control to the end of the finger, or adjusts the FK controls to the result of the IK correction.
|
||||
|
||||
Curvature :guilabel:`Slider`
|
||||
Has the same effect as *Rubber Tweak* on limbs, controlling the rubber hose cartoon effect.
|
||||
|
||||
Spline Tentacle
|
||||
---------------
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_spline-controls.png
|
||||
|
||||
Spline Tentacle (Stretch To Fit, Manual Squash & Stretch)
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_spline-controls-tip.png
|
||||
|
||||
Spline Tentacle (Direct Tip Control)
|
||||
|
||||
The :ref:`spline tentacle <rigify.rigs.limbs.spline_tentacle>` is an advanced rig for a flexible appendage (tentacle)
|
||||
based on the :doc:`Spline IK </animation/constraints/tracking/spline_ik>` constraint. The IK control bones manage
|
||||
control points of a Bezier spline curve, which in turn is followed by the IK chain.
|
||||
|
||||
The tentacle can be generated in three major modes:
|
||||
|
||||
Stretch To Fit
|
||||
In this simplest mode all bones of the sub-rig deform chain follow the curve and squash & stretch to match
|
||||
its length.
|
||||
Manual Squash & Stretch
|
||||
This mode is almost the same, but the chain does not automatically scale to match the curve length.
|
||||
Instead, it tries to cover as much as possible of the curve given its manually scaled length.
|
||||
If the curve is too short, the chain will overhang it and straighten out, but this is not fully stable.
|
||||
Direct Tip Control
|
||||
This mode is more similar to the behavior of IK limbs: the final bone of the chain is directly controlled by
|
||||
the tip IK control, while the other bones of the chain stretch and follow the curve to bridge the gap.
|
||||
|
||||
The tentacle sub-rig has the following control bones:
|
||||
|
||||
Master
|
||||
The tentacle has the same gear master control as other limbs (seen as a line in the images).
|
||||
IK Start
|
||||
The IK control at the base of the tentacle, which can be used to control the base twist and sideways scale, and
|
||||
is one of the potential switchable parents for other IK controls.
|
||||
|
||||
In the *Manual Squash & Stretch* mode it controls uniform scale of the tentacle.
|
||||
IK Start (Extra) :guilabel:`Optional`
|
||||
Extra start controls, optional and hidden by default. Switchable parents default to the *IK Start* control.
|
||||
The scale of the control may optionally affect the thickness of the chain via the radius of the curve point.
|
||||
IK Middle
|
||||
Controls for the middle of the curve. The switchable parents default to *Master*, but may be set to
|
||||
*IK Start* or *IK End* controls.
|
||||
The scale of the control may optionally affect the thickness of the chain via the radius of the curve point.
|
||||
IK End (Extra) :guilabel:`Optional`
|
||||
Extra end controls, optional and hidden by default. Switchable parents default to the *IK End* control.
|
||||
The scale of the control may optionally affect the thickness of the chain via the radius of the curve point.
|
||||
|
||||
The *Direct Tip Control* mode adds one more extra end control next to the middle ones that cannot be hidden.
|
||||
IK End
|
||||
Controls the last control point of the curve, and is one of the potential parents for the other chain controls.
|
||||
|
||||
In the *Direct Tip Control* mode also directly controls the last bone of the chain.
|
||||
IK End Twist :guilabel:`Optional`
|
||||
* *Stretch To Fit*: controls the twist of the tip of the tentacle, interpolated to nothing at the base.
|
||||
* *Manual Squash & Stretch*: also controls the scaling of the tip of the tentacle.
|
||||
* *Direct Tip Control*: does not exist.
|
||||
FK Chain :guilabel:`Optional`
|
||||
If enabled, the rig has an alternative fully FK control chain.
|
||||
|
||||
The properties panel has the following features:
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-features_spline-properties.png
|
||||
:align: right
|
||||
:width: 200px
|
||||
|
||||
Start/End Controls :guilabel:`Optional`
|
||||
If extra controls exist, this property controls how many of them are visible and active.
|
||||
|
||||
When a control is disabled, it is snapped to a position extremely close to the corresponding end control point,
|
||||
thus effectively neutralizing its effect. Thus, changing the setting during an animation can cause jumps.
|
||||
|
||||
The plus and minus buttons can help with maintaining a continuous transition in an animation by keyframing the
|
||||
change in the property value with Constant interpolation, and also snapping and keyframing the control itself
|
||||
to its 'hidden' position.
|
||||
|
||||
End Twist Estimate :guilabel:`Optional`
|
||||
In the *Direct Tip Control* mode the twist at the end of the tentacle is deduced from the orientation of the
|
||||
tip control. However, for technical reasons, that is only possible within the 180 degrees range of neutral.
|
||||
|
||||
A long tentacle can accept more twist than 180 degrees, so a workaround is necessary. This property allows
|
||||
specifying an approximate estimate of the twist value, and the rig then applies the automatic correction within
|
||||
180 degrees of this value.
|
||||
|
||||
IK-FK, IK<->FK Snapping :guilabel:`Optional`
|
||||
If the FK controls are enabled, these provide standard IK-FK switching and snapping.
|
||||
|
||||
However, unlike other limbs, for this rig automatic IK to FK snapping can only be approximate and requires
|
||||
manual tuning. For this reason, buttons for baking the snapping over a range of keyframes are not provided.
|
||||
|
||||
Parent Switch
|
||||
Switches the parent of the active IK control.
|
||||
|
||||
|
||||
Head
|
||||
====
|
||||
|
@ -13,8 +13,8 @@ This is unlike chain-based rig types that usually consume the whole connected ch
|
||||
|
||||
.. _rigify.rigs.basic.copy_chain:
|
||||
|
||||
``basic.copy_chain``
|
||||
====================
|
||||
basic.copy_chain
|
||||
================
|
||||
|
||||
Copies the bone chain keeping all the parent relations within the chain untouched.
|
||||
Useful as a utility rig type for custom rigs.
|
||||
@ -29,8 +29,8 @@ Deform (Boolean)
|
||||
|
||||
.. _rigify.rigs.basic.pivot:
|
||||
|
||||
``basic.pivot``
|
||||
===============
|
||||
basic.pivot
|
||||
===========
|
||||
|
||||
Single-bone rig type that creates a 'custom pivot' control for rotating and scaling its child sub-rigs.
|
||||
|
||||
@ -74,8 +74,8 @@ Deform Bone
|
||||
|
||||
.. _rigify.rigs.basic.raw_copy:
|
||||
|
||||
``basic.raw_copy``
|
||||
==================
|
||||
basic.raw_copy
|
||||
==============
|
||||
|
||||
Single-bone rig type that copies the bone without the ``ORG-`` name prefix.
|
||||
|
||||
@ -106,8 +106,8 @@ Relink Constraints
|
||||
|
||||
.. _rigify.rigs.basic.super_copy:
|
||||
|
||||
``basic.super_copy``
|
||||
====================
|
||||
basic.super_copy
|
||||
================
|
||||
|
||||
Single-bone rig type that simply copies the bone. Useful as utility rig type for
|
||||
adding custom features or specific deform bones to your rigs.
|
||||
|
@ -8,21 +8,21 @@ These rig types implement components of a modular face.
|
||||
|
||||
.. _rigify.rigs.face.basic_tongue:
|
||||
|
||||
``face.basic_tongue``
|
||||
=====================
|
||||
face.basic_tongue
|
||||
=================
|
||||
|
||||
Generates a simple tongue, extracted from the original PitchiPoy ``super_face`` rig.
|
||||
Generates a simple tongue, extracted from the original PitchiPoy :ref:`super_face <rigify.rigs.faces.super_face>` rig.
|
||||
|
||||
B-Bone Segments (integer)
|
||||
Defines the number of b-bone segments each tweak control will be split into.
|
||||
Primary Control Layers
|
||||
Optionally specifies layers for the main control.
|
||||
Optionally specifies bone collections for the main control.
|
||||
|
||||
|
||||
.. _rigify.rigs.face.skin_eye:
|
||||
|
||||
``face.skin_eye``
|
||||
=================
|
||||
face.skin_eye
|
||||
=============
|
||||
|
||||
Implements a skin system :ref:`parent controller <rigify.rigs.skin.skin_parents>` that manages
|
||||
two skin chains for the top and bottom eyelids in addition to generating the eye rotation mechanism.
|
||||
@ -49,8 +49,8 @@ Eyelids Follow Default
|
||||
|
||||
.. _rigify.rigs.face.skin_jaw:
|
||||
|
||||
``face.skin_jaw``
|
||||
=================
|
||||
face.skin_jaw
|
||||
=============
|
||||
|
||||
Implements a skin system :ref:`parent controller <rigify.rigs.skin.skin_parents>` that manages
|
||||
one or more loops of mouth skin chains in response to the movement of jaw and mouth controls.
|
||||
|
@ -3,8 +3,10 @@
|
||||
Faces
|
||||
*****
|
||||
|
||||
``faces.super_face``
|
||||
====================
|
||||
.. _rigify.rigs.faces.super_face:
|
||||
|
||||
faces.super_face
|
||||
================
|
||||
|
||||
Will create a face system based on the bones child to the parent that has the property set on it.
|
||||
|
||||
|
@ -1,6 +1,3 @@
|
||||
.. _bpy.types.PoseBone.rigify_type:
|
||||
.. _bpy.types.RigifyParameters:
|
||||
|
||||
#############
|
||||
Rig Types
|
||||
#############
|
||||
|
@ -6,26 +6,32 @@ Limbs
|
||||
These rig types handle generation of different kind of limbs and their features, like fingers.
|
||||
|
||||
|
||||
``limbs.simple_tentacle``
|
||||
=========================
|
||||
.. _rigify.rigs.limbs.simple_tentacle:
|
||||
|
||||
Will create a bendy and stretchy b-bones tentacle chain or automatic bendy and stretchy finger controls.
|
||||
limbs.simple_tentacle
|
||||
=====================
|
||||
|
||||
Will create a simple bendy and stretchy b-bones tentacle chain, which can optionally replicate local rotation
|
||||
from preceeding bones to the subsequent ones for use in cases like fingers.
|
||||
|
||||
Requirement: A chain of at least two connected bones.
|
||||
|
||||
Automation Axis (X, Y, Z, None)
|
||||
Enables the automation on the selected axis. Multiple axis or none can be selected holding :kbd:`Shift-LMB`.
|
||||
When enabled the controls of the last bones will copy the rotations from the previous ones.
|
||||
When enabled the subsequent control bones will copy the local rotations from the previous ones.
|
||||
The option is accessible in the controls of the final rig as a Copy Rotation constraint and
|
||||
can be disabled even after rig is generated, or at animation time.
|
||||
Assign Tweak Layers
|
||||
If enabled, allows placing the Tweak controls on different layers from the main controls.
|
||||
If enabled, allows placing the Tweak controls in different bone collections from the main controls.
|
||||
|
||||
|
||||
``limbs.super_finger``
|
||||
======================
|
||||
.. _rigify.rigs.limbs.super_finger:
|
||||
|
||||
Will create a bendy and stretchy chain or automatic bendy and stretchy finger depending on a master control bone.
|
||||
limbs.super_finger
|
||||
==================
|
||||
|
||||
Will create a bendy and stretchy finger chain with a master control bone that controls the rotation of
|
||||
all joints through its scale.
|
||||
|
||||
Requirement: A chain of at least two connected bones.
|
||||
|
||||
@ -39,27 +45,40 @@ IK Control
|
||||
IK starts its work with the shape of the finger defined by FK controls and adjusts it
|
||||
to make the fingertip touch the IK control. It is designed as a tool to temporarily keep
|
||||
the fingertip locked to a surface it touches, rather than a fully featured posing system.
|
||||
|
||||
To improve performance, the switchable parent for the IK control contains only one option beside None.
|
||||
Thus it is advised to add a 'held object' control using the :ref:`basic.raw_copy <rigify.rigs.basic.pivot>`
|
||||
rig to act as the common parent for the fingers with a fully functional parent switch.
|
||||
IK Local Location
|
||||
Specifies the value of the Local Location option for IK controls, which decides if the location
|
||||
channels are aligned to the local control orientation or world.
|
||||
Assign Tweak Layers
|
||||
If enabled, allows placing the Tweak controls on different layers from the main controls.
|
||||
If enabled, allows placing the Tweak controls in different bone collections from the main controls.
|
||||
Assign Extra IK Layers
|
||||
If enabled, allows placing the extra IK control in different bone collections from the main controls.
|
||||
|
||||
.. note::
|
||||
|
||||
Rotation Axis (Bend Rotation Axis in the case of ``limbs.super_finger``)
|
||||
Rotation Axis (Bend Rotation Axis in the case of `limbs.super_finger`_)
|
||||
affects the :doc:`roll </animation/armatures/bones/editing/bone_roll>` of the generated bones.
|
||||
Automatic mode recalculates the generated bones roll while
|
||||
any of the Manual modes copy the roll of the meta-rig bones.
|
||||
|
||||
|
||||
``limbs.super_limb``
|
||||
====================
|
||||
.. _rigify.rigs.limbs.super_limb:
|
||||
|
||||
A backwards compatibility wrapper around ``limbs.arm``, ``limbs.leg`` and ``limbs.paw``.
|
||||
limbs.super_limb
|
||||
================
|
||||
|
||||
A backwards compatibility wrapper around `limbs.arm`_, `limbs.leg`_ and `limbs.paw`_.
|
||||
|
||||
|
||||
``limbs.arm``
|
||||
=============
|
||||
.. _rigify.rigs.limbs.arm:
|
||||
|
||||
Will create a full featured bendy and stretchy arm depending on the user-defined options.
|
||||
limbs.arm
|
||||
=========
|
||||
|
||||
Will create a fully featured bendy and stretchy arm depending on the user-defined options.
|
||||
|
||||
Requirement: A chain of three connected bones (upper_arm, forearm, hand).
|
||||
|
||||
@ -79,15 +98,17 @@ B-Bone Segments (integer)
|
||||
Custom IK Pivot
|
||||
Generates an extra control for the end of the IK limb that allows rotating it around an arbitrarily placed pivot.
|
||||
Assign FK Layers
|
||||
If enabled, allows placing the FK chain on different layers from the IK bones.
|
||||
If enabled, allows placing the FK chain in different bone collections from the IK bones.
|
||||
Assign Tweak Layers
|
||||
If enabled, allows placing the Tweak controls on different layers from the IK bones.
|
||||
If enabled, allows placing the Tweak controls in different bone collections from the IK bones.
|
||||
|
||||
|
||||
``limbs.leg``
|
||||
=============
|
||||
.. _rigify.rigs.limbs.leg:
|
||||
|
||||
Will create a full featured bendy and stretchy leg depending on the user-defined options.
|
||||
limbs.leg
|
||||
=========
|
||||
|
||||
Will create a fully featured bendy and stretchy leg depending on the user-defined options.
|
||||
|
||||
Requirement: A chain of four connected bones (thigh, shin, foot, toe) with one unconnected
|
||||
child of the foot to be used as the heel pivot.
|
||||
@ -104,6 +125,10 @@ Separate IK Toe
|
||||
Specifies that two separate toe controls should be generated for IK and FK instead of sharing one bone.
|
||||
This is necessary to get fully correct IK-FK snapping in all possible poses.
|
||||
|
||||
Toe Tip Roll
|
||||
Generates a slider to switch the heel control to pivot on the tip rather than the base of the toe
|
||||
(for roll this obviously only applies on forward roll).
|
||||
|
||||
Rotation Axis (Automatic, X, Z)
|
||||
Defines the bend axis for the IK chain. FK chains will have a totally free degree of rotation on all axes.
|
||||
Limb Segments (integer)
|
||||
@ -113,15 +138,17 @@ B-Bone Segments (integer)
|
||||
Custom IK Pivot
|
||||
Generates an extra control for the end of the IK limb that allows rotating it around an arbitrarily placed pivot.
|
||||
Assign FK Layers
|
||||
If enabled, allows placing the FK chain on different layers from the IK bones.
|
||||
If enabled, allows placing the FK chain in different bone collections from the IK bones.
|
||||
Assign Tweak Layers
|
||||
If enabled, allows placing the Tweak controls on different layers from the IK bones.
|
||||
If enabled, allows placing the Tweak controls in different bone collections from the IK bones.
|
||||
|
||||
|
||||
``limbs.paw``
|
||||
=============
|
||||
.. _rigify.rigs.limbs.paw:
|
||||
|
||||
Will create a full featured bendy and stretchy paw depending on the user-defined options.
|
||||
limbs.paw
|
||||
=========
|
||||
|
||||
Will create a fully featured bendy and stretchy paw depending on the user-defined options.
|
||||
|
||||
Requirement: A chain of four or five connected bones (thigh, shin, paw, *optional* digit, toe).
|
||||
|
||||
@ -138,15 +165,17 @@ B-Bone Segments (integer)
|
||||
Custom IK Pivot
|
||||
Generates an extra control for the end of the IK limb that allows rotating it around an arbitrarily placed pivot.
|
||||
Assign FK Layers
|
||||
If enabled, allows placing the FK chain on different layers from the IK bones.
|
||||
If enabled, allows placing the FK chain in different bone collections from the IK bones.
|
||||
Assign Tweak Layers
|
||||
If enabled, allows placing the Tweak controls on different layers from the IK bones.
|
||||
If enabled, allows placing the Tweak controls in different bone collections from the IK bones.
|
||||
|
||||
|
||||
``limbs.front_paw``
|
||||
===================
|
||||
.. _rigify.rigs.limbs.front_paw:
|
||||
|
||||
Derivative of ``limbs.paw`` with extended IK suitable for use in front paws.
|
||||
limbs.front_paw
|
||||
===============
|
||||
|
||||
Derivative of `limbs.paw`_ with extended IK suitable for use in front paws.
|
||||
The additional IK limits the degree of change in the angle between shin and
|
||||
paw bones (2nd and 3rd) as the main IK control moves and rotates.
|
||||
|
||||
@ -158,18 +187,22 @@ Heel IK Influence
|
||||
not affect the rotation of the paw bone, while lower values provide some blending.
|
||||
|
||||
|
||||
``limbs.rear_paw``
|
||||
==================
|
||||
.. _rigify.rigs.limbs.rear_paw:
|
||||
|
||||
Derivative of ``limbs.paw`` with extended IK suitable for use in rear paws.
|
||||
limbs.rear_paw
|
||||
==============
|
||||
|
||||
Derivative of `limbs.paw`_ with extended IK suitable for use in rear paws.
|
||||
The additional IK tries to maintain thigh and paw bones (1st and 3rd) in a nearly parallel orientation
|
||||
as the main IK control moves and rotates.
|
||||
|
||||
For best results, thigh and paw bones should start nearly parallel in the rest pose.
|
||||
|
||||
|
||||
``limbs.super_palm``
|
||||
====================
|
||||
.. _rigify.rigs.limbs.super_palm:
|
||||
|
||||
limbs.super_palm
|
||||
================
|
||||
|
||||
Will create a palm system based on the distance between palm bones.
|
||||
|
||||
@ -182,3 +215,51 @@ Both Sides
|
||||
|
||||
Primary Rotation Axis (X, Z)
|
||||
Defines the automatic rotation axis to be used on the palm bones.
|
||||
|
||||
|
||||
.. _rigify.rigs.limbs.spline_tentacle:
|
||||
|
||||
limbs.spline_tentacle
|
||||
=====================
|
||||
|
||||
This rig type implements a flexible tentacle with an IK system using the Spline IK constraint. The control bones
|
||||
define control points of a Bezier curve, and the bone chain follows the curve.
|
||||
|
||||
The curve control points are sorted into three groups: start, middle and end. The middle controls are always
|
||||
visible and active, while the other two types can be shown and hidden dynamically using properties; when enabled
|
||||
they appear next to the corresponding permanent start/end control and can be moved from there.
|
||||
|
||||
Extra Start Controls
|
||||
Specifies the number of optional start controls to generate.
|
||||
Middle Controls
|
||||
Specifies the number of middle controls to generate.
|
||||
Extra End Controls
|
||||
Specifies the number of optional end controls to generate.
|
||||
Tip Control:
|
||||
Specifies how the curve stretching and the final control bone work:
|
||||
|
||||
Stretch To Fit
|
||||
Stretches the whole bone chain to fit the length of the curve defined by the controls.
|
||||
|
||||
An end twist control is generated to control the twist along the chain.
|
||||
Direct Tip Control
|
||||
Generates an IK end control, which directly controls the final bone of the chain similar to how
|
||||
regular IK works for limbs, as well as controlling the end of the bezier curve. The middle bones of
|
||||
the chain stretch to follow the curve and cover the gap.
|
||||
|
||||
The rig automatically deduces twist of up to 180 degrees based on the orientation of the end control.
|
||||
Higher amounts of twist have to be dialled in through an End Twist Estimate slider to avoid flipping.
|
||||
Manual Squash & Stretch
|
||||
This mode allows full manual control over the chain scaling, while the chain covers as much of the curve
|
||||
as it can given its current length.
|
||||
|
||||
The start control of the chain manages its uniform squash & stretch scale, while the end twist control
|
||||
manages both the twist of the chain, as well as its scale at the tip (blended gradually along the length).
|
||||
Radius Scaling
|
||||
Allows scaling the controls to control the thickness of the chain through the curve.
|
||||
Maximum Radius
|
||||
Specifies the maximum scale allowed by the Radius Scaling feature.
|
||||
FK Controls
|
||||
Generates an FK control chain and IK-FK snapping.
|
||||
Assign FK Layers
|
||||
If enabled, allows placing the FK chain in different bone collections from the IK bones.
|
||||
|
@ -65,8 +65,8 @@ Custom Rigging
|
||||
|
||||
.. _rigify.rigs.skin.basic_chain:
|
||||
|
||||
``skin.basic_chain``
|
||||
====================
|
||||
skin.basic_chain
|
||||
================
|
||||
|
||||
This is the basic chain rig, which bridges controls with B-Bones but does not add
|
||||
any automation to the controls themselves.
|
||||
@ -107,8 +107,8 @@ Chain Priority
|
||||
|
||||
.. _rigify.rigs.skin.stretchy_chain:
|
||||
|
||||
``skin.stretchy_chain``
|
||||
=======================
|
||||
skin.stretchy_chain
|
||||
===================
|
||||
|
||||
This rig extends the basic chain with automation that propagates movement of the start and end,
|
||||
and an optional middle control, to other controls. This results in stretching the whole chain
|
||||
@ -134,9 +134,9 @@ Propagate to Controls
|
||||
Allows other chains to see propagated twist and scale via *Merge Parent Rotation and Scale* when their
|
||||
controls are merged into this chain, instead of it being completely local to this chain.
|
||||
Primary Control Layers
|
||||
Optionally specifies layers for the end controls.
|
||||
Optionally specifies bone collections for the end controls.
|
||||
Secondary Control Layers
|
||||
Optionally specifies layers for the middle control, falling back to *Primary Control Layers* if not set.
|
||||
Optionally specifies bone collections for the middle control, falling back to *Primary Control Layers* if not set.
|
||||
|
||||
The main controls with active falloff have the effect of *Merge Parent Rotation and Scale*
|
||||
automatically enabled just for them.
|
||||
@ -144,8 +144,8 @@ automatically enabled just for them.
|
||||
|
||||
.. _rigify.rigs.skin.anchor:
|
||||
|
||||
``skin.anchor``
|
||||
===============
|
||||
skin.anchor
|
||||
===========
|
||||
|
||||
This rig effectively acts as a zero-length chain with highest priority,
|
||||
ensuring that it becomes the owner when merging controls with other chains.
|
||||
@ -168,10 +168,10 @@ Orientation
|
||||
|
||||
.. _rigify.rigs.skin.glue:
|
||||
|
||||
``skin.glue``
|
||||
=============
|
||||
skin.glue
|
||||
=========
|
||||
|
||||
This rig is in concept similar to ``skin.anchor``, but instead of overriding controls,
|
||||
This rig is in concept similar to `skin.anchor`_, but instead of overriding controls,
|
||||
it is used to read or adjust the state of controls generated by other rigs.
|
||||
The head of the bone must overlap a control of another skin rig.
|
||||
|
||||
@ -210,8 +210,8 @@ Add Constraint
|
||||
|
||||
.. _rigify.rigs.skin.transform.basic:
|
||||
|
||||
``skin.transform.basic``
|
||||
========================
|
||||
skin.transform.basic
|
||||
====================
|
||||
|
||||
This rig provides a simplistic :ref:`parent controller <rigify.rigs.skin.skin_parents>`, which uses regular
|
||||
translation, rotation, or scale to modify locations but not orientations or scale of its child chain controls.
|
||||
|
@ -6,12 +6,17 @@ Spines
|
||||
These rigs are used to generate spine structures, including the head and tail.
|
||||
|
||||
|
||||
``spines.super_spine``
|
||||
======================
|
||||
.. _rigify.rigs.spines.super_spine:
|
||||
|
||||
spines.super_spine
|
||||
==================
|
||||
|
||||
Will create a complete bendy and stretchy b-bones spine system based on bone numbers of
|
||||
your bone chain and user defined options.
|
||||
|
||||
This is a composite wrapper of `spines.basic_spine`_, `spines.super_head`_ and `spines.basic_tail`_.
|
||||
Note that for the tail, the direction of the bones is reversed compared to the separate rig.
|
||||
|
||||
Requirement: A chain of at least three connected bones (base system).
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-types_spines-required.png
|
||||
@ -31,7 +36,10 @@ Tail (Boolean)
|
||||
|
||||
Tail Position (integer)
|
||||
Defines the bone where the tail system starts. The next bone will always be the hips system.
|
||||
|
||||
X, Y, Z (Boolean)
|
||||
When generating a tail, specifies which local axis rotations should be replicated along the chain.
|
||||
Assign Tweak Layers
|
||||
If enabled, allows placing the Tweak controls in different bone collections from the IK bones.
|
||||
|
||||
.. figure:: /images/addons_rigging_rigify_rig-types_spines-default.png
|
||||
|
||||
@ -40,3 +48,45 @@ Tail (Boolean)
|
||||
.. figure:: /images/addons_rigging_rigify_rig-types_spines-example.png
|
||||
|
||||
Spine with tail bones.
|
||||
|
||||
|
||||
.. _rigify.rigs.spines.basic_spine:
|
||||
|
||||
spines.basic_spine
|
||||
==================
|
||||
|
||||
Defines a bendy and stretchy b-bones spine.
|
||||
|
||||
Pivot Position (integer)
|
||||
Defines the pivot position for torso and hips.
|
||||
Assign Tweak Layers
|
||||
If enabled, allows placing the Tweak controls in different bone collections from the IK bones.
|
||||
FK Controls
|
||||
Specifies whether to generate an FK control chain.
|
||||
Assign FK Layers
|
||||
If enabled, allows placing the FK chain in different bone collections from the IK bones.
|
||||
|
||||
|
||||
.. _rigify.rigs.spines.basic_tail:
|
||||
|
||||
spines.basic_tail
|
||||
=================
|
||||
|
||||
Defines a bendy and stretchy b-bones tail.
|
||||
|
||||
X, Y, Z (Boolean)
|
||||
Specifies which local axis rotations should be replicated along the chain from each control
|
||||
bone to the following one.
|
||||
Assign Tweak Layers
|
||||
If enabled, allows placing the Tweak controls in different bone collections from the IK bones.
|
||||
|
||||
|
||||
.. _rigify.rigs.spines.super_head:
|
||||
|
||||
spines.super_head
|
||||
=================
|
||||
|
||||
Defines a head rig with follow torso controls.
|
||||
|
||||
Assign Tweak Layers
|
||||
If enabled, allows placing the Tweak controls in different bone collections from the IK bones.
|
||||
|
91
manual/animation/armatures/bones/bone_collections.rst
Normal file
91
manual/animation/armatures/bones/bone_collections.rst
Normal file
@ -0,0 +1,91 @@
|
||||
|
||||
.. _bone-collections:
|
||||
|
||||
****************
|
||||
Bone Collections
|
||||
****************
|
||||
|
||||
:term:`Bone Collections <Bone Collection>` group the bones of an
|
||||
:term:`Armature` into named collections. The armature is the owner of these
|
||||
collections, so they are available in all modes. Bone Collections are identified
|
||||
by their name, which are unique within the Armature.
|
||||
|
||||
In the text below, "collection" is understood to refer to "bone collection";
|
||||
:term:`Scene Collections <Collection>` are not described here.
|
||||
|
||||
Bone Collections can be managed via :ref:`the Armature and Bone property panels <bpy.types.BoneCollection>`.
|
||||
|
||||
|
||||
Visibility
|
||||
==========
|
||||
|
||||
Bone Collections can be shown & hidden via the list in the Armature properties,
|
||||
as well as via the list in the Bone properties. Bone visibility is determined by
|
||||
the visibility of its collections, and its own 'hidden' property:
|
||||
|
||||
- If the bone itself is marked as 'hidden', it is invisible regardless of the
|
||||
bone collections.
|
||||
- A bone is visible when it is contained in any visible collection.
|
||||
- A bone that is not assigned to any bone collection is visible; otherwise it
|
||||
would be impossible to select it & assign it to a collection.
|
||||
|
||||
.. _bone_collections_library_overrides:
|
||||
|
||||
Library Overrides
|
||||
=================
|
||||
|
||||
Bone collections can be added using library overrides. For this to work, both
|
||||
the armature Object and the Armature itself need to be overridden.
|
||||
|
||||
Limitations
|
||||
-----------
|
||||
|
||||
There are a few limitations when it comes to bone collections & overrides:
|
||||
|
||||
- Only bone collections that are local to the current blend file can be edited.
|
||||
- Bone collections that already existed on the linked-in Armature are read-only,
|
||||
and only their visibility can be toggled. Those visibility changes won't be
|
||||
saved, though.
|
||||
- Custom properties of overridden bone collections cannot be edited in the
|
||||
properties panel. Python access is fine; this is just a current limitation of
|
||||
Blender's UI code.
|
||||
|
||||
How It Works
|
||||
------------
|
||||
|
||||
Bone collections added via overrides are 'anchored' to the preceeding
|
||||
collection, by name. Here is an example. The *italic* collections are defined on
|
||||
the linked Armature in `armature.blend`. The **bold** ones are added by
|
||||
overrides in `armature_shot_47.blend`.
|
||||
|
||||
- *FK Controls*
|
||||
- *IK Controls*
|
||||
- **Left Pinky** (anchored to "IK Controls")
|
||||
- **Right Pinky** (anchored to "Left Pinky")
|
||||
|
||||
Now if the Armature in `armature.blend` gets updated with two more collections
|
||||
it might look like this:
|
||||
|
||||
- *FK Controls*
|
||||
- *IK Controls*
|
||||
- *Face Controls*
|
||||
- *Face Detail Controls*
|
||||
|
||||
After reloading `armature_shot_47.blend`, it will look like this:
|
||||
|
||||
- *FK Controls*
|
||||
- *IK Controls*
|
||||
- **Left Pinky** (still anchored to "IK Controls")
|
||||
- **Right Pinky** (still anchored to "Left Pinky")
|
||||
- *Face Controls*
|
||||
- *Face Detail Controls*
|
||||
|
||||
.. _bpy.types.armature.layers:
|
||||
|
||||
Some history
|
||||
============
|
||||
|
||||
Bone Collections were introduced in Blender 4.0, as a replacement for armature
|
||||
layers and bone groups. Bone Collections are owned by the Armature, so they are
|
||||
available in all modes. To contrast, bone groups were stored on the object's
|
||||
pose, and thus were not available in armature edit mode.
|
@ -9,6 +9,7 @@
|
||||
:maxdepth: 2
|
||||
|
||||
introduction.rst
|
||||
bone_collections.rst
|
||||
structure.rst
|
||||
tools/index.rst
|
||||
selecting.rst
|
||||
|
@ -116,6 +116,22 @@ Segments
|
||||
Display Size X, Z
|
||||
Controls the visible thickness of the bone segments when the armature is rendered in the *B-Bones* mode.
|
||||
|
||||
.. _bpy.types.EditBone.bbone_mapping_mode:
|
||||
|
||||
Vertex Mapping
|
||||
Controls how vertices are weighted to the individual segments of a B-Bone for deformations:
|
||||
|
||||
:Straight:
|
||||
A fast mapping that works well for B-Bones with a straight or gently curved rest pose.
|
||||
:Curved:
|
||||
A slower mapping that improves deformations for B-Bones with a strongly curved rest pose. This should
|
||||
be used selectively when needed.
|
||||
|
||||
.. figure:: /images/animation_armatures_bones_properties_bendy-bones_vertex-mapping.png
|
||||
:width: 300px
|
||||
|
||||
Straight vs Curved vertex mapping on a B-Bone with a strongly curved rest pose.
|
||||
|
||||
.. _bpy.types.EditBone.bbone_curveinx:
|
||||
.. _bpy.types.EditBone.bbone_curveinz:
|
||||
|
||||
|
@ -1,4 +1,7 @@
|
||||
.. _bpy.types.Bone.hide:
|
||||
.. _bpy.types.Bone.color:
|
||||
.. _bpy.types.EditBone.color:
|
||||
.. _bpy.types.PoseBone.color:
|
||||
|
||||
****************
|
||||
Viewport Display
|
||||
@ -6,17 +9,70 @@ Viewport Display
|
||||
|
||||
.. reference::
|
||||
|
||||
:Mode: Object and Pose Mode
|
||||
:Mode: Object, Pose, and Edit Mode
|
||||
:Panel: :menuselection:`Bone --> Viewport Display`
|
||||
|
||||
.. figure:: /images/animation_armatures_bones_properties_display_custom-shape-field.png
|
||||
.. figure:: /images/animation_armatures_bones_properties_display.png
|
||||
|
||||
Viewport Display panel.
|
||||
Viewport Display panel in Object/Pose mode.
|
||||
|
||||
Display panel lets you customize the look of your bones taking the shape of another existing object.
|
||||
.. figure:: /images/animation_armatures_bones_properties_display_editmode.png
|
||||
|
||||
Viewport Display panel in Edit mode.
|
||||
|
||||
Display panel lets you customize the look of your bones.
|
||||
|
||||
Hide
|
||||
Hides the selected bone.
|
||||
Hides the bone in the 3D Viewport. When this is unchecked, the bone's
|
||||
visibility is determined by the visibility of its :ref:`bone collections <bpy.types.Bone.collections>`.
|
||||
|
||||
Bone Color
|
||||
Either a selection of the theme-dependent colors, or a custom color. This is
|
||||
the primary way to color a bone.
|
||||
|
||||
This color is stored on the bone itself, and thus is visible in both Pose and
|
||||
Edit modes. If there are multiple armature Objects that share the same
|
||||
Armature data-block, all armatures will share this color.
|
||||
|
||||
Pose Bone Color (only in Pose mode)
|
||||
Either a selection of the theme-dependent colors, or a custom color. This is
|
||||
a way to *override* the bone color on a per-armature object basis.
|
||||
|
||||
When this is set to 'Default', the regular Bone Color is shown (see above).
|
||||
|
||||
This color is stored on the :term:`Pose Bone`, and thus is specific to this
|
||||
particular armature object. It is only available in Pose mode. If there are
|
||||
multiple armature Objects that share the same Armature data-block, they each
|
||||
can have unique pose bone colors.
|
||||
|
||||
.. _bpy.types.BoneColor:
|
||||
.. _bpy.types.ThemeBoneColorSet:
|
||||
|
||||
Bone Colors
|
||||
=============
|
||||
|
||||
Bones can be individually colored. For these colors to be visible, enable the
|
||||
:ref:`Bone Colors checkbox <bpy.types.Armature.show>` in the Armature display panel.
|
||||
|
||||
.. figure:: /images/animation_armatures_bones_properties_display_custom_colors.png
|
||||
|
||||
Viewport Display panel in Pose mode, showing the choices in color palettes as
|
||||
well as options for custom colors.
|
||||
|
||||
The primary source of bone colors is the :ref:`Theme <bpy.types.Theme>`, which
|
||||
defines 20 bone color palettes. Each entry consists of three colors:
|
||||
|
||||
Regular
|
||||
The color of unselected bones.
|
||||
Select
|
||||
The second color field is the outline color of selected bones.
|
||||
Active
|
||||
The third color field is the outline color of the active bone.
|
||||
|
||||
As soon as you alter one of the colors, it is switched to the *Custom Set* option.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. _bpy.types.PoseBone.custom_shape:
|
||||
|
@ -1,4 +1,6 @@
|
||||
|
||||
.. _properties_data_bone_relations:
|
||||
|
||||
*********
|
||||
Relations
|
||||
*********
|
||||
@ -10,29 +12,27 @@ Relations
|
||||
|
||||
.. figure:: /images/animation_armatures_bones_properties_relations_panel.png
|
||||
|
||||
Relations panel.
|
||||
Bone Relations panel.
|
||||
|
||||
In this panel you can arrange sets of bones in different layers for easier manipulation.
|
||||
In this panel you can manage the relationship of this bone with its parent bone.
|
||||
It also shows the bone collections the bone is assigned to.
|
||||
|
||||
.. _bpy.types.Bone.collections:
|
||||
.. _bpy.types.EditBone.collections:
|
||||
.. _bpy.types.PoseBone.collections:
|
||||
|
||||
.. _bpy.types.EditBone.layers:
|
||||
Bone Collections
|
||||
================
|
||||
|
||||
Bone Layers
|
||||
===========
|
||||
This list shows the :term:`bone collections <Bone Collection>` the bone is
|
||||
assigned to. Press the eye icon to show or hide the entire bone collection.
|
||||
Press the X icon to remove the bone from that particular collection.
|
||||
|
||||
Moving Bones between Layers
|
||||
---------------------------
|
||||
To assign the bone to other bone collections, either use the :kbd:`M` or
|
||||
:kbd:`Shift+M` shortcuts (see :ref:`Moving Bones Between Collections
|
||||
<moving_bones_between_collections>`) or go to the :ref:`Armature properties
|
||||
panel <bpy.types.BoneCollection>`.
|
||||
|
||||
Obviously, you have to be in *Edit Mode* or *Pose Mode* to move bones between layers.
|
||||
Note that as with objects, bones can lay in several layers at once,
|
||||
just use the usual :kbd:`Shift-LMB` clicks...
|
||||
First of all, you have to select the chosen bone(s)!
|
||||
|
||||
- In the Properties, use the "layer buttons" of each selected bone Relations panel (*Bones* tab)
|
||||
to control in which layer(s) it lays.
|
||||
- In the *3D Viewport*, use the menu :menuselection:`Armature --> Move Bone To Layer` or
|
||||
:menuselection:`Pose --> Move Bone To Layer` or press :kbd:`M` to show the usual pop-up layers menu.
|
||||
Note that this way, you assign the same layers to all selected bones.
|
||||
|
||||
|
||||
Parenting
|
||||
|
@ -216,10 +216,10 @@ Prefix
|
||||
Select bones with matching name prefix (separated by ``.``).
|
||||
Suffix
|
||||
Select bones with matching name suffix (separated by ``.``).
|
||||
Layer
|
||||
Select bones on the same layer.
|
||||
Group
|
||||
Select bones in the same group.
|
||||
Bone Collection
|
||||
Select bones that share one or more bone collections with the active bone.
|
||||
Color
|
||||
Select bones that have the same color as the active bone.
|
||||
Shape
|
||||
Select bones using the same shape object (in Pose Mode).
|
||||
|
||||
|
@ -27,7 +27,7 @@ Open a default scene, then:
|
||||
#. Make sure the cursor is in the world origin with :kbd:`Shift-C`.
|
||||
#. Press :kbd:`Numpad1` to see the world in Front view.
|
||||
#. Add a *Single Bone* (:menuselection:`Add --> Armature`).
|
||||
#. Press :kbd:`NumpadDelete` to see the armature at maximum zoom.
|
||||
#. Press :kbd:`NumpadPeriod` to see the armature at maximum zoom.
|
||||
|
||||
.. figure:: /images/animation_armatures_introduction_default.png
|
||||
|
||||
|
@ -44,5 +44,5 @@ There are six different color codes, ordered here by precedence
|
||||
|
||||
.. note::
|
||||
|
||||
When :doc:`/animation/armatures/properties/bone_groups` colors are enabled,
|
||||
When :ref:`bone colors <bpy.types.BoneColor>` are enabled,
|
||||
the state colors will be overridden.
|
||||
|
@ -127,14 +127,12 @@ Grouped
|
||||
:Menu: :menuselection:`Select --> Grouped`
|
||||
:Shortcut: :kbd:`Shift-G`
|
||||
|
||||
You can select bones based on their group and/or layer, through the *Select Grouped* pop-up menu :kbd:`Shift-G`:
|
||||
You can select bones, based on various properties, through the *Select Grouped* pop-up menu :kbd:`Shift-G`:
|
||||
|
||||
Layer
|
||||
To select all bones belonging to the same layer(s) as the selected ones,
|
||||
use the *In Same Layer* entry.
|
||||
Group
|
||||
To select all bones belonging to the same group(s) as the selected ones,
|
||||
use the *In Same Group* entry.
|
||||
Collection
|
||||
Selects all bones that are share at least one bone collection with the active bone.
|
||||
Color
|
||||
Selects all bones that have the same color as the active bone.
|
||||
Keying Set
|
||||
ToDo.
|
||||
|
||||
|
99
manual/animation/armatures/properties/bone_collections.rst
Normal file
99
manual/animation/armatures/properties/bone_collections.rst
Normal file
@ -0,0 +1,99 @@
|
||||
.. _bpy.types.BoneGroups:
|
||||
.. _bpy.types.BoneCollection:
|
||||
|
||||
****************
|
||||
Bone Collections
|
||||
****************
|
||||
|
||||
.. note::
|
||||
|
||||
Bone Collections were introduced in Blender 4.0 as replacement of Armature
|
||||
Layers and Bone Groups. :ref:`Bone colors <bpy.types.Bone.color>` are now
|
||||
managed directly on the bone.
|
||||
|
||||
|
||||
.. reference::
|
||||
|
||||
:Mode: Pose & Armature Edit Modes
|
||||
:Panel: :menuselection:`Properties --> Armature --> Bone Collections`
|
||||
:Menu: :menuselection:`Pose --> Bone Collections --> ...`
|
||||
|
||||
.. figure:: /images/animation_armatures_properties_bonecollections_panel.png
|
||||
|
||||
The Bone Collections panel in the Armature properties.
|
||||
|
||||
This panel contains the Bone Collection :ref:`List view <ui-list-view>`, which
|
||||
allows the creation, deletion, and editing of Bone Collections.
|
||||
|
||||
.. tip::
|
||||
|
||||
The Bone Properties panel gives a slightly different view on the bone's collections. See
|
||||
:doc:`Bone Relations </animation/armatures/bones/properties/relations>`.
|
||||
|
||||
Assign & Select
|
||||
===============
|
||||
|
||||
.. _bpy.ops.armature.collection_assign:
|
||||
|
||||
Assign
|
||||
Assigns the selected bones to the active bone collection.
|
||||
|
||||
.. _bpy.ops.armature.collection_unassign:
|
||||
|
||||
Remove
|
||||
Removes the selected bones from the active bone collection.
|
||||
|
||||
.. _bpy.ops.armature.collection_select:
|
||||
|
||||
Select
|
||||
Selects the bones in the active bone collection.
|
||||
|
||||
.. _bpy.ops.armature.collection_deselect:
|
||||
|
||||
Deselect
|
||||
Deselects the bones in the active bone collection.
|
||||
|
||||
.. note::
|
||||
|
||||
Individual bones can als be unassigned from their collections via the
|
||||
:ref:`Bone Relations panel <bpy.types.PoseBone.collections>`.
|
||||
|
||||
.. tip::
|
||||
|
||||
For setting up custom selection sets of bones, take a look at the *Selection
|
||||
Sets* add-on. It is bundled with Blender.
|
||||
|
||||
.. _moving_bones_between_collections:
|
||||
|
||||
Moving Bones between Collections
|
||||
================================
|
||||
|
||||
Blender should be in *Edit Mode* or *Pose Mode* to move bones between collections.
|
||||
Note that as with objects, bones can be assigned to in several collections at once.
|
||||
|
||||
Move to Collection
|
||||
Shows a list of the Armature's *editable* bone collections. Choosing a bone
|
||||
collection unassign the selected bones from all other bone collections, then
|
||||
assigns them to the chosen one.
|
||||
|
||||
Available as :menuselection:`Pose --> Move to Collection` (*Pose Mode*)
|
||||
:menuselection:`Armature --> Move to Collection` (*Edit Mode*), and :kbd:`M` (either mode).
|
||||
|
||||
Bone Collections
|
||||
Shows a list of the Armature's *editable* bone collections. The collections
|
||||
that the active bone is assigned to are prefixed with a `-`, and choosing
|
||||
those will unassign all selected bones from that collection. Similarly,
|
||||
choosing a bone collection prefixed with a `+` will assign all selected bones
|
||||
to that collection.
|
||||
|
||||
Available as :menuselection:`Pose --> Bone Collections` (*Pose Mode*)
|
||||
:menuselection:`Armature --> Bone Collections` (*Edit Mode*), and :kbd:`Shift+M` (either mode).
|
||||
|
||||
.. note::
|
||||
|
||||
The above operators will only show the *editable* bone collections. When the
|
||||
Armature is linked, its bone collections will be *read-only*. New bone
|
||||
collections can still be added via library overrides; only those will be
|
||||
editable.
|
||||
|
||||
See :ref:`Library Overrides of Bone Collections <bone_collections_library_overrides>`.
|
@ -1,84 +0,0 @@
|
||||
.. _bpy.types.BoneGroups:
|
||||
|
||||
***********
|
||||
Bone Groups
|
||||
***********
|
||||
|
||||
.. reference::
|
||||
|
||||
:Mode: Pose Mode
|
||||
:Panel: :menuselection:`Properties --> Armature --> Bone Groups`
|
||||
:Menu: :menuselection:`Pose --> Bone Groups --> ...`
|
||||
|
||||
.. TODO2.8
|
||||
.. figure:: /images/animation_armatures_properties_bone-groups_panel.png
|
||||
|
||||
The Bone Groups panel.
|
||||
|
||||
This panel allows the creation, deletion and editing of Bone Groups.
|
||||
Bone Groups can be used for selection or to assign a color theme to a set of bones.
|
||||
In example to color the left parts of the rig as blue and right parts as red.
|
||||
|
||||
Active Bone Group
|
||||
The Bone Group :ref:`List view <ui-list-view>`.
|
||||
|
||||
Color Set
|
||||
A select menu.
|
||||
|
||||
:Default Colors: The default (gray) colors.
|
||||
:*nn* - Theme Color Set: One of the twenty Blender presets by the theme.
|
||||
:Custom Set: A custom set of colors, which is specific to each group.
|
||||
|
||||
|
||||
Custom Colors
|
||||
=============
|
||||
|
||||
You can assign a "color theme" to a group (each bone will have these colors).
|
||||
Remember you have to enable the *Colors* checkbox (*Display* panel) to see these colors.
|
||||
|
||||
.. _bpy.types.ThemeBoneColorSet:
|
||||
|
||||
Regular
|
||||
The first color field is the color of unselected bones.
|
||||
Select
|
||||
The second color field is the outline color of selected bones.
|
||||
Active
|
||||
The third color field is the outline color of the active bone.
|
||||
|
||||
As soon as you alter one of the colors, it is switched to the *Custom Set* option.
|
||||
|
||||
|
||||
Assign & Select
|
||||
===============
|
||||
|
||||
In the 3D Viewport, using the :menuselection:`Pose --> Bone Groups` menu entries,
|
||||
and/or the *Bone Groups* pop-up menu :kbd:`Ctrl-G`, you can:
|
||||
|
||||
.. _bpy.ops.pose.group_assign:
|
||||
|
||||
Assign
|
||||
Assigns the selected bones to the active bone group.
|
||||
It is important to note that a bone can only belong to one group.
|
||||
|
||||
.. _bpy.ops.pose.group_unassign:
|
||||
|
||||
Remove
|
||||
Removes the selected bones from the active bone group.
|
||||
|
||||
.. _bpy.ops.pose.group_select:
|
||||
|
||||
Select
|
||||
Selects the bones in the active bone group.
|
||||
|
||||
.. _bpy.ops.pose.group_deselect:
|
||||
|
||||
Deselect
|
||||
Deselects the bones in the active bone group.
|
||||
|
||||
.. note::
|
||||
|
||||
A single bone can be assigned to a group in the :ref:`Relations panel <bpy.types.PoseBone.bone_group>`.
|
||||
|
||||
.. tip::
|
||||
|
||||
Bones belonging to multiple groups is possible with the *Selection Sets* add-on.
|
@ -109,9 +109,9 @@ Show
|
||||
When enabled, the default standard bone shape is replaced,
|
||||
in *Object Mode* and *Pose Mode*, by the shape of a chosen object
|
||||
(see :doc:`Shaped Bones </animation/armatures/bones/properties/display>` for details).
|
||||
Group Colors
|
||||
Use the Bone Group colors to color the bone.
|
||||
For more details see :doc:`Bone Groups </animation/armatures/properties/bone_groups>`.
|
||||
Bone Colors
|
||||
Draws bones in their configured colors. Disable to always draw bones in the default color.
|
||||
For more details see :ref:`Bone Colors <bpy.types.Bone.color>`.
|
||||
In Front
|
||||
When enabled, the bones of the armature will always be shown on top of
|
||||
the solid objects (meshes, surfaces, ...). I.e. they will always be visible and selectable
|
||||
|
@ -7,6 +7,5 @@
|
||||
:maxdepth: 2
|
||||
|
||||
introduction.rst
|
||||
skeleton.rst
|
||||
bone_collections.rst
|
||||
display.rst
|
||||
bone_groups.rst
|
||||
|
@ -5,11 +5,32 @@ Introduction
|
||||
|
||||
The *Armature* tab in Properties contains various panels gathering the armature settings.
|
||||
|
||||
.. TODO2.8
|
||||
.. figure:: /images/animation_armatures_properties_introduction_properties-editor.png
|
||||
.. figure:: /images/animation_armatures_properties_introduction_properties-editor.png
|
||||
|
||||
The Armature tab in the Properties.
|
||||
|
||||
Pose
|
||||
====
|
||||
|
||||
.. reference::
|
||||
|
||||
:Mode: All Modes
|
||||
:Panel: :menuselection:`Armature --> Pose`
|
||||
|
||||
Pose Position
|
||||
A radio button to switch between Pose Position and Rest Position.
|
||||
|
||||
In *Edit Mode*, you always see armatures in their rest position,
|
||||
in *Object Mode* and *Pose Mode*, by default, you see them in *Pose Position*
|
||||
(i.e. as it was transformed in the *Pose Mode*).
|
||||
If you want to see it in the rest position in all modes, select *Rest Position*.
|
||||
|
||||
|
||||
Bone Collections
|
||||
================
|
||||
|
||||
See :doc:`Bone Collections </animation/armatures/properties/bone_collections>`.
|
||||
|
||||
|
||||
Motion Paths
|
||||
============
|
||||
|
@ -1,45 +0,0 @@
|
||||
|
||||
********
|
||||
Skeleton
|
||||
********
|
||||
|
||||
.. reference::
|
||||
|
||||
:Mode: All Modes
|
||||
:Panel: :menuselection:`Armature --> Skeleton`
|
||||
|
||||
.. figure:: /images/animation_armatures_properties_skeleton_panel.png
|
||||
|
||||
Skeleton panel.
|
||||
|
||||
In this panel you can arrange sets of bones into different layers for easier manipulation.
|
||||
|
||||
.. _bpy.types.Armature.pose_position:
|
||||
|
||||
Pose Position
|
||||
A radio button to switch between Pose Position and Rest Position.
|
||||
|
||||
In *Edit Mode*, you always see armatures in their rest position,
|
||||
in *Object Mode* and *Pose Mode*, by default, you see them in *Pose Position*
|
||||
(i.e. as it was transformed in the *Pose Mode*).
|
||||
If you want to see it in the rest position in all modes, select *Rest Position*.
|
||||
|
||||
.. _bpy.types.Armature.layers:
|
||||
|
||||
Armature Layers
|
||||
Each armature has 32 layers to organize armatures by "regrouping" them into sets of bones.
|
||||
Only bones in active layers will be visible/editable, but they will always be effective
|
||||
(i.e. move objects or deform geometry), whether in an active layer or not.
|
||||
This property changes which layers are visible in the 3D Viewport.
|
||||
To show several layers at once, :kbd:`Shift-LMB` on the desired layers to view.
|
||||
To move bones to a given layer, use :ref:`bpy.ops.armature.bone_layers`.
|
||||
|
||||
.. _bpy.types.Armature.layers_protected:
|
||||
|
||||
Protected Layers
|
||||
You can lock a given bone layer for all :doc:`/files/linked_libraries/library_proxies`
|
||||
of your armature, i.e. all bones in this layer will not be editable.
|
||||
|
||||
.. note::
|
||||
|
||||
*Protected Layers* in proxy are restored to proxy settings on file reload and undo.
|
@ -24,11 +24,43 @@ Node Types
|
||||
|
||||
types/input/index.rst
|
||||
types/output/index.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
types/color/index.rst
|
||||
types/converter/index.rst
|
||||
types/filter/index.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
types/keying/index.rst
|
||||
types/mask/index.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
types/tracking/index.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
types/transform/index.rst
|
||||
types/utilities/index.rst
|
||||
types/vector/index.rst
|
||||
types/matte/index.rst
|
||||
types/distort/index.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
types/groups.rst
|
||||
types/layout/index.rst
|
||||
|
17
manual/compositing/types/color/adjust/index.rst
Normal file
17
manual/compositing/types/color/adjust/index.rst
Normal file
@ -0,0 +1,17 @@
|
||||
|
||||
##########
|
||||
Adjust
|
||||
##########
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
bright_contrast.rst
|
||||
color_balance.rst
|
||||
color_correction.rst
|
||||
exposure.rst
|
||||
gamma.rst
|
||||
hue_correct.rst
|
||||
hue_saturation.rst
|
||||
rgb_curves.rst
|
||||
tone_map.rst
|
@ -84,7 +84,7 @@ In this example, the image has too much red in it,
|
||||
so we run it through an *RGB Curves* node and reduce the Red channel.
|
||||
|
||||
Also, read on for examples of the Darken and Contrast Enhancement curves,
|
||||
:doc:`here </compositing/types/color/mix>`.
|
||||
:doc:`here </compositing/types/color/mix/mix_color>`.
|
||||
|
||||
|
||||
Color Correction using Black/White Levels
|
@ -10,17 +10,29 @@ overlaying another image, etc.
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
alpha_over.rst
|
||||
bright_contrast.rst
|
||||
color_balance.rst
|
||||
color_correction.rst
|
||||
exposure.rst
|
||||
gamma.rst
|
||||
hue_correct.rst
|
||||
hue_saturation.rst
|
||||
adjust/index.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
mix/index.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
alpha_convert.rst
|
||||
color_ramp.rst
|
||||
convert_colorspace.rst
|
||||
set_alpha.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
invert_color.rst
|
||||
mix.rst
|
||||
posterize.rst
|
||||
rgb_curves.rst
|
||||
tone_map.rst
|
||||
z_combine.rst
|
||||
rgb_to_bw.rst
|
||||
|
25
manual/compositing/types/color/mix/index.rst
Normal file
25
manual/compositing/types/color/mix/index.rst
Normal file
@ -0,0 +1,25 @@
|
||||
|
||||
#######
|
||||
Mix
|
||||
#######
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
alpha_over.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
combine_color.rst
|
||||
separate_color.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
mix_color.rst
|
||||
z_combine.rst
|
@ -1,7 +1,7 @@
|
||||
.. index:: Compositor Nodes; Mix
|
||||
.. _bpy.types.CompositorNodeMixRGB:
|
||||
.. Editor's Note: This page gets copied into:
|
||||
.. - :doc:`</render/cycles/nodes/types/color/mix>`
|
||||
.. - :doc:`</render/shader_nodes/color/mix>`
|
||||
.. - :doc:`</modeling/geometry_nodes/utilities/color/mix_rgb>`
|
||||
.. - :doc:`</render/shader_nodes/converter/mix>`
|
||||
.. - :doc:`</modeling/geometry_nodes/utilities/mix>`
|
@ -70,7 +70,7 @@ The node tree below shows how to do this using the Set Alpha node.
|
||||
Fade to black.
|
||||
|
||||
In the example above, the alpha channel of the swirl image is ignored.
|
||||
Instead, a :doc:`Time Curve node </compositing/types/input/time_curve>`
|
||||
Instead, a :doc:`Time Curve node </compositing/types/input/scene/time_curve>`
|
||||
introduces a factor from 0.0 to 1.0 over 60 frames, or about 2 seconds,
|
||||
to the Set Alpha node. Note that the time curve is exponentially-shaped,
|
||||
so that the overall blackness will fade in slowly and then accelerate toward the end.
|
@ -1,28 +0,0 @@
|
||||
|
||||
###################
|
||||
Converter Nodes
|
||||
###################
|
||||
|
||||
As the name implies, these nodes convert the colors or other properties of various data
|
||||
(e.g. transparency) in some way.
|
||||
|
||||
They also split out or re-combine the different color channels that make up an image,
|
||||
allowing you to work on each channel independently.
|
||||
Various color channel arrangements are supported, including traditional RGB, HSV
|
||||
and :abbr:`HDMI (High Definition Media Interface)` formats.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
alpha_convert.rst
|
||||
color_space.rst
|
||||
color_ramp.rst
|
||||
combine_color.rst
|
||||
combine_xyz.rst
|
||||
id_mask.rst
|
||||
math.rst
|
||||
rgb_to_bw.rst
|
||||
separate_color.rst
|
||||
separate_xyz.rst
|
||||
set_alpha.rst
|
||||
switch_view.rst
|
@ -30,7 +30,7 @@ Size
|
||||
controlled by an input image. In order to use the latter, the Variable Size option must be selected.
|
||||
See the examples section below for more on how to use this.
|
||||
Bounding Box
|
||||
This can be used with a :doc:`Box Mask </compositing/types/matte/box_mask>`
|
||||
This can be used with a :doc:`Box Mask </compositing/types/mask/box_mask>`
|
||||
matte node or with a :doc:`Mask </compositing/types/input/mask>`
|
||||
input node to restrict the area of the image the blur is applied to. This could be helpful, for example,
|
||||
when developing a node system by allowing only a small area of the image to be filtered
|
||||
@ -59,14 +59,14 @@ Examples
|
||||
|
||||
Three examples of how the size input may be used follow.
|
||||
|
||||
An :doc:`ID masked </compositing/types/converter/id_mask>`
|
||||
An :doc:`ID masked </compositing/types/mask/id_mask>`
|
||||
alpha image can be used so that a background is blurred while foreground objects remain in focus.
|
||||
To prevent strange edges the :doc:`Dilate Node </compositing/types/filter/dilate_erode>` should be used.
|
||||
|
||||
The Z pass can be visualized using a :doc:`Map Value </compositing/types/vector/map_value>` node
|
||||
and a :doc:`Color Ramp </compositing/types/converter/color_ramp>` node
|
||||
as described in :doc:`Render Layers </compositing/types/input/render_layers>`.
|
||||
A *multiply* :doc:`Math </compositing/types/converter/math>` node can be used following the color ramp
|
||||
The Z pass can be visualized using a :doc:`Map Value </compositing/types/utilities/map_value>` node
|
||||
and a :doc:`Color Ramp </compositing/types/color/color_ramp>` node
|
||||
as described in :doc:`Render Layers </compositing/types/input/scene/render_layers>`.
|
||||
A *multiply* :doc:`Math </compositing/types/utilities/math>` node can be used following the color ramp
|
||||
so that a blur value greater than one is used for objects outside the focal range.
|
||||
|
||||
.. figure:: /images/compositing_types_filter_bokeh-blur_example-1.png
|
14
manual/compositing/types/filter/blur/index.rst
Normal file
14
manual/compositing/types/filter/blur/index.rst
Normal file
@ -0,0 +1,14 @@
|
||||
|
||||
#####################
|
||||
Blur Filter Nodes
|
||||
#####################
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
bilateral_blur.rst
|
||||
blur.rst
|
||||
bokeh_blur.rst
|
||||
defocus.rst
|
||||
directional_blur.rst
|
||||
vector_blur.rst
|
@ -6,21 +6,35 @@
|
||||
Filters process the pixels of an image to highlight additional details or perform some sort of
|
||||
post-processing effect on the image.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
blur/index.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
anti_aliasing.rst
|
||||
bilateral_blur.rst
|
||||
blur_node.rst
|
||||
bokeh_blur.rst
|
||||
defocus.rst
|
||||
denoise.rst
|
||||
despeckle.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
dilate_erode.rst
|
||||
directional_blur.rst
|
||||
filter_node.rst
|
||||
glare.rst
|
||||
inpaint.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
filter.rst
|
||||
glare.rst
|
||||
pixelate.rst
|
||||
posterize.rst
|
||||
sun_beams.rst
|
||||
vector_blur.rst
|
||||
|
@ -9,7 +9,7 @@ Pixelate Node
|
||||
:align: right
|
||||
:alt: Pixelate Node.
|
||||
|
||||
Add this node in front of a :doc:`Scale node </compositing/types/distort/scale>`
|
||||
Add this node in front of a :doc:`Scale node </compositing/types/transform/scale>`
|
||||
to get a pixelated (non-smoothed) image from the resultant upscaled image.
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@ Bokeh Image Node
|
||||
:alt: Bokeh Image Node.
|
||||
|
||||
The *Bokeh Image* node generates a special input image for use with
|
||||
the :doc:`Bokeh Blur </compositing/types/filter/bokeh_blur>` filter node.
|
||||
the :doc:`Bokeh Blur </compositing/types/filter/blur/bokeh_blur>` filter node.
|
||||
|
||||
The *Bokeh Image* node is designed to create a reference image which simulates optical parameters
|
||||
such as aperture shape and lens distortions which have important impacts on bokeh in real cameras.
|
||||
@ -52,7 +52,7 @@ Example
|
||||
=======
|
||||
|
||||
In the example below the *Bokeh Image* is used to define the shape of the bokeh for
|
||||
the :doc:`Bokeh Blur </compositing/types/filter/bokeh_blur>` node.
|
||||
the :doc:`Bokeh Blur </compositing/types/filter/blur/bokeh_blur>` node.
|
||||
|
||||
.. figure:: /images/compositing_types_filter_bokeh-blur_example-1.png
|
||||
:width: 640px
|
||||
|
11
manual/compositing/types/input/constant/index.rst
Normal file
11
manual/compositing/types/input/constant/index.rst
Normal file
@ -0,0 +1,11 @@
|
||||
|
||||
|
||||
############
|
||||
Constant
|
||||
############
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
rgb.rst
|
||||
value.rst
|
@ -48,4 +48,4 @@ this makes the node a useful organizational tool.
|
||||
.. tip::
|
||||
|
||||
From this you can also make different values proportional to each other by adding
|
||||
a :doc:`Math Node </compositing/types/converter/math>` in between the different links.
|
||||
a :doc:`Math Node </compositing/types/utilities/math>` in between the different links.
|
@ -15,6 +15,13 @@ For instance, an input can be:
|
||||
These nodes generate the information that is passed to other nodes.
|
||||
As such, they have no input sockets; only outputs.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
constant/index.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
@ -22,10 +29,11 @@ As such, they have no input sockets; only outputs.
|
||||
image.rst
|
||||
mask.rst
|
||||
movie_clip.rst
|
||||
render_layers.rst
|
||||
rgb.rst
|
||||
scene_time.rst
|
||||
texture.rst
|
||||
time_curve.rst
|
||||
track_position.rst
|
||||
value.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
scene/index.rst
|
||||
|
12
manual/compositing/types/input/scene/index.rst
Normal file
12
manual/compositing/types/input/scene/index.rst
Normal file
@ -0,0 +1,12 @@
|
||||
|
||||
|
||||
#########
|
||||
Scene
|
||||
#########
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
render_layers.rst
|
||||
scene_time.rst
|
||||
time_curve.rst
|
@ -48,7 +48,7 @@ Factor
|
||||
|
||||
.. hint:: Output values
|
||||
|
||||
The :doc:`Map Value </compositing/types/vector/map_value>`
|
||||
The :doc:`Map Value </compositing/types/utilities/map_value>`
|
||||
node can be used to map the output to a more appropriate value.
|
||||
With sometimes curves, it is possible that the Time Curve node
|
||||
may output a number larger than one or less than zero.
|
@ -1,7 +1,7 @@
|
||||
|
||||
###############
|
||||
Matte Nodes
|
||||
###############
|
||||
################
|
||||
Keying Nodes
|
||||
################
|
||||
|
||||
These nodes give you the essential tools for creating a :term:`Matte` for images
|
||||
that do not already have their own :term:`Alpha Channel`.
|
||||
@ -18,7 +18,7 @@ Taking out too much green can result in foreground actors looking flat or bluish
|
||||
You can and should chain these nodes together,
|
||||
improving your masking and color correction in successive refinements,
|
||||
using each node's strengths to operate on the previous node's output.
|
||||
:doc:`Keying Node </compositing/types/matte/keying>` is the closest to a "does-it-all" node
|
||||
:doc:`Keying Node </compositing/types/keying/keying>` is the closest to a "does-it-all" node
|
||||
for green screens, but the best results stem from a combination of techniques.
|
||||
|
||||
.. note::
|
||||
@ -34,26 +34,21 @@ for green screens, but the best results stem from a combination of techniques.
|
||||
by the node.
|
||||
|
||||
Simple garbage mattes can be created with
|
||||
the :doc:`Box Mask </compositing/types/matte/box_mask>` or
|
||||
the :doc:`Ellipse Mask </compositing/types/matte/ellipse_mask>`.
|
||||
the :doc:`Box Mask </compositing/types/mask/box_mask>` or
|
||||
the :doc:`Ellipse Mask </compositing/types/mask/ellipse_mask>`.
|
||||
More complicated matte shapes using
|
||||
a :doc:`Double Edge Mask </compositing/types/matte/double_edge_mask>` or
|
||||
a :doc:`Double Edge Mask </compositing/types/mask/double_edge_mask>` or
|
||||
using a :doc:`Mask </compositing/types/input/mask>`.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
box_mask.rst
|
||||
channel_key.rst
|
||||
chroma_key.rst
|
||||
color_key.rst
|
||||
color_spill.rst
|
||||
cryptomatte.rst
|
||||
cryptomatte_legacy.rst
|
||||
difference_key.rst
|
||||
distance_key.rst
|
||||
double_edge_mask.rst
|
||||
ellipse_mask.rst
|
||||
keying.rst
|
||||
keying_screen.rst
|
||||
luminance_key.rst
|
@ -22,7 +22,7 @@ Image
|
||||
Key Color
|
||||
The color of content to be removed. This may be a single color,
|
||||
or a reference image such as generated by
|
||||
the :doc:`Keying Screen Node </compositing/types/matte/keying_screen>`.
|
||||
the :doc:`Keying Screen Node </compositing/types/keying/keying_screen>`.
|
||||
Garbage Matte
|
||||
An optional mask of area(s) to always *exclude* from the output.
|
||||
This is removed from the chroma key generated matte.
|
||||
@ -48,12 +48,12 @@ Despill Factor
|
||||
Controls how much color bleed from the key color is removed from the input
|
||||
image: 0 means no despilling, 1 means all possible spilling will be removed.
|
||||
The underlying implementation is the same as adjusting the *Unspill* amount
|
||||
of the :doc:`Color Spill Node </compositing/types/matte/color_spill>`.
|
||||
of the :doc:`Color Spill Node </compositing/types/keying/color_spill>`.
|
||||
Despill Balance
|
||||
This controls how the color channels are compared when computing spill,
|
||||
affecting the hue and shade of the corrected colors.
|
||||
It is similar to setting the *Limiting Channel*
|
||||
in the :doc:`Color Spill Node </compositing/types/matte/color_spill>`.
|
||||
in the :doc:`Color Spill Node </compositing/types/keying/color_spill>`.
|
||||
Edge Kernel Radius
|
||||
Defines the radius in pixel used to detect an edge.
|
||||
Edge Kernel Tolerance
|
||||
@ -63,7 +63,7 @@ Edge Kernel Tolerance
|
||||
Clip Black
|
||||
This sets the threshold for what becomes fully transparent in the output (black in the matte).
|
||||
It should be set as low as possible. Uneven backdrops will require this value to be increased.
|
||||
Use of the :doc:`Keying Screen Node </compositing/types/matte/keying_screen>` can help
|
||||
Use of the :doc:`Keying Screen Node </compositing/types/keying/keying_screen>` can help
|
||||
keep this value low. You may also use a *Garbage Matte* to exclude problematic areas.
|
||||
|
||||
This value does not impact areas detected as edges to ensure edge detail is preserved.
|
||||
@ -94,8 +94,8 @@ Image
|
||||
Processed image with the *Matte* applied to the images' :term:`Alpha Channel`.
|
||||
Matte
|
||||
Output matte to use for checking the quality of the key, or to manually apply
|
||||
using a :doc:`Set Alpha Node </compositing/types/converter/set_alpha>` or
|
||||
:doc:`Mix Node </compositing/types/color/mix>`.
|
||||
using a :doc:`Set Alpha Node </compositing/types/color/set_alpha>` or
|
||||
:doc:`Mix Node </compositing/types/color/mix/mix_color>`.
|
||||
Edges
|
||||
Shows what edges were detected on the matte.
|
||||
Useful for adjusting the *Edge Kernel Radius* and *Edge Kernel Tolerance*.
|
@ -49,7 +49,7 @@ Example
|
||||
=======
|
||||
|
||||
Consider a node setup for green screen removal, using
|
||||
a :doc:`Color Key </compositing/types/matte/color_key>`:
|
||||
a :doc:`Color Key </compositing/types/keying/color_key>`:
|
||||
|
||||
.. figure:: /images/compositing_types_matte_keying-screen_key-usage.png
|
||||
:width: 480px
|
@ -21,7 +21,7 @@ that aren't suitable for chroma keying.
|
||||
.. tip::
|
||||
|
||||
When compositing footage of something that emits light and has a dark background,
|
||||
like fire, a :doc:`Mix Node </compositing/types/color/mix>` using a *Screen* or
|
||||
like fire, a :doc:`Mix Node </compositing/types/color/mix/mix_color>` using a *Screen* or
|
||||
*Add* operator will produce better results.
|
||||
|
||||
|
@ -1,5 +1,4 @@
|
||||
|
||||
.. _composite-nodes-layout-index:
|
||||
|
||||
################
|
||||
Layout Nodes
|
||||
@ -7,7 +6,3 @@
|
||||
|
||||
These are nodes which help you control the layout and connectivity of nodes within the Compositor.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
switch.rst
|
||||
|
@ -61,4 +61,4 @@ Mask
|
||||
|
||||
.. tip::
|
||||
|
||||
For soft edges, pass the output mask through a slight :doc:`Blur node </compositing/types/filter/blur_node>`.
|
||||
For soft edges, pass the output mask through a slight :doc:`Blur node </compositing/types/filter/blur/blur>`.
|
@ -21,7 +21,7 @@ and mattes will be anti-aliased and take into account effects like motion blur a
|
||||
.. important::
|
||||
|
||||
The Cryptomatte Legacy node is deprecated and replaced by
|
||||
:doc:`Cryptomatte Node </compositing/types/matte/cryptomatte>`.
|
||||
:doc:`Cryptomatte Node </compositing/types/mask/cryptomatte>`.
|
||||
The legacy node will be removed in a future Blender release.
|
||||
|
||||
|
@ -62,5 +62,5 @@ Mask
|
||||
|
||||
.. tip::
|
||||
|
||||
For soft edges, pass the output mask through a slight :doc:`Blur node </compositing/types/filter/blur_node>`.
|
||||
For soft edges, pass the output mask through a slight :doc:`Blur node </compositing/types/filter/blur/blur>`.
|
||||
For a vignette, pass the output of this through a heavy blur.
|
@ -13,7 +13,7 @@ The *ID Mask Node* can be used to access an alpha mask per object or per materia
|
||||
|
||||
.. seealso::
|
||||
|
||||
The ID Mask node is superseded by the :doc:`/compositing/types/matte/cryptomatte`.
|
||||
The ID Mask node is superseded by the :doc:`/compositing/types/mask/cryptomatte`.
|
||||
Cryptomatte is more feature complete and supported by Cycles and EEVEE.
|
||||
It is recommended to use this feature moving forward.
|
||||
|
||||
@ -23,8 +23,8 @@ Inputs
|
||||
|
||||
ID Value
|
||||
Input for the *Object Index* or *Material Index* render pass.
|
||||
Which is an output of the :doc:`Render Layers node </compositing/types/input/render_layers>` or
|
||||
the :doc:`Image node </compositing/types/input/render_layers>` with a multi-layer format.
|
||||
Which is an output of the :doc:`Render Layers node </compositing/types/input/scene/render_layers>` or
|
||||
the :doc:`Image node </compositing/types/input/scene/render_layers>` with a multi-layer format.
|
||||
|
||||
|
||||
Properties
|
26
manual/compositing/types/mask/index.rst
Normal file
26
manual/compositing/types/mask/index.rst
Normal file
@ -0,0 +1,26 @@
|
||||
|
||||
##############
|
||||
Mask Nodes
|
||||
##############
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
cryptomatte.rst
|
||||
cryptomatte_legacy.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
box_mask.rst
|
||||
ellipse_mask.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
double_edge_mask.rst
|
||||
id_mask.rst
|
@ -9,7 +9,12 @@ These nodes are used to output the composited result in some way.
|
||||
:maxdepth: 1
|
||||
|
||||
composite.rst
|
||||
file.rst
|
||||
levels.rst
|
||||
split_viewer.rst
|
||||
viewer.rst
|
||||
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
file_output.rst
|
||||
|
11
manual/compositing/types/tracking/index.rst
Normal file
11
manual/compositing/types/tracking/index.rst
Normal file
@ -0,0 +1,11 @@
|
||||
|
||||
##################
|
||||
Tracking Nodes
|
||||
##################
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
plane_track_deform.rst
|
||||
stabilize_2d.rst
|
||||
track_position.rst
|
@ -10,7 +10,7 @@ Corner Pin Node
|
||||
:alt: Corner Pin Node.
|
||||
|
||||
The Corner Pin node uses explicit corner values for a plane warp transformation.
|
||||
It works like the :doc:`Plane Track Deform </compositing/types/distort/plane_track_deform>` node,
|
||||
It works like the :doc:`Plane Track Deform </compositing/types/tracking/plane_track_deform>` node,
|
||||
but without using "plane track" data from the Movie Clip Editor.
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user