image.png

In Flow Core, the role of Flow Core Process can be summarized in one sentence: it serves as the runtime host for a Flow Graph within the scene, and acts as both the entry point and the lifecycle owner of the graph during execution. For details, please refer to Flow Graph.

More specifically, Flow Core Process is responsible for five core tasks:

1. Hosting the graph and creating its runtime instance

Flow Core Process holds the graphAsset. During Awake, it first rebuilds the Blackboard bindings and then calls BuildRuntime(). That method executes graphAsset.CreateRuntime(_blackboards), which turns the graph asset into a Flow Graph Runtime instance dedicated to that specific object.

2. Binding Local, Scene, and Global Blackboards

It maintains an internal Flow Blackboard Collection that gathers all required Local, Scene, and Global Blackboards for the current object, so nodes can resolve data from them at runtime.

3. Providing execution entry points and starting execution chains

Whether execution is triggered by external code, Unity lifecycle events, or the signal system, it ultimately goes through Flow Core Process. It exposes several runtime entry APIs:

At their core, all of these APIs drive _runtime to begin executing a chain.

4. Owning and managing the runtime lifecycle

Flow Core Process is responsible for creating, stopping, and disposing of the runtime:

This means Flow Core Process is not just a component that references a graph. It is the lifecycle manager of the graph runtime.