1. Download

Download and import the unity package.

2. Optimize Your Scripts

To open the Optimizer, select Window > ThreadHarmonizer > Optimizer from the toolbar. The Optimizer displays all scripts in the project that inherit from MonoBehaviour. can be enabled or disabled for optimization directly from this window.

The final step is to update your scripts so they can support multithreaded execution.

Click `Optimize` and confirm the action in the popup. ThreadHarmonizer will analyze the selected files and only rewrite scripts that may benefit from parallel execution. Scripts that only perform main-thread work are skipped automatically.

After optimization, your scripts will no longer inherit directly from `MonoBehaviour`. Instead, they will inherit from `MonoBehaviourMultithreaded`.

This does not remove or replace existing Unity functionality. Your script can still use the normal Unity lifecycle methods, such as `Update`, `Start`, or `OnEnable`. The new base class only adds ThreadHarmonizer-specific functionality, which is documented separately.

ThreadHarmonizer creates a snapshot whenever files are changed by the optimizer. If something does not work as expected, you can immediately restore the last generated version.

When you use `Restore`, ThreadHarmonizer first creates a new snapshot of the current files before restoring the previous state. This allows you to return to the restored-from version again if needed.

Important: only files changed by ThreadHarmonizer are included in these snapshots. If you manually edit scripts between optimization and restore, those manual changes may not be part of the snapshot and can be lost during the restore process.

For this reason, it is recommended to save or commit important manual changes before using `Restore`.