Video link: Introduction to game development( One) Game development overview <>(3 Lesson
often: about1 hour03 Minute)
This video introduces some basic knowledge around the development and development of video games, At the same time, several problems are put forward and solved

Notes and summary( Please learn the video content first):

1. Game development

* 20 century70 Beginning of the decade First hostmagnavox odysse
* 80 years Red and white machine
* 80-90 years Various types of nonFC Host(PS,NDS etc.) PC Single player game
* 90 years-2000 year LAN battle game
* 2000 After year Large multiplayer game Webpage Game Mobile Games
* Now VR,AR ..
2. How games are developed, What is the development process?
The original game is rough, There's very little content, Generally developed by one person, Art and planning are done by ourselves( Suggestions to see《doom The Book of Revelation》).
As the game gets more complicated, Need more than one person to cooperate, The division of labor has become obvious. The simple process is as follows:

* a. First of all, discuss and determine the basic content of the game, Type, etc. File game projects
* b. Programmers build the most basic game framework, Single machine or online game, What platform?( At present, Some very simple gamesdemo You can also skip programming, Use game engine directly)
* c. Plan to design and build game details( Including plot, take laws and regulations lightly, Checkpoint, numerical value, System, etc.)
* d. Art needs a game world conceived according to current planning, Provide the right artistic effect( Including original paintings, Model, Special effects,UI, animation, Scene, etc.)
* e. program, Fine Arts, Plan the continuous communication among the three parties to improve the game content and constantly test and optimize( This is the most time-consuming process)
Be careful: Planning here is more than just thinking about how to play the game, We also need to make various configurations for the interfaces left by the programmers, Because the requirements of the project change too frequently
* f. After the game content is basically completed, Quality inspection and other personnel are required to start the test, Programmer repairBug
* g. After a certain test of the game, Release. At the same time, it is handed over to the operation and maintenance personnel for basic maintenance, There must bebug, All functional personnel should cooperate with each other
2. What technologies are needed to develop games?

* a. Basic qualities required as a programmer: Including basic language programming, In depth understanding of language features, Understand computer related Fundamentals, Design mode, etc
In fact, it's hard for many people to reach the standard in this area, But we can improve our skills while playing games
* b. To build a game, you need to understand the relevant technologies of different platforms, But it doesn't need to be too deep
* c. Need some knowledge of engine, Be familiar with the use of engine functions as much as possible
* d. Common script technology(lua etc.)
* e. along with3D Game development, It is necessary to have a deep understanding of graphics and image knowledge( Mathematics involved, Very complex and huge modules)
* f. Network game needs to master basic network knowledge(TCP/IP,Socket,Http), Understand synchronization mechanism
* g. Animation technology
* h. Know how to use physical engine
* i. Basic scene management technology
* j. AI Related technology, Most of theAI It's still relatively simple, No machine learning required
3. What is the general responsibility of programmers?

* a. Achieve planning requirements( Mostly logical requirements)
* b. Provide internal tools, Speed up development. For example, the current engine does not support someNPC Object highlighting, Unable to drag resources into the game and other functions, Need programmer to provide Improve development efficiency
* c. repairBug
* e. Optimization experience, That is to say, performance optimization, Increase frame rate, Reduce memory overhead, etc
Large companies at present, There are many kinds of programmers( Generally divided into logic programmers and engine programmers), There are also differences in what is done.
Logical procedures are generally frequent communication with planning, Procedures for direct development of project requirements
Engine program is generally to study engine function, Optimization engine( Prompt performance, Improve performance, etc), But it's not absolute.

4. How to play( proposal)

* a. Consolidate foundation( language, data structure, algorithm, network, operating system, Graphics, etc.)
* b. Have a basic understanding of game development, I suggest that you read the video of this series according to my article( If you don't understand a noun, check it, Go and study.), Then read through the game engine architecture
* c. practice! Choose a game engine and develop the gamedemo, Refer to other gamesdemo, Try to apply the learned game knowledge as much as possible. Think more, More understanding
* d. Find ways to enter the industry, Learn from projects. If there's a chance( There are many opportunities for new students), You can join the industry as long as you have enough program foundation
5. What is the gap between novices and real developers?
The most important thing is experience, The technologies mentioned above are all general, Every aspect is an infinite pit. Novices usually only use it, but they don't know why,
Really experienced developers don't just use, It can even imitate a set of almost the same framework and improve it, There are more solutions to problems.

Last article: Introduction series of game development( Catalog) <>
Next article: Introduction to game development( Two): Design patterns in the game

Original link( Reprint please indicate):