In my quest to learn 3D game programming, I came across a very informative article titled “Game Engine Anatomy 101” by Jake Simpson. This article is divided into a ten part series that discusses the current state of gaming engines and how they have evolved in such a short span of time. It goes into great detail about the “renderer”, which is the part of the game engine that deals with displaying of visually exciting effects and scenery. This series also discusses what techniques are currently cutting edge; techniques such as Vertex and Pixel Shaders. I believe that this article is a great place to start, so when you come across certain terminologies and concepts, you will have a basic understanding of what the author is talking about.
I recently started going through the “Managed DirectX 9: Graphics and Game Programming” book by Tom Miller, a leading developer of the Microsoft DirectX API. Although I was able to follow the book, I found that the terminology was foreign to me. I began to build a glossary of terms so that I would know what the author was talking about instead of just churning out code. I have found this glossary to be of utmost importance when following Tom’s examples. Although I believe that I will benefit greatly from Tom’s valuable information, I think that a glossary of terms would have been beneficial to me, a beginner in game programming, given that the book only assumes that you know .NET and not gaming. Despite this fact, I really like this book. It covers very simple but important cutting edge concepts that will get me up to speed. When I am done with the glossary, I will post it here in my blog
Another book that I am using for a reference is Frank D. Luna’s “Introduction to 3D Game Programming with DirectX 9.0”. If you plan to venture down the path I have begun, I would suggest having these two books in your arsenal.
Things have changed so much since the first time I bought a game-programming book. Now that Managed DirectX with C# exists, I think it is finally time to pursue this interest more earnestly.
Peace!