Game Engine analysis (11)

Source: Internet
Author: User
Original Author: Jake Simpson
Translator: Xianghai

Part 2: Last Chapter

Front end
You have seen the menu system, and you may understand that the display of the top of the game (Huds) is often a neglected and slander part of the game experience. Recently, this field began to be followed by black and white, which is very impressive. In fact, this game does not have a HUD. After Peter Molyneux went through dungeon keeper, it had a large number of icons on the screen. He decided that most of the Games were occupied by these icons, and the main screens were not fully utilized. So he decided to abolish all these things. Peter took a bold step and we applaud you. Unfortunately, this method applies to B & W games, but it is not always useful for other types of games.

In general, Huds should be invisible and only provide the key information you need. This will in itself cause controversy in the design team. The soldier of fortune was originally designed to have an icon on the screen to show you exactly which part of the body was hit when it was hit. When they decide they are not going to punish players for injury in different parts of their bodies, they are finally discarded. On some early Soldier of Fortune screens, you can still see this icon in the upper right corner of the screen.

In a perfect world, the HUD is configurable, so you can decide what to display, where to display, and how long to display. If you don't think you need a local radar, it should be removed. Any displayed HUD information should have a certain degree of alpha (transparency), so if you need to be able to see things behind them.

When it comes to configuration, I am a passionate individual in the game. Because there is no instant storage device to store configuration files, it is fair enough that configuration is not widely available in game consoles. However, with the advent of pS2 and Xbox hard drive, I look forward to seeing more configurations used in the future. Everything that can be customized should be like this, as I have seen. Obviously, we should also provide reasonable default configurations for each item, therefore, players do not have to make a dull selection process on a screen-we will discuss it more later-players should be able to customize their game experiences based on their personal preferences and computing capabilities.

Return to the default things, and it is very important to minimize the necessary modifications. It is always a good thing to make the minimum decision and quickly enter the game. Mortal Kombat and even quakeiii all have a very fast game entry system. A few choices, and then you enter the game. This does not mean that you cannot have one menu to allow you to change everything, but they should not be necessary and should have reasonable default settings. If you have to set up a role with 14 screens before you even enter the game, it may be the first time you have no clue about your choice and will only do anything to go through the screen, some things may have greatly affected the initial game experience. And it may be adversely affected. As a game programmer/designer, I am here to tell you that no matter what you do, it is the first time players choose stupid things, you don't need to make it worse, so you have enough opportunity to make a bad first impression.

With a brief discussion of configuration and Huds (along with a large amount of information from the previous 10 chapters), we finally ended our discussion about the main building elements of modern game engines. Of course, depending on the type of the game and who is making them, each particular game has its own add (or reduce) to this list ). However, there are some other elements that are not actually part of the engine design, but they need some attention.

Game Engine license and components
Now, if you want to create a game, the fastest way to get started is to buy an existing game engine license and develop it on this basis-this is what Raven does, recently, Star Trek elite force was compiled using the quake3 engine. Half life is based on the Quake 1 engine, and deus ex is based on unreal. This list continues. There are now two licensing methods-a full game engine (or a game operating system such as Jason Hall grants lithtech), or a group of partial solutions to a given problem. A good example here is RenderWare, which is a partial solution for rendering scenarios and provides you with some physical solutions. You can't just pat some models and call them completed games-you also need sound systems, game mechanisms, and so on. But it does give you a solid foundation to build a game. Do you still remember all the mathematical knowledge I mentioned in rendering and physics? That's good, so you can avoid all those things.

With lithtech, unreal, and quake, you do get a complete solution-or at least all the solutions that the creators need for their games. Remember that quakeiii can be played by multiple people. From time to time, it is based on a single player, such as Unreal Tournament. With quakeiii, you lose some of the systems required for a single player, such as reading/storing, and scripting. You just arrived at ID to make what a game needs, not necessarily what you need. Sometimes, if one of the limitations of the system happens to be what you need, this may be a real drawback. Add read/store and script to Star Trek Voyager: elite force is not a picnic, but is required. However, using the quake3 engine is still a leading start.

Unreal's famous Tim Sweeney commented on some popular pre-packaged game engine solutions today.

"I think I can fairly compare game engines (such as quake and unreal) and game components such as RenderWare and karma. The game engine is a well-organized framework that includes all the technical aspects of game development: rendering, editing tools, physics, AI, networks, and so on.

They target developers who want a complete, ready-to-use solution so that they can focus on game playability and content. Game components such as RenderWare target developers who are developing their own technologies but do not want to repeat development in some well-developed technical fields.

The game engine has the advantages of solving all technical problems in game development, and has the disadvantages of easily setting up assumptions including game types. For example, unreal has been used to create first-person shooting games, third-person action games, role-playing games, and even pinball games. But no one uses it to make flight simulation games-it is not a technology suitable for such games. The game engine comes with the complete source code. This is a blessing (you can fully see what is happening inside, and you can freely expand it based on your needs) and a curse (if you change it, you will have to merge the changes into the new version ).

Game components have the advantages of solving technical problems in the fields of interest, such as rendering or physics, which can be better than typical developers without spending a lot of time. Their disadvantage is that integrating these components into the rest of your engine is your own business, which is sometimes quite complicated. Game components are generally not accompanied by complete source code, so they do not always know what they do internally. "

Thank you, Tim. The analysis is exquisite.

Create your own game engine?
You may build your own engine instead of buying a license. This avoids all legal disputes such as who owns what and royalty, and if you produce good quality enough, you can even sell licenses to others. However, as we have already pointed out, it takes time and money to complete, let alone absolutely good programmers. Lithtech has been developing for many years, similar to unreal. It is interesting, mainly because of the changed hardware and API versions. In fact, the original unreal version took four years to complete. At the beginning, software rendering was the only game. When development continues, 3dfx brings glide and NVIDIA's TNT graphics card (since then hardware and APIs have indeed made more progress ). That's why it supports so many different paintways. Of course supporting all of these in the same engine is a coding nightmare, but that's another thing. Each engine has a modular approach. When a module, such as a script, becomes obsolete or the demand changes, you just need to extract it and start creating a new module.

The quake engine has experienced a more complete evolutionary development over time. According to the requirements of the next game set by ID, when John Carmack created the fastest running thing on the current hardware, every version of the engine was completely rewritten. Quakeii has been completely rewritten no less than four times. I personally see three different versions of quakeiii's robot code. Other developers cannot avoid this situation. John Scott, who built the soldier of fortune II earth surface system, once told me that he has tried many ways to make physics work right in Dynamic Earth Surface generation.

Building technology or a complete engine is not easy. Today's game engines require a lot, and many systems, just as many people have discovered when trying to create the 'next big engine, from simple display of text on the screen to advanced artificial intelligence. As I mentioned earlier, the ever-evolving new technology makes building a fast and efficient engine a changing goal. In fact, I saw someone spending four days in the PS2 mixed mode just to make a texture with Alpha correctly displayed.

Other engines worth considering include garage games's tribes 2 engine, known as the torque game engine. I understand that it can charge a small amount of license fees and there will be some royalty agreements in the future. This is indeed worth considering. Where can you see the feature detail http://www.garagegames.com/index.php for this engine? SEC = Mg & mod = V12 & page = features. Then there is the serious Sam engine. This also requires a license and is indeed worth looking. If you are interested in it, you can contact God games-they should be able to give you the right direction.

There are some free engines you can download on the network-the first thing you think of is the crystal space engine. You can download the http://sourceforge.net/projects/crystal from here and use it freely in your game. This is not a professional engine, but it is often a good learning experience to see how all parts are combined.

There is also the original quake engine, which is now open source code by ID. This is a good start for any ambitious game programmer-download it, compile it, and start adjustment. It is worth remembering that this notebook was created many years ago and has little similarity with quake III or the new doom. Repeat it. It is indeed a good start. You can find a good web page http://www.inside3d.com/qip/home.shtml from here.

Indeed, it is all about time and money. If you don't have time to develop a new engine, don't worry about using a third-party engine. Buy one. Note that most of today's engine licensing groups have a reasonable way to use their engines. It is good for many people to use their technology as much as possible, so this experience has become an industrial standard.

'Mod' community
A glance at the statistics of any online game server shows that the Counter Strike server is more than any other game server. Compared with its recent competitor, quake III or Unreal Tournament, it has almost twice the CS server.

All of the game's mods come from editing programs that allow gamers to modify the original. WAD file of doom and provide their own level design and textures. People started to play with these (roughly) self-built tools and discovered that they could generate checkpoints that others wanted to play. Id pays attention to this trend and brings the quake engine series to a new stage. This design allows users to modify the game. They even released their own design tools, instructions, and even-take a breath-the code in the game, so ambitious game programmers can play in quake universe. You may have created your own quake connection experience. Many industry masters today come from this early modification experience. Well-known designers like levellord and cliffyb started in this industry. The highest honor came from a gentleman named zoid who proposed 3 wave CTF, the first game to 'capture ban, in the game, people need to team up-connected games have evolved for the first time since the pure Death Race.

Some games are so popular that they have events every year. For example, quake has a quakecon, which is held once a year at Mesquite Texas, where id software is located. People bring their PCs here, or to see the latest sdks or to demonstrate quake-engine-based games.

Any game you make today requires or has experience that can be played by multiple people by a killer, or there is something that can be easily modified so that the "modifier" can use your game and create other games. All of this extends the life of your game and hopefully sells more. People can buy it and download the MoD to play the latest quake III version: The teachers strike back. But you can't just make a game. If you release your tool, you just have to stand. In fact, you must first design the code to be easily expanded without a programmer ,... Okay ,... John Carmack.

As a developer, you need to see it there and provide experience and help for people who want to use your game and use it to do something else at home. This type of support can take many forms-a friendly word, a piece of code, recommendations, publicity, or just money. As long as there is such a problem, it often does not mind the form used.

Which of the following third-party tools you choose to use to build content is crucial. In Raven, we have made some development decisions in the past and there is no help in this regard, because we use softimage for most modeling and all animation needs. Although it is the best tool for making the animations we need, it is too expensive for family amateurs. This poses a problem for family amateurs who want to expand their content, so they tend to abandon us and turn to games that are easier to make. This is really worth noting when building or selecting an engine. In response to the creation of the game's Mod, discreet released a 'lite 'version of 3D Studio Max on the market, known as gmax. The best thing is that it is free. If you want to give it a try, you can capture it http://www.discreet.com/products/gmax/gmaxconsumer/index.html from here.

The success of online games often traces the mod community, so I think it is fair to thank them for doing a good job. In the past, I often said that the fastest way to reach a 'true' job in the industry is from a mod, indicating that you have completed its training and used it as an interview winner. You can't say, "I can do this" is just like you have done it. So go there and start. What have you lost?

Related author
He is a game programmer and has been in this industry for about 20 years. He has been in the UK since he was 15 years old. In the C64 era, Sinclair spectrums and BBC micros have gone through Amiga and St. After a while, then, from the middle of 1990s to the later stages of mideay games, we wrote on-street games. He has recently worked in raven software and has created soldier of fortune, heretic, hexen, Star Trek: Voyager: elite force and Jedi Knight II: outcast, which can be found in Maxis in North California, work for Will Wright's game products. In his spare time, he wrote code for Gameboy color and advance, because "you can stay away from C ++ coding as much as possible, and, as John Carmack says, underlying programming is good for the programmer's soul ".

(Full text)

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.