An overview of a Sonolus level's lifecycle during preview.
Preparation runs once and only once before the start of a level, and prepares the runtime for preview.
Preparation consists of early optimization system, preprocessing system, late optimization system, and render system.
Early Optimization System
Early optimization system is responsible for optimizing nodes to improve code performance.
Preprocessing system is responsible for setting up or modifying blocks to be used throughout the preview.
Late Optimization System
Late optimization system is responsible for optimizing nodes to further improve code performance.
Rendering system is responsible for rendering of entities.