
50 Game Camera Mistakes
The camera designer for thatgamecompany's Journey, takes attendees on a tour of all the poor camera choices that he and other game developers have made and how to fix them.
Topics

6 Useful Snippets
How to do: Mix (lerp), Golden Ratio Sampling, Exponential Smoothing (easing), Verlet (and Euler) Integration, Spatial Hashing, Iterative Constraint Solving. At the end the author combines these "snippets" into a simple collision detection and response solver.
Topics

Algorithms and Data Structures
Classic text on programming by Niklaus Wirth
Topics

A Look at Pathfinder
Pathfinder is a GPU vector renderer developed at Mozilla, this post details some of the methods it uses.
Topics

An Indie Approach to Procedural Animation
David Rosen of Wolfire Games explains how he created an expressive character animation system for development on a limited budget.
Topics

An introduction to shader derivative functions
An article giving an interactive introduction to derivative functions in common shading languages. By Giuseppe Portelli.
Topics

Ben Eater Youtube Channel
Ben Eater's hardware hacking videos
Topics

Bitsquid Blog
The precursor to the Our Machinery blog with different articles.
Topics

Bitwise Programming Streams
Per Vognsen's lowlevel programming educational series
Topics

Breaking Paragraphs into Lines
Knuth algorithm on how to turn a long text string into a nicely formatted paragraph.
Topics

Build Your Own Lisp
Learn C and build a LISP interpretter using a parser combinator library written by the author
Topics

Butterick’s Practical Typography
Practical guidelines for when creating text layouts.
Topics

Coding Math
Educational videos that teach the math needed in programming. Very beginner friendly. Videos contain whiteboard sessions and a stepbystep implementation with JS and Canvas.
Topics

Color: From Hexcodes to Eyeballs
A grand tour of the science behind color, color perception, and how colors are generated by computer displays. By Jamie Wong.
Topics

Compiler Construction
Classic text on building a compiler by Niklaus Wirth
Topics

Computer Science: A Programmer's Perspective
A good textbook convering assembly, memory, caching, processor architecture, and more. Get the third edition; avoid the international edition.
Topics

Daniel Shiffman's Youtube
Daniel Shiffman teaches creative coding. Mostly using high level languages but certainly worth a peek or two.
Topics

DataOriented Design Book
Topics

Data Structures Playlist
Concise and visually appealing lectures on data structures by Rob Edwards
Topics

Docs.gl
User friendly OpenGL documentation site.
Topics

Easing Equations
Robert Penner's Easing Equations
Topics

Easy Scalable Text Rendering on the GPU
GPU font rendering using an LoopBlinn and algorithm reminiscent of stencil shadow volume rendering.
Topics

Essence of Linear Algebra
An intuitive and visual introduction to linear algebra. The first five videos are particularly useful to game and graphics programmers, but the entire series is worth watching.
Topics

Excerpt: Quake Postmortem  Optimizing Level Viewing
Michael Abrash succinctly explains Quake's visibility precomputation algorithm using a sharpie and overhead projector.
Topics

Fix Your Timestep
Classic article by Glenn Fiedler that goes into some of the intricacies of delta time in gameloops
Topics

Free programming books
Collection of free programming books
Topics

Game Engine Black Books (Wolfenstein and DOOM)
Thorough walkthroughs of the code for famous id Software games. Available as free PDFs or inexpensive print versions.
Topics

Gamma Encoding
How gamma encoding of images works.
Topics

Getting started with baremetal assembly
How to create a hello world program in assembly that runs directly on top of UEFI (no operating system!). By Jonas Hvid.
Topics

Glyphy
GLyphy represents a SDF using actual vectors submitted to the GPU. This results in very high quality rendering, though at a much higher runtime cost.
Topics

Graphics Programming Weekly
A curated collection of articles and talks about graphics programming, curated by Jendrik Illner.
Topics

Gurney Journey
Huge blog on various art topics by James Gurney (check category tags on the left)
Topics

How Operating Systems Work: 10 Concepts you Should Know as a Developer
Helicopter view of various central operating system concepts.
Topics

Hue Value Chroma
Artistic Color Theory
Topics

Hundred Year Mistakes
Some history on C's weird operator precedence rules.
Topics

Immersive Math
The world's first linear algebra book with fully interactive figures.
Topics

Inigo Quilez Homepage
Inigo Quilez teaches signed distance functions, raymarching and how to make art using math. His articles and video tutorials are a treasure trove.
Topics

Inigo Quilez' Youtube
Inigo Quilez teaches signed distance functions, raymarching and how to make art using math. His articles and video tutorials are a treasure trove.
Topics

Intro to Digital Image Processing
A course on digital image processing, starting at the foundations of digital images and human perception, and building to a variety of highlevel applications. By Rich Radke of Rensselaer Polytechnic Institute.
Topics

Itchy Animation's Artistic Lighting Tutorial
Guidelines for artistic lighting
Topics

Juice It or Lose It
Various tips to improve the feel of gameplay.
Topics

Learn OpenGL
Introduction to GPU programming with OpenGL
Topics

Let's remove Quaternions from every 3D Engine
An interactive introduction to rotors from geometric algebra, presented as an alternative to quaternions.
Topics

Making Audio Plugins
Martin Finke demonstrates how to create audio plugins for various audio programs and as a standalone app. Recommended by rxi as an introduction to audio synthesis.
Topics

Manual Texture Filtering for Pixelated Games in WebGL
Nearest neighbour filtering but with antialised edges. Also see the followup article.
Topics

Math for Game Programmers: Building a Better Jump
Shows how to construct naturalfeeling jump trajectories from designerfriendly input like desired height and distance, modeled programmatically using one of a few available integration methods.
Topics

Math for Game Programmers: Juicing Your Cameras With Math
Discusses how the motion of game cameras improves feel.
Topics

Math for Game Programmers: Predictable Projectiles
How to make entities predict the trajectories of their projectiles.
Topics

Math for Game Programmers: Understanding Homogeneous Coordinates
What it says on the tin.
Topics

Math is Fun
An array of math topics explained in a very approachable manner. Useful as a first stop before going into the more dense material  don't let the kiddy looking design scare you off.
Topics

Memory Allocation Strategies (gingerbill)
Introduction to various memory allocation strategies by the creator of Odin, a Handmade Network project.
Topics

Memory Allocator Designs
Explains various strategies for memory allocation and shows how to implement these as allocators.
Topics

Michael Abrash’s Graphics Programming Black Book
Topics

MultiChannel Distance Field Generator for Font Glyphs
This is a utility for generating signed distance fields from vector shapes and font glyphs.
Topics

Onur Mutlu's Youtube Channel
Lectures about computer architecture by professor Onur Mutlu.
Topics

OpenGL Tutorial
Introduction to GPU programming with OpenGL
Topics

Our Machinery Blog
Blog with several good posts on game engine architecture.
Topics

Pathfinding: Coordinated Unit Movement
Series of articles on how unit pathfinding was made robust in Age of Empires
Topics

Physics for Game Programmers: Continuous Collision Detection
A practical solution to (pseudo) continuous collision detection.
Topics

Physics for Game Programmers: Understanding Constraints
How to implement a character controller using swept collision and an iterative solver, and how the solver naturally handles collision priorities using Lagrange multipliers.
Topics

Pitfalls of Object Oriented Programming
A DataOriented critique of C++ and the Object Oriented paradigm.
Topics

Pitfalls of ObjectOriented Programming
Describes the performance pitfalls of objectoriented design. Demonstrates problems with an OO memory access pattern, and how performance can be improved, using good visuals of memory and cache. By Tony Albrecht of Sony Computer Entertainment Europe.
Topics

Raw WebGPU
An overview on how to write a WebGPU application. Learn what key data structures and types are needed to draw in WebGPU.
Topics

Raytracing in One Weekend
Several books with stepbystep instruction on building a raytracer and adding features and optimizations. By Peter Shirley.
Topics

RealTime Collision Detection
A comprehensive guide to the components of efficient realtime collision detection systems.
Topics

Red Blob Games
Visual explanations of math and algorithms, using motivating examples from computer games.
Topics

Resolution Independent Curve Rendering using Programmable Graphics Hardware
LoopBlinn curve rendering for displaying vector graphics on the GPU.
Topics

Sean Barrett's Imgui Example Implementation
Good example code for a basic imgui
Topics

SLUG: GPUCentered Font Rendering Directly from Glyph Outlines
One of the more advanced text rendering algorithms, by Eric Lengyel. Patented.
Topics

Smooth Pixel Art Zoom & Scroll Shadertoy
D7's smooth pixel scaling method
Topics

Super NES Features
Topics

The Art of Screenshake [not only about screenshake]
Various tips to improve the feel of gameplay.
Topics

The Craft of Text Editing
Practical guide on building text editors
Topics

The History of Zip Files
Describes in depth the history and inner working of the Zip compression format.
Topics

ThinMatrix SingleChannel SDF Font Rendering
Two OpenGL tutorial videos that give an overview of the basics of setting up singlechannel SDF font rendering. Video one covers basic bitmap text rendering, and video two shows how to convert from bitmap to SDF.
Video one: https://www.youtube.com/watch?v=mnIQEQoHHCU
Video two: https://www.youtube.com/watch?v=d8cfgcJR9Tk
Topics

Tiny Renderer
How to build a software renderer in 500 lines of code.
Topics

Top Down Operator Precedence / Pratt Parsing
Article on Top Down Operator Precedence (aka Pratt Parsing), a parsing technique that does not rely on a grammar. Example implementation in JS.
Topics

Typography Handbook
Practical guidelines for when creating text layouts.
Topics

Understand Disney's 12 principles of animation
The 12 principles of animation. Knowing these will make for better animations.
Topics

Using Blue Noise in Loot Drop Tables
About using lowdiscrepancy functions/tables in gameplay code. A low discrepancy sequence is a sequence of numbers which are neither too close together nor too far apart.
Topics

Vehicle Physics in Skylanders Superchargers
Overview on various approaches to vehicle physics and their pros and cons.
Topics

When Bloom Filters Don't Bloom
Topics

Wolfenstein 3D's map renderer
Matt Godbolt's excellent explanation of the Wolfenstein 3D raycasting renderer
Topics

Writing a LowLevel Sound System  You Can Do It!
The team from Our Machinery goes through the process of creating a lowlevel sound mixing system from scratch.
Topics

Writing a Simple Operating System from Scratch
Howto book on implementing a basic operating system.
Topics

Writing Tools Faster
Niklas Gray of Our Machinery walks through the design failings of their previous game engines (Bitsquid and Stingray) and how they applied those lessons to their new engine. Topics include frameworks, data definition, and UI.
Topics