Game programmer Development Plan

Source: Internet
Author: User

This is what I found from shared files in the online game programming Group 1. For sharing and confusing.

Compared with playing games, writing games requires thousands of times of complexity. In addition to mastering general programming skills, there must also be a considerable foundation of graphics, physics, and mathematics, especially in China, the lack of relevant information makes it difficult for beginners to get started. The following summarizes some entry-level methods and documents that are easier to start.
First, you must be proficient in a high-level language, such as C ++ or C #. Second, you must have good English reading skills. For game developers, English reading ability is one of the most important and basic tools, because most of the resources you encounter will be in English. Do not always wait for others to translate for you. Try to read the English documents and you will find that it is not that difficult :)
At the beginning, you have to select a graphic API, usually between DirectX and OpenGL. If cross-platform is considered, OGL is the first choice. If it is only on the MS Platform, dx is the first choice. I don't know much about OGL, so the big department information below is related to DX.
Of course, as one of the preparations, you must first download the latest DirectX SDK from the DirectX develop center.
Introductory books are very important. We recommend <Introduction to 3D game programming with DirectX 9.0> (as if a Chinese version was published last year), which is also the legendary Dragon book, this can be said to be the best DX entry-level teaching material. Frank Luna discussed all aspects of DX from the beginning to the end. In addition, with <advanced 3D game programming with DirectX 9.0>, although the title is advanced, there is actually not much advanced content. After reading these two books, you are basically familiar with DirectX. The same is true if you want to learn xNa. After all, xNa is based on DX.
Don't read graphics books from the very beginning. At this time, you don't have a basic understanding of Graphic programming, so you can see it in the dark. Do not use online tutorials or forum questions as the primary learning path. Find a good book and study it systematically, with the highest efficiency. Do not immediately look at the examples in the SDK. The basic principles of many graphics are not clear only by reading code. Some books that have been too old are not to be read, such as Windows game programming master skills (I always see someone looking for this book ). Some people say that the basic idea remains unchanged. Unfortunately, for modern GPUs, many early technologies and optimization techniques have long expired. Graphics programming is a very fast developing technology. Let's look at the speed of GPU development ~ Two years is the innovation of a generation of products.
Well, after getting started, it is the stage for you to consolidate and expand your horizons. Now it is more appropriate to look at computer graphics. Vomit blood recommendation <Real-Time-rendering>, this book is a must-read book and reference manual for all graphic programmers. Recently, the third edition (Updated: An electronic version is available ). Unfortunately, there is only the second version in China, which is a little old. If you cannot find the third version, it is worth reading. All other books in China named after graphics have one thing in common: Boring and outdated. You only need to look at the two-dimensional 3D transformation and curve and surface representation. If you find that you did not learn mathematics well in the past, three mathematical books are tailored to game programmers: <3D math primer for graphics and game development>, <mathematics for 3D game programming and computer graphics> and <essential mathematics guide 2nd Edition>. The first book contains a Chinese version, and the last one is a new book generated in the past 08 years.
In fact, there is no fixed learning route after getting started. It is best to learn it based on the direction you are interested in.
Shader: cg_tutorial and the complete effect and HLSL guide are both good introductory materials. Of course, there are also SDK documents. <Shaders for game programmers and artists> there are a large number of entry-level examples. <Advanced lighting and materials with shaders> describes various illumination models and techniques. <GPU gems> 1 ~ 3 must be read. Although there are 2 or 2 Chinese versions, some translations are not ideal. It is strongly recommended that you directly read the English version. The shaderx series is also a classic series. It is published every year and contains the latest real-time rendering technology. Now it has 6th million books. However, only 1 ~ can be found on the network ~ 3. Most shader in volume 1 and 2 are written Using ASM, but it is not difficult to convert to HLSL by understanding the principle. In addition, nvidia sdk and ati sdk are also important resources for learning shader. Finally, <programming vertex, geometry, and pixel shaders>
Terrain: <real time 3D terrain engines using C ++ and DX9> a comprehensive discussion of various technologies related to terrain rendering, at least 5th ~ Go through chapter 9. Then you can go to virtual terrain to view the latest terrain rendering technology.
Model import and Animation: <advanced animation with DirectX>, only one copy is sufficient.
Physics: Both <game physics> and <game physics engine development> are good. <Real-time collision detection> it is the best book in collision detection. Unfortunately, there is no electronic version yet.
Levels: <level of detail for 3D graphics>
Ray Tracing: <physical-based rendering-from theory to implementation>
Engine Design: To be honest, there are no excellent books in this regard. The more core the content is, the fewer people are willing to write it. <3D Game Engine Architecture Engineering real-time applications with wild magic> only chapter 3 is worth reading. <3D Game Engine programming> You can select a part of the chapters you are interested in, but in general, it is a little bit simple. Updated: <3D game engine design, Second Edition> the version has been released and is strongly recommended. Recently we found that <pro ogre 3D programming> is also very good, with more than 200 pages, but it allows readers to quickly understand the design and architecture of an existing engine.
AI: <programming game AI by example> very good, it seems that there is a Chinese version, alternative <artificial intelligence for games>. Of course, the <AI programming wisdom> series is also a must-read file, but currently only 1 ~ 2.

Network: % ## @ %... (I am an Internet idiot + _ + ........)
Comprehensive: <game programming gems>, however, due to the wide range of content, the quality of the article is uneven, so you can choose to read it. Paper of major conferences such as GDC, gamefest T, and Siggraph should also be concerned over the years.
As for those "all in one" or those books that you write an FPS game for N days, you should not read them. The common problem of such books is that they are all said, and the results are not clear.
In addition to books, we recommend some good network resources:
In addition to a large number of tutorials, www.gamedev.net's accumulated content on the Forum over the years is Paul Vientiane. Make good use of Forum search and you will find that no matter how powerful you are, there are always people who are better than you who have encountered the same problems as you long ago and have provided solutions.
NVIDIA and ATI developer centers
Creators.xna.com xNa Official Website
Www.gamasutra.com is similar to gamedev.
Www.beyond3d.com in addition to discussing software, we can also see the analysis of the hardware architecture.
Www.ziggyware.com best xNa tutorial website
Www.gameres.com is the only professional game programming website in China. Unfortunately, compared with gamedev, it seems too cold -_-#
Of course, don't forget to collect blogs from various forums :)
Finally, reading is not enough. It is king to write more and practice more.
PS: The above books can be started through the Internet or bookstore, except for those mentioned in particular.
PPS: Do not ask me for an e-book. I can find it. I believe you can also find it. If you cannot find it, I certainly don't have it either :)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.