what is the best way to create human characters in unreal 4.2
Cull your operating system:
Digital Humans project example from the Ballsy Games Launcher in the Learn
The purpose of this showcase is to demonstrate the use of high-quality grapheme shader techniques, similarly to those used on characters from Ballsy's MOBA game Paragon. To view this showcase, simply open the project and press Play In Editor to run into the cinematic pan-around.
For more information on the tech used to produce this character, please refer to this Unreal Engine Livestream - Tech & Techniques Behind Creating the Characters for Paragon.
Skin Shading
The grapheme'southward skin is created through the utilise of UE4's Subsurface Profile shading model.
Note the utilise of Material Functions to set up the base for the skin Material. This is washed every bit a reusable authoring approach to creating Materials for Paragon. In this way, artists can standardize approaches to generating sure types of surfaces, knowing that a fundamental change to a single Part will update all instances where that Function is existence used.
Skin Shader Textures
The textures used on the character's skin are all at 4K resolution and were originally produced from facial scans of the player. The textures were then cleaned up and tweaked by artists at Epic. This skin setup utilizes 5 full texture maps: diffuse, roughness, specularity, scatter, and normal.
| Texture | Name | Description |
|---|---|---|
| | Diffuse | The diffuse map supplies the Base of operations Color for the Material. At 4K, yous can run across the tiny capillaries merely underneath the surface. Whatsoever concealment of wrinkles will accentuate the texture supplied by the normal map. (UE4_Demo_Head_D) |
| | Roughness | The roughness map is stored within the alpha aqueduct of the diffuse texture. This is a common technique used to minimize the amount of textures in use. Note that the roughness increases within pores and wrinkles. This causes those areas to announced less shiny, accentuating the look of depth provided by the diffuse and normal map. Too note that the hair texture on the head is pushed out to fully crude (one.0) this prevents whatsoever devious specular highlights from the scalp, which will give a much more than significant sense of depth to the pilus. (UE4_Demo_Head_D) |
| | Specular | The specular map scales the amount of specular highlight visible across the surface of the skin. It is important to annotation that the default value for specularity is 0.5. This map boosts specularity at areas where the skin may be stretched a chip tighter, and dampens it in areas where nosotros don't desire to come across reflection, such as the center of pores and within wrinkles. (CH2_exp04_merged_spec_f_FC_FINAL) |
| | Besprinkle | The scatter map controls how much low-cal is going to be scattered through the surface of the skin. Areas that are dark will exhibit very trivial besprinkle, such as the cheeks, while lighter areas will have higher amounts of perceived scatter, such as the olfactory organ and ears. The colour of the besprinkle is managed past the Subsurface Profile asset. (UE4_Demo_Head_BackScatter) |
| | Normal | The normal map works as expected in typical material setups, supplying the tactile texture to the surface by perturbing pixel normals. There is zero out of the ordinary in its setup for this example. (UE4_Demo_Head__normals) |
Hair Shading
Pilus shading is handled by fashion of UE4's Hair shader model. This shader is physically based shading model based on enquiry by Eugene d'Eon, Steve Marschner and Johannes Hanika and currently used by Weta Digital. The shader approximates light'due south reflection from the surface of the hair with anisotropic specularity, likewise as its refraction through it and its scatter throughout multiple strands.
To utilize the UE4 Hair shader, prepare the Shading Model property of your Material to Hair.
Pilus and Specularity
In the real world, hair tends to have multiple specular highlights: one representing the color of the light and another that is a mix of pilus color and light colour. For sake of this document, we volition refer to these every bit primary and secondary specular highlights. The Hair shader approximates the same furnishings with highly realistic results.
-
The lighter hair represents the primary specular highlight. ii. The brighter red hair represents the secondary specular highlight.
The approximation algorithm used in UE4'due south hair shader creates these effects in a similar manner to how they are made in the real world. As light strikes the surface of a hair follicle, it does not simply bounciness off. Hair is translucent, assuasive some light to laissez passer through information technology, to potentially bounce effectually inside it, and then go out. The hair shader approximates this with iii possible paths for low-cal to travel as it interacts with pilus, as shown in the animated GIF diagram below:
Cantankerous department of single hair follicle showing how the hair shader approximates interaction with light, demonstrating the three main types of paths light will take. See the tabular array below for descriptions of each role of the process.
| Number | Clarification |
|---|---|
| 0. | The growth (root to tip) direction of the hair follicle. |
| 1. | Reflection-only path, with light bouncing off the surface of the hair. This produces the chief specular highlight. |
| 2. | Transmission-transmission path, in which lite passes into the hair follicle and dorsum out the other side. This is how lite scatters within a volume of hair. |
| 3. | Transmission-reflection-transmission path, in which light enters the hair follicle, reflects off the inside purlieus of the surface, and then exits . This produces the secondary specular highlight. |
Every bit shown in the diagram above, a strand of hair is not a perfect cylinder or tube. In actuality, pilus appears more equally a series of stacked cones. This ways lite billowy off the surface of hair will exist scattered differently than it would if hair were perfectly polish. Farther, because each strand of hair is generally pointing in a different direction, the specular highlight volition non be unified, but volition be independently placed based on the direction the hair is pointing. This is often referred to every bit anisotropic specularity, which is also supported by the UE4 hair shader.
Hair and Transparency
The Pilus Shader uses the Masked alloy mode instead of translucency. Nevertheless, Masked transparency produces a binary event - surfaces are either fully opaque or fully transparent. A noisy dither pattern is constantly moved beyond the surface, becoming more than dumbo in areas that demand to be more solid. Dither is used as a way to alloy Masked transparency, but simply works when TemporalAA is active.
Using an animated dither with TemporalAA requires several frames to resolve the blend. This tin can lead to some artifacting on hair while it is in motion. This is an expected side effect of the technique.
Edge Masking
Though non specifically part of the shader itself, it is worth noting that the Material used on the example character'southward hair - also as the other characters of Ballsy'southward game Paragon - uses what is called an "Edge Mask" to fade the hair abroad as information technology becomes edge-on to the camera. Since hair is rendered as a series of planes - come across Pilus and Geometry below - it is likely that from sure photographic camera angles, i would see the edge of each canvass, breaking the pilus event.
To assist alleviate this problem, the Material calculates the photographic camera's vector against the vertex normal such that as the surface turns perpendicularly away from the camera, it will also fade away to complete transparency. The other side of this approach, however, is that in doing so it is possible that the hair shader may prove more of the scalp. This is also why many characters with thick heads of hair will often have a hair texture painted on the scalp, as seen in the epitome below.
It should also be pointed out that this effect is tied to a Quality Switch node, so that on lower-powered platforms information technology tin easily be switched off to trade back some shader performance. As always, it's best to test on target platform.
Creating hair using the techniques shown in this showcase requires a bit of agreement of how Epic constructed this grapheme'due south hair.
Hair Geometry
Pilus geometry using UE4's hair shader is generally going to be constructed using a series of not-planar sail surfaces, which is a common approach in many real-time hair solutions. These can be authored in the DCC app of your option.
While in that location are no hard and fast rules for the item of your hair geometry, it should exist noted that this character uses approximately 800 private hair sheets, with a full of approximately 18,000 triangles. Besides note that the hair Cloth is set to be ii-sided in the chief Material node's properties.
Hair Textures
In this use of the UE4 Hair shader, the final event is driven by five master textures: Diffuse, Alpha, Root, Depth, and a unique-per-strand ID texture. At Epic, these textures are typically generated using 3ds Max'south Hair arrangement, projecting the imitation hair results onto a piece of geometry. However, at that place are many bachelor options for like results.
| Texture | Name | Description |
|---|---|---|
| | Lengthened | The Diffuse texture is precisely what one might await in that information technology supplies the primary diffuse - or base - colour of the hair itself. Information technology is sometimes desirable to leave this texture uncolored and bulldoze its color via parameters, especially in those cases where a character's hair may take on many different colors. (UE4_Demo_Hair_D) |
| | Alpha | The Blastoff texture supplies the areas of opacity for the hair, hiding geometry exterior the body of strands. (UE4_Demo_Hair_A) |
| | Root | The Root texture provides a mask which is used to change the colour of the hair from the root to the tip, useful for lightening or darkening hair along its length. (UE4_Demo_Hair_Roots) |
| | Depth | The Depth texture is used by Pixel Depth outset to requite the illusion of pushing the hair deeper into the pilus volume. It can also be used as a basis to change color or shading values for hair at different depths, such as reducing overall specularity every bit hair falls further toward the scalp. (UE4_Demo_Hair_Depth) |
| | Unique ID | The Unique ID texture merely provides a unique 0 to 1 (black to white) value for each strand of hair on a given slice of hair geometry. This is used to provide subtle variation inside the hair itself. (UE4_Demo_Hair_ID) |
Hair Shader Backdrop
When using the Hair Shader you volition observe some new backdrop bachelor on the primary Fabric node: Besprinkle, Tangent, and Backlit.
At the time of this writing (4.thirteen), the Backlit property simply exists as a role of an early on version of the shader. Connections to it are not used internally by the Hair shader and the belongings can therefore be ignored.
Besprinkle
One of the primary reasons we refer to the Pilus shader every bit an approximation, rather than a simulation, is that it is not actually simulating every private strand of pilus, nor is it simulating perfectly authentic lighting behavior. In the real earth, as light bounces off of and transmits through follicles of pilus, information technology volition often come across other strands of hair, repeating the same process potentially many times in succession. At this time there is no computing system capable of accurately producing the effects of such a simulation in realtime.
Nevertheless, the fashion in which light scatters through a torso of hair is still crucial to how realistic that hair appears to exist, in a game just as much as in the real earth. To control this, the Hair shader provides the Scatter holding, which replaces Metallic on your primary shader node and is limited to values between 0.0 and 1.0. Scatter controls how much light passes through the entire torso of your character's hair, as if it were a single surface.
An important point to note well-nigh Besprinkle is that it will tend to be higher for lighter colored hair and darker for darker hair. This follows the concrete rules of the natural world, every bit darker pilus will tend to absorb more light. In practical terms, if you are trying to create a blonde character, you will observe that changing the diffuse texture or color is not enough; you volition also have to increase the Scatter value also.
In this example the Root and Tip colors were set to a stake blonde color, and Random Variation was set to 0.0. Scatter was then used to adjust how much light was approximated to motility through the hair. This illustrates how various tones of hair can be generated but past changing the Scatter value.
Tangent
The Tangent property replaces the Normal property on the Hair shader. The tangent is calculated every bit a vector that runs parallel to each strand of hair, pointed dorsum toward the root. The purpose of the Tangent belongings is to help in proper anisotropic specularity. If yous are unfamiliar, anisotropic specularity is what happens when low-cal bounces off a micro-grooved surface, such as brushed metal.
The sphere on the left is anisotropically shaded, while the 1 on the correct is not. Notice how the anisotropic specular highlight stretches along the surface.
The Tangent property is used primarily as a vector to control the direction of that the anisotropic highlight will stretch.
In this image the yellow line represents the tangent along a strand of hair, pointing back toward the root.
In the example character'south hair shader, this vector is given a random commencement in the Z-Axis between 0.iii and -0.3, using the Unique ID texture. This produces a vector which has a random management within an arc, and aids in providing variation within the anisotropic specular highlights such as you would see in clusters of real pilus.
Tangents can be mapped in one of 2 means: automatically or with the help of a period map. The automatic method simply requires that that the textures for each canvas of pilus be oriented such that the root is toward the elevation and the tips are toward the lesser. So long equally your hair is curt, and no sheets are bending effectually and twisting as well much, this arroyo is adequate. This is the method used on the example character'south pilus.
Flow Maps for Tangency
The other method requires the cosmos of a menstruum map. This is useful if your grapheme'due south hair is long and is angle and needs to appear to bend and coil more than the actual geometry does, or if the individual texture portions for the pilus are oriented in different ways (not height-to-bottom as described above). The flow map will represent the direction the hair is moving in tangent space, or forth the surface. Within the the Photoreal Character Bust project, y'all can find an unused flow map named T_Hair_Flow. Below is a comparing of that flowmap and the consequence of the specularity.
Here you lot can encounter how the flow map is textured along the surface of Sparrow's hair. Note that the flowmap is simply in use on some of the hair sheets, not the entire body of hair. Observe how different values along the flow map subtly shift the specularity along the hair.
Using Pixel Depth Showtime with the Pilus Shader
Pixel Depth Outset (PDO) is not a holding unique to the Hair shader. In layman's terms, PDO causes pixels to look recessed away from the camera, creating an artificial sense of depth along the surface. Since hair is made up of simple sheets of geometry, as explained in Hair and Geometry below, the utilise of PDO can provide a tangible sense of depth to the hair shape as a whole. It also breaks upward the intersection indicate where a plane of hair geometry contacts the scalp, equally shown below.
Eye Shading
Optics are oft referred to as "the windows to the soul." Few aspects of a character have equally much influence on the viewer's perception of a character as a real person as that graphic symbol'south optics. The Middle shader in UE4 is designed to bring realistic rendering of an eye surface, exposing artistic command over each of the biological parts of the heart itself.
very strong dependencies betwixt the shader code, the Material, the shape of the geometry, and the geometry'south UV layout. Building an heart from scratch using this shader is non recommended without extensive feel in shader development. To that end, we strongly recommend, for those creating realistic humanoid optics, that you extract the middle geometry from this instance and apply the eye Material as-is
PhotorealEyeGeo
Eye Biology
In society to fully empathize the features of the eye, it is best to know a little bit of eye biology. Each of the parts you see here are represented in this eye setup, and all can be modified in some fashion using the exposed parameters in the Textile Instance applied to the example character's eyes (MI_EyeRefractive_Bust).
Hither is a quick refresher:
| Number | Name | Clarification |
|---|---|---|
| 1 | Sclera | The sclera is also known as the "white of the centre." This area of the eye is generally very moisture and has a slight amount of tactile texture. |
| two | Limbus | The limbus is the nighttime ring that is present between the iris and the sclera. It is more dominant in some eyes than others, and will tend to fade away when viewed from edge-on. |
| 3 | Iris | The iris is the ring of color around the center of the eye. When one is said to take "green" eyes, it is considering their iris is predominantly green. In a real centre, the iris is a ring of muscle-like fibers that expand and contract, allowing more light into - or closing light out of - the educatee. It is besides worth noting that in the real world, the iris is actually more than of a disc or cone shape, and does not burl outward with the rest of the eye. |
| 4 | Student | The pupil is the dark spot at the center of the center. Information technology is the hole through which light passes so it can be picked up by the rods and cones of the retina. |
| 5 | Cornea | The cornea is the articulate, fluid-filled dome that rests over the surface of the iris. |
Refraction inside the Center - Then and Now
Because the eyeball is filled with fluid, information technology is given to refracting any light that passes through it. This can be seen in the real world when looking at an eye from multiple angles. The iris and pupil will be distorted by refraction as they are viewed through the cornea. Traditional approaches to solving this for games and film was to create ii separate eye surfaces: 1 that supplied the sclera, iris, and pupil; and another surface on top that supplied the cornea and overall wetness of the eye. This allowed for refraction equally the underlying surface was viewed through the wet layer shell. Such an arroyo was used in Epic's A Boy and His Kite tech demo on the boy's optics. The diagram below shows a representation of the two surfaces.
Using our new Eye shader, however, an even more realistic effect can be achieved with a single surface. The refraction of calorie-free through the surface of the cornea is now handled entirely within the shader, alleviating the need for underlying geometry. You can experiment with this yourself past opening the MI_EyeRefractive_Bust Material Instance and adjusting the Refraction On/Off belongings.
Eye Shader Parameters
Due to the complexity of the eye shader and our recommendation that you apply information technology equally-is, we accept included a breakup of the creative parameters that are built into the Material. The post-obit are the eye shader parameters that can be tweaked from within MI_EyeRefractive_Bust Material Case Constant. Wherever possible, we will besides include suggested parameter ranges.
| Name | Description | Suggested Value Range | ||
|---|---|---|---|---|
| Static Switch Parameter Values | ||||
| UseEyeBulge | This holding is intended to suit the refraction properties of the shader based on whether or not the eyeball geometry uses a physically modeled bulge for the cornea. | northward/a | ||
| Vector Parameter Values | ||||
| Sclera inner color | This is the color of the sclera where it meets the iris. | n/a | ||
| Sclera outer color | This is the color of the sclera at the outer edge of the eye. | northward/a | ||
| SecondaryEnvBalance | This controls how much the Secondary Environment is visible on the surface of the middle. | 0.00 - 0.03 | ||
| SecondaryEnvRotationAxis | Since the Secondary Environment is a faked reflection, it must exist manually rotated around the eye. This property controls the centrality about which it will rotate. | 0.0, 0.0, ane.0 Z-Axis | ||
| Scalar Parameter Values | ||||
| Depth Scale | This controls the depth of the refraction of the iris underneath the cornea. | 1.0-1.4 | ||
| Flatten Normal | This value controls how much flattening of the centre'south normal map is taking place, focused particularly on the sclera. | 0.9 - 1.1 | ||
| IoR | Index of refraction of the fluids underneath the cornea. Controls how much refraction takes place. | 1.336 | ||
| Iris Concavity Ability | Used alongside Iris Concavity Calibration to control the shape and amount of light caustics that are calculated on the surface of the iris as light passes through the cornea. This will by and large just be visible in an actual lit scene, and can be difficult to visualize inside the Material Instance Editor. | 0.two - 0.3 | ||
| Iris Concavity Scale | Used aslope Iris Concavity Power to command the shape and amount of light caustics that are calculated on the surface of the iris as light passes through the cornea. This will generally just be visible in an bodily lit scene, and can be difficult to visualize inside the Material Instance Editor. | 0.07 - 0.fifteen | ||
| Iris UV Radius | Controls the overall size of the iris on the eyeball. | 0.fourteen - 0.15 | ||
| Iris Effulgence | Controls the effulgence of the iris. | Depends on iris color | ||
| Iris Roughness | This value drives how shininess of the cornea, the surface direct over the iris. | 0.0 - 0.i | ||
| Limbus Nighttime Scale | Controls the size of the concealment ring of the limbus. | ii.0 - 2.15 | ||
| Limbus Pow | Controls the overall darkening of the limbus surface area. Overdriven values volition darken the entire corneal surface area. | 15.0 - 22.0 | ||
| Limbus UV Width Colour | Controls the sample size for the limbus, or how much of the eye surface volition be alloted for showing the limbus. This is a adequately delicate setting and should be adjusted with care. | 0.025 - 0.040 | ||
| Limbus UV Width Shading | Controls how much lite will impact the shading of the limbus. Very delicate setting, adjust with care. | 0.040 - 0.050 | ||
| Normal UV Scale | Controls the calibration of the normal map texture used beyond the surface of the center. | 1.8 - two.6 | ||
| Pupil Scale | Controls the size of the pupil. This is the setting you would use to dilate the eyes. | 0.five - 1.0 | ||
| Refraction On/Off | Blends between refracting and non-refracting versions of the shader. | ane.0 | ||
| Scale By Middle | Adjusts the calibration of the unabridged iris/pupil area from its center. | 0.eight - i.two | ||
| Sclera Brightness | Controls the brightness of the sclera, or white of the heart. | 0.9 - 1.three | ||
| Sclera Roughness | Controls the Material Roughness value of the sclera | 0.0 - 0.one | ||
| Secondary Env Rotation | This rotates the secondary surround cubemap well-nigh the centrality defined using the SecondaryEnvRotationAxis property. | n/a | ||
| Shadow Hardness | Controls the sharpness of the alloy between the sclera inner and outer color. Used with Shadow Radius to assistance drive shading beyond the surface of the sclera, approximating the effect of the eyelid casting subsurface scattered shadows across the surface of the eyeball. | 0.ane - 0.ii | ||
| Shadow Radius | Controls the size of the blend betwixt the inner and outer colors of the sclera. Used with Shadow Hardness. | 0.5 - 0.85 | ||
| Specularity Iris | Controls specularity level across the cornea (iris and pupil). | 0.25 - 0.viii | ||
| Specularity Sclera | Controls the specularity level across the sclera. | 0.25 - 0.8 | ||
| Veins | Controls the visibility of veins in the eye, as provided by the Sclera Color Map. | Depends on Sclera Color Map and desired vein amount. | ||
| Texture Parameter Values | ||||
| Iris Color | Come across Eye Textures beneath. | due north/a | ||
| Normal Map | Encounter Middle Textures below. | n/a | ||
| Sclera Color | Come across Eye Textures below. | n/a | ||
| Secondary Env | This is a cubemap used as a secondary reflection environment. See Middle Shader Secondary Environment below. | n/a | ||
Center Shader Secondary Surround
The Secondary Environment is a part of the eye shader that provides a faked reflection map to the surface of the middle. You tin can provide a texture for information technology using the SecondaryEnv ParamCube in the shader and then controlled with the other SecondaryEnv backdrop. This tin can exist useful for dramatic closeups of the eye when you lot want to be able to encounter specific reflections, such as the immediate surround, another graphic symbol, etc.
Eye Authoring
Earlier in this section we provided a warning that at that place are strong interdependencies betwixt the lawmaking of the Eye shader, the setup of the fabric, and the geometry of the eye mesh. The following is a loftier-level overview of what makes the eye setup and then particular, which will be useful if y'all should try replacing the geometry with your own eye mesh for your characters.
When building your ain eyes, nosotros strongly recommend that you lot outset using the bodily heart geometry and Material provided in this example. This would involve As such, most of the information provided here will be based upon that assumption.
PhotorealEyeGeo
Shape and UV Layout
Much similar the human middle of the real earth, the middle mesh is non modeled to exist perfectly spherical. Rather, it has a singled-out dome at the front to stand for the cornea. This gives the eye almost an egg shape.
In this image y'all can see the geometry of the center viewed from the side in Maya. Note the raised area of the cornea at the front.
The UV layout for the eye is also critical, equally it is from this that the proportions of each middle texture are produced. Fortunately, the UV layout that works all-time with the Heart shader is relatively bones: a planar projection forth the front axis of the eye. Inclusion of backfaces is non extremely important (since they'll be behind the eye anyhow), which can exist seen on the the example character.
The UV layout will look like this:
Find that the UV layout is centered on the 0-1 space and that the projection looks direct into the cornea.
Eye Textures
Many of the textures you'll create for your eyes will be based on the UV layout created above, with the exception of the iris map. The list of master editable textures includes:
| Texture | Proper name | Description |
|---|---|---|
| | Sclera Map | The sclera map controls the colors of the eye whites, every bit well every bit the vein and tissue colour that will be nowadays at the edges of the eye. If you lot wanted your graphic symbol to be able to have bloodshot optics, for example, this is the texture you would modify. (UE4_Demo_Eye_Sclera_Color) |
| | Mid Plane Displacement Map | The mid plane displacement map is used to lock downwards a plane that cuts through the center of the centre, and is used equally a ground for offsetting the depth of the iris. (EyeMidPlaneDisplacement_Example) |
| | Normal Map | The normal map does the same job equally normal maps in all shaders - it supplies tactile texture variation. In the case of the the case character eye setup, it produces tiny lumps and bumps along the wet surface of the eye. (T_Eye_Wet_Normal) |
| | Tangent Map | The tangent map is used to control the direction the surface is flowing in tangent infinite. In the instance of the example character's eye setup, this is used to accentuate the change in direction where the cornea meets the sclera. (EYE_NORMALS.EYE_NORMALS) |
| | Iris Map | The iris texture is unique in that information technology does not match the UV layout. Instead, the texture fills the entirety of the resolution. UVs and blastoff masks are employed to control the overall iris size, also as the size of the pupil. If making your own iris maps, try to keep the pupil size reasonably close to the proportions in the supplied texture. (UE4_Demo_Eye_Iris) |
non fed straight into the Normal Map input. Rather, it is connected to a Tangent Output node, which must be created separately, as seen in the master textile M_HairSheet_Master2
Eye Ambient Occlusion
The final office of the heart setup for the example graphic symbol is the use of a translucent helper surface to to simulate ambient occlusion around the centre. In the real world - wherever your center comes in contact with other tissues such equally the eyelid or the tear duct - you lot volition encounter very soft shadowing. The softness is due to the fact that the eye itself is translucent; low-cal will besprinkle through information technology. To assistance simulate this realistically, we accept placed a sheet of geometry that covers the eye and provides approximated ambience occlusion, creating a richer degree of realism across the eye.
The Fabric practical to this sheet is named MI_Eye_Occlusion_Bust and can exist found in Element 3 of the the example character model.
If authoring your own content for grapheme optics, you volition very likely demand to build this piece of geometry yourself. Note that it should be fabricated to fit the area of the open eyelid and that its UVs should cleanly fill the 0 to 1 UV space in your 3D modeling app.
This image shows the ambient occlusion canvass geometry in Maya, without the geometry of the face. The border border of the canvass will perfectly make full the opening of the eyelid.
Special Thanks
Special thanks to Eugene d'Eon, Steve Marschner and Johannes Hanika for releasing their work The importance of sampling for physically-based pilus fiber models , upon which some of the work of UE4's pilus shader is based.
gainescyricionsien.blogspot.com
Source: https://docs.unrealengine.com/4.27/en-US/Resources/Showcases/PhotorealisticCharacter
0 Response to "what is the best way to create human characters in unreal 4.2"
Post a Comment