Hi, I'm Tony Albrecht and I'm one of the engineers on the new Render Strike Team under the Sustainability Initiative in League of Legends. The team has been tasked with making improvements to the League rendering engine, and we're excited to get our hands dirty. In this article, I'll provide a run-down on how the engine currently works - hopefully this will be the foundation on top of which I can later discuss the changes we make. It's also a great excuse for me to step through the rendering pipeline myself so that we, as a team, totally grok what's happening in there.
I'll be presenting exactly how League builds and displays a single frame of the game (remember, on high end machines this is happening over 100 times per second). The discussion here will certainly be technical, but I'm hoping it's digestible even if you don't have experience with rendering. I'll skip some of the complexity for the sake of clarity, but if anyone would like more details I certainly hope you ask.
First, a bit of brief context on the graphics libraries available to us. League has to work as efficiently as possible on a wide range of platforms. In fact, Windows XP is currently the fourth most popular OS version running the game (behind Windows 7, 10 and 8). There are over ten million games per month played on Windows XP, so to maintain backwards compatibility we have to support DirectX 9 and can only use the features it provides. We use a comparable featureset from OpenGL 1.5 on OS X machines as well (that should be changing soon).
So let's dive in!
A long article, but fascinating to see how so many steps are done so quickly to keep our gaming habit fed.
(Score: 1, Touché) by Anonymous Coward on Wednesday January 25 2017, @06:42PM
We can file it under "Still being relevant", and we'll file you under "Curmudgeons".