这是用户在 2024-7-7 14:33 为 https://texturing.xyz/pages/making-of-blue-haired-girl 保存的双语快照页面,由 沉浸式翻译 提供双语支持。了解如何保存?

Making of Blue-haired girl

Hey everyone, my name is Yangzhengnan Cheng. I'm 25 years old. I'm a 3D Character Artist from China. This is my second year since officially entering this field, and I have been studying and improving my craft. And I'm happy to share the processes explored in it with all of you!
大家好,我叫杨正男程。我今年 25 岁。我是来自中国的 3D 角色艺术家。这是我正式进入这个领域的第二年,我一直在学习和提高我的技艺。我很高兴与大家分享其中探索的过程!

I'd like to thank Natalia (Blu304)Xiaode Zhu, and Huifeng Huang. They're all very talented 3D character artists. They're my good friends. They have helped me a lot throughout my studies in the field of 3D! Many thanks to TexturingXYZ for the opportunity to talk about my work!
我想感谢 Natalia(Blu304)、Xiaode Zhu 和黄慧芬。他们都是非常有才华的 3D 角色艺术家。他们是我的好朋友。在我学习 3D 领域期间,他们帮助了我很多!非常感谢 TexturingXYZ 给我机会谈论我的作品!

MODELING 建模

I was initially determined to create an accurate representation, but it was becoming very time-consuming. I began collecting images on Pinterest and came across a photo of a fashion model named Sasha Belyaeva that I wanted to use as a reference for female portraits and create my own interpretation of her.
我最初决定要创作一个准确的表现,但这变得非常耗时。我开始在 Pinterest 上收集图片,偶然发现了一张时尚模特萨莎·别利亚娃的照片,我想将其作为女性肖像的参考,并创作出自己的解读。

I purchased the foundational mesh created by J HILL from the Artstation platform. Additionally, J HILL's YouTube channel offers a plethora of content.The tutorials provided are of exceptional quality. My head basemesh has been subdivided 8 times, resulting in approximately 80 million polygons.
我从 Artstation 平台购买了 J HILL 创建的基础网格。此外,J HILL 的 YouTube 频道提供了大量内容。所提供的教程质量非常出色。我的头部基础网格已经细分了 8 次,结果大约有 8000 万个多边形。

This level of subdivision is advantageous for capturing intricate details.(Or, you don't need to because now VFace comes with its own UV-optimized mesh, enabling you to begin the sculpting process directly on the mesh!)
这种细分级别有助于捕捉复杂的细节。(或者,您不需要这样做,因为现在 VFace 配备了自己优化 UV 的网格,使您可以直接在网格上开始雕刻过程!)

I split the UV map into three parts to achieve more detailed results.
我将 UV 贴图分成三部分,以获得更详细的结果。

Wrapping 包装

Once the mesh has been sculpted and UV'd, you have the option to wrap the mesh using Wrap3D. I was ready to start creating the texture details for the face, and this time I chose the displacement from VFace #31 and albedo from VFace #97
一旦网格被雕刻并 UV 化,您可以选择使用 Wrap3D 包裹网格。我准备开始为脸部创建纹理细节,这次我选择了来自 VFace#31 的置换和来自 VFace#97 的反照率。
.

Firstly, import your own model and VfaceBasemesh into Maya. Then, overlap them in approximate positions and export.
首先,将您自己的模型和 VfaceBasemesh 导入到 Maya 中。然后,将它们大致重叠在一起并导出。

Open Wrap to initiate the wrapping process for the model and create SelectPointPairs to match the points. (When you're ready to start wrapping , you can connect the Vface mesh and diffuse to pick the best point to match.)
打开 Wrap 以启动模型的包裹过程,并创建 SelectPointPairs 以匹配点。(当您准备开始包裹时,可以连接 Vface 网格和漫射以选择最佳匹配点。)
If you want to make the VfaceBaseMesh perfectly symmetrical, you can press the Tab key.
如果您想使 VfaceBaseMesh 完全对称,您可以按 Tab 键。

Add the FixSymmetry function to make the mesh symmetrical.
将 FixSymmetry 函数添加到使网格对称。

When you have finished wrapping, you can add a Brush node to relax and project the mesh. Alternatively, you can also perform this step in Zbrush.
当您完成包裹时,您可以添加一个刷子节点来放松和投影网格。或者,您也可以在 Zbrush 中执行此步骤。

Transfer maps in Mari 在 MARI 中传输地图

I use Mari to bake the texture, and I chose VFace fully calibrated Displacement for the texture transfer.Of course, you can also watch the official TexturingXYZ tutorials
我使用 Mari 来烘焙纹理,并选择了 VFace 完全校准的位移来进行纹理转移。当然,您也可以观看官方的 TexturingXYZ 教程。
.

Import your head model and VfaceBasemesh, which should already be matched to your own model, into Mari. Next, create a 32-bit base channel with a resolution of 16k in Mari. Make sure to change the color space to RAW mode and remember to tick the Scalar Data option.
将您的头部模型和 VfaceBasemesh 导入 Mari,这些模型应该已经与您自己的模型匹配。接下来,在 Mari 中创建一个分辨率为 16k 的 32 位基础通道。确保将颜色空间更改为 RAW 模式,并记得勾选标量数据选项。

Under the VfaceBaseMesh layer import XYZ_dispCalibrated_mid0_raw.1001 and change the import colour space to Linear. Right click on the channel under the mesh and select the Transfer option to pass the VfaceBasemesh channel to your model.
在 VfaceBaseMesh 层导入 XYZ_dispCalibrated_mid0_raw.1001 并将导入的颜色空间更改为线性。右键单击网格下的通道,选择传输选项将 VfaceBasemesh 通道传递到您的模型。

I extracted the colour and specular maps from XYZ_albedo_lin_srgb.1001 and XYZ_utility_lin_srgb.1001 and converted them to 8bit TIF format in Photoshop, and passed them on to the model I sculpted in Zbrush in the same way.
我从 XYZ_albedo_lin_srgb.1001 和 XYZ_utility_lin_srgb.1001 中提取了颜色和高光贴图,并在 Photoshop 中将它们转换为 8 位 TIF 格式,然后以同样的方式传递给我在 Zbrush 中雕刻的模型。

After baking, we need to export the texture in EXR format and select the color space as RAW
烘烤后,我们需要以 EXR 格式导出纹理,并选择色彩空间为 RAW
.

Once the file has been saved, we repeat the steps we took in Photoshop to convert the image into a 32-bit TIF map that can be used in Zbrush. You can find the method for applying this texture in the following paragraph.
一旦文件保存完毕,我们重复在 Photoshop 中所采取的步骤,将图像转换为可在 Zbrush 中使用的 32 位 TIF 地图。您可以在以下段落中找到应用此纹理的方法。

We then apply it to the model that I have already sculpted. As you can see, there is almost no loss of detail in the converted map. If you have more than one UV, you can group the models into UVs and then apply the replacement maps and add layers to them.
我们然后将其应用于我已经雕刻好的模型。正如您所看到的,转换后的贴图几乎没有丢失任何细节。如果您有多个 UV,您可以将模型分组到 UV 中,然后应用替换贴图并向其添加图层。

Displacement Mapping 位移映射

(If you use the base mesh provided by VFace, you can skip the process in Mari and start applying the mapping directly.)
如果您使用 VFace 提供的基础网格,您可以跳过 Mari 中的流程,直接开始应用映射。

We can find the mapping with the name XYZ_dispCalibrated_mid0_raw.1001.exr on the maps folder in the 01_head of the VFace file package.
我们可以在 VFace 文件包的 01_head 文件夹中的 maps 文件夹中找到名称为 XYZ_dispCalibrated_mid0_raw.1001.exr 的映射。

 XYZ_dispCalibrated_mid0_raw.1001.exr can be converted to a 32-bit TIF image in Photoshop and then applied to Zbrush, remembering to flip the image vertically at the end.
XYZ_dispCalibrated_mid0_raw.1001.exr 可以在 Photoshop 中转换为 32 位 TIF 图像,然后应用于 Zbrush,记得在最后垂直翻转图像。

We can import it directly and apply it to the base mesh of Vface. You can see a lot of amazing details.
我们可以直接导入并应用到 Vface 的基础网格上。您可以看到许多令人惊叹的细节。

The VFace mapping provides amazing details when applied to the model after the PS conversion! I used the VFace Victoria#31, There's a lot of amazing detail, which is great when you need to create a portrait of a young woman!
VFace 映射在 PS 转换后应用于模型时提供了惊人的细节!我使用了 VFace Victoria#31,有很多惊人的细节,当你需要创作一个年轻女性的肖像时非常棒!

Basic Mapping 基本映射

I wrapped my model in a Medina# 97 color texture to my model using Wrap3D. I felt that the color of her face needed further work, so I began enhancing the brightness and saturation of the texture using Mari.
我用 Wrap3D 将我的模型包裹在 Medina#9 7 色纹理中。我觉得她脸部的颜色需要进一步处理,所以我开始使用 Mari 增强纹理的亮度和饱和度。

I also applied minimal makeup to enhance the complexion and added a touch of blue around her lips for a subtle and natural look. In addition, I applied coatings and adjusted the roughness to prepare for the subsequent rendering in Arnold.
我还涂了一点淡妆来提升肤色,并在她的嘴唇周围加了一点蓝色,打造出一种细致自然的妆容。此外,我还涂了一些涂层并调整了粗糙度,为接下来在 Arnold 中的渲染做准备。

 

Lookdev

The entire process took place in Arnold for Maya 2022.My Arnold skin shader (a simple aiStandardSurface) uses nodes such as aiColorCorrect and aiRange to adjust the maps until a satisfactory result is achieved. My shader network is pretty simple. I try to keep it as non-technical as possible.
整个过程发生在 Arnold for Maya 2022 中。我的 Arnold 皮肤着色器(一个简单的 aiStandardSurface)使用节点,如 aiColorCorrect 和 aiRange 来调整贴图,直到达到满意的结果。我的着色器网络非常简单。我尽量保持它尽可能不太技术化。

This is how I plugged in my displacement maps. It is a very basic setup. There are two levels of displacement at this point. One is from the XYZ_dispCalibrated_mid0_raw.1001, which was passed through Mari. The other is from the sculpting details in Zbrush.
这是我插入位移贴图的方式。这是一个非常基本的设置。目前有两个级别的位移。一个是来自 XYZ_dispCalibrated_mid0_raw.1001,它经过了 Mari 的处理。另一个是来自 Zbrush 中的雕刻细节。

I created a mask in Mari to control the displacement texture of the red channel. Each of these maps is connected to an aiRange node, allowing me to adjust the intensity through the "Output Max" slot. Finally, I combine them using a "plusMinusAverage" node.
我在 Mari 中创建了一个遮罩,用来控制红色通道的位移纹理。这些地图中的每一个都连接到一个 aiRange 节点,使我能够通过“输出最大”插槽调整强度。最后,我使用“plusMinusAverage”节点将它们组合起来。

This is the result of the network.
这是网络的结果。

I spent some time on the ambient light test, and you can find the image "hdri_studio_lin_srgb" in the "02_references" folder. And the results look great! I also tried testing with other HDRI lights.
我花了一些时间进行环境光测试,您可以在“02_references”文件夹中找到图像“hdri_studio_lin_srgb”。结果看起来很棒!我还尝试了其他 HDRI 灯光的测试。

Also, I tested other HDRI.
此外,我还测试了其他 HDRI。

Eyes 眼睛

When you have finished mapping the eye, you can import it into Photoshop. Convert the image to grayscale mode and change the bit count of the map to 16-bit. Additionally, apply high contrast retention.
当您完成眼睛的映射后,您可以将其导入到 Photoshop 中。将图像转换为灰度模式,并将地图的位数更改为 16 位。另外,应用高对比度保留。

This will result in a displacement map that can be easily applied in Zbrush. Using this map, you will be able to sculpt the pupil deeper in Zbrush and enhance the detail on the sclera. So you can achieve more detailed reflections in the renderer.
这将产生一个位移贴图,可以轻松应用在 Zbrush 中。使用这个贴图,您将能够在 Zbrush 中更深地雕刻瞳孔,并增强巩膜上的细节。因此,您可以在渲染器中实现更详细的反射。

For the sclera, I utilized LayeredTexture to blend the colors and transparency maps. I also incorporated the ramp node to fine-tune the surface color of the sclera before combining it with the AiColorCorrect node.
对于巩膜,我使用 LayeredTexture 来混合颜色和透明度贴图。我还使用了 ramp 节点来微调巩膜的表面颜色,然后再与 AiColorCorrect 节点结合。

Finally, I employed the RemapHsv node to achieve the desired color blending results.
最后,我使用 RemapHsv 节点实现了所需的颜色混合结果。

For the pupil, I added a ramp node to modify the intrinsic color. I selected the Type as Circular and the interpolation method as smooth. This way, the modified color will blend more naturally with the existing texture.
对于瞳孔,我添加了一个斜坡节点来修改固有颜色。我选择了类型为圆形,插值方法为平滑。这样,修改后的颜色将更自然地与现有纹理混合。

For the cornea, I created a transparent glass material sphere and added a noise node connected to the displacement and normal inputs to simulate the effect of tears.
对于角膜,我创建了一个透明玻璃材质的球体,并添加了一个噪声节点连接到位移和法线输入,以模拟眼泪的效果。

In order to minimize the impact of noise on the pupil area, I added a transparency map to ensure that the entire pupil area remains unaffected.
为了最小化噪音对瞳孔区域的影响,我添加了一个透明度地图,以确保整个瞳孔区域保持不受影响。

This is the final network result.
这是最终的网络结果。

This is the information for all materials,I hope you find it useful.
这是所有材料的信息,希望你会觉得有用。

Grooming 梳洗

I used Xgen's guide line mode and interactive mode to create the hair. In guide line mode, I created the basic hair, and in interactive mode, I modified the shape and added details to the hair.
我使用了 Xgen 的指导线模式和交互模式来创建头发。在指导线模式下,我创建了基本的头发,在交互模式下,我修改了形状并添加了头发的细节。

If you decide to start using Xgen, you can watch Hadi Karimi's instructional video on Xgen, which will be very helpful!
如果您决定开始使用 Xgen,您可以观看 Hadi Karimi 关于 Xgen 的教学视频,这将非常有帮助!

Eyebrows and eyelashes were created using Xgen interactive.
使用 Xgen 互动创建了眉毛和睫毛。

Also, I added smaller amounts of pomade to the scalp and hair parting to achieve a more natural look.
此外,我在头皮和发分上添加了少量的发蜡,以达到更自然的效果。

I used the aiStandardHair shader with the "red" color. Additionally, I added a ramp node to connect the Basecolor and Transmission Tin. I wanted the hair color to transition from the forehead to the ends of the hair, avoiding a monotonous look.
我使用了 aiStandardHair 着色器,颜色为“红色”。此外,我添加了一个斜坡节点来连接基色和透射锡。我希望头发颜色从额头过渡到发梢,避免单调的外观。

To achieve this, I created a gradient that goes from blue to blue-green.
为了实现这一目标,我创建了一个从蓝色到蓝绿色的渐变。

 

Lighting 照明

For the lighting, I tried a few different techniques. While collecting photos, I came across photographer Marat Safin's work, which inspired me. To achieve a similar result, I used a setup with three area lights and experimented with their scale. Although my lighting setup was simple, I hope to improve upon it in the future.
对于照明,我尝试了几种不同的技术。在收集照片的过程中,我看到了摄影师 Marat Safin 的作品,这让我受到启发。为了达到类似的效果,我使用了一个设置,其中包括三个区域灯,并尝试了它们的比例。虽然我的照明设置很简单,但我希望将来能够改进它。

Conclusion 结论

The highlight of this project was receiving appreciation from the 3D artists I have always admired, as well as from many other people (not only artists!) I came into contact with someone after I posted it on social media. I owe the success of this piece to the CG community. Thank you!
这个项目的亮点是收到了我一直钦佩的 3D 艺术家以及许多其他人(不仅仅是艺术家!)的赞赏,我在社交媒体上发布后与某人取得了联系。我将这个作品的成功归功于 CG 社区。谢谢!

And thank you XYZ for your hard work!
谢谢你,XYZ,为你的辛勤工作!

I hope you find this breakdown useful!
希望您觉得这个分解有用!

If you have any questions or are interested in my work, you can contact me via Instagram or ArtStation
如果您有任何问题或对我的作品感兴趣,可以通过 Instagram 或 ArtStation 与我联系
.