private void WaitFor(MyPlanetEnvironmentClipmapProxy proxy) { if (proxy.LodSet == -1) return; m_dependencies.Add(proxy); proxy.m_dependants.Add(this); }
internal void UnregisterOutgoingProxy(MyPlanetEnvironmentClipmapProxy proxy) { if (!OutgoingProxies.Remove(proxy.Id)) { Debug.Fail("OutgoingProxies proxy was already unregistered"); } }
internal void UnmarkProxyOutgoingProxy(MyPlanetEnvironmentClipmapProxy proxy) { if (!OutgoingProxies.Remove(proxy.Id)) { Debug.Fail("Proxy was already unmarked outgoing"); } Proxies.Add(proxy.Id, proxy); }
internal int QueuedLod(MyPlanetEnvironmentClipmapProxy sector) { MyPlanetEnvironmentComponent.Operation op; if (m_sectorOperations.TryGetValue(sector.Id, out op)) { return(op.LodToSet); } return(sector.Lod); }
internal void MarkProxyOutgoingProxy(MyPlanetEnvironmentClipmapProxy proxy) { if (!Proxies.Remove(proxy.Id)) { Debug.Fail("Proxy was already marked outgoing"); } Debug.Assert(!OutgoingProxies.ContainsKey(proxy.Id) || OutgoingProxies[proxy.Id] == proxy); OutgoingProxies[proxy.Id] = proxy; }
private void Notify(MyPlanetEnvironmentClipmapProxy proxy, bool clipmapUpdate) { if (m_dependencies.Count == 0) return; m_dependencies.Remove(proxy); if (m_dependencies.Count == 0 && m_closed) { EnqueueClose(clipmapUpdate); if (EnvironmentSector.IsClosed || EnvironmentSector.LodLevel == -1) { CloseCommit(clipmapUpdate); } } }
internal void EnqueueOperation(MyPlanetEnvironmentClipmapProxy proxy, int lod, bool close = false) { long id = proxy.Id; MyPlanetEnvironmentComponent.Operation op; if (m_sectorOperations.TryGetValue(id, out op)) { op.LodToSet = lod; op.ShouldClose = close; m_sectorOperations[id] = op; } else { op.LodToSet = lod; op.Proxy = proxy; op.ShouldClose = close; m_sectorOperations.Add(id, op); } }
internal void MarkProxyOutgoingProxy(MyPlanetEnvironmentClipmapProxy proxy) { if (!Proxies.Remove(proxy.Id)) Debug.Fail("Proxy was already marked outgoing"); Debug.Assert(!OutgoingProxies.ContainsKey(proxy.Id) || OutgoingProxies[proxy.Id] == proxy); OutgoingProxies[proxy.Id] = proxy; }
internal void RegisterProxy(MyPlanetEnvironmentClipmapProxy proxy) { Proxies.Add(proxy.Id, proxy); }
internal void EnqueueOperation(MyPlanetEnvironmentClipmapProxy proxy, int lod, bool close = false) { long id = proxy.Id; MyPlanetEnvironmentComponent.Operation op; if (m_sectorOperations.TryGetValue(id, out op)) { op.LodToSet = lod; op.ShouldClose = close; m_sectorOperations[id] = op; } else { op.LodToSet = lod; op.Proxy = proxy; op.ShouldClose = close; m_sectorOperations.Add(id, op); } }
internal int QueuedLod(MyPlanetEnvironmentClipmapProxy sector) { MyPlanetEnvironmentComponent.Operation op; if (m_sectorOperations.TryGetValue(sector.Id, out op)) return op.LodToSet; return sector.Lod; }
internal bool IsQueued(MyPlanetEnvironmentClipmapProxy sector) { return m_sectorOperations.ContainsKey(sector.Id); }
private void Notify(MyPlanetEnvironmentClipmapProxy proxy, bool clipmapUpdate) { if (m_dependencies.Count == 0) return; m_dependencies.Remove(proxy); if (m_dependencies.Count == 0 && m_closed) { EnqueueClose(clipmapUpdate); if (EnvironmentSector.IsClosed || EnvironmentSector.LodLevel == -1) { CloseCommit(clipmapUpdate); } } }
internal void RegisterProxy(MyPlanetEnvironmentClipmapProxy proxy) { Proxies.Add(proxy.Id, proxy); }
internal void UnmarkProxyOutgoingProxy(MyPlanetEnvironmentClipmapProxy proxy) { if (!OutgoingProxies.Remove(proxy.Id)) Debug.Fail("Proxy was already unmarked outgoing"); Proxies.Add(proxy.Id, proxy); }
private void WaitFor(MyPlanetEnvironmentClipmapProxy proxy) { if (proxy.LodSet == -1) return; m_dependencies.Add(proxy); proxy.m_dependants.Add(this); }
internal void UnregisterOutgoingProxy(MyPlanetEnvironmentClipmapProxy proxy) { if (!OutgoingProxies.Remove(proxy.Id)) Debug.Fail("OutgoingProxies proxy was already unregistered"); }
internal bool IsQueued(MyPlanetEnvironmentClipmapProxy sector) { return(m_sectorOperations.ContainsKey(sector.Id)); }