Easy Chapter Generator
EnglishEspañol

Understand where work occurs

The core ordered flow advances on discrete lifecycle transitions. Most Manager and Chapter work is proportional to the configured Chapters or Objectives when selecting, hydrating, clearing, validating, or finding an exact ID. It does not run a global per-frame progression scan.

Some included detectors intentionally poll or receive physics every frame while incomplete: DestructionObjective scans its target array, ObjectPlacementObjective scans placement targets, TimedObjective updates a countdown, and trigger/arrival components receive Unity physics callbacks. Their cost scales with configured targets and active scene objects.

Likely project-specific hotspots

AreaPotential costMitigation
Large destruction/placement arraysLinear scan each Update until completeUse small task-local sets or an event-driven custom Objective
Verbose diagnosticsString allocation and Console overheadDisable Verbose Logging and Demo observers in release
Material changesrenderer.material can instantiate materialsPlan project material lifecycle and avoid high-frequency Detonator use
Scene Objective reset discoveryFindObjectsByType during Chapter reset/step-backUse at deliberate transitions, not every frame
Custom storeBackend latency on main threadBuffer bounded operations; avoid unbounded network work
UnityEventsReceiver work, not progression dispatch itselfProfile project callbacks independently

Profile the complete gameplay path

  1. 1
    Create a Development build or use the Unity Profiler with representative content counts.
  2. 2
    Measure an idle Active Objective, its actual detector signal, accepted completion, and Chapter completion separately.
  3. 3
    Inspect scripts invoked by lifecycle UnityEvents and adapters; their work may dominate the product call.
  4. 4
    Repeat persistence hydration and ClearProgress with realistic Chapters and profile backend time.
  5. 5
    Disable diagnostics and compare release-like behavior.

Performance claims and limits

No fixed frame-time claim can describe a buyer's scene, event receivers, physics setup, or storage backend. The useful contract is algorithmic and observable: one current ordered position, bounded configured arrays, exact-key storage, and no hidden third-party update loop. Profile the project systems surrounding those boundaries.

For a detector with an unusually large or complex condition, derive from Objective and use an authoritative event rather than extending an Update scan.