Rigify - basic.raw_copy bones with ORG prefix are not generated correctly #80764
Labels
No Label
Interest
Animation & Rigging
Interest
Blender Cloud
Interest
Collada
Interest
Core
Interest
Documentation
Interest
Eevee & Viewport
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
Import and Export
Interest
Modeling
Interest
Modifiers
Interest
Nodes & Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds, Tests & Devices
Interest
Python API
Interest
Rendering & Cycles
Interest
Sculpt, Paint & Texture
Interest
Translations
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Meta
Good First Issue
Meta
Papercut
Module
Add-ons (BF-Blender)
Module
Add-ons (Community)
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
4 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: blender/blender-addons#80764
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
System Information
Operating system: Windows-10-10.0.18362-SP0 64 Bits
Graphics card: GeForce GTX 1060 6GB/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 452.06
Blender Version
Broken: version: 2.83.6, 2.9 & 2.91
Worked: (not sure)
Addon Information
Name: Rigify (0, 6, 1)
Author: Nathan Vegdahl, Lucio Rossi, Ivan Cappiello, Alexander Gavrilov
Short description of error
basic.raw_copy bones with ORG prefix are not generated correctly (or at least not as I expect)
Exact steps for others to reproduce the error
Expected behavior:
The bone is moved to layer 31 and it retails the name "ORG-bone" in the generated rig.
Actual behavior in the current version of Rigify:
The bone remains in the same layer as in the meta rig. It also loses the "ORG-" prefix. So "ORG-bone" is renamed to "bone".
I started trying to figure out raw_copy recently so it could be that I misunderstood something.
But this is inconsistent with the raw_copy's that have MCH or DEF prefix.
Bones with MCH- prefix are moved to layer 30 and retain the prefix.
Bones with DEF- prefix are moved to layer 29 and retain the prefix.
Only ORG bones don't follow this pattern.
Added subscriber: @TodorNikolov
Added subscribers: @angavrilov, @icappiello, @Mets
@angavrilov is there a specific design reason for that? can't exactly tell if is a bug or an intended design.
This is a technical limitation of implementing raw_copy using only the 'public' rig API: it works by removing the ORG prefix that is added as usual by generate, which doesn't add the prefix if the bone already has it to avoid creating 'ORG-ORG-whatever'. This can only be fixed by adding a special case check for raw_copy directly in generate code, or maybe saving a table of the 'true original names' for the bones so raw_copy can use it.
I didn't give this case much thought because I wanted to showcase the power of the generic API, and thought there is no point creating ORG bones with raw_copy - functionally they aren't any different from MCH.
This issue was referenced by
b757daf681
Changed status from 'Needs Triage' to: 'Resolved'