Blueprint Args Vs. C++ Args

I’m curious about this discrepancy between BP and the sources it uses. Here is the Blueprint for the class UTextRenderComponent…

and here is the class itself…

41859-set_text_vs.png

The thing that strikes me as odd is that the Blueprint takes two arguments while the function only takes one. What is going on here?

The target is there to provide the object reference from which the SetText function will be run. e.g. When calling SetText from C++, you will invoke the method on an object like so:

MyTextRenderComponent.SetText( matInterfaceValue );

Ahh, I figured it out. “Target” sets the environment for the function call. Think of each object in the game having it’s own command line, the “Target” would be which command line you’re issuing the SetText command from. Or in pseudo C++…

RenderComponentObject* Target;
Target = &SomeTextRenderComponentObject;
Target->SetText( "Remote Client" );

Small update to the questoin, I changed the SS of the SetTextMaterial function to SetText, which was what I intended in the first place. About the answer, I came to the same conclusion you did, I just worded it differently.

Updated the text of my answer to reflect your updated function name in your screenshots.