Skip to content
RSS
Amplifier
Blogs
Podcasts
Music
Videos
Topics
Submit
Discover
Search
OPML
llms.txt
About
Sign up
Favorites
Account
Blog
30fps.net
30fps.net ↗
RSS feed ↗
31 posts
Follow
Latest posts
Revisiting Yliluoma's ordered dither algorithm
Jun 28, 2026
Should you normalize RGB values by 255 or 256?
May 31, 2026
Single-pass palette refinement and ordered dithering
Apr 22, 2026
More accurate Doom colormap
Oct 29, 2025
Why CIELAB doesn't improve median cut
Oct 23, 2025
Better sRGB to greyscale conversion
Oct 12, 2025
Mapping to the PICO-8 palette, perceptually
Sep 6, 2025
Approximate first principal component
Jul 16, 2025
HyAB k-means for color quantization
Jul 8, 2025
Palette lighting tricks on the Nintendo 64
May 16, 2025
Portal flow brings it all together
Jan 17, 2025
Fine visibility via clipping
Jan 9, 2025
Coarse base visibility
Jan 9, 2025
Portals and Quake
Jan 9, 2025
A simple way to scale pixel art games
Nov 26, 2024
How to present MS-DOS screenshots
Nov 14, 2024
How Westwood VQA works
Nov 13, 2024
Efficiently split a NumPy array into tiles
Nov 6, 2024
Classic 3D videogame shadow techniques
Oct 24, 2024
Shader post-processing in a hurry
Apr 5, 2024
Moving basis decomposition for images
Mar 15, 2024
Color quantization with a self-organizing map
Mar 7, 2024
PCA image color compression experiment
Mar 4, 2024
Clean pointer serialization in C
Jan 20, 2024
Sort a sphere BVH with split planes
Jan 9, 2024
Annoying details of a Z-buffer rasterizer
Jan 3, 2024
Going up in color bit depth
Nov 7, 2023
Image vector quantization is just like creating a tilemap
Apr 29, 2023
In-place filtering of an array
Mar 21, 2023
BSP Lessons
Mar 6, 2023
Full screen triangle optimization
Feb 26, 2023
←
Prev
✦
Random
Next
→
Visit
↗
Feed
Kagi
↗