diff --git a/OpenRA.Game/Game.cs b/OpenRA.Game/Game.cs index ff4e9512cb..04b7d6df49 100755 --- a/OpenRA.Game/Game.cs +++ b/OpenRA.Game/Game.cs @@ -143,7 +143,6 @@ namespace OpenRA }); world.Tick(); - worldRenderer.Tick(); PerfHistory.Tick(); } diff --git a/OpenRA.Game/Graphics/WorldRenderer.cs b/OpenRA.Game/Graphics/WorldRenderer.cs index f516180c2a..195886a08e 100644 --- a/OpenRA.Game/Graphics/WorldRenderer.cs +++ b/OpenRA.Game/Graphics/WorldRenderer.cs @@ -70,8 +70,7 @@ namespace OpenRA.Graphics return new Rectangle(0, 0, Game.viewport.Width, Game.viewport.Height); } - Renderable[] worldSprites = { }; - public void Tick() + IEnumerable SpritesToRender() { var bounds = GetBoundsRect(); var comparer = new SpriteComparer(); @@ -87,7 +86,7 @@ namespace OpenRA.Graphics var effects = world.Effects.SelectMany(e => e.Render()); - worldSprites = renderables.Concat(effects).ToArray(); + return renderables.Concat(effects); } public void Draw() @@ -101,7 +100,7 @@ namespace OpenRA.Graphics if (world.OrderGenerator != null) world.OrderGenerator.RenderBeforeWorld(this, world); - foreach( var image in worldSprites ) + foreach( var image in SpritesToRender() ) image.Sprite.DrawAt( image.Pos, this.GetPaletteIndex( image.Palette ) ); uiOverlay.Draw(this, world);