private void addToDisplayList(List <IObject> displayList, IObject obj, IRoom room) { if (!obj.Visible) { IImageRenderer imageRenderer = getImageRenderer(obj); imageRenderer.Prepare(obj, obj, room.Viewport); return; } addToDisplayList(displayList, obj); }
private void renderObject(IRoom room, IObject obj) { Size resolution = obj.RenderLayer == null || obj.RenderLayer.IndependentResolution == null ? _game.Settings.VirtualResolution : obj.RenderLayer.IndependentResolution.Value; _glUtils.AdjustResolution(resolution.Width, resolution.Height); IImageRenderer imageRenderer = getImageRenderer(obj); imageRenderer.Prepare(obj, obj, room.Viewport); var shader = applyObjectShader(obj); imageRenderer.Render(obj, room.Viewport); removeObjectShader(shader); }