RGBASpriteRender doesn't care about palettes
This commit is contained in:
@@ -64,8 +64,7 @@ namespace OpenRA.Graphics
|
|||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(g.Sprite,
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(g.Sprite,
|
||||||
new float2(
|
new float2(
|
||||||
(int)Math.Round(p.X + g.Offset.X, 0),
|
(int)Math.Round(p.X + g.Offset.X, 0),
|
||||||
p.Y + g.Offset.Y),
|
p.Y + g.Offset.Y));
|
||||||
"chrome");
|
|
||||||
p.X += g.Advance;
|
p.X += g.Advance;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -63,19 +63,36 @@ namespace OpenRA.Graphics
|
|||||||
|
|
||||||
public void DrawSprite(Sprite s, float2 location, string palette)
|
public void DrawSprite(Sprite s, float2 location, string palette)
|
||||||
{
|
{
|
||||||
DrawSprite(s, location, palette, s.size);
|
DrawSprite(s, location, Game.world.WorldRenderer.GetPaletteIndex(palette), s.size);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void DrawSprite(Sprite s, float2 location, string palette, float2 size)
|
public void DrawSprite(Sprite s, float2 location, string palette, float2 size)
|
||||||
|
{
|
||||||
|
DrawSprite(s, location, Game.world.WorldRenderer.GetPaletteIndex(palette), size);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void DrawSprite(Sprite s, float2 location, int paletteIndex, float2 size)
|
||||||
{
|
{
|
||||||
if (s.sheet != currentSheet)
|
if (s.sheet != currentSheet)
|
||||||
Flush();
|
Flush();
|
||||||
|
|
||||||
currentSheet = s.sheet;
|
currentSheet = s.sheet;
|
||||||
Util.FastCreateQuad(vertices, indices, location.ToInt2(), s, Game.world.WorldRenderer.GetPaletteIndex(palette), nv, ni, size);
|
Util.FastCreateQuad(vertices, indices, location.ToInt2(), s, paletteIndex, nv, ni, size);
|
||||||
nv += 4; ni += 6;
|
nv += 4; ni += 6;
|
||||||
if (++sprites >= spritesPerBatch)
|
if (++sprites >= spritesPerBatch)
|
||||||
Flush();
|
Flush();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// For RGBASpriteRenderer, which doesn't use palettes
|
||||||
|
public void DrawSprite(Sprite s, float2 location)
|
||||||
|
{
|
||||||
|
DrawSprite(s, location, 0, s.size);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void DrawSprite(Sprite s, float2 location, float2 size)
|
||||||
|
{
|
||||||
|
DrawSprite(s, location, 0, size);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -103,7 +103,6 @@ namespace OpenRA.Widgets
|
|||||||
|
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite( mapChooserSprite,
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite( mapChooserSprite,
|
||||||
new float2(MapRect.Location),
|
new float2(MapRect.Location),
|
||||||
"chrome",
|
|
||||||
new float2( MapRect.Size ) );
|
new float2( MapRect.Size ) );
|
||||||
|
|
||||||
Game.Renderer.RgbaSpriteRenderer.Flush();
|
Game.Renderer.RgbaSpriteRenderer.Flush();
|
||||||
@@ -123,7 +122,7 @@ namespace OpenRA.Widgets
|
|||||||
WidgetUtils.FillRectWithColor(new Rectangle(pos.X + offset.X + 2, pos.Y + offset.Y + 2, 12, 12), colors[p]);
|
WidgetUtils.FillRectWithColor(new Rectangle(pos.X + offset.X + 2, pos.Y + offset.Y + 2, 12, 12), colors[p]);
|
||||||
Game.Renderer.LineRenderer.Flush();
|
Game.Renderer.LineRenderer.Flush();
|
||||||
}
|
}
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(sprite, pos + offset, "chrome");
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(sprite, pos + offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
Game.Renderer.Flush();
|
Game.Renderer.Flush();
|
||||||
|
|||||||
@@ -91,10 +91,10 @@ namespace OpenRA.Widgets
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(videoSprite, videoOrigin, "chrome", videoSize);
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(videoSprite, videoOrigin, videoSize);
|
||||||
|
|
||||||
if (DrawOverlay)
|
if (DrawOverlay)
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(overlaySprite, videoOrigin, "chrome", videoSize);
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(overlaySprite, videoOrigin, videoSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool HandleKeyPressInner(KeyInput e)
|
public override bool HandleKeyPressInner(KeyInput e)
|
||||||
|
|||||||
@@ -24,12 +24,12 @@ namespace OpenRA.Widgets
|
|||||||
|
|
||||||
public static void DrawRGBA(Sprite s, float2 pos)
|
public static void DrawRGBA(Sprite s, float2 pos)
|
||||||
{
|
{
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(s,pos,"chrome");
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(s,pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void DrawSHP(Sprite s, float2 pos)
|
public static void DrawSHP(Sprite s, float2 pos)
|
||||||
{
|
{
|
||||||
Game.Renderer.WorldSpriteRenderer.DrawSprite(s,pos,"chrome");
|
Game.Renderer.WorldSpriteRenderer.DrawSprite(s,pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void DrawPanel(string collection, Rectangle Bounds)
|
public static void DrawPanel(string collection, Rectangle Bounds)
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
|
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(
|
||||||
ChromeProvider.GetImage(chromeCollection, "moneybin"),
|
ChromeProvider.GetImage(chromeCollection, "moneybin"),
|
||||||
new float2(Bounds.Left, 0), "chrome");
|
new float2(Bounds.Left, 0));
|
||||||
|
|
||||||
// Cash
|
// Cash
|
||||||
var cashDigits = (SplitOreAndCash ? playerResources.DisplayCash
|
var cashDigits = (SplitOreAndCash ? playerResources.DisplayCash
|
||||||
@@ -53,7 +53,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
{
|
{
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(
|
||||||
ChromeProvider.GetImage(digitCollection, (d - '0').ToString()),
|
ChromeProvider.GetImage(digitCollection, (d - '0').ToString()),
|
||||||
new float2(x, 6), "chrome");
|
new float2(x, 6));
|
||||||
x -= 14;
|
x -= 14;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -67,7 +67,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
{
|
{
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(
|
||||||
ChromeProvider.GetImage( digitCollection, (d - '0').ToString()),
|
ChromeProvider.GetImage( digitCollection, (d - '0').ToString()),
|
||||||
new float2(x, 6), "chrome");
|
new float2(x, 6));
|
||||||
x -= 14;
|
x -= 14;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
Game.Renderer.RegularFont.DrawText(GetLongDesc().Replace("\\n", "\n"), pos, Color.White);
|
Game.Renderer.RegularFont.DrawText(GetLongDesc().Replace("\\n", "\n"), pos, Color.White);
|
||||||
}
|
}
|
||||||
|
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(image, new int2(RenderBounds.X, RenderBounds.Y), "chrome");
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(image, new int2(RenderBounds.X, RenderBounds.Y));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
lastPowerDrainedPos = float2.Lerp(lastPowerDrainedPos.GetValueOrDefault(powerDrainedTemp), powerDrainedTemp, .3f);
|
lastPowerDrainedPos = float2.Lerp(lastPowerDrainedPos.GetValueOrDefault(powerDrainedTemp), powerDrainedTemp, .3f);
|
||||||
float2 powerDrainLevel = new float2(lastPowerDrainedPos.Value - indicator.size.X / 2, barStart.Y - 1);
|
float2 powerDrainLevel = new float2(lastPowerDrainedPos.Value - indicator.size.X / 2, barStart.Y - 1);
|
||||||
|
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(indicator, powerDrainLevel, "chrome");
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(indicator, powerDrainLevel);
|
||||||
Game.Renderer.RgbaSpriteRenderer.Flush();
|
Game.Renderer.RgbaSpriteRenderer.Flush();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -123,20 +123,20 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
{
|
{
|
||||||
radarCollection = "radar-" + world.LocalPlayer.Country.Race;
|
radarCollection = "radar-" + world.LocalPlayer.Country.Race;
|
||||||
|
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(ChromeProvider.GetImage(radarCollection, "left"), radarOrigin, "chrome");
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(ChromeProvider.GetImage(radarCollection, "left"), radarOrigin);
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(ChromeProvider.GetImage(radarCollection, "right"), radarOrigin + new float2(201, 0), "chrome");
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(ChromeProvider.GetImage(radarCollection, "right"), radarOrigin + new float2(201, 0));
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(ChromeProvider.GetImage(radarCollection, "bottom"), radarOrigin + new float2(0, 192), "chrome");
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(ChromeProvider.GetImage(radarCollection, "bottom"), radarOrigin + new float2(0, 192));
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(ChromeProvider.GetImage(radarCollection, "bg"), radarOrigin + new float2(9, 0), "chrome");
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(ChromeProvider.GetImage(radarCollection, "bg"), radarOrigin + new float2(9, 0));
|
||||||
|
|
||||||
// Don't draw the radar if the tray is moving
|
// Don't draw the radar if the tray is moving
|
||||||
if (radarAnimationFrame >= radarSlideAnimationLength)
|
if (radarAnimationFrame >= radarSlideAnimationLength)
|
||||||
{
|
{
|
||||||
var o = new float2(mapRect.Location.X, mapRect.Location.Y + world.Map.Height * previewScale * (1 - radarMinimapHeight)/2);
|
var o = new float2(mapRect.Location.X, mapRect.Location.Y + world.Map.Height * previewScale * (1 - radarMinimapHeight)/2);
|
||||||
var s = new float2(mapRect.Size.Width, mapRect.Size.Height*radarMinimapHeight);
|
var s = new float2(mapRect.Size.Width, mapRect.Size.Height*radarMinimapHeight);
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(terrainSprite, o, "chrome", s);
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(terrainSprite, o, s);
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(customTerrainSprite, o, "chrome", s);
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(customTerrainSprite, o, s);
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(actorSprite, o, "chrome", s);
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(actorSprite, o, s);
|
||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(shroudSprite, o, "chrome", s);
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(shroudSprite, o, s);
|
||||||
Game.Renderer.RgbaSpriteRenderer.Flush();
|
Game.Renderer.RgbaSpriteRenderer.Flush();
|
||||||
|
|
||||||
// Draw viewport rect
|
// Draw viewport rect
|
||||||
|
|||||||
Reference in New Issue
Block a user