public override void Read(AssetReader reader) { base.Read(reader); if (IsReadPreloadTable(reader.Version)) { m_preloadTable = reader.ReadArray <PPtr <Object> >(); } m_container = reader.ReadStringKVPArray <AssetBundles.AssetInfo>(); MainAsset.Read(reader); if (IsReadScriptCampatibility(reader.Version)) { m_scriptCampatibility = reader.ReadArray <AssetBundleScriptInfo>(); } if (IsReadClassCampatibility(reader.Version)) { m_classCampatibility = reader.ReadInt32KVPUInt32Array(); } if (IsReadClassVersionMap(reader.Version)) { m_classVersionMap = new Dictionary <int, int>(); m_classVersionMap.Read(reader); } if (IsReadRuntimeCompatibility(reader.Version)) { RuntimeCompatibility = reader.ReadUInt32(); } if (IsReadAssetBundleName(reader.Version)) { AssetBundleName = reader.ReadString(); m_dependencies = reader.ReadStringArray(); } if (IsReadIsStreamedSceneAssetBundle(reader.Version)) { IsStreamedSceneAssetBundle = reader.ReadBoolean(); reader.AlignStream(AlignType.Align4); } if (IsReadExplicitDataLayout(reader.Version)) { ExplicitDataLayout = reader.ReadInt32(); } if (IsReadPathFlags(reader.Version)) { PathFlags = reader.ReadInt32(); } if (IsReadSceneHashes(reader.Version)) { m_sceneHashes = new Dictionary <string, string>(); m_sceneHashes.Read(reader); } }