Game Engine Analysis 11
Original author: Jake Simpson Translator: to the sea Email: GameWorldChina@myway.com
Part 11's last chapter
front end
You have seen the menu system, you might understand the top display in the game (huds) is often the part of the game experience, and the part of ignore. Recently, this field is always impressed with a very deep Black and White, this game does not actually have hud. After Peter Molyneux experienced Dungeon Keeper, it was on the screen, and he decided that most of the game was occupied by these icons, the main screen is not available enough. So he decided to abolish all these things. Peter has a bold step, we cheer for you. Unfortunately, this way is suitable for B & W style games, but it is not always useful to other kinds of games.
Generally speaking, Huds should be not attractive, only the key information you need; this is itself controversial in the design team. Soldier Of Fortune's initial design has an icon on the screen. When you are hit, you accurately display which part of the body is hit. When they decided to punish the players when they were not prepared for the damage of different body parts, this was finally discarded. On the screenshot of some early SOLDIER OF FORTUNE, this icon can still be seen on the top right corner of the screen.
HUD is configurable in a perfect world, so you can decide what to show, where to display, how long is it. If you don't need a local radar, it should be removed. Any displayed HUD information should have a certain degree of Alpha (transparency), so if you need you to see what you can see through them.
Speaking of the configuration, I am a full fan of a game personal setting. Because there is no instant storage device stores the configuration file, it is not a wide range of configurations on the gameplay game, which is equally equited. But as the PS2 and Xbox hard drives are coming, I look forward to seeing configurations in the future. Each thing that can be customized should be like this, just like I see. Obviously, it should also provide reasonable default configuration for each thing. Therefore, the player does not have to make a boring selection process in a screen --- will discuss this more for a while --- Players should be able to be able to be based on personal preferences And available computing capabilities custom game experience.
Back to the default thing, maintaining the required modification is very important. It is always a good thing to make the least decision. Mortal Kombat, and even Quakeiii have a very fast game entry system. Little choice, then you enter the game. This doesn't mean that you can't have a menu that allows you to change everything, but they should not be required and should already have reasonable default settings. If you have to set a role in 14 screens before you enter the game, you may not have a clue you are choosing, and you will do anything to pass the screen, some will have a great influence of the initial The game experience. And it is possible that it will be an adverse effect. As a game programmer / designer, I will tell you here, no matter what you do, let the player first chooses some stupid things, no need to make it worse. You will There is sufficient opportunity to make a poor first impression.
With the brief discussion on configuration and HUDS (along the previous ten chapters of information), we ended the discussion of the main building elements of the modern game engine. Of course, depending on the type of game and who is making them, each particular game has its own addition (or decrease). However, there are some other elements that are actually not the engine design part of the game engine, but they need some attention.
Game engine license and components
Now if you want to make a game, the fastest start mode is to buy existing game engine licenses and develop on this is Raven, and recently use the Quake3 engine to write Star Trek Elite. FORCE. Half Life Based on Quake 1 Engine, DEUS EX is based on Unreal, which is still continuing. There are now two licenses - a complete game engine (or game operating system such as Jason Hall grants lithtech), or a part of a set of questions. A good example of this will be Renderware, this is a partial solution for rendering scenes and gives you some physical. You can't just take some models and call them the completed game --- also requires sound systems, game mechanisms, and more. But it really gave you a solid foundation for establishing a game. Remember all mathematical knowledge I mentioned in the rendering and physics chapter? Very good, so you avoid all those things. By LithTech, Unreal and Quake, you really get a full solution - or at least all the founders need for their games. Remember Quakeiii is a multi-person play, so that it is based on the basis of single game from time to time, such as Unreal Tournament. Using Quakeiii, you have lost some systems that you need to use, like reading / storage, scripts, and more. You just arrived at the ID company to make things needed, not necessarily what you need. Sometimes if a limitation of the system is just what you need, this may be a real shortcoming. Add to STAR TREK VOYAGER to read / store and scripts: Elite Force is not a picnic, but must be. However, using the quake3 engine is still the beginning.
Unreal has some comments on Today's popular pre-packaged game engine solutions.
"I think I can compare the game engine (Quake, Unreal et al.) And game components such as Renderware and Karma. Game Engine is a tight framework that contains all technical organizations developed by game development: rendering, editing tools, physics, artificial intelligence , Network, etc.
They are for developers who want a complete, ready-made solution so they can focus on game playability and content. Game components like Renderware For developers who are developing their own technologies but do not want to do repeated development in some well-perfect technical fields.
The game engine has the advantages of solving all technical problems in game development, and it is easy to build some assumptions including game types in the disadvantage. For example, Unreal has been used to make the first person shooting game, third person action game, role play game, and even play ball games. But no one uses it to make flight simulation game - it is not a technology suitable for this game. The game engine comes with a complete source code. This is a blessing (you can completely see what is happening inside, you can freely expand it according to your needs), or curse (if you change it, you will have to merge the change Improve the new version).
Game components have the advantages of solving technical problems in the field of concerns, such as rendering or physics, without spending a lot of time in this regard, it can do better than typical developers. Their disadvantage is that the rest of these components into your engine is your own thing, this is sometimes quite complicated. Game components generally have no complete source code, so it is not always very clear what they have done inside. "
Thank you Tim, very subtle analysis.
Build your own game engine?
You may build your own engine instead of buying a license. This avoids all legal disputes that have all, royal and other legal disputes, and if you produce enough things, you can even sell licenses to others. However, as already pointed out, this takes time and money to complete, not to say absolutely excellent programmers. Lithtech has developed many years, similar to Unreal. It is very interesting, mainly because of the change of hardware and API versions, in fact, the first version of Unreal takes four years. When they start, the software rendering is the only game. When the development is continuing, 3DFX brings glide, then NVIDIA's TNT graphics card (from that, hardware and APIs do more progress). This is why it supports so many different rendering pathways. Of course, support all of these is a coding nightmare, but that is another thing. Each engine has a modular way, and when a module -, for example, the script --- becomes outdated or the demand changes, you only need to take it out and start doing a new module. The Quake engine experience has a more complete evolutionary development. Corresponding to a set of needs of the next game next game, when John Carmack creates the fastest thing on the hardware at the time, each version of the engine has been overwritten. Quakeii has renovated no less than four times, I personally saw three different versions of the Robot code of Quakeiii. Other developers have not avoided this situation. John Scott has built Soldier Of Fortune II's surface system, which mentioned me that he had tried many ways to work properly in dynamic surface generation.
Construction techniques or complete engines are not easy. Today's game engine requires many, many systems, just as discovered when people try to create 'the next large engine', from the screen's simple display to advanced artificial intelligence. And as mentioned earlier, the continuous development of new technologies makes it a rapid and efficient engine. In fact, I have seen some people spent four days in the mixing mode of the PS2 in order to make a texture with Alpha.
The other engines worth considering have the TRIBES 2 engine of Garage Games - known as the Torque Game Engine. My understanding is that it can charge a small number of licensing fees, and there are some royalties in the future. This is really worth considering. You can see this engine's feature details http://www.garagegames.com/index.php?sec=mg&mod=v12&page=features. Then the Serious SAM engine. This is also a license, it is indeed worth a look. If you are interested in it, you can contact God Games - they should give you the right direction.
There are some free engines that you can download on the network - first I think of the Crystal Space engine. You can download http://sourceforge.net/projects/crystal from here, and use it in your game. This is not a professional engine, but see how all the part is combined with a good study experience.
There is also the initial quake engine, and now I have opened the source code. This is a very good start for any ambitious game programmer - download it, compile, and start adjustment. It is worth remembering that this engine is a lot of years ago, and there is no similarity similar to QUAKE III or new Doom. Repeat it again, it is indeed a good start. You can find a found resource web page http://www.inside3d.com/qip/home.shtml.
Indeed, all this is time and money. If you don't have time to develop a new engine, don't mind spend money using a third party engine, go to buy one. Note that for teams that require their engine, most engine licensing groups have a reasonable way. Many people use their technology as much as possible, so this experience has become industrial standards, which is good for them. 'MOD' community
Look at the statistics of any online game server, showing the Counter Strike server is much more than any other game server. Almost twice the CS server compared to its nearest competitor (Quake III or Unreal Tournament).
All game mods come from some editor, which makes the player to modify the DOM initial .wad file, providing their own customs level design and texture. People began to play these (generally) self-built tools, and they also found that they can generate other people want to play. ID pays attention to this trend, and bring the Quake series engine to a new stage so that the game is designed to make the game can be modified. They even release their own design tools, instructions, and even --- Plegescent --- The code in the game, so ambitious game programmer can play in Quake Universe. You may have created your own version of Quake connection experience. Many today's industry masters come from this early modification. The famous designer is now starting with this industry in this industry. The highest honor comes from a gentleman named ZOID. He proposed 3WAVE CTF, the first 'to win the flag' game, the game needs people to team up - the first time since the purely death competition Evolutionary development.
Some games are so popular to happen every year. For example, Quake has a quake conference in the Mesquite Texas, ID Software Company, held in the year. People come here with their PCs, or to see the latest MODS or displayed the QUAKE-based game.
Now you have any games you need or have experience in killing people, or you can use the content that can be very easy to modify such, 'Modifier' can use your game and produce other games. All this extends the life of your game, there is hope to sell more, people buy it, you can download MODS to play the latest Quake III modified version: The Teachers Strike Back. But you can't just produce a game, release your tool, and stand by. In fact, you must initially design the code to easily expand, ... ok, ... John Carmack.
As a developer, you need to see it there, and provide experience and help for those who want to use your game and use it in home. This support can have many forms - a kind-friendly word, a code, suggestions, propaganda or just money. As long as this is this, it often does not mind.
Here you have selected which third-party tools used to build content, it may be critical. In Raven, we have made some development decisions in this regard, because we use SoftImage for most modeling and all animation needs. Although it is the best tool for making the animation we need, it is too expensive for home amateur enthusiasts. This gives those homes to have problems when they expand the content of our production, so they easily abandon us to seek games that are easier to make. This is really worth noting when building or choosing a engine. In response to making game mods, Discreet released a 3D Studio Max's 'Lite' version, called Gmax. The best is that it is free. If you want to try it, you can grab it from here http://www.discreet.com/products/gmax/gmaxconusumer/index.html. Finally, the success of online games can often track to the MOD community, so I think thank you for your good job is fair. I often said that in the industry reaches a 'real' work is starting from a MOD, indicating that you have completed its training and use it as an interview winner. Can't say, "I can do this" is like already completed. So go there and start. What did you lose?
Author
Jake Simpson is a game programmer, and it has been intermittent in this industry for approximately 20 years. He started from the age of 15 in the age of 15, in the era of C64, Sinclair Spectrums and BBC Micros, experienced Amiga and ST, leaving a period of time, then in the mid-1990s to later in Mideay Games. He has worked recently in Raven Software, making Soldier of Fortune, Heretic, Hexen, Star Trek: Voyager: Elite Force and Jedi Knight II: Outcast, Maxis in Northern California can find him, working for Will Wright game products. Amateur time he wrote code for GameBoy Color and Advance, because "You can stay away from C encoding as much as possible, and as John Carmack said, the underlying programming is good for programmers."
(Full text)