I’ve been working on rendering forests for my terrain renderer. A problem with forests in large areas are the large amounts of draw calls required for all the trees. To make forests possible I had to add geometry instancing to the render system. Instancing allows you to draw many copies of an object with a single function call. Before using instancing I could only render a few hundred trees without impacting performance and after adding instancing I can draw over 30000 trees with barely any impact on rendering performance.