Is this OK performance-wise?

If you do this in a single actor, it’s more than OK, especially that you gated it with a boolean. If you used a widget component in Screen Space mode, you would not need to do it at all - but Screen Space may be undesired for gameplay / user experience reasons, ofc.

Note that you can simply enable / disable Tick itself instead of using an additional variable and a Branch. If we can’t see the widget - stop ticking.


Another good question here is - what are we really doing? It seems, at a glance, that you want to have an interact widget in every object. Would it make more sense to have 1 widget only in the player instead and show / hide that instead?

The same goes for the sphere overlap, rather than having 500 objects, each with a sphere overlap, have only 1 sphere overlap in the player. It’s the player who is the instigator of most in-game actions after all.

Consider whether the above is feasible in your case.

1 Like