// 主线程中执行 // 任务完成后处理 public override void EndDo() { if (m_nFileSize <= 0) { Log.Error("{0}不存在,请检查资源!", m_strResName); m_eState = IResource.EResourceState.EResourceState_Complete; OnFinish(); return; } // 同步创建assetBundle AssetBundle ab = null; try { #if (UNITY_5) ab = AssetBundle.LoadFromMemory(m_FileBuff); #else ab = AssetBundle.CreateFromMemoryImmediate(m_FileBuff); #endif } catch (System.Exception ex) { Log.Error("加载资源出错:{0}", ex.Message); } m_eState = IResource.EResourceState.EResourceState_Loaded; if (ab == null) { Log.Error("CreateFromMemoryImmediate失败:{0}", m_strResName); OnFinish(); return; } // 资源加载完成处理 OnLoaded(ab); ab.Unload(false); ab = null; m_FileBuff = null; OnFinish(); }
/// <summary> /// 加载完毕处理 /// </summary> /// <returns></returns> virtual public void OnLoaded(AssetBundle ab) { m_eState = EResourceState.EResourceState_Complete; }