public RenderLayer(TiledRenderer renderer, string layer) { this.renderer = renderer; this.map = renderer.map; this.layer = map.Layers[layer]; Build(); }
public static void Main(string[] args) { var window = new RenderWindow(new SFML.Window.VideoMode(640, 480), "Window"); var map = new TmxMap("map.tmx"); var mapRenderer = new TiledRenderer(map); bool isRunning = true; window.Closed += (object sender, EventArgs evt) => isRunning = false; while (isRunning) { window.DispatchEvents(); window.Clear(); mapRenderer.UpdateAnimations(); mapRenderer.Draw(window); window.Display(); } }
/// <summary> /// Render the effect to the target surface - we render everything here and ignore tiling /// </summary> /// <param name="renderRects">Tiles to render (ignored here)</param> /// <param name="startIndex">Start index into rects (ignored here)</param> /// <param name="length">Number of rects to render (ignored here)</param> protected override void OnRender(Rectangle[] renderRects, int startIndex, int length) { if (graph.CanRun && Token.Properties.IsValid && IsRenderingEnabled) { var progressInfo = GetProgressInfo(); if (tileSize > 0) { var tileFormat = StringResources.Get("TileInfoFormat"); var renderer = new TiledRenderer(SrcArgs.Surface, DstArgs.Surface, tileSize, MARGIN); renderer.Update += UpdateTiled; renderer.Process(graph); void UpdateTiled(object sender, TileEventArgs e) { var info = StringResources.Get("GraphEvent." + e.What.ToString()); var tile = string.Format(CultureInfo.InvariantCulture, tileFormat, e.TileNumber, e.TileCount); progressInfo(tile + " " + info); } } else { graph.Update += UpdateGraph; var result = graph.Run(); graph.Update -= UpdateGraph; result.ToSurface(DstArgs.Surface); void UpdateGraph(object sender, EffectGraphEventArgs e) { progressInfo(StringResources.Get("GraphEvent." + e.What.ToString())); } } mustCallOnRender = false; } }