update: real device work like @fogsight talk, all asset have a reference to a scriptableObject will start loading when you load a scene have a reference to this scriptableObject. it's unload when you load a scene with no reference to scriptableObject. So feel free to do anything with scriptableObject [Origin] I plan to make a PoolSystem base on ScriptableObject but im not sure when scriptable object is loading, anyone know about it ? in unity document scriptable call OnEnable when it's load, but on editor it's call alway when me edit and recomplie script, on Play Mode it's alway call OnDisable first and call OnEnable after, it's so confusing. first scene menu is no ref to scriptableObject, i mean all ref asset only loading on scene ref to it loading or on start program ??