internal void Render(int renderLevel) { //create renderer if (unitRenderer == null) { unitRenderer = PlanetGenerator.CreateRenderer(); string name = LocalIndex.ToString(); Unit tmp = Parent; while (tmp != null && tmp.Parent != null) { name = tmp.LocalIndex + " - " + name; tmp = tmp.Parent; } unitRenderer.name = name; } //generate noise now if (CalcLevel == -1) { Surface.CreateTerrainSurfacePoints(cfg, ZoomLevel); } else if (PlanetConfig.PointLog - CalcLevel < renderLevel) { Surface.CreateTerrainSurfacePoints(cfg, ZoomLevel); } //render if (unitRenderer.RenderLevel == -1) { unitRenderer.Render(this, renderLevel); } else if (renderLevel > unitRenderer.RenderLevel) { unitRenderer.Render(this, renderLevel); } }
public string ToShortString() { return(Reference.ToShortString() + (LocalIndex != null ? "#" + LocalIndex.ToString() : "")); }