Why is it not possible to call a function in another Blueprint?

Through a variable-reference to a Blueprint, I can get the value of a variable from another Blueprint, but why is it impossible to call a function in another Blueprint?
The function is working if it is called from its own Blueprint

The problem isn’t the function, it’s the input (G). Make sure you have input enabled on the actor: Enable Input | Unreal Engine Documentation

This is a screenshot from Player Controller Blueprint. Print, which after the node of the call to the function Draw- is working

It should be working then.
Can you show what’s inside the Draw function? And can you show where you call it in the “BP For Canvas” blueprint? Also, make sure the Draw function’s Access Specifier is set to public so that any other blueprint can call it.

You know, this is not any project, it’s just all the stages of studying and understanding the logic of the dispatchers, Cast and references to variables. I recently started learning UE4.
So I can’t understand, everything works with Cast and Bind. And by reference to a variable, the function stubbornly does not want to be called. So I’m trying to understand why.

The function simply writes text and displays a square in the center of the canvas. (just a test)

When I press G, this error comes out

Having a variable of a type does not mean having the object itself. You need to fill the variable with the created object. On which site do you create the canvas actor?

Bp canvas refrence - show how it is created.

maybe this is the problem.
why should I specify an object with an eyedropper, if I have already specially selected this object as a reference.
besides, I cannot pick actor from the PlayerController to an object at the level with an eyedropper


Here my little English is giving up :slight_smile:
Didn’t quite understand your question

eye drop only work when two objects are already on the scene because both are already unique actors
in the begin play of bp canvas you can access the player controller and set the variable using self


It worked!! Thanks for the knowledge!)
Very useful information, I did not know about this

Many thanks :slightly_smiling_face:

Thanks to everyone who responded

1 Like