HeadlinesBriefing favicon HeadlinesBriefing.com

N64 Additive Blending Hack Exposes PSX Visual Gap

Hacker News •
×

Additive blending explains why explosions and plasma effects looked so much cooler on the PlayStation than on the Nintendo 64. The PSX GPU supported src+dst blending and automatically clamped color values, so sprites could only make pixels brighter. The N64's Reality Display Processor (RDP) could technically do the same thing but lacked clamping, causing color values to wrap around and produce ugly artifacts.

Developer phoboslab's workaround uses a 32-bit RGBA 8888 render buffer while keeping sprites in 16-bit RGBA 5551 format. By having the RDP draw at 1/8th intensity via the fog alpha value, sprites gain headroom for additive blending without wrapping. A conversion pass on the RSP co-processor brings colors back into the 16-bit display buffer, taking about 3.1ms for a full 320×240 frame using HailToDodongo's optimized microcode.

This technique sidesteps the N64's notorious memory throughput constraints by only rendering additive-blended sprites to the 32-bit buffer, then combining with the main 16-bit scene. The demo code is available on github.com/phoboslab/n64_addblend, and the approach proves practical for applications that need bright, wrap-free particle effects on hardware that never officially supported them.