原作者：Fabio Bautista, Columbia
Since childhood, I’ve been a big fan of the comic books and have always tried to include some of this style in my work. I recently had the opportunity to participate in the Comicon Challenge 2009. The challenge consisted of creating a representation of one favorite action character of comic books, no matter if it was hero, heroine or villain. As this is a competition specifically related to character creation for games, had some restrictions like not being able to use more than 10k triangles in the final model and to create 2048 x 2048 texture maps.
One of the comic book and movie characters and that I have consistently followed is the Incredible Hulk. I always wanted to make one that looks as real as the movies, but comic’s likeness. But there are so many versions created by different artists and an equal number of representations in 3D, I thought about doing an unusual one.
Thus was the idea of making Red Hulk, a character not well known in movies or games, but even so in comic books? This character is an evil version of Hulk, created by Jeph Loeb and Ed McGuiness (one of my favorite comic artists) and according to them, he is more aggressive and intelligent, besides having all the abilities of Hulk. The main difference with the original Hulk is that it does not become stronger with anger, but rather radiates increasing levels of gamma radiation. In some editions also called Rulk to distinguish him from the original Hulk character, but personally I prefer the original name.
因此有了制作一个红色Hulk的想法，它没有出现在电影或者游戏中，但是漫画中确实有。它是恶魔化的Hulk，由Jeph Loeb 和 Ed McGuiness (一个我非常喜欢的漫画艺术家) 创造。根据他们的设定，它好斗、聪明，还有Hulk的所有能力。跟原版的Hulk最大的不同，它并不是因为愤怒而强大，而是受到了太多伽马射线的辐射。在一些版本中它也被称为Rulk，从而区别于原版的Hulk，但是就个人而言我更喜欢原来的名字。
Keeping all this in mind, I began searching and collecting images that I could use as a reference for creating my own version of this strong character.
High – Poly Modeling 高模
The first thing I do with this kind of characters for games, is to create a high-poly model, which later on I can use to transfer all the geometry detail to the texture maps. Starting from a box and by using the polygon editing tools, I began creating a base mesh in Max and exported it to an .obj file. Once inside ZBrush, I imported this basic form and began to move vertices with the Move brush, looking for a more defined shape.
When I am satisfied with the overall proportions, I retopologized it, always trying to keep a balanced number of quad polygons in the entire model’s surface. From this model I created other parts such as the pants and hair, making a selection by using the <CTRL> key and drawing a mask selection with the Standard brush.
Once I made the selection (shaded in the model) I used the Extract function to create the new object, which is added automatically to the SubTools panel.
When I had all the elements organized, I started working on the overall anatomy. First I enabled the symmetry button in X axis, began to move vertices and looking for a good balance in the proportions. Then I added a new subdivision level to the model and began to shape muscles by using the Standard brush.
To achieve a better definition, I again subdivided the mesh and kept using the Standard brush in conjunction with the alpha 39 to accentuate the separations.
Once the overall anatomy was defined, I started working on each specific body part, starting with the head. From the beginning I was looking for an extreme anger expression and to get this I had to work hard on his face. By using brushes as Standard and Inflate, I started to give volume to the eyebrows area, eyelids and cheeks and by using the Slash1 brush I added and defined the expression lines of the forehead, nose and mouth contour. To define the lips I used the Pinch brush.
To sculpt the the hair, I added 3 subdivision levels and used the SnakeHook brush to pull softly the vertices from the surface. Then a further subdivision was necessary to define the hair style.
With the pants I made a similar process, first I used the Move brush to give shape to the rips, then added a new subdivision and used again the SnakeHook brush to pull the mesh and finally added some folds making use of the Standard brush with the alpha 39.
There is still to work on final details of the body, I subdivided once again and made use of the LazyMouse mode to create veins, arteries and to define more the anatomy. Finalizing this session, I added some details such as blemishes and wrinkles on the skin, by using different alphas, some of these custom alphas.
To create the pedestal, which was a section of damaged road, I used a similar procedure, I began creating a basic form in Max, then exported it to ZBrush to sculpt and add final details through alphas.
Low Poly Modeling and Normal Mapping 低模和法线贴图
After, it was the turn of the low poly model. First, I placed the high poly model and went down to a medium subdivision level trying to keep the overall detail.
Then it was exported to an .obj file to open it in Max and once there overlapped it to the initial base model. From this model I made a mesh with a new topology by using Polyboost and Max’s polygon editing tools.
Once this model was ready, I started the UV mapping. Although usually I use the unwrapping tools of Max, especially the pelt tool, I also sometimes use Unfold3D, a quick and effective tool when performing these tasks. What I did was mark cut lines on key places such as the neck, trunk, back and on the inside of the limbs, trying to make the fewest number of divisions, to keep recognizable these areas when painting and creating the textures.
I finished this task, the model was exported back to open it in ZBrush and create the normal maps. The importance of these maps is that they transfer all the detail created in the high poly modeling stage to the low poly model, making it appear to have more detail in geometry than it really have. It’s just a visual effect, which is effective from any point of view. This allows adding high detail to low poly models, and that’s the reason for its continuous use in games industry today. To start, I placed the high poly model without mapping and went down to the first subdivision level.
I used the ZMapper plugin included with ZBrush. There, I used the Mesh Current Capture function that is under the Projection tab. Normally, this is done in order to capture all the high poly detail information through the polygon normal directions. Then I imported the low poly unwrapped model and turned on the ZMapper again to project the normal map on this mesh. To do this, first I check the Tangent Space map type and used the Create Projected NormalMap function. This procedure was repeated with each one of the model parts to get the final normal map. As you can see this map show all the detail of the high poly model.
然后我用Zbrush自带的ZMapper插件。在这里，我用在Projection tab中的Capture Current Mesh功能。通常情况下，它是用多边形的法线方向来获取高模的全部细节信息。然后，我导入未展开的低模，再次打开Zmapper去烘焙它的法线贴图。要做到这一点，首先我检查已经切到Tangent Space Map 模式，然后使用Create Projected NormalMap功能。为了得到最终的法线贴图，对每一个模型来说这一步骤被重复多次。正如你所看到，这张贴图显示所有的高模的细节。
With the pedestal I did a similar process, however in this case I used the same model to create the normal map. After creating this normal map, I exported the low resolution mesh again in Max and then it was divided into pieces by using the ProCutter tool included in the Max2009. This tool helps us to create several sections of an object from cutting lines by drawing Splines over the model. Finally, I moved the pieces and added the tubes I created in a previous process.
Next, I went back to ZBrush and started to work on the pose of the model. I used the useful Transpose tool which allows us to move, rotate and scale parts of the model only by making a selection through masks. Although there is a more advanced technique to create skeletons and rigs using ZSpheres, this is a quick way to try different positions and in this case was appropriate to pose the Red Hulk model.
The texturing process was straightforward, I just opened the model in Max and assigned a Multi/SubObject material . Then I assigned colors according to each part to differentiate them on the map. Next, I used the Render To Texture feature to create the base diffuse map.
The map generated was opened in Photoshop to paint the details and to mix with other textures. Initially, I opened the normal map and modified the levels, curves and saturation and then it was blended in Soft Light mode.
Taking a copy of this map and then tweaking it again, helped me to apply details, highlights and shadows to the texture, then I touched up by using the Photoshop paint tools.
I added more detail to the map making use of some brushes and mixing it with some other textures. I also worked with a color palette with similar tones to the initial colors to create a uniform graduation, especially for the skin tones.
To complete this process, I added some details of stains and imperfections on the skin and finished working with the AO (Ambient Occlusion) map. To get this map, I went to Max and used the Render to Texture dialog again, but this time I used the high-poly model for the projection. Finally it was applied as a layer in Photoshop in Multiply mode.
当这个过程完成后，我在皮肤上再加上一些污迹和皱纹，然后再叠加上AO贴图。为了得到这张贴图，在max中再次使用Render to Texture ，但是这次我用高模来投射。最后，在PS中，用叠加模式加到原来的贴图上。
Time Rendering and Compositing 渲染和合成
New toys always make me happy, and one of the things I enjoy a lot about this project was the fact to try something new. For first time, Toolbag a simple tool that uses the Marmoset game engine and include a real time model viewer. In my professional experience had the opportunity to work with some advanced game engines such as Unreal and Unity, and although these are very powerful tools for game development, are not so intuitive and easy to use. With Toolbag I was able to quickly test different camera angles of the model so that I could decide which was more suited for the final presentation.
I started placing the model on the pedestal in Max and making small adjustments such as the position of the feet and the location of the pieces of the road. Then these were exported to an .obj file so later that it can open in Toolbag.
Once inside of Toolbag I went to the Material Editor and imported the model, then I applied a Phong material and added the textures created in the previous stage. With the shader set up and render options by default, all I did was taking some screen shots.
From there, everything was very easy and quick, I just changed some things like the viewpoint of the model and direction of light and instantly, I got the real time render. That was how I could get the final images after adding some post effects and adjustments included in the application.
The final post work was done with Photoshop. In this image I wanted to capture a moment of the rage of Red Hulk but with the look of comic books. To get this, first I created and touched up a bit the background. Then I placed the rendered image on top and tweaked a bit levels, saturation and color balance. At the end, I added some shadows and glowing effects.
Well ,this was whole process I done to meet the challenge to create the Red Hulk. This involved approximately 70 hours of hard work, which eventually were well rewarded with the great reception it got. Thanks and I hope you have enjoyed this making of.