public DataProvider(EventHub hub, MemoryTracker memTracker, ISyncModelProvider client, IHashProvider hashProvider, DataOutput <SyncMesh> syncMeshOutput, DataOutput <SyncMaterial> syncMaterialOutput, DataOutput <SyncTexture> syncTextureOutput, DataOutput <StreamInstanceData> instanceDataOutput) { m_Hub = hub; m_MemTracker = memTracker; m_Client = client; m_HashProvider = hashProvider; m_SyncMaterialOutput = syncMaterialOutput; m_SyncMeshOutput = syncMeshOutput; m_SyncTextureOutput = syncTextureOutput; m_InstanceDataOutput = instanceDataOutput; m_DownloadRequests = new ConcurrentQueue <IStream>(); m_DownloadedInstances = new ConcurrentQueue <DownloadResult>(); m_DownloadedModels = new ConcurrentQueue <ObjectDownloadResult>(); m_StreamCaches = new Dictionary <StreamKey, StreamCache>(); m_InstanceCache = new Dictionary <StreamKey, StreamInstanceData>(); m_AddedModels = new HashSet <StreamKey>(); m_HubHandle = m_Hub.Subscribe <MemoryTrackerCacheCreatedEvent <Mesh> >(e => m_MeshesHandle = e.handle); }
public override void OnPipelineInitialized() { m_GlobalBounds.size = Vector3.zero; m_ErrorHandle = m_Hub.Subscribe <StreamingErrorEvent>(OnStreamingError); }