Tension Weights is a set of Blender Geometry Nodes trees that achieve a fast and dynamic Tension Map effect. The setup is provided for free/pay-what-you-want on Gumroad by OtherRealms.
QuickStart Guide
The Gumroad product gives you access to an example blend file which contains the necessary Geometry Nodes trees.
Here is how to apply them to your own object.
Prepare your deforming object in a new scene. Any deforming modifier can be used, e.g. an Armature modifier. To get acquainted with the workflow, you can use a subdivided cylinder with a Simple Deform modifier set to “Bend” mode.
Append the node trees from the Gumroad file into your scene. Go to File > Append, navigate to the example file from Gumroad and double-click it to enter its data. Enter the NodeTree folder and select both entries (TensionA and TensionB), then click Append.
Now add two new Geometry Nodes modifiers. Place one above your deforming modifier(s) and the second one below it/them.
Expand the Output Attributes of the TensionB modifier and give them appropriate attribute names. Here are the ones suggested by the tool developer, although you can also use custom names.
- Color: tension (color attribute)
- Stretch float: stretch (vertex group)
- Compression float: compression (vertex group)
In Properties > Data create two Vertex Groups and name them stretch and compression (or whichever custom names you used in Output attributes).
Also create a Color Attribute “tension” (or your custom name) and set it to Domain: Face Corner and Data Type: Byte Color.
With this, the basic setup is complete. To test it:
- deform the mesh (e.g. pose the Armature, or tweak the Angle of the Simple Deform(Bend) modifier)
- switch to Weight Paint mode and select either the stretch or compression vertex group
A vertex group color should be visible in the stretched or compressed parts of the mesh. If the vertex color is weak, increase the Multiply value of the TensionB modifier.
You can now use these vertex weights in any part of Blender that accepts a Vertex Group. For example, a Displace modifier. To get access to the Color attribute, read below.
To get access to the Vertex Color (tension) attribute, create a new material or go to the shader tree of the existing one. Press Shift + A > Input > Attributes > tension (or your custom Color name). This attribute contains the tension information as a Red and Green map.
To split tension and compression, add a Separate Color node and connect the tension attribute’s Color to it. The Red output is Compression and the Green output is Stretching.