January 30, 2026

Triangles vs rectangles, FIGHT!

Implementing a Tiny CPU Rasterizer

Professor makes DIY 3D engine on the CPU — fans hype, skeptics snark, GPU doomers panic

TLDR: A teacher is building a do-it-yourself 3D engine that draws pixels using the CPU, and it actually works—slowly. The comments turned into a playful brawl: fans share learning links, skeptics dunk on triangles with rectangle jokes, and some predict software rendering’s return as GPUs get pricier.

A university instructor is building a 3D rendering engine that runs on the CPU (your computer’s main brain), drawing pixels one by one like old-school magic—but he swears it’s simple, not wizardry. The tutorial series is still marked “work in progress,” yet the first triangle has already landed on screen, and the crowd rushed in with opinions. Supporters called it a “great resource,” dropping study guides like TinyRenderer and ScratchAPixel as communal ammo. Skeptics couldn’t resist trolling: one zinger insisted rectangles are “far far easier,” which instantly sparked the meme war of Triangle vs Rectangle. Meanwhile, the doom brigade chimed in: with graphics cards getting pricey, software rendering might make a comeback—cue dramatic predictions of “back to basics” computing. The author’s honesty about performance (“reeeeeally slow,” think retro 640×480) fueled nostalgia and jokes, with commenters bragging “60 FPS if we pretend it’s 1999.” Despite the snark, the vibe is mostly curious and excited: people want to understand how screens get drawn, celebrating the DIY spirit and the thrill of making pixels move without a fancy graphics card. It’s part classroom, part hacker pit, and entirely triangle drama.

Key Points

  • The article launches a tutorial series on building a CPU-only 3D rasterization engine that emulates parts of the fixed-function graphics pipeline.
  • Motivations include educational value, deeper understanding of GPU operations, preparation for compute-shader software rendering, and potential hardware pathways (FPGAs).
  • The author emphasizes severe performance limitations of CPU rasterizers, suitable mainly for low resolutions and simple scenes.
  • Initial steps focus on creating an OS window, allocating a framebuffer (canvas), and clearing it to a fixed color.
  • For window creation, the plan is to use a cross-platform library instead of platform-specific APIs like WinAPI (Windows) or Xlib/XCB (Linux).

Hottest takes

"This is a great resource" — delta_p_delta_x
"sure, rasterizing triangle is not so hard, but.. you know, rasterizing rectangle is far far easier" — feelamee
"We may actually need to switch back to software rendering :)" — nottorp
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.