Adrian Courrèges
adriancourreges.com · Personal blog · on HN since 2015
Adrian Courrèges writes detailed graphics studies of how games such as GTA V and Doom 2016 render a frame.
What HN saysHN commenters credit him with starting the trend of game graphics studies, praise his Doom 2016 analysis, and say his blog inspired their own analyses.
60HN people shared it
34linked it in comments
27stories submitted
2.6Kstory points
5 months agolast shared
2015people per year2026
Most-shared posts
- 1GTA V – Graphics Study17 people · 645 points · first shared 2015 · 52 comments on HN
- 2How Doom 2016 Renders a Frame15 people · 495 points · first shared 2016 · 111 comments on HN
- 3Graphics Studies Compilation7 people · 6 points · first shared 2021 · discussion on HN
- 4Supreme Commander – Graphics Study6 people · 296 points · first shared 2015 · 62 comments on HN
- 5Metal Gear Solid V – Graphics Study6 people · 250 points · first shared 2017 · 62 comments on HN
- 6Deus Ex: Human Revolution – Graphics Study5 people · 358 points · first shared 2015 · 120 comments on HN
- 7Blog3 people · first shared 2017
- 8Beware of Transparent Pixels2 people · 568 points · first shared 2017 · 93 comments on HN
- 9Gta v graphics study part 32 people · first shared 2015
- 10GTA V Graphics Study (2015)1 people · 4 points · first shared 2017 · 1 comments on HN
- 11Getting Banned from Google Play1 people · 2 points · first shared 2016 · 1 comments on HN
- 12Introducing Linux Visual Novel Reader1 people · 1 points · first shared 2015 · discussion on HN
- 13Gta v graphics study part 21 people · first shared 2026
- 14Projects1 people · first shared 2021
- 15Homepage1 people · first shared 2023
What HN people wrote when they linked it
Agentlien · 2023-07-16
Another great example is graphics studies of video games, a trend started by Adrian Courrèges[1]. I learned a lot from his blog and it really motivated me to start doing my own similar analyses of games I enjoy. I mean, I'm already comfortable using these tools from work, so why not?
Maybe I'll even post about it on my blog, sometime...
[1] http://www.adriancourreges.com
amjoshuamichael · 2024-11-20
Graphics programming analysis done using examples written in WebGL–genius. Hypertext that takes full advantage of the medium. This reminds me of something I'd see on https://pudding.cool/, but it goes far more in depth than anything there. Absolutely fantastic article.
I've been using MSAAx4 in my rendering engine for some time and only recently have considered switching to a FXAA / TAA implementation. I'm actually not sure I'm going to go through with that now. I definitely learned a lot here, and will probably use the analytical approach for UI items, I hadn't heard about that anywhere.
Not often you see graphics-programming stuff on HN. For anyone interested in more graphics write-ups, this list of frame breakdowns is one of my favorite resources:
https://www.adriancourreges.com/blog/
psadauskas · 2024-07-02
What a great blog, TA was by far my favorite RTS in that era! Poking around other posts, I found this link to someone examining the Supreme Commander engine, too: https://www.adriancourreges.com/blog/2015/06/23/supreme-commander-grap…
trissylegs · 2021-12-13
With deferred rendering it's possibly running multiple sharers per pixel on the screen. A good example is the excellent Doom Graphics study shows how Doom 2016 is doing this. https://www.adriancourreges.com/blog/2016/09/09/doom-2016-graphics-stu…
jamcohen · 2021-02-24
Definitely agree about “juicing” your game, especially from a visual perspective. There’s so many graphics concepts that I didn’t know about and didn’t have the eye to recognize.
Things like ambient occlusion, bloom, reflection probes, and physically based rendering/materials were totally unknown to me but were really essential to making a game look “AAA”.
Adrian Courreges has a great list of graphics studies that expose you to the space:
https://www.adriancourreges.com/blog/2020/12/29/graphics-studies-compi…
Following technical artists on Twitter is also a great way to get exposure on more one-off techniques (how to make a fire effect etc.)
I’m a big fan of @minionsart and @adrianmendezzg but there’s tons of other indie devs and technical
artists sharing their work.
throwaway17_17 · 2020-03-22
I don’t find these suggestions off topic at all. As a bonus, any rendering breakdowns by Adrian are great. This graphics study [1] on GTA V’s rendering pipeline is a good read.
1 -> http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/
diamondo25 · 2018-08-23
Drawing cubes is basically one of the first things you do when starting with 3d rendering.
Shaders are scripts that the GPU uses for translating your input (a cube in 3d data and your 'camera' and some more vectors) to viewport/screen coordinates. You can do a lot with it [0].
The classic OpenGL 1 framework had no shaders and a static pipeline. Its straightforward in doing things but reduces the amount of fancy things you can do. Maybe check out a guide like here[1].
[0] http://www.adriancourreges.com/blog/2016/09/09/doom-2016-graphics-stud…
[1] http://www.glprogramming.com/red/
mastax · 2017-01-19
See also the fantastic graphics studies produced by Adrian Courreges.
http://www.adriancourreges.com/blog/2016/09/09/doom-2016-graphics-stud…
zubspace · 2016-07-04
If you're interested in what modern game engines do to display a frame, I highly recommend following studies:
GTA V: http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/
Supreme Commander: http://www.adriancourreges.com/blog/2015/06/23/supreme-commander-graph…
Deus Ex: http://www.adriancourreges.com/blog/2015/03/10/deus-ex-human-revolutio…
HN Discussion about GTA V: https://news.ycombinator.com/item?id=10492876
Lerc · 2015-11-08
I always thought this was an approach that would be well suited to ray tracing or similar. Both ray tracing and rasterisation are proportional to scene complexity and pixel count, but the balance is different. Ray tracing handles scene complexity better and rasterization covers pixels quicker.
The excellent http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/ shows how many pixels are written to to construct a scene using rasterization. Many many intermediate render targets are involved. Any intermediate layers that are not directly in screen-space would not benefit from foveation.
Raytracing/ray marching etc. working on a pixel by pixel basis would be far more suited to larger fuzzy pixels where you are not looking.
mrec · 2020-08-04
I think mostly because having scads of clever conditionals all over the place greatly increases the risk of subtle and hard-to-reproduce bugs. From a 2007 Carmack email [1] :
> The way we have traditionally measured performance and optimized our games encouraged a lot of conditional operations -- recognizing that a particular operation doesn't need to be done in some subset of the operating states, and skipping it. This gives better demo timing numbers, but a huge amount of bugs are generated because skipping the expensive operation also usually skips some other state updating that turns out to be needed elsewhere.
> We definitely still have tasks that are performance intensive enough to need optimization, but the style gets applied as a matter of course in many cases where a performance benefit is negligible, but we still eat the bugs. Now that we are firmly decided on a 60hz game, worst case performance is more important than average case performance, so highly variable performance should be looked down on even more.
There was fascinating breakdown [2] of a single GTA V frame about five years back. It was a real eye-opener for me - whole full-screen rendering passes for things like water reflection and refraction when there isn't even any water visible in the scene.
[1] http://number-none.com/blow/john_carmack_on_inlined_code.html
[2] http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/
frik · 2017-12-16
Great blog post. Maybe he will post another article about MGSV5 open world rendering, as it's one of the highlights of the Fox engine.
Anyway RAGE engine from Rockstar (GTA IV+V, RDR 1+2) is probably one of the most advanced engines, so much details in rendering.
http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study-pa…
A detailed comparison of open world game engines would be interesting with focus on LOD, streaming and rendering techniques.
* RAGE (GTA5/RDR2)
* AnvilNext (AC:O, GR:Widelands)
* Frostbite3 (NfS:Payback, SW:Battlefront2)
* Just Cause 3
* Watch Dogs 2
* Mafia 2/3
* Dunia (Far Cry 4/5)
* Decima (Horizon Zero Dawn)
* Fox (MGSV)
* REDengine (Witcher 3)
* Minecraft (Java + new C++ Bedrock ed)
* Genome (Elex)
* CryEngine/Lumberyard
* Unity
* Unreal 4 (PUBG)
It's impressive how such game engines provide seamless high speed travel with vehicles (cars, airplanes) in an open world environment.
LarsDu88 · 2026-03-28
Artists did generate a lot of those lods. At the very least they had to hand tune a lot of them. Look at the sheer quality of some of these:
https://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study-p…
codeflo · 2025-09-06
The Kawase approach is from 2005, and GPU performance has improved a ton since then. Some of the newer games do use Bokeh blurs with multiple depths of field. The result can look much more natural than the Gaussian stuff. BTW, it's not just a cinematic effect -- the fact that our pupils are round means that like cameras, they act as a disk-shaped filter for things that are out of focus.
Here's a breakdown of how Doom (2016) does it: https://www.adriancourreges.com/blog/2016/09/09/doom-2016-graphics-stu…
corysama · 2024-04-09
If you find graphics studies interesting, you can find a few more at http://www.adriancourreges.com/blog/2020/12/29/graphics-studies-compil…
Piko · 2023-10-30
I found these lists:
https://www.gamedevpensieve.com/graphics/3d/3d_frame-breakdown
http://www.adriancourreges.com/blog/2020/12/29/graphics-studies-compil…
http://simonschreibt.de/game-art-tricks/
Not super current, but still a nice overview :)
npteljes · 2022-09-11
Education is about exercising the mind. I don't think many play with inflated balls in their adulthood, yet it's very important to teach children hand-eye coordination, team play, and other concepts so that they become better functioning humans.
There are problems with the curriculum though, one of them that it plays catch-up with the state of the world. IT in particular moves very fast. Graphics programming is not one of these things however. For example, if you've done the courses, and experiences just how hard it is to crate anything in 3d, you can better appreciate the work that goes into modern 3d engines. Look at this beautiful breakdown of the inner workings of the GTA V engine:
http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/
Pulcinella · 2022-07-27
Adrian Courrèges’ blog (http://www.adriancourreges.com/blog/) has a lot of posts about how various games perform their rendering.
e.g. How MGSV renders a frame: http://www.adriancourreges.com/blog/2017/12/15/mgs-v-graphics-study/
comboy · 2021-02-28
They did some good stuff: http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/
And just thinking about the size of the game and popularity, to make it work at all, requires some skill. Which makes the OP even more unbelievable.
flohofwoe · 2021-02-09
You'll probably be quite disappointed, because it's most likely the same mess as any other multi-million-line codebase ;)
IMHO frame rendering analyses like this:
http://www.adriancourreges.com/projects/
...or working through GDC presentations, blog posts and whitepapers from those companies is more helpful to understand their technology.
(edit: better link)
fenwick67 · 2020-04-02
Eh, kinda. There are still lots of performance tricks and clever hacks needed for games, just not on the storage capacity front. For example see this breakdown of the GTA5 rendering pipeline, it's still very complicated and employs lots of clever tricks.
https://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/
MaxBarraclough · 2020-03-22
Forgive this being slightly off topic, but you might also enjoy these posts of a similar flavour, on the game Deus Ex: Human Revolution.
I particular enjoyed the Silhouette Effect section in the first of the two.
https://www.adriancourreges.com/blog/2015/03/10/deus-ex-human-revoluti…
https://lousodrome.net/blog/light/2015/05/18/reverse-engineering-the-r…
VectorLock · 2019-03-20
Blog posts that dissect the rendering of things like GTA 5 really show how much goes into making scenes like this. http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/
zawerf · 2019-01-16
This reminded me of another guy who does graphics study on how frames are rendered in GTA V, DOOM, etc:
http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/
Other games/discussions can be found at: https://news.ycombinator.com/from?site=adriancourreges.com
haldean · 2018-09-07
Many game render pipelines will draw the scene a dozen times; here's an article about the pipeline from GTA V, for example: http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/
Adding one more draw call for mouse interaction, especially one that requires no shading at all, is a pretty minimal additional cost.
andybak · 2018-04-06
This article is mind expanding if you want to understand what happens on just the graphics side of things in a modern game: http://www.adriancourreges.com/blog/2016/09/09/doom-2016-graphics-stud…
Bear in mind everything that's not included in this analysis: AI, mesh deformation, level logic, player mechanics, enemy mechanics, all the lower level stuff and so many things I haven't even thought of.
TheCoreh · 2018-03-19
You can combine SSAO with (very coarse) global illumination probes to achieve a very convincing effect.
DOOM (2016) is a good example of this: http://www.adriancourreges.com/blog/2016/09/09/doom-2016-graphics-stud…
SSAO has been overused/applied poorly (just like the brown 'bloom'/color grading effect in mid-2000s games), which is why people often dislike it.
maccard · 2017-12-18
7ms is an eternity. You can do half of this [0] in 7ms or you can download one line of code. I’d be out of a job if I introduced 1/10 of that time for text padding.
[0] http://www.adriancourreges.com/blog/2017/12/15/mgs-v-graphics-study/
andrewf · 2017-10-24
GTA's tone mapping is discussed at http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/ - including a couple of interesting "filmic tone mapping" links
mrdoob2 · 2016-11-12
DOOM (2016) - Graphics Study
http://www.adriancourreges.com/blog/2016/09/09/doom-2016-graphics-stud…
GTA V - Graphics Study
http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/