"If I want to learn computer graphics, what mathematical subjects should I study ?" This is probably one of the most frequently asked questions about computer graphics. The answer to this question depends on how deeply you plan to study computer graphics. If you plan to use only the ready-made graphics software, the answer to this question is probably that you do not need to understand too much mathematics at all. If you want to learn more about computer graphics, I suggest you first learn math, triangle, and linear algebra. If you want to become a computer graphics researcher one day, you will have to learn mathematics continuously for a lifetime until you become a programmer.
If you are not very concerned about mathematics, do you still have the opportunity to work in this field? Yes, there are a few fields in computer graphics that do not require too much mathematical thinking. You should not give up computer graphics just because you are not a mathematical wizards. In any case, if you are willing to actively learn recent mathematical achievements, you will have more freedom to choose the questions you want to study.
There is no absolute answer to the question that mathematics is the most important in computer graphics. Different research fields and questions in graphics require different mathematical technologies. At the same time, your own interests will take you to certain fields and stay away from certain subjects. Below are some mathematical subjects that I think are useful in graphics. But don't think that to become a graphics expert, you need to become an expert in all these mathematical fields! Because I try to give a more comprehensive description of the Application of mathematics in computer graphics below, but most researchers may never use some of these mathematical tools.
Algebra and triangle
For graphics beginners, algebra and triangles at the intermediate level may be the most important mathematical tools. Almost every day, I need to solve one or more unknown numbers through some equations, and calculate the length of an unknown edge through the length and angle of known edges in some graphs. Algebra and triangles are almost the tools you use every day.
What about the geometry you learned in high school? He is rarely used in graphics research. Strange? In fact, the main purpose of your learning in high school is to learn how to prove mathematics. Of course, Mathematics proves to be a very valuable thing, but it is rarely used in engineering.
If you have a better foundation of algebra and triangles, you can prepare to read the graphics getting started books. Most of the graphics tutorials contain a brief introduction to linear algebra. Linear Algebra is the next important mathematical tool for graphics.
Recommended reading:
Computer Graphics: Principles and Practice
James Foley, Andries Van Dam, Steven Feiner, John Hughes
Addison-Wesley
[A Big blog book, but I still love it]
Linear Algebra
The idea of linear algebra can be used in the entire graphic field. X, Y, and zcoordinates are used to represent geometric models in a numerical manner. These X, Y, and zcoordinates are often aggregated to represent a vector, vector, and related mathematical objects, a thing called matrix is used every moment in graphics. Vectors and matrices are the most elegant, dignified language used to represent the translation, rotation, and scaling of an object. Anyone who wants to study graphics must lay a solid foundation in this field. Most graphics textbooks will introduce linear algebra, which is generally enough for you to get started with graphics.
Recommended: Linear Algebra and Its Applications
Calculus
Calculus is an important tool for advanced graphics. If you are planning to study graphics, I strongly recommend that you lay the foundation of calculus. This is not only because calculus has tools that are often used in this field, but also because most researchers use the calculus language to describe their problems and solutions. In addition, many mathematical fields require calculus as a preparatory knowledge. Learning calculus can open the door to many areas of graphics and mathematics for you.
Differential ry
In this field of mathematics, we study curve and surface equations. If you want to obtain the normal of a certain point on a smooth surface, you need to use differential ry. If you want to let a point move at a specific speed along a curve, you also need to use differential ry. If you want to make a smooth surface look rough (that is, the legendary "bumpping"), this effect will also attract differential ry.
If you want to study how to create a shape using curves and surfaces (the legendary "modeling"), you need to at least use basic differential ry. Multivariate function calculus is a preparatory knowledge in this field.
Recommended reading:
Elementary differential geometry
Numerical Method (or scientific calculation)
Almost every time we represent and calculate values in a computer, we use an approximate value instead of an exact value, so there is often the possibility of mixing errors quietly. In addition, there are often several ways to solve a numerical calculation problem. Some methods are faster, some are memory-saving, and some are more accurate than others. Numerical calculation is the science of the problem. This is a very broad field. Several mathematical fields I will mention can be considered as subfields under the protection of numerical methods. They include: Sampling theory, matrix equations, numerical Solution of differential equations, Optimization)
Recommended reading:
Numerical recipes in C: The art of scientific coomputing
[This is a very valuable reference book, but it is generally not used as a textbook]
Sampling theory and signal processing
In computer graphics, the expressions of some objects, such as dummy images or surfaces, are a series of discrete values stored in a two-dimensional array. In any case, when we do similar things, we create a "Sample" representation of an object. A good understanding of sampling theory is very important for using and controlling the quality of objects using such expressions.
Matrix Equation (matrix equations)
Physical
Numerical Solution of Differential Equations
(Optimization method) Optimization
Probability and Statistics
Computational Geometry
Computational Geometry is a discipline that studies how to effectively describe and manipulate geometric models in computers. For example, to test whether two objects collide, determine how to split the Polygon
This field combines algorithms, data structures, and mathematics. People who study modeling in the graphics field need to study this topic.
Book recommendations:
Computational Geometry in C
Joseph O 'Rourke
Cambridge University Press
[Undergraduate text]
Computational Geometry: An Introduction
Franco Preparata and Michael shamos
Springer-Verlag
[The classic text, somewhat dated]