Alright, after you guys’ help and doing some fiddling around, I ended up with this:
I have this setup in my game instance (make sure that the color variables are LINEAR color, not just color):
And this setup in my Player BP (connected to Event BeginPlay):
And then I have the parameter “PlayerColor” on a material that is the parent to all of the relevant materials. I should note that I added an extra material slot on the character mesh for the parent material. It doesn’t connect to anything on the mesh, it’s just there so the BP can access it.
I should note that I did NOT make a dynamic material in this case because I found this in the forums: Issue with Material Instances (both Constant and Dynamic)
It seems like you don’t need to make a Dynamic Material Instance because UE does it for you anyway? That’s what I got from this post at least. In the end though, this works like a charm! Thanks for the help guys.