Node-Based Programmatic Modeling of Chain Mail

: With the continuous development of three-dimensional movie and television animation technology, Three-dimensional technology is appearing in front of the audience with a new look. In modern animated movies, making digital modeling is an extremely important part. Maya as an excellent 3D production software. Naturally using Maya making digital modeling is the most common way. However, in the process of using Maya, it is inevitable that it will encounter very troublesome or very difficult problems. For example, when making a chain mail, it is very troublesome to place the position of the iron ring one by one to make it fit the clothes inside. Especially in film and television animation, there are many wrinkles on the cloth, it is not easy for the chain mail to fit these wrinkles. So you need to use other production tools to simplify the process. This article proposes that it may solve this problem by Houdini's node-based programmatic modeling, and confirmed the feasibility of this method. It also explores in depth which types of modeling can be helped by node-based programmatic method, as well as his strengths and weaknesses.


Introduction
With the rapid development of movie and television animation. Now three-dimensional technology will be applied to more and more movies and television animations, three-dimensional production is also emerge in endlessly. This not only enhances the artistic expression of movie and television animation, but also forms a feature that traditional animation techniques cannot achieve. Maya has been one of the most used software in many three-dimensional production software, and it has been one of the most convenient software in the field of digital modeling, so using Maya has always been the main method of modeling. However, it doesn't mean that using Maya can solve all the problems in making modeling. So in the previous production, I will mainly look for other ways to assist in modeling. For example, using the 3D scanner to scan modeling, this method can greatly improve the speed of making modeling and ensure the quality of the modeling [1].
And in previous studies, it has been proven that Photoscan can be very helpful for the production of modeling texture [2]. Whether it is a texture of a character modeling or a texture of an object modeling. Although this method can quickly acquire a set of modeling, it has limitations. It can't take into account the many intrinsic details of the modeling, and if the target modeling is too large, it can't be filmed [3].
However, in the process of using Photoscan to scan modeling, another software Wrap 3 used also plays a vital role. For example, when making a three-dimensional character modeling, Wrap 3 mainly uses nodes to assist in correcting the wiring of the modeling obtained by Photoscan [2], [4]. But the principle is to reshape the modeling by use node-based programmatic. This makes up for the inadequacies of Photoscan's acquisition of the modeling.
At the same time, the author found that in the process of using Maya to make a modeling, it is difficult to deal with the modeling with a large number of repetitive and complex modeling such as the chain mail. The difficulty is mainly reflected in the placement of each iron ring of the chain mail, and it is necessary to position the clothes one by one. Due to the large quantity, it takes a lot of time to make with normal method. In order to save time, I think I should be able to use more convenient method or node-based programmatic method for production.
The author originally intended to use Wrap 3 for assisted making modeling of the chain mail. However, this method was found to be infeasible during the production process. So the author thought about using Houdini, which is also use node-based programmatic to make modeling, and found other benefits of using Houdini's node-based programmatic modeling.
Herein, the second section of this article describes the normal production methods of the chain mail modeling and the difficulties encountered in the production, and provides a new production pipeline for these difficulties; The third section describes the proposed production process and actual operation process with images and tables; The fourth section discussion the advantages and disadvantages of using the proposed production process, and the development of the future work; The fifth section is the conclusion.

Chain Mail
Chain mail is a metal armor used in ancient warfare. It was introduced to China from the Western Region. In ancient China, the chain mail was also called "Chain Maille". As shown in Fig. 1, usually woven by a wire or hoop loop buckle to form the shape of the garment. Each loop is interlocked with four other rings. The shape is like a mesh chain [5]. In short, the chain mail is a kind of armor that is made up of many iron loop pieces. Its production is also quite cumbersome. First need to cut clothes according to the size of the body, then nest the tiny iron loops inside each other to form a hooded long coat, which is covered outside the close-fitting clothing [5]. It can be seen that the workload is very large.

Normal Production Method and the Difficulty
Usually when making a chain mail in Maya, a iron loop will be made first, then by constantly copying iron loop and constantly adjusting the position of iron loop and fitting the position of the cloth. Although the overall displacement can be used to fit the curvature of the cloth, it will cause stretching on the modeling. Therefore, it will be very difficult to make. So this shows that the modeling of the chain mail is also a certain degree of complexity. It has high repeatability and a large model base, furthermore each iron loop has a slight difference. In Maya the most difficult thing to deal with is the angle at which each iron loop is placed. Because it needs to fits the curvature of the inner clothes, it is not advisable to simply copy the iron loop. It is necessary to adjust the angle and position of the iron loop one by one until the curvature of the inner clothes is fitted.

Overview of the Production Pipeline
In order to solve the difficulties encountered in normal production, this article provides a production pipeline. Fig. 2 shows the overview of the production pipeline, which is divided into three parts: The first part is about how to make a chain mail in Maya. The second part is about how to make a chain mail in Houdini. The third part is to compare the advantages and disadvantages between the two production methods and the normal production method and where the differences are. This research mainly uses Maya and Houdini tool to production. Maya is mainly used for the production of normal methods and convenient method. Houdini is mainly used for the production of node-based programmatic method.

Proposed Production Process
Usually making modeling in Maya uses the basic poly modeling tool to produce the modeling directly and then adjust it. In the same way for making a chain mail with special tools in Maya. First use the poly modeling tool to produce a torus and then adjust it to look like a iron loop. After adjusting the position, then copy it into a row of iron loop and finally copy it into a whole side, and make each loop interlock with another. In this process, you need to pay attention to the size and position of each loop. If each loop is too large or too small, the position is too loose or dense, which will affect the subsequent production. If you are a little careless, you will need to recreate it.
After the one side iron loop is finished, the modeling of the clothes is start to made. Also use Maya's own poly modeling tool to directly produce a cube and then continue to adjust the value and shape to achieve the shape of the cloth. Then use the UV tool to unfold the UV of the clothes modeling. In order to facilitate the subsequent production, you can choose to cut the uv into a suitable size. Then use ZBrush's UV map tool to expand the modeling of the cloth into a UV-shaped modeling and import it into Maya. This step is to create a planar modeling with the same proportion as the cloth modeling.
Cut the one side iron loop into the shape of the cloth UV, and then use the wrap tool to attach the trimmed iron loop to the shape of the UV-shaped modeling. Finally, using the blendshape tool, make the UV modeling fits perfectly with the cloth modeling, even with the iron loop is attached to the cloth modeling. Finally, the shape of the chain mail is reached. Fig. 3. Proposed production process.
It can be found that in Maya, is to use UV to fit the modeling, the proposed production process shown in Fig. 3, so the production in Houdini is basically followed by this production principle. First, use Houdini to produce a circle using the geometry create node tool. The torus is not produced directly here to avoid excessive calculations. Then use the copy node tool to copy a single circle into a row of iron circle and finally copy it into a whole side. Also adjust the position and size of each circle to make it interlock.
The modeling of the cloth can be imported into the Houdini from Maya, but the modeling needs to be unfold UV in advance. After translate UV into a modeling, use the Boolean node tool to perform a Boolean operation on the UV modeling and one side of circle. Then fit it to the cloth modeling. Finally, use the polywire node tool to convert the circle into a loop. And the shape of the chain mail is reached.

Research Procedures
According to the above production principle, the production is divided into five steps. As shown in Table 1, recorded the appearance of the digital modeling at each step in Maya and Houdini, also provides a brief illustration of the difficulty level of production and modification, and the time consuming.
In the step of making a meshed chain of the chain mail, both methods can be completed in a shorter time-consuming. But using the node-based programmatic modeling method can make it easy to modify the modeling. On the contrary, if you do not adjust the value in Maya, modifications will be more troublesome.
In the step of matching the mesh chain to the clothes. When using the node-based programmatic modeling method, it will take a bit long time because it needs to use some special nodes and code, and it will be relatively troublesome when it is made. On the contrary, it is more time-saving and simple to use special tools in Maya. However, it is also because of the use of node-based programmatic in Houdini to make the production, so the modification will still be exceptionally convenient.

Discussion
By making the chain mail in two ways, both methods can be more efficient than the normal production method. But if you compare the two ways, you will find that the advantages of Houdini are not reflected in saving time. And it will be a bit difficult for beginners. As shown in Fig. 4, in the step of fitting cloth's UV. There is a problem with the connection of the modeling at the boundary of the cloth's UV. So you will need to use some special nodes and code to fix the modeling [6].
However, for the modification of the modeling, the position and angle adjustment of the modeling can be very helpful. And the entire process can be edited into a plug-in to make the same type of modeling in the next time.
For example, directly use the previous Houdini production process to turn the chain mail into a sweater in a very short time. As shown in Fig. 5, (a) is a chain mail and (b) is a sweater. And it is very convenient to adjust the density of the sweater's wool. (c) is a sweater with a medium-density wool, and (d) is a sweater with a high-density wool. Therefore, both method can save time compared to the normal method, and can improve the efficiency of production in different degrees. As shown in Table 2. However, the method of node-based programmatic modeling can flexibly modify the thickness of all the iron rings and the density of the wiring while improving the production efficiency. Even changing the basic appearance of the modeling. For example, as described above, modify the chain mail into a sweater and so on the same type of modeling. Or modify the appearance of the clothes to change the shape of the chain mail as the clothes change. These are the effects that are difficult to achieve in other method.

Future Work
Using node-based programmatic modeling to making modeling can solve problems that are often impossible to solve or difficult to solve. Can also lay a good foundation for the production of movie and television animation. And if you are familiar with the production process, also you can lay a good foundation for making more complex modeling with Houdini. In the subsequent production, the author wants to making modeling with the same high reproducibility and large model bases but have a slight difference in this method. For example, want to make architectural modeling, tree modeling, and ruin modeling in the background modeling. Also want to try to make a terrain modeling. The advantages and disadvantages of this method are also compared by comparison.

Conclusion
For the type of modeling that makes the chain mail, Houdini's nodes will be very flexible, and you can modify the position and value as needed. Therefore, when using Houdini to making modeling, the editing ability of the modeling is more convenient. So if you want to modify the modeling repeatedly in the production, you will save time by using Houdini. On the contrary, using Maya will save you more time.
Because Houdini can directly see all the nodes used in the entire production, it is very intuitive to see the production process. And after the production is done once, you can use this as a template or directly into a plug-in, so that more similar modeling can be made very quickly. And if you want to make a similar modeling with Maya, you can only start from the beginning again.
And not only for the chain mail modeling that was made, It also has a strong editing ability for the inner cloth modeling. It is possible to quickly change the inner cloth modeling and change the shape of the chain mail according to the modeling of the new cloth. This is an effect that cannot be achieved by other method.
However, Houdini is not more suitable for beginners to use than Maya. The logical thinking and programming principles involved are difficult to get started. However, if you are skilled, you can play a very significant role in all aspects of 3D production.