Introduce IFinalizedRenderable.ScreenBounds.

This commit is contained in:
Paul Chote
2015-02-10 14:26:44 +00:00
parent c55d723fb4
commit db1a27b071
11 changed files with 60 additions and 0 deletions

View File

@@ -33,6 +33,7 @@ namespace OpenRA.Graphics
{
void Render(WorldRenderer wr);
void RenderDebugGeometry(WorldRenderer wr);
Rectangle ScreenBounds(WorldRenderer wr);
}
public struct SpriteRenderable : IRenderable, IFinalizedRenderable
@@ -85,5 +86,11 @@ namespace OpenRA.Graphics
var offset = ScreenPosition(wr) + sprite.Offset;
Game.Renderer.WorldLineRenderer.DrawRect(offset, offset + sprite.Size, Color.Red);
}
public Rectangle ScreenBounds(WorldRenderer wr)
{
var offset = ScreenPosition(wr) + sprite.Offset;
return new Rectangle((int)offset.X, (int)offset.Y, (int)sprite.Size.X, (int)sprite.Size.Y);
}
}
}

View File

@@ -153,5 +153,6 @@ namespace OpenRA.Graphics
}
public void RenderDebugGeometry(WorldRenderer wr) { }
public Rectangle ScreenBounds(WorldRenderer wr) { return Rectangle.Empty; }
}
}

View File

@@ -67,5 +67,6 @@ namespace OpenRA.Graphics
}
public void RenderDebugGeometry(WorldRenderer wr) { }
public Rectangle ScreenBounds(WorldRenderer wr) { return Rectangle.Empty; }
}
}

View File

@@ -56,5 +56,6 @@ namespace OpenRA.Graphics
}
public void RenderDebugGeometry(WorldRenderer wr) { }
public Rectangle ScreenBounds(WorldRenderer wr) { return Rectangle.Empty; }
}
}

View File

@@ -55,5 +55,11 @@ namespace OpenRA.Graphics
var offset = screenPos + sprite.Offset;
Game.Renderer.LineRenderer.DrawRect(offset, offset + sprite.Size, Color.Red);
}
public Rectangle ScreenBounds(WorldRenderer wr)
{
var offset = screenPos + sprite.Offset;
return new Rectangle((int)offset.X, (int)offset.Y, (int)sprite.Size.X, (int)sprite.Size.Y);
}
}
}