Search Issue Tracker

By Design

Fixed in 2019.3.X



Found in




Issue ID




Parent class Awake method is not called when Reload Scene setting is disabled and child class has [ExecuteInEditMode] attribute



How to reproduce:
1. Open the user-submitted project
2. Open the Sample Scene
3. Enter Play mode

Expected results: "Awake was called: True" is printed
Actual results: "Awake was called: False" is printed

Reproducible with: 2019.3.0b9, 2019.3.0f4, 2020.1.0a11, 2020.1.0a18

Not reproducible with: 2019.3.0b8, 2020.1.0a9

The issue is not reproducible on Unity 2019.2 and below, because Enter Play Mode Settings functionality is not available.

  1. Resolution Note (2020.1.X):

    This is an intentional change and by design.

    See "Important differences due to skipping Scene Reload" in this thread:

    "ExecuteInEditMode/ExecuteAlways scripts are not destroyed/awaken - no OnDestroy/Awake calls for those.
    Watch out for Awake/OnEnable methods which check EditorApplication.isPlaying property - Awake is not called and OnEnable is called only when EditorApplication.isPlaying is already true on Play Mode change."

    For any further discussion regarding this issue, we recommend that you discuss it in the thread:

    The issue has been fixed in Unity 2020.1.0a23 and above

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.