ArticleDirectory
- Common error 1: all-encompassing goals
- Common Error 2: The Display engine is used to display scenarios.
- Common error 3: the client is the Display Engine.
- Common error 4: work directly toward the final goal
Source: http://blog.csdn.net/Nightmare/archive/2005/06/29/407235.aspx
After training on the Internet, e-commerce, and software, online games are another hot field. As the money goes crazy, the process of survival of the fittest begins. If it cannot become mature, it will fail.
At the beginning, we relied on concepts and fanatics, or broke out or died silently. The second batch began to compete, but despite the desire to compete in the market, they could continue to drop the money whether they win or not. The third batch is the irrational stampede, which is in full swing. If you don't want to be trampled to death, you have to run at the beginning.
Common error 1: all-encompassing goals
It is a good thing to have ambitious goals, but it is not a way to do things. When asked "What is the game we want to play", if we say "our game will include all the features of game a, new tricks in game B, and improvements to the C system, added a unique D system and ......", This project is in this danger. If everything is a thing, then it is nothing. Before designing such a huge system, you 'd better study it first:
- Project Budget
- What is the maximum development time allowed?
- Number of personnel and experience, as well as control capabilities for complex systems
- Who are the target user group and what they like to play?
- What are the characteristics of competitors and their products?
Especially for startups with limited funds, the budget and development cycle are the main constraints, and the results must be obtained at the lowest possible cost, the blind start of a project will only make the project into a dilemma in the future.
Common Error 2: The Display engine is used to display scenarios.
It is often seen that some clients only emphasize direct3d and display special effects in their recruitment requirements. That is to say, many people only see the 3D engine and only the model and special effects in the 3D engine. However, they are only a small part and are not the most technical part. Because 3D technology has been developing for many years, especially with fast hardware development, hardware vendors prefer software developers to use all the advanced technologies they provide. All technologies are open, there are detailed documents and examples. Today, almost everyone has written a set of 3D engines by themselves, and open-source engines have all been optimized.
However, this does not mean that every 3D engine is the same. On the contrary, they are quite different. A good engine has many important and technical functions, generally, an engine is very simple and has very few functions. However, it can still be called an engine that can draw models and special effects. The desired engine is determined by the needs of the game itself. It may be very simple, or it may have to be completely functional. Here is a complete list of Display engine functions:
- Metaplot
- Model rendering. It is best to support multiple model formats
- Model preview Tool
- Export plug-ins for models such as 3 DSMAX and Maya
- Sorting of translucent objects
- Animation (hard animation, vertex animation, and bone animation)
- Patch Function
- Billboard support
- Lightmap
- At least one technology for creating shadows, such as shadow volume, shadow map, or simply projection a black circle
- At least one technology used to draw the sky, such as spheremap and cubemap
- Resource rolling loading (important when many resources are displayed)
- The particle system, preferably editable by a script, is no longer needed.ProgramStaff intervention Production Process
- Support for Shader and enough debugging Functions
- Unicode text rendering
- Scene Graph management, quadtree, octtree, or BSP
- In big scenarios, we will use the level of detail (dump) function.
- Layer Support
- GUI system
- Resource file packaging support, preferably in ZIP Format
- Performance analysis support, including at least FPS, number of triangles per frame, and number of drawprimitive per frame
- Outdoor games require the support of the terrain System
- Lens effects, such as halo and Vibration
- Documentation, including for programmers who use engines and artists who use related tools
We can find that a complete 3D engine is a huge system, and its overall architecture becomes very important. Careful people will notice that special effects are not mentioned here, that is, many people are most concerned about them. In fact, most of the special effects are produced by the artist, and the program provides a basic support. If you wait for the programmer to write each special effect, you can only expect to extend the duration.
Common error 3: the client is the Display Engine.
The Display Engine is only a base layer. It is not a business layer, but a business layer is a real client. For example, if you have a hammer and a nail, you only have a tool and a nail is what you want to do. The client must do the following:
- Process Network Data
- Sound Engine
- Maintains and predicts the status of a window in the game world, and intelligently performs image sound performance.
- Input Processing
- How to improve the user experience
- Game editing and debugging tools
- Install and update online tools
A part of the customization work is likely to be handed over to the production personnel, such as the GUI, because they often need to adjust and improve the design, so it is more difficult to design a customizable GUI system. If the 3D engine is already supported, you only need to provide some game logic interfaces. Otherwise, you will have to worry about it and provide a set of configuration solutions here.
Common error 4: work directly toward the final goal
Online games are a big project that won't be completed in just a few months. Early design cannot be perfect. If you work toward the final goal, you may find the problem only when the game starts up later, but it is too late, not to mention long periods of ineffective work can bring down morale. The correct method is to make the game run as early as possible, even if only a few HELLO messages are sent, and then add more functions to it. Do not start building a game after half a year's completion of the underlying system. In this case, it is easy to change the underlying system because of problems or demand changes. This is a long time-consuming process.