A trip down the League of Legends graphics pipeline
Few things consistently blow my mind as insane graphics demos<p><a href="https:&#x2F;&#x2F;www.shadertoy.com&#x2F;view&#x2F;4dfGzS" rel="nofollow">https:&#x2F;&#x2F;www.shadertoy.com&#x2F;view&#x2F;4dfGzS</a> (or basically anything on that site)<p>How is that 400 lines of code.<p>Or this one which even generates the sound on the GPU<p><a href="https:&#x2F;&#x2F;www.shadertoy.com&#x2F;view&#x2F;4ts3z2" rel="nofollow">https:&#x2F;&#x2F;www.shadertoy.com&#x2F;view&#x2F;4ts3z2</a><p>With the wide adoption of WebGL, it&#x27;s a good time to get involved in graphics. Furthermore, GPUs are taking over esp. with the advent of machine learning (nvidia stock grew ~3x, amd ~5x last year). The stuff nvidia has been recently doing is kinda crazy. I wouldn&#x27;t be surprised if in 15 years, instead of AWS, we are using geforce cloud or smth, just because nvidia will have an easier time building a cloud offering than amazon will have building a gpu.<p>These are some good resources to get started with graphics&#x2F;games<p># WebGL Programming Guide: Interactive 3D Graphics Programming with WebGL<p><a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;WebGL-Programming-Guide-Interactive-Graphics&#x2F;dp&#x2F;0321902920&#x2F;ref=as_li_ss_tl?ie=UTF8&amp;linkCode=ll1&amp;tag=akhn-20&amp;linkId=6a3c5120f9335a1038329ba5136d0ca9" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;WebGL-Programming-Guide-Interactive-G...</a><p>Historically, C++ has definitely been THE language for doing graphics but if you are starting these these, you would have to have really compelling reasons to start with C++ and not JavaScript and WebGL. And that&#x27;s coming from someone who actually likes C++ and used to write it professionally.<p># Book of Shaders<p><a href="https:&#x2F;&#x2F;thebookofshaders.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;thebookofshaders.com&#x2F;</a><p># Game Programming Patterns<p><a href="http:&#x2F;&#x2F;gameprogrammingpatterns.com&#x2F;contents.html" rel="nofollow">http:&#x2F;&#x2F;gameprogrammingpatterns.com&#x2F;contents.html</a><p><a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;Game-Programming-Patterns-Robert-Nystrom&#x2F;dp&#x2F;0990582906&#x2F;ref=as_li_ss_tl?sa-no-redirect=1&amp;linkCode=ll1&amp;tag=akhn-20&amp;linkId=abb3d10b5110e80969bf860188704f7c" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;Game-Programming-Patterns-Robert-Nyst...</a><p>HN&#x27;s own @munificent wrote a book discussing the most important design patterns in game design. Good book applicable beyond games.<p># Game engine architecture<p><a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;Engine-Architecture-Second-Jason-Gregory&#x2F;dp&#x2F;1466560010&#x2F;ref=as_li_ss_tl?_encoding=UTF8&amp;psc=1&amp;refRID=CYQ60B781NB1PD69E20Y&amp;linkCode=ll1&amp;tag=akhn-20&amp;linkId=d234fcc54fc7579edd423dccfe0d47a4" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;Engine-Architecture-Second-Jason-Greg...</a><p># Computer graphics: Principles and Practice<p><a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;Computer-Graphics-Principles-Practice-3rd&#x2F;dp&#x2F;0321399528&#x2F;ref=as_li_ss_tl?s=books&amp;ie=UTF8&amp;qid=1484843854&amp;sr=1-1&amp;keywords=computer+graphics&amp;linkCode=ll1&amp;tag=akhn-20&amp;linkId=ce5d19658fd2884b7b6bf7ceb09686dc" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;Computer-Graphics-Principles-Practice...</a><p>This is more of college textbook if you&#x27;d prefer that but the WebGL one is more accessible and less dry.<p># Physically Based Rendering &amp; Real-Time Rendering<p>These discuss some state of the art techniques in computer graphics. I&#x27;m not going to claim to have really read them but from what I&#x27;ve seen they are very solid.<p><a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;Computer-Graphics-Principles-Practice-3rd&#x2F;dp&#x2F;0321399528&#x2F;ref=as_li_ss_tl?s=books&amp;ie=UTF8&amp;qid=1484843854&amp;sr=1-1&amp;keywords=computer+graphics&amp;linkCode=ll1&amp;tag=akhn-20&amp;linkId=ce5d19658fd2884b7b6bf7ceb09686dc" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;Computer-Graphics-Principles-Practice...</a><p><a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;Physically-Based-Rendering-Third-Implementation&#x2F;dp&#x2F;0128006455&#x2F;ref=as_li_ss_tl?s=books&amp;ie=UTF8&amp;qid=1484843804&amp;sr=1-1&amp;keywords=physically+based&amp;linkCode=ll1&amp;tag=akhn-20&amp;linkId=1c04902237f3600b48d26a8d3e9f507b" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;Physically-Based-Rendering-Third-Impl...</a>