Summary

Title:AdoptExternalGuides issue, strand groups
Category:Workflow
Status:Open
Posted By:hitofffskiy ( Roman A )
Date Created:6 April 2026

Problem

Description:

Hello,
When using the AdoptExternalGuides node to drive a dense groom with sparse simulated proxy guides (Master Guides workflow), the Use Control Guide's Strand Groups option does not work as expected. The hairs are still being influenced by control guides belonging to other strand groups.

With Use Control Guide's Strand Groups enabled, hairs belonging to a specific Strand Group ID should strictly follow the control guide that shares the exact same Strand Group ID. It should completely ignore control guides from other groups, regardless of their physical proximity.

Hairs are snapping to or being deformed by control guides from adjacent/different strand groups. It seems the node ignores the strict group matching and falls back to distance-based influence, causing the grouped strands to tear apart and attach to neighboring proxy guides.

I have verified that Strand Groups are correctly generated and match perfectly across the base groom, Control Guides, and Reference Guides.
Please check the attached video and Maya scene for the exact setup and reproduction of the issue.

Steps to Reproduce:

Video of the issue: https://dropmefiles.com/cG1tA

Test scene (maya 2022.5, ornatrix v5.1.6.38179): https://dropmefiles.com/9BKen

The purpose of the "Use Control Guide's Strand Groups" option is simpler than what you expected.

Normally, the effect of Adopt External Guides (as many other operators) can be limited to selected strand group(s), as specified in the Apply by Group panel. This considers the groups assigned to the input hair that the operator is applied to.

The "Use Control Guide's Strand Groups" option instead considers the group of the nearest control guides. For example, if you set group 1 in "Apply by Group", only the strands whose closest control guide has group 1 will be affected by the operator.

Frankly, this option was added to the AEG operator by mistake, it was originally requested for the Clump operator.

But the workflow that you expect also makes sense (of course, once you have taken care to apply similar groups to the main hair and its control guides), and we may consider implementing it.

Ivan Kolev (Software Developer, EPHERE Inc.)

Discord: ikolev

Email: ivan.kolev at ephere com

Hello Ivan, Thank you for the clarification!
I strongly encourage you to consider implementing this workflow. This feature is highly needed and would be a game-changer for simulating region-based and clumped hairstyles.
The standard use case is exactly this: I have clumps defined by regions ("Use Strand groups as parts"), where each clump shares a single strand_ID but consists of a large number of guides. For performance and stability, I only want to simulate the central guide of each clump. All the other hairs in that group_ID should strictly follow their simulated central guide based on the ID, completely ignoring physical distance.
Relying on distance calculation always leads to clumps tearing apart or jittering when they get close to each other. A strict ID-to-ID matching in AdoptExternalGuides would solve this entirely.
Please, would be awesome to see this in future updates! 


Attached Files:
Image 1Image 2Image 3

AEG calculates influence from the 3 closest control guides to each strand, I think it won't work with a single control guide per group. So there isn't just one detail that needs to be changed or added to achieve your idea.

I wonder if there's some other tool that could help in this case.

 

Ivan Kolev (Software Developer, EPHERE Inc.)

Discord: ikolev

Email: ivan.kolev at ephere com

What if I use not just 1 central guide, but 1, 2, or 3 guides in each ID_group + AEG?


It will help, but it won't be enough.

Ivan Kolev (Software Developer, EPHERE Inc.)

Discord: ikolev

Email: ivan.kolev at ephere com