internal void Init(AssetCache assetCache, LoadAssetCallbackSet callbackSet, object context) { if (m_SerialId > 0) { throw new InvalidOperationException("Oops, I'm not reset."); } m_AssetCache = assetCache ?? throw new ArgumentNullException(nameof(assetCache), "Oops!"); m_SerialId = NextSerialId(); m_AssetCache.IncreaseRetainCount(); CallbackSet = callbackSet; Context = context; m_AssetCache.AddAccessor(this); }