A 3D renderer with Pygame in order to help myself learn the maths properly. I found out that I was lacking in the maths behind 3D rendering a bit, or moreso that I couldn't think it on the spot. So this properly gave me the understanding of going from object space vertices to screen space pixels.
The process is supposed to be similar to OpenGL since that's what I'm learning. The only thing it doesn't do is rasterize, it uses Pygame triangles instead.
Also there is a small glitch where 2 triangles aren't properly rendered in front like they should be.