I'm looking for books and resource to teach myself linear algebra to be used in 3D graphics programming. I prefer practical approaches to teaching over theoretical (even though math is what, 99.99% theory?) ones, so the dream resource for me would be a book that tackles linear algebra as it's used with 3D graphics programming from a practical perspective.
相关问题
- How to perform element-wise custom function with t
- d3.js moving average with previous and next data v
- How to get a fixed number of evenly spaced points
- Check if a number is a perfect power of another nu
- How to find the distance between a point and a par
相关文章
- Which is the best way to multiply a large and spar
- ceil conterpart for Math.floorDiv in Java?
- why 48 bit seed in util Random class?
- Need help generating discrete random numbers from
- How do you create a formula that has diminishing r
- Math.Max vs Enumerable.Max
- How do I remove axis from a rotation matrix?
- How to calculate end points of perpendicular line
MIT OpenCourseWare offers a free course in Linear Algebra. May be too general for your very specific interests, but it's free. :)
Foley's Computer Graphics would answer your questions in a practical manner.
Although not intended to teach linear algebra the book "tricks of the 3d game programming gurus" has excellent coverage on 3D graphics with examples of how the linear algebra is applied.
Hmm - for 3D programming you don't need all the fancy linear algebra stuff like abstract vector spaces, bases, eigenvectors, etc.
All you need is basic stuff like matrixmultiplication, the definition of the inner product (and some basic facts about it), definition of lines and plans with respect to normal vectors, etc.
All this is normaly covered in undergraduate analytic geometrie courses if I'm not mistaken.
But after all - if you don't want to play with your own renderering engine you gonna use DirectX, OpenGL or something similiar and then you will only need to know how to "address" a point in 3D with it's coordinates and maybe how to compute a normal vector to a "surface" - and in all those cases wikipedia or google will give you a helping hand.
If you ask a mathematician, an engineer, and a game programmer what linear algebra is, you'll get three different answers.
Mathematicians will focus on fascinating but abstract topics such as linear independence and abstract vector spaces. Engineers will focus on eigenvectors, which are used to solve differential equations. For graphics, you are typically using vectors to compute geometry, which is not the focus of linear algebra textbooks.
A good computer graphics textbook should go over most of what you need. The F. S. Hill book is one example.