Mathematics for 3D Game Programming and Computer Graphics基础学习
来源:互联网 发布:linux同名文件夹合并 编辑:程序博客网 时间:2024/05/07 04:50
主要结合opengl学习3d的中的数学知识,以后主要精力都集中在底层。
第三章 矩阵
3.1 Matrix Properices
转置矩阵
The transpose of an n × m matrix M, which we denote by M T , is an m × n matrix for which the ( i , j ) entry is equal to M ji (i.e., M ij T = M ji ).
3.2 Linear Systems
线性方程的计算,转换的最终样式。
Finding solutions to a system of linear equations can be achieved by performing elementary row operations on the matrix formed by concatenating the coefficient mattix and the constant vector.
3.3 Matrix Inverses
倒置矩阵的计算
An n * n matrix M is invertile if there exists a matrix, which we denote by M-1, such that M M-1 = I. The matrix m-1 is called the inverse of M.
3.4 Determinants
The determinant of a square matrix is a scalar quantity derived from the entries of the matrix.
3.5 Eigenvalues and Eigenvectors
MV i = λ i V i .
3.6 Diagonalization
矩阵对角化:对n阶矩阵A,如果可以找到可逆矩阵P,使得P-1AP = 对角阵,就称为把方阵A对角化。
第二章 Vectors
2.1 Vector Properties
标量为1的向量和垂直向量。
It should be noted that the term to normalize is in no way related to the term normal vector, which refer to a vector that is perpendicular to a surface at a particular point.
Any vector lying on the same side of plane as P yields a positive dot product with P.
2.2 The Dot Product
求一个向量在另一个向量的投射矩阵计算公式,一横一竖两个向量相乘,将单独的向量Q提取出来。两个向量点乘等于两个向量的余弦
Vectors whose dot product yields zero are called orthogonal.
2.3 The Cross Product
The cross product of two three-dimensional vectors, also known as the vector product, returns a new vector that is perpendicular to both of the vectors being multiplied together.
2.4 Vector Spaces
N个集合的向量空间可以理解为减去在每一维向量空间的投射。
习题
1. 简单的计算
不同的投射,会产生不同的结果。
-2 [2 1 -6] [-4/9, -4/9, -2/9]
第一章 渲染流水线 (The Rendering Pipeline)
1.1 图像处理器
几何体由顶点和基本几何形状组成,基本几何形状有lines, Triangles, Quads, Polygon等。
The geometrical forms of these objects are each represented by a set of vertices and a particular type of graphics primitive that indicates how the vertices are connected to produce a shape.
Most of the time, the surface of a 3D model is represented by a list of triangles, each of which references three points in a list of vertices.
CPU和GPU工作流程
synchronous operation
The CPU sends rendering commands to the GPU, which then performs the rendering operations while the CPU continues with other task.
交互过程图
1.2 顶点变换 (Vertex Transformation)
坐标系转换
Once a model's vertices have been transformed into camera space, they undergo a projection transformation that has the effect of applying perspctive so that geometry becomes smaller as the distance from the camera increases.
1.3 Rasterization and Fragment Operations
- Mathematics for 3D Game Programming and Computer Graphics基础学习
- Mathematics for 3D Game Programming and Computer Graphics - Projections
- Mathematics for 3D Game Programming and Computer Graphics - Quaternion Mathematics
- Mathematics for 3D Game Programming and Computer Graphics - Lines in 3D Space
- Mathematics for 3D Game Programming and Computer Graphics - Planes in 3D Space
- Mathematics for 3D Game Programming and Computer Graphics - Reflections and Oblique Clipping
- Mathematics for 3D Game Programming and Computer Graphics, Second Edition
- [book][0001]Mathematics for 3D Game Programming and Computer Graphics
- Mathematics for 3D Game Programming and Computer Graphics - Vector Cross Product
- Mathematics for 3D Game Programming and Computer Graphics - Rotation Transforms
- Mathematics for 3D Game Programming and Computer Graphics - Projection of P onto Q
- Mathematics for 3D Game Programming and Computer Graphics - Rotation Transforms About Arbitrary Axis
- Mathematics for 3D Game Programming and Computer Graphics - Transforming Normal Vectors
- Mathematics for 3D Game Programming and Computer Graphics - Rotations with Quaternions
- Mathematics for 3D Game Programming and Computer Graphics - Spherical Linear Interpolation
- Mathematics for 3D Game Programming and Computer Graphics - The View Frustum
- Mathematics for 3D Game Programming and Computer Graphics - Perspective-Correct Interpolation
- Mathematics for Computer Graphics
- qemu结合gdb调试龙芯1c的裸机程序helloworld
- jquery简单的用户名密码验证
- 渗透技巧之ssh
- 【干货技术贴】之-mac下如何安装WebStorm + 破解
- Jmeter接口测试+压力测试
- Mathematics for 3D Game Programming and Computer Graphics基础学习
- 课程表(div)
- Maven提高篇系列之(二)——配置Plugin到某个Phase(以Selenium集成测试为例)
- mybatis 出现 Value '0000-00-00' can not be represented as java.sql.Date
- JAVA程序调用javax.mail发送邮件
- eclipse启动tomcat后项目无法访问localhost:8080,而通过startup.bat启动后却能访问
- Linux基础命令讲解
- 怎么快速提取一个excel文件中的所有工作表名
- SpringCloud基础(3)