7 AnswersNew Answer
D'Lite my brother here is an article / reference which might help answer your question. Myself, I would recommend advanced algebra and advanced trig along with some calculus ... http://forums.cgsociety.org/t/how-much-mathematics-is-involved-in-3d-modelling-and-animaton/1606393/3
You may also need to learn about splines.
You could learn quaternions as they help you not only with 3-d manipulation, but rotation as well.
How to build an app after become a master programmer in python
Vectors, translation, perspective, rotation, matrices, rotation orders for 2 dimensional rotation and for shading and stuff of faces you need to code shaders so normals dot products pythagorean theorem and then remains face sorting so again pythagorean theorem then for culling out the faces not facing you you use some kind of culling mechanism and a basic understanding of how mathematics work (e.g sine and cosine etc.), and an understanding of arrays and just overall coding. If you want to get straight into it I have uploaded a 3d engine tutorial covering the basics on my channel Qyther on youtube, you should find it by searching it. Happy coding!