您需要 登录 才可以下载或查看,没有账号?注册
x
Introduction
Hi! My name is Oksana Tryndiak and I am a 3D Artist from Kyiv, Ukraine. I work more with environment modeling and hard-surface modeling.
介绍
你好!我的名字是Oksana Tryndiak,我是来自乌克兰基辅的3D艺术家。我更多地从事环境建模和硬面建模。
Goals
Like many others, I was impressed with the Squid Game series when it came out. I liked its aesthetics, the combination of an innocent, toylike and at the same time frightening atmosphere and how the author makes the viewer feel uncomfortable because of non-standard size objects. Therefore, the idea of ​​the project came to me immediately.
I like the aesthetics of the female body. We didn’t see female guards in the series as that would be illogical. Therefore, I decided to combine my two passions in the SQUID GIRL fan-art project and show you how a girl guard would look in a parallel universe of the game.
目标
像许多其他人一样,当Squid Game系列问世时,我对它印象深刻。我喜欢它的美学,天真,玩具般的结合,同时又令人恐惧的氛围,以及作者如何因为非标准尺寸的物体而让观众感到不舒服。因此,该项目的想法立即来到我身边。
我喜欢女性身体的美学。我们没有在系列中看到女警卫,因为那是不合逻辑的。因此,我决定在SQUID GIRL粉丝艺术项目中结合我的两个激情,并向您展示女孩守卫在游戏的平行世界中的样子。
Software
To create a project, I used Autodesk Maya, Marvelous Designer, RealityCapture, Substance Painter, Unreal Engine 5, Photoshop, Blender, ZBrush and Adobe Premiere Pro.
软件
为了创建一个项目,我使用了Autodesk Maya,Marvelous Designer,RealityCapture,Substance Painter,Unreal Engine 5,Photoshop,Blender,ZBrush和Adobe Premiere Pro。
References and Inspiration
Collecting references is one of the main stages in the creation of any project, which the result directly depends on. In this case, it was much easier for me to do this since I was based on the existing character and indoor interior in the series. To begin with, I collected references for the character.
Fortunately, the details of the hero’s uniform are clearly visible on the most popular freeze frames. Next, I took screenshots of the scenes in which the details of the room and corridor are visible and got to work.
参考和灵感
收集引用是创建任何项目的主要阶段之一,结果直接取决于此。在这种情况下,我这样做要容易得多,因为我是基于系列中现有的角色和室内内饰。首先,我收集了这个角色的参考资料。
幸运的是,英雄制服的细节在最流行的定格帧上清晰可见。接下来,我截取了房间和走廊细节可见并开始工作的场景的屏幕截图。
Sculpting in ZBrush
I decided to use Zbrush as little as possible since the main high poly parts were simulated and scanned. As planned, the character should have slightly exaggerated forms to make the figure clearly visible under clothing and still realistic. Therefore, the main point of using ZBrush was to correct the figure of the avatar for Marvelous Designer.
Note that the polygon count of the avatar should be larger than the polygon count of the cloth in Marvelous Designer. Otherwise, after the simulation, the avatar mesh will be imprinted on your fabric. I used an avatar with a polygon count of 10 million, and the final polygon count of the high poly jumpsuit was about 4 million.
在 ZBrush 中雕刻
我决定尽可能少地使用Zbrush,因为主要的高聚器件是模拟和扫描的。按照计划,角色应该有稍微夸张的形式,以使人物在衣服下清晰可见,并且仍然逼真。因此,使用ZBrush的要点是纠正Marvelous Designer的头像。
请注意,头像的多边形计数应大于《Marvelous Designer》中布料的多边形计数。否则,在模拟之后,头像网格将印在您的织物上。我用了一个多边形计数为1000万的头像,而高多边形连身衣的最终多边形计数约为400万。
At this point, I created a low poly mask in Maya, which is needed as part of the avatar to fix the hood.
在这一点上,我在Maya中创建了一个低多边形蒙版,需要将其作为头像的一部分来修复引擎盖。
Simulation in Marvelous Designer
Working on the uniform at Marvelous Designer was a key part of the character creation.
One of the main rules that I use when simulating clothes is that patterns don’t have to be the same as they would be in real life. The purpose of a uniform in life is to maximize the comfort of a person and fit clothing with a minimum number of defects.
In 3D, our goal is to create painterly imperfections, in particular the balance of drooping and tension of the fabric to form beautiful folds. Therefore, patterns in life and in Marvelous Designer will have a different shapes.
I start my work with a realistic form of patterns. If you haven’t any idea of what shape a particular part should be, you can google reference patterns of similar clothes and try to repeat them.
奇妙设计师中的模拟
在Marvelous Designer制作制服是角色创作的关键部分。
我在模拟衣服时使用的主要规则之一是,图案不必与现实生活中的图案相同。制服在生活中的目的是最大限度地提高人的舒适度,并以最少的缺陷使服装合身。
在3D中,我们的目标是创造绘画上的瑕疵,特别是织物下垂和张力的平衡,以形成美丽的褶皱。因此,生活中的模式和奇妙的设计师将具有不同的形状。
我从现实的模式形式开始我的工作。如果你不知道一个特定的部分应该是什么形状,你可以谷歌参考类似衣服的图案,并尝试重复它们。
Step one is to make the main parts, without the details. Particle Distance (fabric resolution) I set to 20 while working, this is enough to start, and your video card won’t be overloaded. Do a test simulation to make sure the dimensions are correct. Then I started adding detail. I added cuffs on the arms and legs, a belt, a hood, pockets, etc. The base is ready.
第一步是制作主要零件,没有细节。粒子距离(结构分辨率)我在工作时设置为20,这足以启动,并且您的视频卡不会过载。进行测试模拟以确保尺寸正确。然后我开始添加细节。我在胳膊和腿上加了袖口,皮带,兜帽,口袋等。底座已准备就绪。
Step two is to adjust the characteristics of the fabric.
I used three types of fabric:
The main fabric (Polyester_Taffeta), stiffer fabric for the pockets and neckline (Leather_Cowhide), and a separate fabric for the cuffs (Denim_Stretch).
第二步是调整面料的特性。
我使用了三种类型的面料:
主要面料(Polyester_Taffeta),口袋和领口的较硬面料(Leather_Cowhide),袖口的单独面料(Denim_Stretch)。
In real life, all parts would use a rough fabric like a tarpaulin, but in simulation, we can use any other preset if it looks good.
在现实生活中,所有零件都会使用像防水油布一样的粗糙织物,但在模拟中,如果它看起来不错,我们可以使用任何其他预设。
Now we have a finished form. The last step is to change the shape of the patterns until you get the perfect folds. Don’t be afraid to bend lines and don’t forget to save before each simulation. As you can see in the screenshot below, the patterns have a lot of unreasonably curved lines.
现在我们有一个完成的表单。最后一步是改变图案的形状,直到你得到完美的褶皱。不要害怕弯曲线条,也不要忘记在每次模拟之前保存。正如您在下面的屏幕截图中看到的那样,这些图案有很多不合理的曲线。
For example, I shortened the distance between the bottom edge of the zipper and the side pocket on my pants to give the illusion that the pockets are full. To create folds at the seams, the sides of the patterns sewn together have different lengths and bends.
例如,我缩短了拉链底部边缘与裤子侧袋之间的距离,给人一种口袋已满的错觉。为了在接缝处创建褶皱,缝合在一起的图案的侧面具有不同的长度和弯曲。
At this point, you can lower the Particle Distance to 10 or 5. Note that as you increase the resolution, the shape of the folds will change slightly. Therefore, it is better to refine the model at the final resolution if your computer allows.
The high poly gloves were created using the same pipeline. I worked on the model in such way that I did not have to make edits in Zbrush. Therefore, I made the last simulation with Particle Distance 5. Then I exported the triangulated fabric to OBJ as a Single object.
此时,您可以将粒子距离降低到 10 或 5。请注意,随着分辨率的增加,褶皱的形状将略有变化。因此,如果计算机允许,最好以最终分辨率优化模型。
高聚乙烯手套是使用相同的管道制造的。我以这样的方式处理模型,即我不必在Zbrush中进行编辑。因此,我用粒子距离5进行了最后一次模拟。然后,我将三角化结构作为单个对象导出到 OBJ。
The bed in the room was also created in Marvelous Designer. I made a low poly prototype of the pillow and sheet in the correct size in Maya, and immediately created a UV for it. The cuts on the UVs should be where you want the seams to be in Marvelous. Next, I exported the bed avatar and bed linen prototype as a garment in Marvelous for simulation.
This is one of the convenient ways to work in the program, as for me. Thus, you automatically create patterns according to your UV shells and seams. To fill the pillow with air, I set the pressure to 2. When the bed was ready, I returned it to Maya. UV created initially remains in its original form.
房间里的床也是在Marvelous Designer创建的。我在Maya中制作了正确尺寸的枕头和床单的低聚原型,并立即为其创建了UV。UV上的切口应该是你希望接缝在Marvelous中的位置。接下来,我将床头像和床上用品原型导出为Marvelous中的服装进行模拟。
对我来说,这是在程序中工作的便捷方式之一。因此,您可以根据UV外壳和接缝自动创建图案。为了在枕头上充满空气,我将压力设置为2。当床准备好后,我把它还给了玛雅。最初创建的UV保持其原始形式。
Photogrammetry in RealityCapture
3D scanning was used to create shoes. I had a perfect example of rough boots with signs of use, so photogrammetry was the best option. In the series, the characters wear low footwear that looks like shoes or sneakers. But high boots can emphasize the shape of the leg and make the look more militarized, which I wanted to achieve.
现实中的摄影测量捕获
3D扫描用于制作鞋子。我有一个完美的粗糙靴子的例子,有使用的迹象,所以摄影测量是最好的选择。在系列中,角色穿着看起来像鞋子或运动鞋的低鞋。但是高筒靴可以强调腿部的形状,使外观更加军事化,这是我想实现的。
In general, to scan such things, it is better to use studio lighting and rotate the object relative to the ring light source fixed around the camera. In this case, the shadows do not fall into the frame, and the scanned albedo is cleaner. But this possibility is not always available. I took photos of shoes outdoor. The main criteria for scanning outdoors are cloudy weather, with diffused light, without direct sunlight, which can create hard shadows.
一般来说,要扫描这些东西,最好使用工作室照明,相对于固定在摄像机周围的环形光源旋转物体。在这种情况下,阴影不会落入帧中,并且扫描的反照率更清晰。但这种可能性并不总是可用的。我在户外拍了鞋子的照片。在户外扫描的主要标准是多云天气,有漫射光,没有阳光直射,这可能会产生坚硬的阴影。
Another problem that can be encountered when scanning outdoors is that slightly glossy surfaces such as leather reflect light. Thus, the toe of the boot as a result is much lighter than the shaft. This needs to be fixed manually in Substance Painter. In classic PBR, this could be a problem. In this case, it was planned that the light would fall only from the top, so this scan option was suitable.
I used a Nikon D5600 camera and a tripod. Photos were taken in two rows in a circle. I usually take photos in three rows, approximately 45 degrees from above, 45 degrees from below and at the level of the object, as well as a few photos from above if possible. Since in this case we are dealing with reflections, when you take photos from below, the reflection of the sky shifts significantly to the side. This may result in RealityCapture not recognizing the photos, as the albedo at different heights will be different. Therefore, I decided to abandon the bottom row of photos.
在户外扫描时可能遇到的另一个问题是,皮革等略带光泽的表面会反射光线。因此,靴子的脚趾比轴轻得多。这需要在 Substance Painter 中手动修复。在经典的PBR中,这可能是一个问题。在这种情况下,计划光线仅从顶部落下,因此此扫描选项是合适的。
我用了尼康D5600相机和三脚架。照片是用两排圆圈拍摄的。我通常分三排拍摄照片,从上方拍摄约45度,从下方和物体水平拍摄45度,如果可能的话,还可以从上方拍摄几张照片。由于在这种情况下,我们正在处理反射,因此当您从下面拍照时,天空的反射会显着向侧面移动。这可能会导致RealityCapture无法识别照片,因为不同高度的反照率会有所不同。因此,我决定放弃最下面一排的照片。
Retopology, Modeling, UVing
I did the retopology in Maya using the Quad Draw tool. It was important for me that the geometry repeats the shape of the folds, and their volume can be seen on the silhouette, so the process was carried out manually and took a lot of time. The retopology of the boots was done in the same way. When the low poly was ready, I started the UVs.
I used three separate materials for fabric, mask, and shoes. A separate UV was created for each. When unwrapping the fabric, it is necessary to make the most solid shells. It’s better to leave a slight stretch on the UV than to make a cut. This way we can avoid artifacts. I made UV cuts mainly along the seams so that when texturing there were no problems with the fabric texture.
重新拓扑、建模、UVing
我使用 Quad Draw 工具在 Maya 中进行了重新拓扑。对我来说,几何形状重复褶皱的形状非常重要,并且可以在轮廓上看到它们的体积,因此该过程是手动进行的,并且花费了大量时间。靴子的重新拓扑结构也以同样的方式完成。当低多边形准备就绪时,我开始了UV。
我使用了三种不同的材料来制作织物,口罩和鞋子。为每个创建单独的UV。在打开织物包装时,有必要制作最坚固的外壳。最好在紫外线上留下轻微的拉伸,而不是进行切割。这样我们就可以避免伪影。我主要沿着接缝进行UV切割,以便在纹理时织物纹理没有问题。
At the same time with the character creation, I worked on an interior low poly. The corridor and room in the series references look very simple and geometric, so the low poly turned out to be simple. The pillow is made with high poly retopology.
I made several UV sets for small objects, doors, lamps, etc. I decided to make a separate texture for the walls, ceiling, and floor in the room, not a tile texture, so that I could bake the bevels and add more detail at the texturing stage. I also made separate UVs for the walls, ceiling, and floor of the corridor, and unwrapped them on a tiled texture.
在角色创作的同时,我还制作了一个室内低聚。系列中的走廊和房间看起来非常简单和几何,因此低多边形变得简单。枕头采用高聚拓扑结构制成。
我为小物体,门,灯等制作了几个UV套件。我决定为房间的墙壁,天花板和地板制作单独的纹理,而不是瓷砖纹理,这样我就可以烘烤斜面并在纹理阶段添加更多细节。我还为走廊的墙壁,天花板和地板制作了单独的UV,并将它们打开在瓷砖纹理上。
Baking
I did the high poly baking in Maya: jumpsuit, separately hood, gloves, and boots. Below you can see the final settings of the bake. For the first pass I baked on Sampling Quality Low (2×2) with a texture size of 2K. This is done to check whether everything is baked correctly and whether the value of Search Envelope and Filter Size suits us. So, you will not make a mistake and save a lot of time. When I checked everything, I started the final baking on Sampling Quality Low (8×8) with a texture size of 4K.
烘
我在玛雅做了高聚烘焙:连身衣,单独的兜帽,手套和靴子。您可以在下面看到烘焙的最终设置。对于第一遍,我在采样质量低(2×2)上烘焙,纹理大小为2K。这样做是为了检查所有内容是否正确烘焙,以及搜索包络和过滤器大小的值是否适合我们。因此,您不会犯错误并节省大量时间。当我检查所有内容时,我开始在采样质量低(8×8)上进行最终烘焙,纹理大小为4K。
For example, for basic fabric baking, I set Filter Size 2. For baking small, sharp, and deep folds or seams, I set Filter Size 5-7. Otherwise, noticeable pixels appeared on the texture.
The same with the Search Envelope parameter. The main parts were baked with a value of 1 since the low poly matches the high poly quite well. But the deepest folds, the highpoly of which is further away from the lowpoly, were baked with a value of 5. When everything was baked, I collected everything into one texture in Photoshop.
例如,对于基本的织物烘焙,我将过滤器尺寸设置为 2。为了烘烤小而尖锐和深的褶皱或接缝,我将过滤器尺寸设置为5-7。否则,纹理上会出现明显的像素。
与搜索信封参数相同。主要部分以值1烘烤,因为低聚非常匹配高聚。但是最深的褶皱,其中高聚离低聚更远,被烘烤成值为5。当所有东西都烘焙好后,我在Photoshop中将所有内容收集到一个纹理中。
For bevel baking, I used the Bevel Baking plugin in Blender. This is a very easy tool that bakes smooth bevels on hard edges without creating a high poly. I have used it on hard surface parts such as the mask, buckles, boot soles, as well as on the thickness of the cuffs, belt loops, neckline, and hood. Next, I connected the texture of the sole of the boot with the normal baked from the high poly in Photoshop.
对于斜面烘焙,我在Blender中使用了斜面烘焙插件。这是一个非常简单的工具,可以在硬边上烘烤光滑的斜面,而不会产生高聚体。我曾在面具,扣子,靴底等硬表面部件以及袖口,皮带环,领口和兜帽的厚度上使用它。接下来,我将靴子鞋底的纹理与Photoshop中从高多边形烘焙的正常纹理连接起来。
For baking chamfers on interior elements, I also used Blender. Since the textures of the corridor only tile along one axis, I baked the tiled chamfers to the corners of the corridor as well.
After that, I finalized the normal map in Substance Painter using the height channel. This is how I added room numbers, keyholes, vents, bolts, etc. For realism, I added the texture of crumpled metal on the doors and metal surfaces, dents on the white furniture, the unevenness of the concrete floor, etc.
为了在内部元素上烘烤倒角,我还使用了Blender。由于走廊的纹理仅沿一个轴线平铺,因此我也将平铺倒角烘烤到走廊的角落。
之后,我使用高度通道在物质绘制器中完成了法线贴图。这就是我添加房间号,钥匙孔,通风口,螺栓等的方式。为了逼真,我在门和金属表面上添加了皱巴巴的金属纹理,在白色家具上添加了凹痕,混凝土地板的不平整等。
The bed normal was baked in Maya from a highpoly created by Marvelous Designer. The seam on the pillow was added later using the height map.
正常的床是在玛雅从Marvelous Designer创造的高息肉中烘烤的。枕头上的接缝是后来使用高度图添加的。
Texturing in Substance Painter
Texturing is one of the most interesting and important stages. It is possible to both emphasize your model and spoil it.
物质画家中的纹理
纹理是最有趣和最重要的阶段之一。既可以强调你的模型,也可以破坏它。
The first thing to do is to load your prepared normal map and bake the auxiliary maps: World space normal, Curvature, Position and Ambient Occlusion. For the last one, I set the value of Secondary Rays to 256 and Ignore Backface set to Always, to avoid black artifacts in places where one geometry enters another.
首先要做的是加载准备好的法线贴图并烘焙辅助贴图:世界空间法线,曲率,位置和环境光遮蔽。对于最后一个,我将“辅助光线”的值设置为 256,将“忽略背面”设置为“始终”,以避免在一个几何体进入另一个几何体的地方出现黑色伪影。
The first stage of texturing is the assignment of base materials. The fabric for the work uniform must be resistant to wear and external factors. Therefore, it had a rough normal, for example, like a tarpaulin. So, I picked up a suitable tile of fabric based on its texture. Then I created a color correction layer with a Passthrough blend mode and a little transparency to leave the unevenness of the original albedo.
纹理加工的第一阶段是基础材料的分配。用于工作制服的织物必须耐磨损和外部因素。因此,它具有粗糙的正常值,例如,像防水油布一样。因此,我根据其质地选择了合适的织物瓷砖。然后,我创建了一个颜色校正图层,该图层具有“直通”混合模式和一点透明度,以保留原始反照率的不均匀性。
The seams were drawn by hand using the height channel. There are 2 types of seams – external and internal (which eventually begin to be seen). I used different Spacing values for each. Next, I added a zipper. The belt buckle is painted metal, so I added some paint chipping on the edges. The belt was made in a similar way to the jumpsuit but from a coarser fabric. I also added rubber material to the gloves.
接缝是使用高度通道手工绘制的。有2种类型的接缝 - 外部和内部(最终开始被看到)。我为每个值使用了不同的间距值。接下来,我加了一个拉链。皮带扣是涂漆金属的,所以我在边缘添加了一些油漆碎屑。腰带的制作方式与连身衣相似,但采用较粗糙的面料制成。我还在手套上添加了橡胶材料。
The next step is adding detailing to the base materials. For example, I made the effect of burnt fabric on the surfaces turned to the top, rubbing on the protruding parts of the jumpsuit, because often the folds gather in the same places.
下一步是向基础材料添加细节。例如,我使表面烧焦的织物效果转向顶部,摩擦连身衣的突出部分,因为褶皱经常聚集在相同的位置。
I added dirt in the recesses and darkening for a volume effect. According to the idea, the overalls should not be heavily worn and physically damaged. So, I added general dirt, especially in deep places and closer to the floor where it gets dirty more easily.
我在凹槽中添加了污垢并变暗以产生体积效果。根据这个想法,工作服不应该严重磨损和身体损坏。因此,我添加了一般污垢,特别是在较深的地方和更靠近地板的地方,它更容易变脏。
It is worth remembering that all the detailing that is present on the albedo must be supported on the Roughness, and vice versa, with rare exceptions.
值得记住的是,反照率上存在的所有细节都必须在粗糙度上得到支持,反之亦然,但极少数例外。
The mask has been textured using the same pipeline. I used scratched plastic material as a base. I added a pattern of paint worn off in some places so that there was a feeling of uneven drawing. I also added holes using the height channel. The scan was made in advance in such way that the hole pattern lay flat, in the right direction and without distortion.
蒙版已使用相同的管道进行纹理处理。我使用划伤的塑料材料作为基础。我添加了一些地方磨损的油漆图案,以便有一种不均匀的绘画感。我还使用高度通道添加了孔。扫描是提前进行的,使得孔图案平放,方向正确且不失真。
For boots, the texture was already partially ready after the scan. I evened out the tones, muted too bright highlights, made color correction.
To create the Roughness map, I used an inverted Base Color map, with leveling and some manual adjustments. The deep parts turned out to be more matte, and the protruding ones were polished. Thus, the details present in the color were also supported on Roughness. After that I textured the sole and zipper and added some damage and dirt.
.对于靴子,扫描后纹理已经部分准备就绪。我均匀了色调,将太亮的高光调静音,进行了色彩校正。
为了创建粗糙度贴图,我使用了倒置基色贴图,其中包含调平和一些手动调整。深部的部分是更哑光的,突出的部分被抛光了。因此,颜色中存在的细节也得到了粗糙度的支持。之后,我对鞋底和拉链进行了纹理处理,并增加了一些损坏和污垢。
The same time I textured the interior. I wanted to make it more used than in the series. So, I added more scratches and dust to the surface of the floor, made the metal worn. I made the walls in the room darker with time and added painted chipboard panels on the walls.
同时,我对内部进行了纹理处理。我想让它比系列中更常用。于是,我在地板表面加了更多的划痕和灰尘,使金属磨损。随着时间的推移,我把房间里的墙壁弄得更暗,并在墙上加了彩绘的刨花板。
For the material of the mirror, I set roughness 0 (black) and metallic 1 (white). The base color of the mirror is light gray with a green tint, as in real life the mirror actually has a green color. I also added fresh and dried water drops to the mirror and washbasin.
为镜子的材料,设置粗糙度0(黑色)和金属1(白)。镜子的基色是浅灰色和绿色色调,因为在现实生活中镜子实际上具有绿色。我还在镜子和洗脸盆中添加了新鲜和干燥的水滴。
On the watch, the albedo is made very light green to give the illusion of a slight glow. The room numbers are made using the alpha channel, so I removed them when baking the doors AO.
As I said, the textures of the corridor are tiled along one axis. So, I added ambient occlusion shading on the albedo along the corners.
在手表上,反照率被制成非常浅的绿色,给人一种轻微发光的错觉。房间号是使用alpha通道制作的,所以我在烘烤门AO时删除了它们。
正如我所说,走廊的纹理沿着一个轴平铺。因此,我在角落的反照率上添加了环境光遮蔽阴影。
Rigging
Working on the animation of an anthropomorphic character was a new experience for me. I started work with a rig. For this, I used Advanced Skeleton, a rigging tool in Maya. Its advantage is that you don’t have to have a plugin installed to open your character. The skeleton created with the plugin will work without it. This is different from other tools known to me. If you figure it out, the plugin is quite user-friendly.
索具
制作拟人化角色的动画对我来说是一种全新的体验。我开始使用钻机。为此,我使用了高级骨架,这是Maya中的一种索具工具。它的优点是你不必安装插件来打开你的角色。使用插件创建的骨架将在没有它的情况下工作。这与我所知道的其他工具不同。如果您弄清楚了,该插件非常人性化。
For my character, I used the Biped preset. Unlike BipedGame, it creates three bones between the joints of the hands, in the hip, lower back and chest. In this way, more natural joint action, pronation and supination of the arms and legs can be obtained without distortion.
The controllers were also created using the plugin, they allow you to control both global and small body movements in sufficient detail.
对于我的角色,我使用了双足预设。与BipedGame不同,它在臀部,下背部和胸部的手关节之间创建了三块骨头。通过这种方式,可以获得更自然的关节动作,手臂和腿部的内旋和仰卧,而不会变形。
控制器也是使用插件创建的,它们允许您足够详细地控制全局和小身体运动。
Since the character is quite polygonal, the automatic skin turned out to be good. For the skin, I used the Bind method – Closest in hierarchy. So, the influence on parts of the body close to each other did not intersect. I decided to set Max Influences on 4.
Next, I hand-tweaked difficult parts of the skin, such as the hood, armpits and shoulder blades, as well as the elbow and knee joints, so that they did not appear rubbery. To make changes, I put the character in different poses and fixed bugs in them. When the skin was ready, I started posing.
由于角色非常多边形,因此自动皮肤效果很好。对于皮肤,我使用了 Bind 方法 – 层次结构中最接近。因此,对身体彼此靠近的部分的影响没有交集。我决定将最大影响设置为4。
接下来,我手工调整了皮肤的困难部分,例如兜帽,腋窝和肩胛骨,以及肘关节和膝关节,这样它们就不会显得橡胶状。为了进行更改,我将角色放在不同的姿势并修复了其中的错误。当皮肤准备好时,我开始摆姿势。
Posing and Animation
I made some static poses for rendering on a gray background and in an interior. In different poses, I tried to convey a different mood of the character. I exported the static poses from Maya without the skeleton.
摆姿势和动画
我做了一些静态姿势,用于在灰色背景和室内渲染。在不同的姿势中,我试图传达角色的不同情绪。我从Maya导出了没有骨架的静态姿势。
I also created some simple animations. Two of them are tiled. The first is a 40-fps idle with two breaths. The second is a walk (2 steps, 12 frames each). To make it realistic, I used the reference of a relaxed walking of a person frame by frame. Also, separately, I made an animation near the mirror, where the character puts her hands on the washbasin and looks at herself.
我还创建了一些简单的动画。其中两个是平铺的。第一个是40 fps的空闲,有两次呼吸。第二个是散步(2个步骤,每个步骤12帧)。为了使其逼真,我逐帧引用了一个人轻松行走的参考。另外,另外,我在镜子附近制作了一个动画,角色把手放在洗脸盆上,看着自己。
Unreal Engine 5 scene
Setting up the scene in Unreal Engine 5 started with importing objects. For interior parts, I used the usual export from Maya in FBX format. Unlike OBJ, it supports more than one material assigned to an object and correct positioning in the coordinate system.
虚幻引擎5场景
在虚幻引擎5中设置场景是从导入对象开始的。对于内部零件,我以FBX格式使用Maya的常规导出。与 OBJ 不同,它支持指定给对象的多个材质,并在坐标系中正确定位。
To export the character in a static pose, I also used FBX. But to export the animated character, I used the Game Exporter tool in Maya. To do this, you need to select all the components of your character (mesh, skeleton, and controllers) in the outliner and run the exporter. If you haven’t a button on the File menu, you should enable the plugin in the Plug-in Manager. You can see the export and import settings for the engine in the screenshot below.
为了以静态姿势导出角色,我还使用了FBX。但是为了导出动画角色,我在Maya中使用了游戏导出器工具。为此,您需要在大纲视图中选择角色的所有组件(网格体、骨架和控制器),然后运行导出器。如果“文件”菜单上没有按钮,则应在插件管理器中启用该插件。您可以在下面的屏幕截图中看到引擎的导出和导入设置。
I brought the scene to Unreal and created the materials. To create the glowing lamp material, I used the MM_Material_EM preset.
I planned to do without additional lights and use the material as a light source. But as it turned out in Unreal 5, such lighting is very dim. When the brightness of the Emissive color was increased, there was still not enough light, and a lot of artifacts appeared.
我把场景带到了虚幻引擎,并创建了材质。为了创建发光灯材质,我使用了MM_Material_EM预设。
我计划不增加灯光,并将材料用作光源。但正如在虚幻5中发现的那样,这样的照明非常暗淡。当自发光色的亮度增加时,仍然没有足够的光线,并且出现了许多伪像。
Therefore, I adjusted the brightness control using Multiply, made this value a parameter and set it to 5. With this value, the lamps themselves looked quite true. And then I added a Point Light beside each lamp.
因此,我使用乘法调整了亮度控制,将此值设置为参数并将其设置为5。有了这个值,灯本身看起来非常真实。然后我在每盏灯旁边加了一个点光源。
A separate task was to adjust the mirror. For the mirror to show the correct reflections, I created a Planar Reflection component around the mirror’s geometry in such a way that it does not cling to the frame, but only to the reflective surface itself.
The Reflection Method also played an important role. Globally in the whole scene, I used the Lumen method. But with this method the reflections in the mirror turned out dark and blurry. So, I created a separate PostProcessVolume for the room and used the Screen Space method. Global Illumination Method remained Lumen.
另一项任务是调整镜子。为了使镜子显示正确的反射,我在镜子的几何体周围创建了一个平面反射组件,使其不附着在框架上,而仅附着在反射表面本身上。
反射方法也发挥了重要作用。在整个场景中,我使用了流明方法。但是使用这种方法,镜子中的反射变得黑暗而模糊。因此,我为房间创建了一个单独的后处理体积,并使用了屏幕空间方法。全局照明方法保持流明。
Rendering
For rendering, I used one main camera and one additional. I used the second one for hard-to-reach frames with a Focal Length of 12. You can see the settings on the screenshot below.
For each screenshot and video, I created a separate sequence. Then I added a camera to them and animated them using keys. Sequences for static frames were created for several frames.
渲染
对于渲染,我使用了一个主摄像机和一个额外的摄像机。我将第二个用于焦距为12的难以触及的帧。您可以在下面的屏幕截图中看到设置。
对于每个屏幕截图和视频,我创建了一个单独的序列。然后我为他们添加了一个摄像头,并使用键对它们进行动画处理。静态帧的序列是为多个帧创建的。
I rendered the video using the standard Movie Scene Capture in AVI format at 30 fps without compression. I used Movie Render Queue to render screenshots. This is a great way to render at a higher quality than the High-Resolution Screenshot.
我使用AVI格式的标准电影场景捕获以30 fps渲染视频,无需压缩。我使用电影渲染队列来渲染屏幕截图。这是以比高分辨率屏幕截图更高的质量进行渲染的好方法。
I used the Custom Playback Range parameter to select from which to which frame I want to take a screenshot. For this, a sequence was created for several frames for static images. Since the camera may shake slightly in the zero frames of the sequence, to ensure maximum image clarity, I set the value from 1 to 2 frames.
我使用“自定义播放范围”参数来选择要从哪个帧截取屏幕截图。为此,为静态图像的多个帧创建了一个序列。由于相机可能会在序列的零帧中轻微晃动,因此为了确保最大的图像清晰度,我将值设置为1到2帧。
Next, I added Anti-Aliasing with 16 samples to smooth out the edges. I also used the High Resolution setting with 4 tiles. This means that the engine will render 4 parts of the frame separately, and then combine them into one. Note that the Exposure method must be set to Manual to use this setting.
接下来,我添加了16个样本的抗锯齿功能,以平滑边缘。我还使用了具有4个图块的高分辨率设置。这意味着引擎将分别渲染帧的 4 个部分,然后将它们合并为一个。请注意,必须将“曝光方法”设置为“手动”才能使用此设置。
I set an Overlap Ratio of 0.1 for all frames. But since this was not enough for the mirror, and artifacts appeared, I set it to 0.5.
In the end, I combined the rendered videos into one in Adobe Premiere Pro and added sound.
我为所有帧设置了重叠比率0.1。但是由于这对镜像来说还不够,并且出现了伪影,因此我将其设置为0.5。
最后,我在Adobe Premiere Pro中将渲染的视频合并为一个,并添加了声音。
Conclusion
I can highlight the main points of work on the project:
结论
我可以强调项目的主要工作点:
The jumpsuit of the Squid guards and gloves are completely simulated in Marvelous Designer. Also the bed. Boots were created using 3D scanning in RealityCapture. These were some of the most exciting stages of working on the project.
While retopology of the character became the longest, but necessary step. The remaining parts of the costume and the interior of the corridor and bedroom are modelled in Maya.
All textures were created and finalized in Substance Painter.
I used Maya for rigging, skinning and animation. For such character, I did it for the first time, so there are still many subtleties of the process to be figured out.
The project was assembled in Unreal Engine 5. The lighting was set up here. A separate task was to set up a correctly working mirror in Unreal Engine 5 for a plot idea.
In conclusion, I want to add that all your most crazy ideas are feasible as long as you burn with them. Combine your passion with the technology you want to learn and you have an absolutely win-win mix.
And of course, don’t forget about time. You can improve your work indefinitely, so make an estimate and follow it. I learned a lot while working on the project and I hope this article was useful to you.
Thank you for reading 🙂
鱿鱼护罩和手套的连身衣在Marvelous Designer中完全模拟。还有床。靴子是在RealityCapture中使用3D扫描创建的。这些是该项目工作中最激动人心的阶段。
虽然角色的重新拓扑成为最长但必要的步骤。服装的其余部分以及走廊和卧室的内部都以玛雅人为蓝本。
所有纹理都是在Substance Painter中创建和完成的。
我使用Maya进行绑定,蒙皮和动画。对于这样的角色,我是第一次这样做,所以这个过程还有很多微妙之处需要弄清楚。
该项目是在虚幻引擎5中组装的。照明在这里设置。另一项任务是在虚幻引擎5中为情节创意设置一个正常工作的镜像。
最后,我想补充一点,只要你用它们燃烧,你所有最疯狂的想法都是可行的。将您的热情与您想要学习的技术相结合,您将获得绝对双赢的组合。
当然,不要忘记时间。你可以无限期地改进你的工作,所以做一个估计并遵循它。在这个项目上,我学到了很多东西,我希望这篇文章对你有用。
感谢您的阅读 🙂
|