The animation industry has seen tremendous growth over the years, with the emergence of various animation software that helps animators and game developers create visually appealing and dynamic animations. One such software is DragonBones Pro, a 2D skeletal animation software that enables animators to easily create sophisticated animations.
DragonBones Pro is a 2D animation software offering both frame-by-frame and skeletal animation. It is a good choice for beginner game developers, animators, and artists because it is free and easy to use. The software has a comprehensive collection of features that allow animators to create complex animations and export them in various formats.
If you are not familiar with skeletal animation, I suggest you read the Introduction to Skeletal Animation for Game Developers article first.
In this review article, I will evaluate the key features of DragonBones . I will also list the pros and cons of this software. Lastly, I will give some tips on whether you should or shouldn’t use this software. Hope you enjoy reading!
Key Features of DragonBones
DragonBones is a comprehensive 2D skeletal animation software that is packed with a range of features. The software allows you to create both frame-based animations and skeletal animations. When creating a new project, you must choose the type of animation you want. The user interface will be arranged according to your choice.
Frame-based animation is a traditional animation technique that involves creating a series of individual frames that, when played in sequence, create the illusion of motion. Each frame is manually drawn or painted, with slight variations made between each frame to create movement and continuity.
The frame-based animation editor is a tool for adding and removing frames, and controlling the frame rate. Once you have created your required animation, you can export it as a runtime data animation file or as a sprite sheet.
Skeletal Animation (Bone-based Animation)
In contrast to frame-based animation, skeletal animation does not require drawing every frame. Frames are generated by the software according to the key frames you create. The software will use extrapolation and inverse-kinematics equations to fill in the missing frames.
DragonBones offers a great range of features to create bone-based animations. It has a workspace for creating the armature and rigging the character. In addition, it has an Animation workspace where you can create various animations for your character. This separation avoids cluttering the screen and keeps it simple.
The Armature workspace contains a standard bone tree that shows the bone hierarchy and dependencies. In addition, you have a list of imported images. Finally, a properties panel where you can manipulate each bone, change its properties, and create meshes.
The Animation workspace contains the hierarchy of bones and a list of animations you have created. It also shows the timeline, in which you can build your animation and place keyframes. Lastly, it has a properties panel, which shows the properties of the selected bones and allows you to change some of them.
Game Engine Integration
The software integrates with popular game engines like Unity, Cocos2D, PixiJS, and game libraries such as SFML. You can create animations in DragonBones editor, import and inspect them within your game engine, and access various animation functions from your code.
This is possible due to the capability of DragonBones to create the files necessary to describe the entire animation. A base image with all character parts is exported. Additionally, 2 JSON files are generated. The first file describes the location and size of each part of the character. The second file outlines all bone properties and constraints. With these 3 files, you can recreate the animation within the game engine editor.
Simple IK Constraints
You can use simple inverse-kinematic constraints to control your bones. This is a major feature, required for animating a character. With this feature, it is super easy to get a natural motion of the joints of a character, without adjusting each joint manually. Inverse-kinematics creates such natural character movements because it is based on physics and motion equations that calculate the exact position of the joints.
The only available IK constraint in DragonBones is the directional constraint. This constraint will lock the selected bone to point at a specific location in space. Once you move other connected bones, the constrained bone will change it’s angle, and always point to the selected target.
The process of creating constraints is straightforward. You simply click the bone you want to constrain, click the IK constraint button, and select the target. In other animation software, this process can be a bit harder.
Usually, in order to export layered images from Photoshop to an animation software, you need to export the data to a common file format from Photoshop, and import it in the animation software. This process can be a bit tedious and annoying. DragonBones solved this problem by integrating a PSD file parser directly in it. This allows you to drag and drop PSD files directly into DragonBones editor. The result is a perfect layered image, precisely as it was structured in Photoshop.
DragonBones is capable of automatically generating a mesh for a selected image. You can control the accuracy of the generated mesh by modifying the vertex density. Higher density means the mesh will contain more vertices with higher precision, while lower density means a low vertex count and less precision.
The process of automatically creating a mesh is relatively simple in DragonBones. To automatically generate a mesh, you simply select an image, enable the mesh by clicking the “Mesh” checkbox, and then click the “Auto Generate Mesh Outline” button.
After the software has generated the mesh, you can manually add or adjust vertices as you please. To do that, you have a small control panel at the bottom of the screen, which allows you to create, delete, and edit existing vertices in the mesh.
Auto Bone Attachment
A nice little feature in DragonBones is the Auto Bone Attachment. When you create a new bone, the software will automatically attach it to the nearest image. In addition, it will rename it according to the image name. This can save some headache when first rigging the character. If you want to manually attach the bones to the images, you can turn this feature off in the Preferences menu.
Pros of DragonBones
1. Open-source and Free
DragonBones Pro is a cost-effective animation software compared to other animation software in the market. This makes it a good choice for artists and animators who are just starting out or are working on a tight budget.
2. Lightweight and Fast
DragonBones is a small (60MB of disk space after installation), very fast and responsive software . Despite being very responsive most of the time, manipulating a large amount of objects may cause the software to slow down. And when it comes to loading and exporting animations, the processing time will depend on the size and complexity of the project. Simple animations will be loaded and exported instantaneously, while complex animations can take several seconds. Of course, it will also depend on the hardware used.
3. Easy To Use
The learning curve for DragonBones is relatively shallow. You can learn the entire set of features in a matter of days. The short time required to become an expert in DragonBones does not indicate a lack of features. The quick learning comes from the intuitive user interface and clear visualization of the animation in the editor.
The user interface of DragonBones is very intuitive and easy to navigate. If you are a beginner, this will fit you well. If the arrangement of the windows and tools does not suit you, you can easily customize it according to your preferences.
4. Good Set of Features
DragonBones offers a nice set of features. And although it is not the most extensive set of features, it offers things which you will have to pay tens or even hundreds of dollars to get with other software. So, DragonBones is very cost beneficial in that regard.
Cons of DragonBones
1. No Weight Painting
Although DragonBones has adjustable mesh weights, controlling these weights can be difficult. You have a list of bones with percentages of the influences of each bone on the vertex. Modern software uses “weight painting” to accomplish the same result. Weight painting is a technique where you select a bone and “paint” over the vertices you want to be more influenced by the selected bone. This technique can save a lot of time adjusting the weights, especially with large and complex models.
2. AutoMesh Lacks Precision
DragonBones features an AutoMesh capability which allows you to automatically generate a mesh around an image. Unfortunately, the resulting meshes are not accurate enough. It can be a good tool for creating an initial mesh. Once you have a mesh, you can manually adjust it.
In spine, for example, this feature works great and can give you a very accurate mesh around an image. Most times, the resulting mesh can be immediately used without manually editing it. This can save a great deal of time.
3. Limited IK Constraints
Although DragonBones has IK constraints, it only has a basic directional constraint. Advanced animators may require more advanced constraints, such as path constraints, which lock the bone’s movement in a pre-generated path or a transform constraint, which allows you to copy a bone’s properties to other bones and modify those properties.
4. Unordered Sequence Output
For some reason, the generated output sequence image does not follow a chronological order. The frames appear to be randomly spread out across the image. Although the output contains a JSON file with the information required to build the entire animation, manually inspecting it can be difficult.
5. No AutoSave
Many tools nowadays implement the AutoSave feature. With AutoSave, the software automatically stores a backup of your work every couple of minutes. You can restore the saved data if the software crashes or unexpectedly closes. The next time you open the software, you will get the work from the last AutoSave. However, this is not the case with DragonBones. If the program crashes or something happens to your machine, don’t be surprised if your work (since your last manual save) is gone forever.
6. Lack of Advanced Features
While DragonBones offers a range of features, some artists and animators may find that the software lacks advanced features found in other animation software. Features like path constraints, transform constraints, or skins. The lack of advanced capabilities may limit your project.
7. Limited Documentation, Support and Updates
From looking at the development branch of this software, it appears that development stopped several years ago. As a result, you may have difficulty fixing bugs if you encounter any. Additionally, the DragonBones animators community is small, and you might not get the support or assistance you need with technical issues or tutorials.
Documentation is scarce and appears to be outdated. There are some excellent YouTube tutorial playlists. If you are looking for a good tutorial to get started, here is one on YouTube that may be helpful:
Is Dragonbones Right for You?
DragonBones is an excellent software for beginner animators and indie game developers. Since it is so easy to use, it’s a great starting point for creating good-looking animations.
However, you need to consider the features your project requires. The software offers a broad range of features, but this might not be enough for you. So, if you need advanced features, DragonBones might not fit your needs.
It’s also important to check whether DragonBones integrates with the game engine you are using. You can check if your game engine is supported at github.com/DragonBones. The compatibility is based on the scripting language your game engine uses. For example, you can see the integration process with Unity here: https://github.com/DragonBones/DragonBonesCSharp/tree/master/Unity.
If you enjoy working with a community of creators, note that DragonBones has a relatively small community. In this case, you may consider using a more popular animation software.
Finally, cost is an important consideration. If you have the budget, you can purchase a more advanced software. But if you are on a tight budget, DragonBones is absolutely free.
I enjoyed playing around with DragonBones and exploring its features. Although I’m not an expert animator, I found it relatively easy to create nice animations with the software. While there were some minor annoyances, overall, it’s an outstanding tool for beginners. If you are an advanced animator, other software options may be worth researching. If you’re ready to start working with DragonBones, download it at docs.egret.com/dragonbones/en.
I hope you found this article informative and that it provided you with a basic idea of what DragonBones can do. If you’re interested in learning more about game development, you can find many game development articles on my Night Quest Games Blog. I wish you success on your journey. Good luck!