Topics
Images, audio, video and video games: how digital media really work, from pixel to codec, from sample to game loop.
Graphics & images
Pixels and vectors, colour spaces, formats and compression, resolution and 3D graphics basics.
Digital audio
Sampling, bit depth, codecs, home recording, mixing and podcasts.
Video & streaming
Codecs and containers, bitrate, HDR, adaptive streaming, editing and transcoding.
Game development
Game loop, engines, physics, collisions, sprites, enemy AI, audio and input.
Featured articles
Lighting in 3D: Lambert, Phong and PBR materials explained
How light on a 3D surface is calculated: Lambertian diffuse reflection, Phong and Blinn-Phong highlights, interpolation and physically based materials.
Audio Aliasing: What It Is, How It Sounds, How to Avoid It
Aliasing in digital audio explained practically: why frequencies above Nyquist fold back, how to recognize it and which filters and oversampling to use.
Adaptive streaming: how HLS and MPEG-DASH work
Segments, playlists and manifests: how HLS and DASH adapt video quality to the connection, what the player does, and which mistakes cause buffering.
The 2D camera: following, dead zone and screen shake
How to program a 2D camera that follows the player smoothly: dead zone, damping, look-ahead, level bounds, screen shake and parallax background layers.
CMYK and printing: subtractive color, rich black and conversion
How printing reproduces colors with cyan, magenta, yellow and black: subtractive mixing, halftoning, ink limits, rich black and common conversion mistakes.
Audio Latency and Buffer Size: Reducing Delay in Your DAW
Where audio latency comes from, how to calculate it from buffer size, how ASIO, Core Audio and WASAPI differ and how to set it for recording and mixing.
Video codecs vs containers: the difference explained
MP4, MKV, H.264, AV1: why the file format does not tell you how the video is compressed, what a container holds and how to avoid files that won't play.
Choosing a game engine: practical criteria before you start
Godot, Unity, Unreal or a lightweight framework: concrete criteria for picking the right game engine based on your project, platforms and skills.
Histogram, levels and curves: reading and fixing a photo's tones
How to read a photo's histogram, spot blown highlights and blocked shadows, and use levels and curves to correct exposure and contrast in a measured way.
Decibels in Audio: dBFS, dBu, dBV and dB SPL Without Confusion
A decibel is a ratio, not an absolute unit: what dBFS, dBu, dBV and dB SPL mean, how they relate to one another and how to actually read an audio meter.
Hardware or software video encoding: NVENC, Quick Sync, x264
Differences in speed, quality and power use between software encoders and the hardware encoders in GPUs and processors, and when to choose each one.
Handling input in games: keyboard, gamepad and abstract actions
How to design input handling in a video game: events and polling, abstract actions, gamepads and dead zones, key remapping and accessibility options.