Variant Manager - Change properties depending on selected option

Hi everyone.

Basically I’m using Variant Manager to change the meshes from an fan. In this example I have 2 types of blades and 2 types of bodies, with different heights where the blades were supposed to go. For example, I have the grey blades in the small body and I want to change the body of the fan for the big one. Then the grey blade’s location should also change so it can match the correct location where it was supposed to be, based on the body option. (video attached)

My question is, is it possible to change the properties from a variant depending on which option is selected? Like, if the big body is selected, the grey blade should be higher. Seems that using dependencies wouldn’t work because I would have to create a lot of different combinations, which would create a lot of thumbnails an options, correct?

1 Like

Hi there,

Instead of using dependencies which can lead to many combinations, you can use sockets for each fan part. By attaching the blades to sockets on the body, you can ensure that the blades automatically adjust their position based on the body selected. This way, when you switch between different bodies, the blades will always align correctly without needing multiple variants for each combination.

You can set up sockets in the Static Mesh Editor for each body and then attach the blades to these sockets. This simplifies the process and keeps the Variant Manager options more manageable.

Hope this helps! If you have any more questions, feel free to ask.

Whenever you click that button just also have it change the Local Location there’s a node for that there’s a select node as well that may come in handy for selecting the right location based off some variable

Hi guys, thanks for the replies.

@SpudMcKenzie I think you’re right. The sockets would be the best approach. I did what you said, putting sockets in both bodies and parenting the blade to the socket. On the Actor editor whenever I switched the body the blade would stick to it alright, but as soon as I tried to change the static mesh via blueprint I got the same problem, with the body changing but the blade still at the same location. (demonstration below)

For the blueprint to change the body mesh I use a simple SetStaticMesh targeting my actor to swap for the selected body from an array.

What could be the reason for the blade not updating its location?

Thank you again for the help!