Trying to make a Color Selector that the player can use to change the color of objects in-game

Hi, so I’ve been following along with this tutorial: on how to make a color selector.

The issue I’m having is that the person in the video is trying to change the color of a playable character, where as I am trying to change the color of a chair. I switched out a few of the character specific nodes to ones that I hoped would work with my actor blueprint, but those are the ones causing compiling errors, and I’m not sure how to fix it.

Here are some screenshots of the Chair blueprint, as well as the Widget Blueprint, and the Chair’s Material blueprint.

Ideally I would like to connect the color picker to a collision box, so that when the player gets close to the chair, a pop up will appear telling them they can press C to open the color picker. Then, when they press C the color picker pops up and allows them to change the color of the chair interactively.

Any suggestions/tips/answers would be much appreciated. I’m pretty new to blueprints though so please speak slowly.

Thank you!

hi Jade , just saw the some video and want the same thing , can u share any result u reached ??

same situation here , any body can help with this ?

Hey guys, its actually pretty straight forward.

As you can see in the video, they use the Controller and find its mesh then access its material. In your case, you want to provide a reference to another actor in your color picker widget and access that actor’s mesh/material.

Since you can’t directly link an actor in the scene to a UI widget (to my knowledge, I am a beginner too), what I did was circumvent this by storing the reference in my Level Blueprint and feed it to the widget when I start the widget with the “BeginPlay” exec node.

In your Level blueprint, make a variable using the type of the actor/object you wanna change the color of and change the default value to the object in the scene:

Create the same variable in your widget colorpicker and SET it through the level blueprint after you called CreateWidget on the colorpicker widget, using the widget as the target.

Finally use the GET node of the variable in your widget’s graph, get the mesh and connect it to the target input of the “set vector parameter value on material” node