anchor.diff:      procedure RenderTerrainFieldBorders(aRect: TKMRect);
       procedure RenderTerrainObjects(aRect: TKMRect; AnimStep: Cardinal);
   
  +    procedure RenderSprites;
  +
       //Terrain overlay cursors rendering (incl. sprites highlighting)
  -    procedure RenderCursorHighlights;
  +    procedure RenderCursors;
  +    procedure RenderCursorBuildIcon(aLoc: TKMPoint; aID: Integer=479);
       procedure RenderCursorWireQuad(P: TKMPoint; Col: TColor4);
  -    procedure RenderCursorBuildIcon(aLoc: TKMPoint; aID: Integer=479);
       procedure RenderCursorWireHousePlan(P: TKMPoint; aHouseType: THouseType);
  -
     public
       constructor Create(aRender: TRender);
       destructor Destroy; override;
  -
  -    property RenderList: TRenderList read fRenderList;
  -
  -    procedure SetRotation(aH,aP,aB: Integer);
  -
  -    procedure Render;
   
       procedure AddProjectile(aProj: TProjectileType; aRenderPos, aTilePos: TKMPointF; aDir: TKMDirection; aFlight: Single);
       procedure AddHouseTablet(aHouse: THouseType; Loc: TKMPoint);
  
positive.code:   public
      constructor Create;
      destructor Destroy; override;
      procedure AddSprite(aRX: TRXType; aID: Word; pX,pY,gX,gY: Single; aTeam: Cardinal = $0; aAlphaStep: Single = -1); overload;
      procedure AddSprite(aRX: TRXType; aID: Word; pX,pY: Single; aTeam: Cardinal = $0; aAlphaStep: Single = -1); overload;
      property Stat_Sprites: Integer read fStat_Sprites;
      property Stat_Sprites2: Integer read fStat_Sprites2;
      procedure Render;
    end;
  
  
negative.code:     glLineWidth(fGame.Viewport.Zoom * 2);
      glPointSize(fGame.Viewport.Zoom * 5);
  
      //Background
      RenderTerrain;
  
      //Sprites are added by Terrain/Players/Projectiles, then sorted by position
      RenderSprites;
  
      //Cursor overlays (including wire plans)
      RenderCursors;
  
      if DISPLAY_SOUNDS then fSoundLib.Paint;
    glPopAttrib;
  end;
  
  
  procedure TRenderPool.RenderTerrainTiles(aRect: TKMRect; AnimStep: Integer);
  