I’d like to be able to modify a material based on the rotation of certain bones from inside a blueprint, is that at all possible?
Hi Hyperloop -
Yes you should be able to use Blueprints and a Dynamic Material Instance to “Get Socket Rotation” and then “Break Rot” which will give you three float values which can be used to set Scalar paramaters in the Dyanmic Material Instance.
Here is a breakdown of what the Material would look like:
Here is what the Construction Script would be for your object (where the dynamic material is applied):
And finally here is the Scalar Value being set:
This is just the bare functionality. You would probably want to place some clamps in either the Blueprint or (I would) Material to control the extreme input cases. You will also need to determine which rotation you are interested in pulling from or work out the math to create an absolute local-based float angle from two bones.
Thank You
Eric Ketchum