Difference between Linking and Sharing
The Link section describes how to connect one parameter to another, as long as they are of the same type and dimension; but, links introduce the concept of driver and driven, since one parameter controls the other and prevents it from being modified by the user. The driver value or state overwrites the driven one.
In order to dive deeper into the interaction between parameters, Autograph introduces the concept of sharing instead of connecting, where parameters are both the driver and driven:
- Linking establishes a unidirectional connection between the driver and the driven param
- Sharing asks the params to refer to a common intermediate value.
Notice that in the case of linking, the connection goes only in one direction. In the case of sharing, the it goes in both directions.
- When linking: you can only modify the driver value, the driven one being controlled and therefore blocked
- When sharing: whether you change the value of one parameter or another, it will be updated on both sides.
Sharing is not limited to just two parameters, it is possible to share this value with hundreds of parameters across compositions, 3D scenes, you name it.
Remember, the only constraint is to share parameters of the same type and the same dimension. You can't share Source Text with Position. It would not make sense. You cannot share 2D position of dimension 2 with a 2D rotation that has only one dimension. However, thanks to Separated mode, you can split a 2D parameter into two 1D parameters. It is then possible to link only the X or Y Position value to the Rotation.
For more detail about splitting dimensions, please refer to the Managing dimensions section.
Everything can be shared
We talked about sharing a numerical value between several parameters; but, it is possible to share absolutely everything in Autograph, at multiple levels.
Here are some examples of what you can share:
- All modifier parameters: to completely synchronize a blur shared between different layers
- A complete modifiers group: to apply the same modifiers on different layers and keep track of any change in it, including adding and removing modifiers
- A path or a paths group: to synchronize curves between different parameters
- Partial or complete Transform: to apply the same perfectly-synchronized movement to several layers, if any change is made
- A complete layer: you can even copy/paste a layer with all parameters shared, including generators, the source, masks, modifiers, visibility... everything!
The last case could raise questions. What's the point of making a complete copy of a layer which will overlap perfectly with its twin, whatever changes are made? First, these two identical layers could be placed at a different level in the stack to sandwich other layers.
The second reason is that it's possible to locally unshare one or more parameters to override a value, generator, modifier, state, or whatever, only for a specific layer.
It is therefore possible to synchronize thousands of params in a single Share Group used by hundreds of layers, to locally take control on one of them, as described in the Local parameter override section.