Operating system: Windows-10-10.0.19041-SP0 64 Bits
Graphics card: GeForce GTX 1080/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 456.71
Broken: version: 2.92.0, branch: master, commit date: 2021-02-24 16:25, hash: rB02948a2cab44
Short description of error
Two bones with ID properties of same name cause dependency cycle when one drives the other.
Workaround exists by prefixing property names.
Exact steps for others to reproduce the error
- Add armature with 2 bones
- In pose mode, give each bone a custom property with the same name (!)
- Add a driver to one of the properties
- Use "Single Property" variable and enter the data path of the other bone's property (e.g. pose.bones["Bone1"]["prop"])
Depsgraph will report a dependency cycle, apparently it cannot distinguish between bones:
Dependency cycle detected: OBArmature1/Parameters Component/DRIVER(pose.bones["Bone2"]["prop"]) depends on OBArmature1/Parameters Component/ID_PROPERTY(prop) via 'RNA Target -> Driver' OBArmature1/Parameters Component/DRIVER(pose.bones["Bone2"]["prop"]) via 'Driver -> Driven Property' Detected 1 dependency cycles
Using unique property names can be used to work around this, e.g. by prefixing each property with the bone name.