@@ -0,0 +1,1300 @@
+# Copyright (c) 2015 Ultimaker B.V.%0A# Uranium is released under the terms of the AGPLv3 or higher.%0A%0Aclass RenderBatch():%0A    class RenderType:%0A        Solid = 1%0A        Transparent = 2%0A        Overlay = 3%0A%0A    class RenderMode:%0A        Triangles = 1%0A        TriangleStrip = 2%0A        TriangleFan = 3%0A        Lines = 4%0A        LineLoop = 5%0A        Points = 6%0A        Wireframe = 7%0A%0A    def __init__(self, kwargs**):%0A        self._render_type = kwargs.get(%22type%22, self.RenderType.Solid)%0A        self._render_mode = kwargs.get(%22mode%22, self.RenderMode.Triangles)%0A        self._material = kwargs.get(%22material%22, None)%0A        self._backface_cull = kwargs.get(%22backface_cull%22, True)%5D%0A        self._render_range = kwargs.get(%22range%22, None)%0A        self._items = kwargs.get(%22items%22, %5B%5D)%0A%0A    @property%0A    def renderType(self):%0A        return self._render_type%0A%0A    @property%0A    def renderMode(self):%0A        return self._render_mode%0A%0A    @property%0A    def material(self):%0A        return self._material%0A%0A    @property%0A    def backfaceCull(self):%0A        return self._backface_cull%0A%0A    @property%0A    def renderRange(self):%0A        return self._render_range%0A%0A    @property%0A    def items(self):%0A        return self._items%0A%0A    def addItem(self, transform, mesh):%0A        self._items.append((transform, mesh))%0A

Add RenderBatch class that tracks properties for render batches