# Attribute Transfer Options ## Domain Combinations | Source Domain | Result Domain | Topology | Raycast | Nearest | Nearest Interpolated | Matching Attribute (normals) | | ------------- | ------------- | -------- | ------- | ------- | -------------------- | ---------------------------- | | Point | Point | x | | x | | x | | Point | Edge | x | | x | x | x | | Point | Face | x | | x | x | x | | Point | Corner | ? | ? | ? | ? | ? | | Edge | Point | x | | x | x | x | | Edge | Edge | x | | x | x | x | | Edge | Face | x | | x | x | x | | Edge | Corner | ? | ? | ? | ? | ? | | Face | Point | x | x | x | x | x | | Face | Edge | x | x | x | x | x | | Face | Face | x | x | x | x | x | | Face | Corner | ? | ? | ? | ? | ? | | Corner | Point | x | x | x | x | x | | Corner | Edge | x | x | x | x | x | | Corner | Face | x | x | x | x | x | The source domain is just chosen automatically based on the source attribute which could be implicitly interpolated in many cases. ## Modes - **Topology** - Does a straight copy of arrays, error if different size - Doesn't have any other settings - **Raycast** - Always "Surface Interpolated" - Uses another direction vector attribute on the result geometry to fire a ray at the other geometry to figure out the point to use. - Could possibly be interpolated or just use the closest element of the source attribute - **Nearest** - Can possibly do sampling with bary coords, or just pick the value at the closest element - No interpolation - **Attribute** - No interpolation possible - This can emulate the data transfer modifier's "closest normal" behavior, but much more generally. - This is a bit harder to visualize since it's not even really "3D" in some cases. - The non-interpolated "Nearest" mode with the position attribute is exactly the same thing in some cases - Interpolate source attribute to face domain and use that value? ### Option 1 - Topology - Raycast - Nearest - Nearest Interpolated - Comparison attribute (normals) ### Option 2 - Mode - Topology - Raycast - Attribute - Nearest - Interpolated - Only shows when "Raycast" or "Nearest" are selected - Direction Attribute - Used for raycast mode - Comparison Attribute - Used for attribute mode ### Option 3 - Mode - Topology - Attribute - Raycast (always interpolated) - Nearest - Nearest interpolated - Direction attribute - Comparison attribute ### Option 4 - Mode - Topology - Attribute (also "position") - Nearest interpolated - Direction attribute - Comparison attribute ### Option 5 - Mode - Topology - Attribute - Nearest face interpolated - Nearest edge interpolated - Direction attribute - Comparison attribute ### Option 6 - Mode - Topology - Attribute - Nearest - Nearest point interpolated - Nearest face interpolated - Nearest edge interpolated - Direction attribute - Comparison attribute ## Final Questions - Does it make sense to expand "Nearest Interpolated" into a separate option for each attribute? - I don't think so, since you can just use the attribute convert node on the source mesh if you really need to - Does combining "Nearest point" and "Attribute" mode make sense? - Technically it seems fine but might be more confusing