Introduction to online game development

Source: Internet
Author: User
I am often asked how a person with only one programming experience or none can start on this road. before that, I will do my best to provide one-on-one answers and help to the questioner. but now it seems impossible, because when the problem surges to me, I almost cannot control it. therefore, I think it is time to edit all my comments and suggestions into a book for your reference.

This article aims to help those who want to make their own games, but suffer from nothing. in fact, I have already divided my reader group into a type with zero programming experience. this article focuses on game programming and game design issues, not about the production of the game's artistic effects. I will not mention this article about the operation of the game market, because such information resources on the market have been flooded with animals. however, I will give a brief overview of all the problems you encounter during the game production process. finally, please do not regard the road I paved for you to making a game as unique, or even the best. although it has contributed "immortality" to me and others.

Select a programming language

When you start to learn how to make a game, the first thing you need to do is to select a programming language with many options, including Basic, Pascal, C, C ++, Java, and so on. of course, the debate on which language is the most appropriate for beginners is fierce. I suggest you take a look at John Hattan's masterpiece. "What Language Do I Use? ", Which mentions many popular programming languages.

First, I recommend c and c ++. some people may say, "This language is too advanced for beginners." But you see, I started from this language, I am afraid to be the same. in addition, the C and C ++ languages are widely used in the market, so you can easily get reference resources and various help. of course, the key to the problem is not whether or not you really start to develop your game pipeline by learning c and c ++ programming languages. In fact, no matter which language you have learned, the other learning method is just a piece of cake. in any case, if you decide to start from C, C ++, you must be sure to learn the object-oriented before you start) you have mastered procedural-oriented programming before.

When you start learning C and C ++ with an ambitious ambition, you are frustrated to find it too difficult. Now you can look back and see what languages are easier to learn, such as Basic or Pascal, in fact, this is also harmless, there is nothing difficult to feel. but what I emphasize is that if you stick to learning C and C ++ and find good learning resources, learning C and C ++ is a matter of course.

Your next question may be: how can I learn C and C ++. I would like to answer this question. the best way is to join a learning class, so that you have a teacher who will answer your questions and help you improve your business, the homework assigned by the teacher allows you to apply what you learned to practice.

If you have no conditions to take a class, the second method is to buy some good books. I suggest you go to the local bookstore and take a rough look at the content of the book. After selecting a new one that you can understand and learn, you can buy a more advanced book, and then you know what book you should buy.

Speaking of this, I want to pause for a moment, because I want to talk about the question of economic endurance-I have observed that this is a common concern of the majority of developers, especially young game developers, most of them feel shy about purchasing textbooks or other learning materials. but don't worry, First of all there are still a lot of free resources can be used, like the local library ah, there is Macmillan Computer Publishing website, (URL: http://www.mcp.com/personal ), you can download a variety of programming books. however, if you really want to be a programmer, You have to invest in your career. because no matter how you use it, you can't do without money! (Unless you try an illegal way, of course .)

In fact, there are also a lot of tutoring materials on the Internet to learn C and C ++ languages. However, in my opinion, it is best to supplement those tutoring materials in books, instead of being your only learning resource.

Select an appropriate Editor

The program you write is also called the source code. It can be retained by a text file. You can even use the "NOTEPAD" to write C and C ++ programs. but if you want to convert it into an executable file, it will take some twists and turns out, and you can use the editor.

There are a lot of various editors on the market, among which there are a lot of free editors. but it is very important to choose one that suits your needs. one benefit of the free editor is that you can try it and see which one is the most satisfactory. however, the vast majority of free editors are not "inherently inadequate", or "poor development" (meaning there are many defects), which is far inferior to the commercial version. in addition, all commercial version editors are in the test phase, the price is not high, and their functions are not much different from those of genuine versions.

In short, the choice of the editor depends on your economic endurance, as well as the operating system coding and development platform for your file operation. if you want to develop on Windows, I strongly recommend Microsoft Visual C ++, which has a powerful development environment that allows you to develop your work freely. in addition, student friends can purchase it at a low price. however, if you want to use dos for development, you 'd better use DJGPP for free.

Select a suitable target platform

Windows: If you want to become a professional in the game field, or you want many players to patronize the game you develop, you should choose Windows, because most players use this stuff, it will not be escaped so quickly. directX is a development library that can directly operate the hardware. with DirectX, you can write high-performance games.

Dos: Dos used to be the mainstream game development platform, but it was just yesterday. although many Dos fans still use it for development, there is no commercial game developed by it, and it will become increasingly thin as Microsoft abandons it, the end of the road. so if you only want to develop a game, do not choose Dos. If you choose Dos, it is best to stop it.

Linux: Linux and UNIX are rooted in a constant and chaotic nature, which has become increasingly popular recently for many reasons, including its performance stability, reasonable price, and anti-Microsoft camp. although its user base is not very large, its huge development potential makes it a desirable choice for the target platform.

Macintosh: Mac has a large group of loyal followers, and almost every MAC enthusiast I know has told me the same wish, that is, using MAC to develop more and better games. although I don't see a lot of reference materials for developing games with MAC, I firmly believe that there will be some in the future, so maybe MAC is also a good choice.

Doneles: the gaming market for game Consoles is huge, so its development potential cannot be underestimated. however, in the current era, it is unreasonable to develop game consoles in non-commercial mode. There are many reasons and it is hard to say a word. but if you are developing game consoles, You 'd better work in a commercial game company.

Developed games:

Now it is time for us to discuss about how to develop a game. for convenience, I suppose you use C/C ++ for WINDOWS development. However, if you choose other development tools or development environments, what I said also applies.

First of all, before you begin to consider developing a game, you have to be a good player in C/C ++. You have to understand pointers, arrays, structures, and classes, you must use them skillfully. if everything is ready, start making the game.

Second, don't expect this article to cover everything and teach you all the knowledge in game development. Fortunately, it's not necessary because there are a lot of books on game production on the market, there are too many such tutoring materials on the Internet, such as gamedev.net. well, the following are my suggestions:

Choose one or more books: For Windows beginners, Tricks of the Windows Game Programming Gurus website is a good resource to use. in addition, read one or more textbooks and practice each case carefully.

Online materials are good supplementary materials: they not only classify development knowledge, but also cover the knowledge that is not found in books.

Ask experts for help: if you cannot find the answer to your question on the book or on the Internet, leave a question in the message book or ask someone in the chat room, many enthusiastic people are happy to help you, OGDEV. NET is a good forum. however, "Learning" doesn't work, and you have to "apply what you have learned ". start with developing a simple game, and then go deeper. in the beginning, you can choose to study independently and never join the game production team. This will only make your learning process "slow down", not "accelerate ". but once you 've armed yourself with a few decent games, it's time for you to show your skills in the big team.

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.