- SheetSize is configurable. - TerrainRenderer gets to load it's sprites first, meaning we need one less texture.
This commit is contained in:
@@ -60,6 +60,9 @@ namespace OpenRa.Game
|
||||
|
||||
Rules.Map.InitOreDensity();
|
||||
|
||||
controller = new Controller();
|
||||
worldRenderer = new WorldRenderer( renderer );
|
||||
|
||||
viewport = new Viewport( clientSize, Rules.Map.Offset, Rules.Map.Offset + Rules.Map.Size, renderer );
|
||||
|
||||
world = new World();
|
||||
@@ -74,9 +77,6 @@ namespace OpenRa.Game
|
||||
LoadMapBuildings(Rules.AllRules);
|
||||
LoadMapUnits(Rules.AllRules);
|
||||
|
||||
controller = new Controller();
|
||||
worldRenderer = new WorldRenderer(renderer);
|
||||
|
||||
PathFinder = new PathFinder(Rules.Map);
|
||||
|
||||
soundEngine = new ISoundEngine();
|
||||
|
||||
@@ -9,6 +9,8 @@ namespace OpenRa.Game.Graphics
|
||||
{
|
||||
class Renderer
|
||||
{
|
||||
internal static int SheetSize;
|
||||
|
||||
readonly GraphicsDevice device;
|
||||
Texture[] palettes;
|
||||
public Shader SpriteShader { get; private set; } /* note: shared shader params */
|
||||
|
||||
@@ -27,11 +27,13 @@ namespace OpenRa.Game.Graphics
|
||||
|
||||
public static void ForceNewSheet()
|
||||
{
|
||||
if( p == Point.Empty )
|
||||
return;
|
||||
current = NewSheet();
|
||||
channel = NextChannel(null);
|
||||
}
|
||||
|
||||
static Sheet NewSheet() { return new Sheet(renderer, new Size(512, 512)); }
|
||||
static Sheet NewSheet() { return new Sheet( renderer, new Size( Renderer.SheetSize, Renderer.SheetSize ) ); }
|
||||
|
||||
static Renderer renderer;
|
||||
static Sheet current = null;
|
||||
|
||||
@@ -20,7 +20,6 @@ namespace OpenRa.Game.Graphics
|
||||
{
|
||||
this.renderer = renderer;
|
||||
this.map = map;
|
||||
overlayRenderer = new OverlayRenderer( renderer, map );
|
||||
|
||||
Size tileSize = new Size( Game.CellSize, Game.CellSize );
|
||||
|
||||
@@ -50,6 +49,8 @@ namespace OpenRa.Game.Graphics
|
||||
|
||||
indexBuffer = new IndexBuffer( renderer.Device, indices.Length );
|
||||
indexBuffer.SetData( indices );
|
||||
|
||||
overlayRenderer = new OverlayRenderer( renderer, map );
|
||||
}
|
||||
|
||||
public void Draw( Viewport viewport )
|
||||
|
||||
@@ -57,6 +57,8 @@ namespace OpenRa.Game
|
||||
Game.NetworkHost = settings.GetValue( "host", "" );
|
||||
Game.NetworkPort = int.Parse( settings.GetValue( "port", "0" ) );
|
||||
|
||||
Renderer.SheetSize = int.Parse( settings.GetValue( "sheetsize", "512" ) );
|
||||
|
||||
Game.Initialize(settings.GetValue("map", "scm12ea.ini"), renderer, new int2(ClientSize),
|
||||
settings.GetValue("player", 1));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user