[Free] Math For 3D/Games Programmers (Unity 3D) - Free Version
Learn comprehensively real-world math used in 3D games programming, with almost a 100 short and easy-to-follow examples – Free Course
What you’ll learn
- Trigonometry
- Complex Numbers
- Vectors
- Geometrical Objects Equations
Requirements
- Basic knowledge of C# and Unity engine. High-school level of math
Description
This is the FREE version of the course that includes only the first 4 chapters (of 9). The full version will be available as a separate course.
This is the FREE version of the course that includes only the first 4 chapters (of 9). The full version will be available as a separate course.
This is the FREE version of the course that includes only the first 4 chapters (of 9). The full version will be available as a separate course.
Does any of the following describe your feelings?
-
Do you want to thoroughly learn 3D mathematics, starting from the basics (such as trigonometry and vectors) and ending with more advanced topics (derivatives/integrals)?
-
Do you already have some idea about 3D mathematics, you use it every day in programming, but still everything doesn’t quite come together and you feel/know that you have some gaps?
-
You don’t know which book (and the choice is wide) for 3D mathematics will be suitable for you to learn? Moreover, most of them have several hundred pages.
-
Do you care about understanding theory and formulas, but at the same time you want to see that this theory has actual, practical application in game/3D programming?
-
Does it irritate you when, in various sources on 3D mathematics, authors explain in great detail what vectors are, only to then overwhelm you with equations with partial derivatives or integrals, without discussing them first?
-
Vectors, Euler angles, matrices, quaternions, derivatives, integrals… Why, if at all, is all this necessary for games/3D programming?
Interestingly, in many sources, such as the thick books mentioned above, topics such as vectors and matrices (in general, linear algebra) are explained very carefully, but for unknown reasons these sources assume that the reader is familiar with derivatives and integrals (calculus in general). This is, to say the least, a strange approach – if you need to explain vectors to someone, they certainly don’t know derivatives yet. By contrast, in this course, two large separate chapters are devoted to derivatives and integrals from a practical perspective. The chapter on derivatives, due to its extremely wide applications, is the largest in the entire course.
The sample programs are written in C# on the Unity 3D engine due to its ubiquity and ease of use. Additionally, using Unity 3D frees us from the need to write code that is not important from the point of view of the topics discussed. For example, we do not have to write code that draws 3D objects in a low-level graphics API such as DirectX, we just use the ready-made and basic Unity functionality. This ensures that all demo programs are concise and focus on the mathematical aspects of the problems being discussed. This also means that even though the demo programs are written in C# / Unity, porting them to other languages and engines will not be a major problem.
The course is intended for all programmers who are already involved in or want to be involved in programming video games and 3D applications/simulations. The course assumes that you already have at least a basic understanding of 3D mathematics from high school, and that concepts such as the 2D/3D coordinate system or quadratic equation are familiar to you. I’m also assuming that you already have at least a basic understanding of any game engine like Unity 3D.
Author(s): Wojciech Sterna