Download

What is the difference between 'activate' and 'set component tick enabled' on blueprint components?

When deriving a scene component blueprint, the class defaults lets you set “auto activate.” If you put it on false, the component still begins ticking when play starts. Querying ‘is activated’ returns false. If you call deactivate, it doesn’t stop ticking. But if you call activate and then immediately call deactivate, it does stop ticking.

Seems there is also a “start with ticking enabled” checkbox, and if you turn that off and turn off auto activate, it won’t tick on begin play.

I know that activate is used on audio components and stuff, which might work outside of the tick system.

Can anyone explain how ‘activate’ is meant to work and how it interacts with and is related to ticking? Seems activating always enables ticking, but deactivating only turns off ticking if it was previously activated. What is the point of this behavior? When would you want something deactivated, but ticking at start, but then have some but not all deactivations after that turn off ticking? It’s just a bit confusing and I couldn’t find any docs on this.

Ultimately, looking at the code I can see some of the difference; I’m more interested in the intent and rationale.

Thanks

I am curious about your findings within the code. I am currently trying to make a simple component that would be ticking only when I specifically enable it based on custom event. Generally it works, but even with “Start with tick enabled” to false and “Auto activate” to false, it always starts ticking. I’ve posted my question here: Start with tick enabled not working for components? - UE4 AnswerHub