Skip to content

Dev Blog: Optimizing the Rift

Riot··3 votes·84,676 views

When we first sat down to plan out our priorities for updating the Rift, we knew performance would necessarily be one of our primary challenges. After all, what good is a spiffy update if your toaster explodes during loading? With that in mind, we set a goal of ensuring that the update to Summoner’s Rift performs at least as well as current SR on every player’s machine. We’ve continued to work on optimization since announcing the update, and want to take some time now to discuss the latest details with you.


Engineering Art

Usually, when players think about how a game performs on their rig, they mostly look at the game’s tech. In reality, performance involves tight collaboration between artists and engineers, aimed at finding ways to implement art in an efficient fashion. When it comes to the update to Summoner’s Rift, our engineers have worked to provide the artists with the tools and information they need to create a landscape that can be both visually appealing and high-performing.

The art team’s goal of increasing visual fidelity while maintaining performance parity with pre-update SR meant they needed a minimal set of highly-optimized features that would then allow them to create a hand-painted map. Essentially, this meant the engineering team needed to build a new, high performance renderer from scratch.

Broadly, a renderer is responsible for placing game geometry onto your screen, and the new renderer for SR simplifies the process in ways that lead to higher performance, especially on older video cards. Additionally, it allows us to more finely tune the specifics of how a particular machine’s video card renders the environment, and tuning = speed = performance. Finally, the renderer gives us greater control over the map’s texture formats, allowing us to reduce video memory usage.


Less is More

Beyond engineering optimization, our artists also sought creative ways to save on performance. One of the early things we looked at was “polygon count,” especially that of of jungle creatures. We know most of you know this, but as a reminder, a polygon is a series of points in space that join together to create a surface.

In particular, we look at triangles, the simplest polygons. Multiple triangles are often used to create complex surfaces in games, and the number of them on screen is a good indicator of how much work your video card has to do. In particular, lower-spec machines are heavily impacted as triangle counts rise. We’ve made a conscious effort to cut down on triangles (and polygons in general) while designing the update, which has provided substantial savings on performance.

We also looked at “bone count.” Think of “bones” like joints in a skeleton, in that they influence things around them when they move or rotate. In the case of computer graphics, a bone allows for articulation (or animation) of geometry around it, so a jungle monster might have bones placed at various points in order to help animate its movement or attacks. As you’d expect, fewer bones = better performance, so we built the update with an eye towards minimizing bones in the environment’s moving elements.

These two improvements actually contributed to yet another opportunity for performance optimization. We noticed that map elements like towers and minions were pretty inefficient when “deforming” (i.e. moving their polygons in response to bone movement), with far more bone-polygon connections than would be necessary using the update’s new architecture. The bone and polygon trimming we mentioned earlier led naturally into slashing the number of bones connected to individual polygons, allowing for significant performance savings on what tends to be a performance-intensive process.


Smaller than the Sum of its Parts

Another major step we took to address performance involved implementing a process called “Atlassing.” This process combines “texturing” (painting a model’s skin) with “UV mapping” (projecting the texture on to the 3D model) in a way that optimizes a bit better for performance.

A model’s UV space determines how it reads the texture and what parts of the texture will show up on what surface. Normally there’s excess space between the UVs, and a model and its texture will look something like this:

Atlassing combines multiple textures into one larger texture that we can then compress or expand depending on the level of detail we want, which is invaluable when it comes to conserving precious memory usage on textures. For instance, instead of loading five 1024x1024 textures, we can use just one 2048x2048 texture and save a bit on performance.


All the Little Things Too

Hopefully we’ve been able to provide some insight into some of the stuff that’ll be going on under the hood once the Rift’s new look hits live. What we’ve covered above definitely isn’t an exhaustive list of our performance-related efforts - from character inking changes, fog of war improvements, nav-mesh streamlining to general bug fixing - we’ve been vigilant for any opportunity to optimize. From the outset, toaster compatibility has been one of our top goals with the update, and it’s something we’ll continue to keep an eye on and fine tune as we move towards open beta and beyond.

523 Comments

MadLyfe259 votes

Rammus Ok.

Tcx Beast11 votes

[deleted]

Pozzilla103 votes

You must be new here.

T status115 votes

You Belong In a Museum Ezreal

Sinaticus41 votes

Imagine if i had 2 weapons!!!!Jax

1c4rUs25 votes

Udyr weapons, are for the weak

Watch97 votes

Hes prehistoric.....

Right?

GG Drago224 votes

I'd just like to say, despite the time its taking for everything, I and most other community members really appreciate all the hard work and dedication you put into both updating the game and the outstanding job you do sharing with us how you do it. You really put a lot more into communication then any other game ive ever played, making a very lasting bond with players. Please keep up the amazing work! i love reading things like this

        -Just another League player.
FLCC02duMt59 votes

pro tip - release the map

NukeWizard18 votes

pro tip - people like you complain when something is buggy, and also complain when something isn't released in case it's buggy

Mistress Madoka7 votes

I agree. Let them Take their Time. We don't want to be Falling THROUGH THE FLOOR like we're Playing Sonic 06 or something

EG Feedme57 votes

this summoner 11 take a while.

shadowhunter444427 votes

Garen teed to come soonish...

Nick Loves Çock21 votes

ExZactly

Sebastion17 votes

LeeSin I don't see what you did there.

Sheepuu23 votes

You guys should make a ranked team called Phreak's Disciples.

TheCarrotGuy19 votes

Anivia Zac LeeSin

The Jeek55 votes

Change is goooood. Khazix

Its Marluxia23 votes

WHOA DUDE

TheBigCan10 votes

uncomfortable, CUM!!!!? WHAT AM I GAY?!?!?!

Zeragrin27 votes

Real straight men watch gay porn because we are so comfortable with our sexuality.

ÇHåØS49 votes

PLEASE CHANGE THE CAMERA ANGELS OF PURPLE TEAM TO MIRROR THAT OF BLUE TEAM SO THAT THERE IS NO ADVANTAGE FROM JUST BEING ON ONE SIDE RATHER THAN THE OTHER. PRETTY PLEASE WITH SUGAR ON TOP...

meipian20 votes

The problem with that is that then calling lanes is harder IE: our ADC goes meta and says bot lane and goes what would be top makes it harder to do somethings and there really is VERY little "advantage" if you're on blue side. Also the map is flipped and people already have OK THIS IS BLUE SIDE, THIS IS PURPLE SIDE HERES HOW WE MOVE/USE CAMERA.

Maganar15 votes

You are correct on all your points except one thing I need to point out: the purple side winrate is actually 52% last I heard, which is actually a huge imbalance considering the sheer number of games played (means the value you see if going to be a great representation of the statistical advantage) and how small of a factor (and a completely random one at that) this is. This is WHY Riot is going through the trouble of changing camera angle even though they aren't mirroring it for the reasons you stated. That's an average of one out of 50 games played are lost simply due to ending up on purple side, and with the millions upon millions of games played, that number's going to be accurate.

TyrannicalWall26 votes

Riot has discussed this before. They realize it is harder to play on the purple side, therefore in 100% of their games, purple side will have more skilled players (measured by mmr team total) go to lolnexus during your next match. You will see what I mean.

T status30 votes

Urf Please

BouncertheGreat6 votes

pls rito

Mr Comet9 votes

I NEED MY RAINBOWS Lux Lux Lux Lux Lux

BouncertheGreat14 votes

I really think Urf should be a separate game mode, for the people who like urf, they can go play it... and it being permanent

Iplownedyou29 votes

Marilyn Manson had it right: fewer bones for better performance.

Mistress Madoka11 votes

Velkoz I see what you did there

Iplownedyou7 votes

ExZac tly what I thought

Meikine17 votes

LeeSin I don't?

raggedwolf28 votes

so is it coming today later today next week ???

KJDSilentGiggles27 votes

I've been waiting all day. thought it was coming out after the rewards were dished out.

raggedwolf8 votes

same here

KOSHER TACO126 votes

It's obviously left intentionally ambiguous for two reasons.

  1. Self-hype
  2. It's harder to be held accountable to deadlines if there are no deadlines lolol.
raggedwolf62 votes

Damn you sound reasoning

hartar7 votes

That makes alot of sense.

Zaliant15 votes

alot is my favorite animal too!

KazuThePastaBoy10 votes

AMAZING. (but make temmo die)

BallHardTanker13 votes

Teemo dont hate me cause im cute Gnar oh please.. item 3070 Teemo

Frenchh0rnftw16 votes

dino gnar is the cutest thing on the rift

ParanoidNoc37 votes

KogMaw WRONG

XxexexxX29 votes

oh come on, Urgot is the cutest one for sure.

acepil0t6 votes

Urgot to be kidding me.

PokemonAndLeague13 votes

Gragas kawaii

BobSilverwind3 votes

HUSH their is no I in Teemo

ALL HAIL THETeemonator

SissySmurfz15 votes

I carved a pumpkin that had Teemo on it and someone stepped on it

More from Announcements