Standing on the shoulders of giant tools --- using existing tools to build your own Workflow

Source: Internet
Author: User

New word explanation

 

Giant tools:It refers to high-end, large-device, top-grade tools.

Workflow:Localization of Workflow

 

The story behind

Previously I wrote an article called the game engine not only code, but also perfect tools, and the workflow we refer to in daily development) it refers to the development process of a complete toolset + using this toolset. in the previous article, I mainly mentioned unity3d, a component-based decoupling editor and project requirements, and shell (for the sake of simplicity, we can also classify python in shell here) to avoid repetitive work, through shell and command line tools (many tools provide the command line mode, including the well-known unity3d), powerful tools can be used more powerful.

Today, what I want to talk about is not a shell. The use of shell is inevitable in projects. What we want to introduce today is a way to meet your needs with the output of existing tools, so as to avoid putting it into editor development. Speaking of this, you may think of developing plug-ins for some existing editors as soon as possible. This is of course the first rule. By developing plug-ins, we can meet our own needs and do not need to develop editors from the beginning. Not all tools support plug-in development. Therefore, the method of secondary processing of the output format of the tool can also be used in many cases.

First of all, yworks provides the yed Graph Editor, which provides an operation interface for drawing flowcharts, allowing you to easily draw flowcharts. Imagine if we want to develop a state machine for the project, and then let the planning establish connections based on our own needs, and finally convert it into commands that can be recognized by the program. In this way, in logic development, the planners can adjust the logic part under the instruction and condition set provided by the program, which is very intuitive. (PS: yed is just an introduction. If you want to use other flowcharts or UML tools, you can also use them. In the essence of game programming, you can refer to how to use UML to build flowcharts)

Unfortunately, yed does not provide plug-in extension capabilities, which makes our hopes almost burst. However, by analyzing the data stored by yed, we can easily find the rules. Therefore, we can write a set of tools to explain this output, so that it can be smoothly converted into our own needs.

In fact, the previous step has already met the requirements. However, XML-based parsing may take a lot of CPU time during data loading. If you really think it is unacceptable, then the python gods can play again. We can write a simple script tool to convert the data into more intuitive and easy-to-use data.

 

 

When it comes to flash, you may not be born. In the Flash animation field, the Flash MX 2004 version has already competed for the world. Flash player90 % + user penetration, so that the rise of web games later, it also as the main platform for development. However, Flash is not just a tool for browser games and animations. If you want, it can be used as your powerful 2D Interface Editor and 2D animation editor. Because Flash CS supports plug-in development and gameswf open-source Library also explains SWF in C ++. There are many excellent gameswf-based frameworks, if you do not want to step on gameswf.

Here, I do not recommend that you use brute force cracking methods like gameswf to parse SWF. Instead, we use another method, namely, configuration output. Flash CS is only used as an editor tool. We develop plug-ins for them to provide our special editing requirements and output the desired data.

Interface (GUI ):

Flash is excellent in animation and hierarchical editing. We can expand Flash CS to write a set of UI controls, which can be serialized into the configuration file. No matter what engine we use, cocos2dx, unity3d, or our own engine, as long as our engine can parse this configuration file, it also provides a runtime to drive this set of data. Then we will succeed. In early game engine development, many companies had their own UI libraries and provided a relatively broken UI editor. In fact, through the existing flash (or not flash, but I have not found it better), to expand it, not only the tool can be very friendly to the art, but also the maintenance of the tool. You only need to maintain a small amount of plug-in code.

If you want a reference, this flash UI editor for cocos2dx may inspire you, it is a fully open source http://blog.csdn.net/ab342854406/article/details/37669321

Animation

Flash can be said to be second to none in the field of animation. If it is a 2D special effect, it can use its key frame and vector animation function to make very beautiful results with very few resources. In this regard, Dragon bones can be said to have developed this function well. Dragon bones currently supports runtime in multiple languages and engines.

Here: http://dragonbones.effecthub.com/

 

 

 

When it comes to unity3d, many compatriots may admire how its IDE uses Nb. It not only can quickly build a prototype, but also easily expand its editor, add menus, and buttons, not to mention the Panel, it is easier to rewrite the output ......

And so on ....... Have you found '...... It is easy to rewrite the output ...... . Yes, it is precisely because of this feature that unity3d can be used not only as an engine to develop your game, but also as a general editor that can be combined with your game engine, to get the data you want.

I also heard from friends in the group that they use unity3d as an editor, but their engine is cocos2dx. Many people laugh at them. But after a big laugh, do you have any insights?

Www.unity3d.com

 

That's the end.

A tool that can serve as a common tool and build your own workflow on top of it. Yed, Flash, and unity are only three representatives. One is open-source, the other is not open-source but can develop plug-ins, and the other is very popular and powerful, it is so powerful that you think that the tool you use has to use its engine.

In short, because these tools have been tested for a long time and have been specially organized and maintained, building their own workflows on the basis of them is both worry-free, time-saving, and stable .......

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.