3D Rendering

The PJRC forums are a great place to collaborate, share, and learn. It’s incredible to watch projects evolve and members learn from each other, and often even we are blown away with some of the things folks do with Teensy.

Case in point: JarkkoL’s port of their tiled software rasterizer. JarkkoL’s initial port targeted the ILI9341 LCD driver at 320x240x16 bits per pixel (bpp) via SPI, with 16bpp frame and depth buffers. Running on a Teensy 3.6, the rasterizer uses just 27kb of RAM, with 4,000 triangles stored in flash. As the thread unfolds over a little under two months, more and more enhancements are added, including asynchronous DMA transfer, cluster visibility culling, and texture support.

A port to Teensy LC was accomplished in just 8kb, and the Teensy 4.0 port pushed 16bpp updates at 49 frames per second. We hope to see these examples developed into a full library soon!