Guerilla Tactics Logo

Aaron Aikman

Principal Rendering Technical Artist

Start Banner

Overview

Graphics

I call this hat “graphics” because though it’s often referred to as shaders or lookdev, it’s about more than just that. A tech artist focused on graphics should also know how rendering works in order to help artists understand how to achieve the look they want and how to optimize their work. Understanding the fundamentals of how assets become pixels on the screen is also important for assessing and improving performance, as well as interfacing with engineers on current and future graphics features of the engine.

Shaders

Shaders are programs that receive input about something like geometry and output data about how to render it. There are a few different shaders, but the ones that receive the most attention are the vertex shader and the pixel shader. The vertex shader typically handles data about vertex position, normal, and more, and passes along this data. Once the data reaches the pixel shader, any reasonable number of operations can be executed, but most often in Physically Based Rendering (PBR), the shaders looks at textures to describe the surface of the object.

Performance

In order to be real-time, games have to process and render data quickly. Profiling is measuring performance using tools that assess what’s being processed or rendered, what commands were used, and how long it took.

How to use this page

The resources below are categorized and ordered with a level I’ve assigned. The category is based upon what the information primarily deals with, but there is certainly topic crossover. If you’re just getting started, I recommend becoming comfortable with the concepts at each level before progressing to the next (e.g. start with level 1 of each topic, then come back and dive into the next level). That said, feel free to explore what you find useful and/or interesting.

Learning

Shaders

Title/Link Level Description
ShaderQuest FaviconSpacerShaderQuest 1 Coverage of the basics of shaders in Unity and Unreal
The Book of Shaders FaviconSpacerThe Book of Shaders 1 Gentle step-by-step guide through the abstract and complex universe of Fragment Shaders in GLSL
Youtube FaviconSpacerShader Graph Basics 2 Series covering many aspects of shader work in Unreal and Unity
Youtube FaviconSpacerShaders for Game Artists 2 Series covering many general shader topics in Unity
ShaderQuest FaviconSpacerShaderQuest 2 Common shader techniques and rendering concepts
Unreal Documentation FaviconSpacerUnreal Material Documentation 2 Common shader techniques and rendering concepts
HLSL FaviconSpacerHLSL Documentation 3 HLSL functions reference
Generic FaviconSpacerInigo Quilez 4 HLSL/GLSL Tutorials and articles by Inigo Quilez on computer graphics, fractals, demoscene, shaders and more
Shader Assembly FaviconSpacerShader Assembly 5 A look at shader assembly code

Rendering

Title/Link Level Description
Youtube FaviconSpacerShader Graph Basics 1 Part one of this series is a great overview of the graphics pipeline
ShaderQuest FaviconSpacerShaderQuest 1 Part 1 and 2 of Shader Quest are also a great overview of graphics basics
Reference Frames FaviconSpacerReference Frames 2 Useful visual reference about spaces
Cameras and Lenses FaviconSpacerCameras and Lenses 2 Interactive article explaining how cameras and lenses work.
Render Hell – Book I Simon schreibt FaviconSpacerRender Hell 2 Review of rendering from Simon Schriebt
Life of a Triangle FaviconSpacerLife of a Triangle 3 Overview of what happens to a triangle behind the scenes
FaviconSpacerFragment Buffer 3 GPU Performance for Game Artists
FaviconSpacerGentle Introduction to the GPU 3 Excellent introduction to the GPU
FaviconSpacerReal-Time Rendering 3 Excellent Book on real-time rendering details and techniques
FaviconSpacerScratch A Pixel 3 All-around resource for rendering and math

Math

Title/Link Level Description
Youtube FaviconSpacerMath for Game Devs 1 Overview of math basics with some practical examples
Generic FaviconSpacerLinear algebra for game dev 2 Some important math commonly used in game and graphics programming
FaviconSpacerImmersive Linear Algebra 2 Interactive Math Tutorials
FaviconSpacerGameMath.com 3 Web version of the book, 3D Math Primer for Graphics and Game Development

Application

Title/Link Level Description
Harry Alisavakis FaviconSpacerShader Tutorial Archive 1 Harry Alisvakis takes on various shader challenges
Harry Alisavakis FaviconSpacerTechnically Art 1 Harry Alisvakis curates shaders and vfx from Twitter
Youtube FaviconSpacerUE4 and Unity Shader Videos 1 Ben Cloward demos common shader techniques
Bark Wronski FaviconSpacerVideo Game Graphics Challenges 2 Overview of many of the challenges faced in video game art and many of the tools that are used
Shader Bits FaviconSpacerShader Bits 2 Unreal Engine 4 Shader articles by Ryan Brucks
Tom Looman FaviconSpacerTom Looman 2 Unreal Engine 4 Shader articles by Tom Looman

Additional Learning

Rendering Blogs

Title/Link Description
FaviconSpacerJendrik Illner Weekly Descriptions to Graphics Programming and Shader Info
FaviconSpacerAdrian Courreges Rendering and Frame Breakdowns
FaviconSpacerastralcode Rendering and Frame Breakdowns
FaviconSpacerjpg Rendering articles
FaviconSpacerBart Wronski Rendering articles
FaviconSpacerC0DE51 Rendering articles
FaviconSpacerdemofox Rendering and Graphics Code Articles
FaviconSpacerInterplay of Light Rendering and Graphics Code Articles

Art/Articles/Forums

Title/Link Link
FaviconSpacer80Lvl Real-time, VFX, and Digital Art Articles
FaviconSpacerArtStation TechArt User-submitted Tech Art Work
FaviconSpacerGameDeveloper Game Industry and Technology Articles
FaviconSpacerLesterbanks Technology Articles
FaviconSpacerTech-Artists.Org Technical Art Forum
FaviconSpacerPolycount Tech Art WAYWO Polycount Thread for Tech Artists

Online Graphics Tools

Title/Link Link
FaviconSpacerGraphToy Tool for graphing using common shader function - useful for visualizing your data
FaviconSpacerShaderToy Hub for a plethora of open-code GLSL Fragment Shaders
FaviconSpacerPaletton Color Picker Tool for picking colors that fit in a chosen kind of palette
FaviconSpacerOmni Calculator Various Math Calculators (e.g. dot product calculator, Pascal’s Triangle calculator, etc.)

Recent Posts

Category

About

Aaron Aikman is a Principal Rendering Technical Artist with over a decade of experience. He focuses mainly on shaders, pipeline, and problem-solving.