#graphics
// 28 pages tagged #graphics · every tag
- Byte Lab
See inside any file — a Rust engine compiled to WebAssembly folds its bytes along a Hilbert curve, turns every three in a row into a point in a cube, measures where it looks random and names its parts, from PNG chunks to WebAssembly sections. Nothing is uploaded. - Dither Lab
Any picture or video into dithered pixel art, in the browser — ordered, blue-noise, halftone and error-diffusion dithering, tone ramps and palettes, lights that dither into their own reflections, and animated GIFs written by the engine. Rust compiled to WebAssembly; nothing is uploaded. - Intro Lab
A demoscene intro maker in the browser — a fragment shader driven by the music, a sine scroller, a chiptune played by the Chiptune Lab's Rust synth and every frame dithered by the Dither Lab's engine — exported as a video with its sound or a GIF, and shared whole, shader source and all, in a link. - Deus Ex in the Browser — Rebuilding Unreal Engine 1 from the Original Bits
The original 2000 Deus Ex running in a browser tab: a JavaScript package reader, a Rust interpreter compiled to WebAssembly, three.js on WebGL2, and the game's own DLLs as the oracle. - Ray marching & signed distance fields
Notes on ray marching, signed distance functions, and the tricks that make them sing. - Marching Cubes
The 1987 iso-surface extraction algorithm — how it works, what breaks, and what to reach for when it does. - Designing Scalar Fields for Procedural Terrain
How to compose height, noise, caves, brushes, and materials into a scalar field that Marching Cubes can sample reliably. - Normals for Implicit Surfaces
How to recover stable, smooth normals from scalar fields, finite differences, and gradients — including chunk boundaries and transformed spaces. - Real-time anti-aliasing — MSAA, FXAA, SMAA, and TAA
What each real-time anti-aliasing family samples, what it fixes, and why every choice has a different failure mode. - Spatial acceleration structures
BVHs, k-d trees, octrees, and uniform grids — how to find things in 3D space without looking at everything. - Raym — Interactive Terrain Generation with Marching Cubes
A real-time interactive terrain generation and modification system built with C and Raylib, implementing the Marching Cubes algorithm for smooth voxel-based terrain. - Compute shaders
Using the GPU for general work — workgroups, shared memory, barriers, and the things they're actually good at. - Debugging graphics without guessing
A capture-first workflow for finding rendering, shader, synchronization, and performance bugs. - From Brush Stroke to Mesh — Real-Time Voxel Terrain Editing in C
The complete edit loop behind a sculptable Marching Cubes terrain — picking, density updates, dirty chunks, remeshing, and GPU hand-off. - GPU-driven visibility for large worlds
Keeping scene visibility, LOD selection, and indirect draws on the GPU without losing correctness. - Marching Cubes on the GPU — count, scan, emit
A practical GPU pipeline for turning a scalar field into variable-length triangle output. - OpenGL — learning log
Notes and gotchas from using modern core-profile OpenGL. - Ray picking through the rendering pipeline
Turning a mouse pixel into a reliable world-space ray, then finding the object or field it touches. - Raylib 3D rendering
Using Raylib for 3D — cameras, meshes, models, shaders, rlgl, and the corners worth knowing about. - Seamless Chunked Voxel Terrain
The sample ownership, halo, dirty-region, and precision rules that keep Marching Cubes chunks from growing cracks and lighting seams. - Transvoxel in Practice
A table-driven guide to stitching Marching Cubes terrain across a 2:1 level-of-detail boundary without cracks. - Vulkan — learning log
Notes on Vulkan — the explicit, verbose, deeply satisfying modern graphics API. - Deferred vs forward rendering
Where you do the shading decides a surprising amount of the rest of the engine. - Dual Contouring
Iso-surface extraction that keeps sharp features and plays well with adaptive octrees. - Physically Based Rendering
The microfacet BRDF, metal/dielectric split, and the practical tricks that make PBR actually tractable. - Shadow mapping
The depth-texture approach to real-time shadows and the pile of tricks used to hide its artefacts. - Sparse Voxel Octrees
Compressing voxel worlds with octrees and ray-casting through them directly on the GPU. - Voxel rendering techniques
A survey of ways to get voxels onto a screen — cubes, iso-surfaces, octree ray-casting, cone tracing.