CameraRootのOnClearが呼ばれるのは、AdvEngineのOnClearSubメソッドを呼んだときで、ゲームの開始、終了、ロード時などのクリア処理で呼ばれます。
「宴」のデフォルトでは、AdvEngineStarterのisLoadOnAwakeをオンにしていたときに、Awake時にAdvEngineの起動処理を呼ぶのでその時がもっとも早いタイミングになります。
ただ、AdvEngineStarterの実行順は10になっていて、CameraRootだけではなく、通常のスクリプトよりも遅い順番の設定になっています。
なので、考えられる原因としては、以下のいずれかの状態だと思われます。
・CameraRootと同じかそれよりも早い「Script Execution Order」が設定されているスクリプトから、直接・または間接的にAdvEngineの起動処理を行っている
(Awakeと同時にOnEnableも呼ばれるので、早い実行順を持つスクリプトのOnEnableから呼び出している可能性も考えられます。)
→対応
スクリプトの実行順の問題であれば、可能であればCameraRootよりも遅い段階で呼ばれるように、呼び出し側のスクリプトの実行順を調整してください。
調整が難しいようであれば、Awake時に呼び出さず、Start等の後のタイミングで呼ばれるイベント関数から呼び出すようにしてください。
CameraRootなど宴のほうのScriptの
「Script Execution Order」 を変更することでも対応自体は可能ですが、
この順番は各スクリプトのmetaファイルに記録されるため、変更してしまうと宴のアップデートをしたときに上書きされて巻き戻ってしまうため再設定が必要になります。
・Awakeよりも早い段階で呼ぶことのできる処理(RuntimeInitializeOnLoadMethodなど)で起動処理を行っている。
→対応
このタイミングでは呼び出さないでください。
・Cameraがシーンロード時には非アクティブで、OnClearが呼ばれる段階ではAwakeがまだ呼ばれていない
→対応
最初からアクティブにしておくか、宴の起動処理を呼び出すプログラム内で起動前にアクティブになるようにプログラムを追記してください。