Yesterday, gamelook commented on the choice of the Unity engine, one of the reasons why a mobile team failed. The tool itself is not guilty. However, it is really necessary to discuss how to understand the tool and use the unity engine correctly, before choosing unity, you may need to understand the technical characteristics of the engine during development and the types of game products that you can adapt to. fxcarl, a gamer of gamelook, wrote a special article on this issue yesterday, to help you understand the development and sharing of Unity games.
Code-driven technical questions
Game fragmentation. U3D engine has a powerful feature, namely real-time compilation and running. This means that at any time, you only need to press the run icon, and the current scenario will enter the executable state. This leads to a lack of confidence in the game development process. At the same time, it also causes the game content to remain in the fragment state for a long time, and underestimate the difficulties that may be encountered during game function integration.
Resource management is a challenge for the U3D engine. The Resource Management System of U3D is decoupled from the file system of the operating system because of the cross-platform mechanism. You need to be familiar with the resources directory and assetbundle technology to flexibly control the resource usage in the game. However, this work is often simply understood as placing resources under the game engineering directory, and leaving the rest to the engine to handle it ......
You need to build your own data system. Most of the work we have developed in China today is data-intensive (strategy, operation, card, krpg), which is somewhat different from games like Temple Run. Data-intensive games require data-driven design and development, but the framework provided by U3D is a code-driven structure (extremely powerful for prototype development) in many cases, the R & D team may be stuck in the quarary-it seems that the function has been developed (you only need to adjust parameters in the U3D object Checker to work ), but it is too late to enter the large-scale production stage (planning to hold data tables but cannot be applied to the game ). The U3D engine does not provide any data support. Data Tables must be processed by themselves, or they must find embedded database solutions.
The network connection is similar. U3D's Integrated Network Module is not designed for large-scale C/S-structured games. You often need to develop a client and server structure on your own. Of course, you can also use middleware to solve the problem ...... However, what is confusing is that U3D can be used. the Network Mechanism of net works like client games, and you can use the encrypted WWW mechanism as a simple browser game. How to make a choice is a difficult problem, and it is always a long way to get the result of rashly seeking for perfection.
Testing U3D game development is also a very troublesome process. The reason is that the scenario or logic that almost never crashes can be run at any time is mixed into an editor-it will make the development team calculate their current game completions by mistake and what tests are needed.
Troubles brought by cutting-edge technologies
High-precision dynamic lighting and complex material system. Compared with other mobile platforms or web game development tools, U3D is often the most striking of which is its unparalleled Image Rendering effect. However, behind the glamorous official demonstration, it seems that there are always invisible barriers that impede the pace of other developers. In fact, the capabilities required to control U3D are beyond imagination. U3D's rendering architecture is indeed powerful enough. It is possible to complete the unreal or even cryengine-Level Image Rendering quality, but it does not package these systems, but gives flexibility to developers. Have our programmers controlled the complexity of rendering pipelines? Can our technical art guide our art to make full use of U3D?
Capability? Do Art producers have game content production that is qualified for the so-called "Next Generation" precision requirements? Do these items belong to small teams?
Global illumination. This is a very, very practical U3D function. All U3D teams should be flexible. However, if you want to make good use of it, there is another difficulty-the combination of art and scene makers, and it is hard to say who is responsible. In addition, art must use very precise dimensions to create objects in the scenario. Otherwise, U3D cannot correctly process Global UV.
Troubles caused by tool chains
Various theories of the GUI system. It's too slow for everyone to talk about the U3D built-in GUI system-is there evidence? On the one hand, many people say that I did a lot of controls during the test, which is really slow. On the other hand, you will also find that the GUI system will bring unnecessary rendering requests (draw call ). So everyone is desperately trying to do two things. One is to reduce rendering requests, and the other is to do everything possible to avoid the GUI. However, the situation is not that serious. No matter whether it is alternative middleware such as ngui or the UI system that directly uses U3D, it will not have a huge impact-except for improper use, it is rare to see the GUI as the performance focus. However
Ngui or U3D built-in UI do not have good UI tools-either too programmer-oriented, or too biased towards layout, and it is not convenient to add code functions. It is necessary to develop some internal extension tools or workflows.
Difficulties in version control. Asset server or SVN is not applicable to U3D. But the more important thing is to sort out the internal structure of the file and regularly back up the file. You can use the U3D command line mode to automatically compile and release the U3D project.
Extends the capabilities of U3D. Because U3D has complete functions, ignoring the function expansion of U3D itself is a common situation. It is very important to keep dedicated personnel constantly optimizing U3D's functions at any time, for example, a variety of batch operations. However, there is a premise that the extension tool must fully understand the tool. U3D is so powerful that many team members are afraid of learning, taking U3D as a minority team member or a tool dedicated to programmers is a problem.
Proactive judgment required
Every domestic U3D game development team is complaining about the U3D Chinese font support problems and so on. In fact, there are not many teams using the U3D engine from a forward-looking perspective-taking this moment as an example, U3D 4.0 can use dynamic fonts on any platform and support Unicode encoding-in Chinese. Migrating from U3D 3.5 to 4.0 does not have to make any changes to the project. If we do not know that 4.0 will support dynamic fonts, so why don't I go to the official forum to check the development progress of each version? Every game that will be released in 2013 should not worry about font issues ......
Keeping an eye on the U3D update content and future U3D functions of each version can greatly reduce the problem of re-inventing the wheel, and maintain a better mentality in the face of some dilemmas. Direct Mail developers will also be a good choice, please be sure to harass them more! Generally, you can obtain the content that may be updated in future versions three to six months in advance.
1 "code-driven"
State management
Assets Management
Data Management
Networking
Testing
2 cuttingedge techs
Dynamic Lighting & Complex Materials (textures)
Lightmapping
NAV Mesh
Mecanim
Dx11
3 toolchain
Gui
Versioncontorl
4 vision
Address: http://game.zol.com.cn/354/3543149.html