3D Math Primer for Graphics and Game Development 2nd Edition
gamemath.com
gamemath.com
Some videos on it that I found helpful:
- Math for game programmers[0]
- Homogeneous Coordinates (Cyrill Stachniss, 2020)[1]
- Essence Of Linear Algebra, 3b1b[2]
It seems like a really good companion book to Physically Based Rendering[4], which also requires some amount of calculus and statistics. The primer in the article only has a section on blinn/phong shading, which is great as something that's quick to implement.
If you're learning any of it for the first time, I really suggest using a repl based language like julia or python that make it really easy to plot the functions being implemented. They can be hard to write tests for, but can also be very easy to visually see something wrong.
[0] https://www.youtube.com/watch?v=o1n02xKP138
[1] https://www.youtube.com/watch?v=MQdm0Z_gNcw
[2] https://www.youtube.com/playlist?list=PL0-GT3co4r2y2YErbmuJw...
[0]https://www.scratchapixel.com/lessons/3d-basic-rendering/per...
It's great that people are putting versions of their books online. I just hope that they keep making physical versions. I much prefer reading on paper rather than a screen or even kindle.
Like probably many people, I've wanted to make games since I was a kid, but somehow there is never enough time or energy to start doing indie development seriously and I always imagined there's no way I could get hired in a game company without a good developer or arts background.
Yes, it can be an advantage if you want to apply to a rendering or engine dev position, but obviously being a good developer is just as important. You don't necessarily need to develop an indie game either, a few renderers should be good.
Really what you need is being a good general programmer, being good at algorithmics, and being good in linear algebra. For many programmers the later is most difficult, but the first two are about as difficult to an outsider imo. You need to be able to write good C++ and understand performance characteristics of GPUs and CPUs well. It's not easy on the programming side - game engines and their renderers are some of the finest achievements in software engineering.
Alternatively, you could go for a research position in a game company or GPU company.
I would have expected, perhaps incorrectly, that there may be a short mention of it and how it relates. There are some additional things that are relevant such as tile sorting.
So it's a little off topic, but are there any good resources on isometric projection and how 2d/3d relate to it that people would recommend?
§ 10.2 Viewing in 3D is mostly about perspective projection, and discusses orthographic projection briefly. (Isometric view is just a collection of orthographic views along each axis, usually either 3 [one view on each axis] or 6 [+ and - directions one each axis].)
Orthographic (including isometric) views have fairly trivial math, so being a book about the math of 3d graphics, they don't get a lot of attention.
If you are a programmer interested in the idea of making games, then go forth and learn all the math and code.
1. You can search for Space Quest 2. Search for Unique writing stye. It's at the end of that paragraph 3. Appendix B