Week 8: Re-topology
This week, I focused almost exclusively on re-topologizing the two models. Most people probably donít know what topology is or why good topology is so crucial for animation Ė so allow me to explain what topology is here.
In ZBrush at least, all 3D models are composed of two-dimensional polygons arranged in a three-dimensional space. We typically see 3D models as having solid form; but really, most models are really more ďskins.Ē Imagine, for instance, a morbid scenario in which someoneís skin were removed and then stitched back together to retain the form of the original body. In modeling, that 2D skin is the model we see, a ďblanketĒ made of tiny polygons. With more polygons, a model will appear to have higher resolution. In ZBrush, one models by re-arranging and adding polygons to the skin.
What does this have to do with topology? Well, the arrangement of a modelís polygons Ė specifically, the flow of polygonal edges Ė is the modelís topology. Good topology is topology that follows the curves of a modelís form. For animation purposes, a model should have good topology Ė it ensures that the model can be properly rigged and animated without awkward distortion.
Now, Iíve mentioned this in previous posts, but ZBrush is primarily a modeling software. Itís a great program for quickly and easily translating ideas into a 3D sculpt. One can think of it as the process of sketching, whereas modeling in a program like Maya is more akin to watercolor painting (i.e. far more deliberate).
In previous weeks, I had focused largely on just perfecting the look of the models without paying much attention to topology. As my time at CMU wraps up, however, itís necessary that I start prepping the models so that they can be used in Maya (perhaps by someone other than me).
Unfortunately, the two Peer Tutor models have awful topology (my doing, of course). This is partly a result of using the DynaMesh option in ZBrush, used in my case to attach fingers to the modelsí hands. The solution to this topology problem? Re-topologizing. Since a model is essentially a 2D skin arranged in space, itís possible to re-draw all the polygons of said skin. As one might expect, re-topologizing can also be used to decrease the number of polygons in a model Ė yet another reason re-topologizing was so important for the Peer Tutor models. Each of the Peer Tutor models had over 700,000 polygons. To give readers an impression of how unacceptable that number is, many models in video games have as few as 3500 polygons! A better comparison, however, would be Alex, who has close to 9,000 polygons. To make the Peer Tutor models acceptable for rigging, I would need to decrease the polygon count by a factor of 100.
However, re-topologizing is something I have never done. Thus, I spent several hours on Monday watching video tutorials on Lynda.com and YouTube. Having watched these tutorials, I began a ďtrialĒ run on the models, just to get a hang of ZBrushís re-topology tools. I soon realized just how time exhaustive re-topologizing is. This is mostly because re-topologizing has so many rules. One should completely avoid n-gons (polygons with more than 4 sides), use triangles sparingly, and have very few ďstarsĒ (points at which five lines intersect). Because of these rules, a person must plan out the topology methodically, knowing just how many lines to have and how those lines intersect.
On Tuesday, I started re-topologizing the girl model. Again, this took quite some time. One mistake I made early on was forgetting to turn on symmetry. As a result, I had re-topologized about half of the face before I realized that the face would have asymmetrical topology Ė not good. Thus, I had to re-re-topologize the half of the face that Iíd already done, this time with symmetry turned on. It wasnít too bad having to re-do work Iíd already done, however, since it meant additional practice in a new area. Unlike Mondayís post, I wonít go into the nitty gritty details of re-topologizing because really, there arenít any Ė re-topologizing is hard not because it requires any great skill, but rather because it requires so much time. Even so, itís without a doubt a very crucial step in the development of the agents.
On Wednesday, I finished re-topologizing the girl modelís face. The face now had about 2,500 polygons Ė a pretty decent number. However, the rest of the body still needed to be re-topologized. Luckily for me, a new version of ZBrush came out recently, the 4R6 version. ZBrush4R6 has an extremely cool new feature called ZRemesher, which essentially does the job of re-topologizing for you. Iíve been able to upgrade my older version of ZBrush, so I am now in possession of the wonderful ZRemesher.
Why spend all that time re-topologizing by hand, then? Well, ZRemesher isnít perfect. The topology of a modelís face is dictated by even stricter rules Ė the model needs loop lines around the mouth and eyes, wider topology lines in areas of less concentration (e.g. forehead), not to mention other rules of thumb. It may be because our models do not have sharp features, but ZRemesher just isnít able to produce the necessary topology in their faces. For other body parts, however, it works just fine. Thus, I did the re-topologizing of the girl model by hand, but decided Iíd use ZRemesher for the other body parts.
Before I did that, however, I wanted to even more sharply reduce the overall polygon count in the model. One thing Iíd noticed about Alex was his lack of a body. That is, his clothing doesnít wrap around an interior form Ė whatís being animated and perceived by us as Alexís body is just his clothing. The only body parts Alex has are his head and hands. I realized that we could do this to the Peer Tutor models as well. After all, given the school-appropriate nature of the modelsí clothing, nobody will ever see their torsos, upper legs, or even upper arms. We could easily cut out those body parts and reduce the polygon count without any bad consequences.
Doing that left the girl model at 50,000 polygons. Much better, but still a little too much. I then used ZRemesher on all body parts, maximizing the number of polygons I could reduce. Again, ZRemesher is a great tool: it produced a re-topologized model with 13,000 polygons. Although this is still a little much, the developers of the SmartBody/VHToolKit technology informed me via email that their own model has something like 50,000 polygons. I might be able to reduce the number of polygons even more, but I think that 13,000 is OK for now.
Thursday was a long day. I got to work re-topologizing the boy model, which took up most of the morning. I was able to finish most of the boy modelís head and start on his body before our lab meeting started. After the lab meeting ended, however, Dave wanted to go over our Peer Tutor survey with Samantha, who hadnít had the chance to review it previously. What I expected to be a pretty brief talk actually became a very helpful, hour-long session. Samantha offered really great feedback regarding how to phrase certain questions and which questions perhaps were not helpful. Whatís more, Samantha will be giving these surveys out to the kids sheís working with, who are 8 Ė 13 years old. Iím excited to see the additional data.
This did, however, mean that Dave and I had to revise the survey and have it done before Friday (when Samantha will be visiting the kids). We spent the rest of the afternoon working on revisions, which took a surprisingly long time, mostly because of re-formatting the surveys. Tip: donít use text boxes when creating a survey, as text boxes in Word are rather unmanageable (my fault). By the time we printed and stapled together all the surveys, it was 6:00 PM. I was too tired at this point to continue re-topologizing, so I decided to continue my re-topologizing work on Friday.
Because Iíd worked over hours on Thursday, Friday was a somewhat shorter day. I repeated the process of cutting polygons for the boy model. The reduced version has around 12,000 polygons. Any further attempt at reducing polygons leads to the collapsing of forms. Next week, Iíll finally start rigging the models, which should be an exciting process! Iím also excited to see the results of the surveys distributed by Samantha.