Useful books for programmers in game dev
Hello, Habr!
I have not written anything since the time of my first article , I decided that it was time to fix it.
There is an opinion that there is almost no intelligible literature about game devs, all knowledge must be obtained in a practical way. From my point of view, there is a grain of truth in this opinion, however, I cannot completely agree with him.
Below I give reviews of books, which I find very useful in various sections of computer science that are used in game development. I intentionally omit books on C ++ and algorithms: it seems to me that this topic has already been studied and covered so much that it’s not worth talking more about it.
I tried to cover the maximum number of different topics, especially those that are asked at interviews. I tried to refrain from domain-specific literature: professionals already know. All images contain links to Amazon.
Which books do you like?
You can also write in the comments on which topics you would be interested in posts.
A very detailed and academic (with all the evidence) presentation of 3D math (in Russian, probably, it is called “linear algebra and analytic geometry”) through the prism of a game dev. In this case, nothing more, everything is very to the point. Maths are needed not only by graphic programmers: tool builders and game mechanics can also easily ask (especially in cool offices) for an interview about the intersection of a ray with a triangle.
Computer architecture is at a very deep level, with modern examples. About how the pipeline, caches, brunch prediction, superscalars work. Written by the creators of the MIPS architecture, which runs, for example, Nintendo 64, PlayStation 2 and PlayStation Portable. It is recommended to start reading from the appendix - there is an “introductory course”. A must for anyone writing any runtime code.
A very cool book about almost all aspects of game engines. There are many rakes that beginners collect. I regret that I did not read it at the dawn of a gamedev career. Recently a new edition has been released.
Despite the name, it is worth reading to everyone. Accelerating structures (hgrid, octree, bsp) are considered in great detail. There is a big chapter on optimization. The amount of information on the sentence of the text rolls over, you need to read it very carefully.
Good practical guide. All sorts of buns in the form of lock-free, etc. Very nice to read.
The only non-paper book. Good patterns are collected, and most importantly, they are not sucked from the finger, since the author has a lot of practical experience. A lot of concrete examples. If it were on paper, I would love to buy it.
I have not written anything since the time of my first article , I decided that it was time to fix it.
There is an opinion that there is almost no intelligible literature about game devs, all knowledge must be obtained in a practical way. From my point of view, there is a grain of truth in this opinion, however, I cannot completely agree with him.
Below I give reviews of books, which I find very useful in various sections of computer science that are used in game development. I intentionally omit books on C ++ and algorithms: it seems to me that this topic has already been studied and covered so much that it’s not worth talking more about it.
I tried to cover the maximum number of different topics, especially those that are asked at interviews. I tried to refrain from domain-specific literature: professionals already know. All images contain links to Amazon.
Which books do you like?
You can also write in the comments on which topics you would be interested in posts.
Mathematics for 3D Game Programming and Computer Graphics
A very detailed and academic (with all the evidence) presentation of 3D math (in Russian, probably, it is called “linear algebra and analytic geometry”) through the prism of a game dev. In this case, nothing more, everything is very to the point. Maths are needed not only by graphic programmers: tool builders and game mechanics can also easily ask (especially in cool offices) for an interview about the intersection of a ray with a triangle.
Computer Architecture, Fifth Edition: A Quantitative Approach
Computer architecture is at a very deep level, with modern examples. About how the pipeline, caches, brunch prediction, superscalars work. Written by the creators of the MIPS architecture, which runs, for example, Nintendo 64, PlayStation 2 and PlayStation Portable. It is recommended to start reading from the appendix - there is an “introductory course”. A must for anyone writing any runtime code.
Game engine architecture
A very cool book about almost all aspects of game engines. There are many rakes that beginners collect. I regret that I did not read it at the dawn of a gamedev career. Recently a new edition has been released.
Real-Time Collision Detection
Despite the name, it is worth reading to everyone. Accelerating structures (hgrid, octree, bsp) are considered in great detail. There is a big chapter on optimization. The amount of information on the sentence of the text rolls over, you need to read it very carefully.
C ++ Concurrency in Action: Practical Multithreading
Good practical guide. All sorts of buns in the form of lock-free, etc. Very nice to read.
Game programming patterns
The only non-paper book. Good patterns are collected, and most importantly, they are not sucked from the finger, since the author has a lot of practical experience. A lot of concrete examples. If it were on paper, I would love to buy it.