I’ve coded a sample of software based ASCII 3D rendering engine in C++ from scratch.
It draws directly into the console framebuffer (so it’s horribly slow, therefore I use very primitive models and no rasterization).
It supports .OBJ models created in Blender (yep it supports 3D modelling software like Maya, 3DS Max, Blender etc.). Since It’s all real time rendering, you can see me changing the character used to draw the model on the fly. You can notice how I switch from console ASCII to Windows Device Context rendering back and forth at the end of the video.
Oh, yeah, and it has back-face culling implemented.