Composition of Blueprints

We are developing a game which has interactable in-game objects (for example doors). In order to signal that certain objects are interactable we want to frame the objects with an outline. As of now we have everything running with a self-written shader.

Our problem though is that we are not entirely sure how to apply the shader to objects that are interactable without using tags and inheritance. Inheritance is not an option since it eliminates the ability to include interactable and non-interactable objects in one hierarchy. We do not want to use tags since they are confusing.

The current solution is that every blueprint of an interactable object spawns a new blueprint(Usable_Actor) and holds it in a variable. Then the necessary variables of the instance of Usable_Actor are set to enable the rendering of the outline. We deem this to be a rather dirty solution to the problem.

Therefore the question is if there is a better way to compose several blueprints (like prefabs in unity) ?

Some pictures for reference:

Our Usable_Actor Blueprint:

Adding an instance of Usable_Actor to an usable actor:

The method which creates an instance of Usable_Actor:

I found the answer: You have to use child actors.

1 Like