Shop Forum More Submit  Join Login

CGI Comic creation #03 - Iray skin shadering

Journal Entry: Thu Oct 6, 2016, 12:37 PM

Valentina Bellucci #03 by Chemicq

For info about 3D mapping, I recommend reading this article : Different textures and what they do

For info about iray surfaces and what their technical purpose is, I recommend reading SickleYield's article here : Iray Surfaces And What They Mean

For creating texture maps, I recommend : Normal map online 

For the skin shader used in this article, download here : Eva 7 skin shader

About one and a half year ago I decided to create a CGI cyberpunk science fiction comic and I have a lot in my hands to work with, so much that I ran into system limits a bit too fast without really knowing what exactly was going on. This made me rethink the whole situation of putting everything together and just render what I see on screen. Frst things first, let's try to understand what this application can do. In my search to make distinctive looking renders with well known products the key feature is customization, otherwise you are doing things that are too recognizable and could have been made by just anyone else.  'Standard' material mapping was the known norm in the form of a diffuse/normal/specular mapping that allows basic shadering, depending on the type of application you were using. Quite simple actually, a diffuse map (or color map) delivers the basic look of the texture, the normal map provides the pseudo 'height' level and the specular map controls the way reflections look. All this looks the way it looks because of the way light is projected on the object. Iray extends the amount of usable maps with extra (very useful) layers to enhance shadering, metallic flakes layer and top coat layer add some really interesting features. Daz Studio loves subdivision geometry and next to the mesh itself, SubD can be added to the displacement mapping which is a very interesting feature for skin shadering. I have read several discussions on the internet fora about the use of bump and normal mapping at the same time and whether they are useful together or not, I leave the answer in the middle because they influence each other (along with the other Iray layers), mostly in terms of gloss amount. Don't get me wrong here, a lot of good shaders have already passed by and I am not the one to provide 'the' skin shader but I can explain my workflow with a stylized look that I feel confident about, it's rendering so you still spot the render among the real images which is both good and bad. Good because it has to be as close to the real thing as possible and bad because it's not the real thing. Iray is a physical based rendering engine that can produce photorealistic images without using hocus pocus to simulate the real thing so realism can be done if the textures and lighting are perfect. The real reason why it will take some time to achieve this level of realism is because body meshes are just textured empty volumes, bones and organs (with different physical lighting parameters) are not foreseen in the body mesh. This will make you change parameters like translucency and refraction to lower values to fake the fact they are there. Most skins look too 'toony' or flat because these parameters are left out the standard skin shader. Some will have a high translucency value but mostly to fake a more realistic feeling to a pale skin but I am running ahead of things here so I will start with explaining why my parameters are set the way they are. Iray skin shadering is like finding optimal settings for the tools you have been given, my settings are far from complete but I feel that most skin settings do. You can get the idea you have found the holy grail of correct settings for your skin but a shader is worthless and invisible if your lighting is inappropriate. I am a big fan of using studio HDRi lighting in the form of black and white spot HDRi in combination with mesh lighting, I rarely use spot lights because they produce that typical lighting ideal for renders that require bright lights. I always use SS Sun nodes to lighten up exterior shots because of the versatility I have in lights and shadows it provides. I might just write another journal about how to lighten up your scene to have the best custom lighting.

The reason why I have waited so long with writing this journal is the fact that I have the feeling that I can't add really something new to what we already know so far. The only thing I can write about is my customization level to achieve this distinctive look. There have been released numerous good iray skin shaders so studying them is all you have to do and ask yourself why these settings are set that way. AS-Dimension-Z produced one of the best preset shaders so far and we already discussed some parameters and why their values are set that way, really useful info. I still don't believe in a universal skin shader because settings for one skin don't apply automatically for another (seemingly) similar skin and results really depend on what you make of it. A lot of skin designers don't use a lot of the extra iray settings and that's up to the user to extract the best of it, I can only show you how you can do it and more important, understanding what it is you are changing. You can download my Eva 7 preset skin shader on top of this journal, it's my version 3 and you will get a result similar to the looks of Valentina Belluci which uses some altered maps of Eva 7 and is one of the best Daz vanilla pale skins imho. I did not include version 4 because you would need a lot of extra maps and you can use this shader as it is now without extra maps, you only need eva 7 and apply the shader afterwards. You can use the shader on other meshes but you need to change the UV set and mapping yourself after copying the settings without mapping. (CTRL-click on the shader preset and choose Images-Ignore). The displacement mapping is based on the standard bump map and the top coat layer is still in use. It is very possible that you have produced better results with other parameters but these are just my settings so don't attack the comment section with what is bad here, I will definitely give it a try what you believe could have been done the better way, we might all get better in the end because realism is still far off for numerous reasons ;)

Shader Settings 01 by ChemicqShader Settings 02 by Chemicq

Base color -> Diffuse (Color) map goes here

Translucency color -> SSS (Ambient Occlusion) map goes here

The first thing that comes to mind when looking at the translucency parameter of eva 7 is that the default is 0.65, pretty high for skin. You have to look at a body as a volume rather than a mapped object. Compare it to holding a torchlight under your fingers and see the tips turn reddish because of the strong and nearby light. High translucency values in iray tend to do that when using strong lights, especially when the volume transmitted color is also reddish. Because 3D body meshes are 'empty' in terms of bones and stuff like that the only option is to see the body as a 'bucket' of blood. The color of blood is red to dark red so I usually switch the translucency color to it as a starter, of course other colors are possible and might look good too. You can use a range from white to red and everything in between depending on the effect you want, zombies will look good with a plain white translucency color. When the color red is set you choose the amount of translucency, I use refraction also because the combination delivers a good human 'flesh' look. Choosing a value from 0.1 to 0.3 looks pretty good for dark red blood, a higher value produces a darker toned skin but doesn't react as good to light as you would expect. When you are using custom tattoos or just want the ears less translucent than the rest you can map this. There's a website (link included on top) that allows you to make SSS maps and you photoshop the toning to get the desired effect. The methodology with mapping this is the same as with all the rest of the special maps, greytone where black is value 0 and white is value 1 so darker parts on your map will set translucency towards 0, meaning no translucency.

Glossy layered weight -> Specular map goes here

Ah, the glossy settings. It's best to balance these settings with your metallic flakes layer settings because they influence each other quiet a lot. Human skin (when properly lit) has a lot of gloss that might not seem to be like that when poorly lit and that's the great trick of it. I recommend the weight value at its maximum and fiddle around with the other settings. Glossy roughness is interesting to make the overall look rough glossy (what's in a name) or not and you should use a lower value for the lips to make them stand out and have that subtle 'wet' effect. 
Refraction index according to wikipedia for human flesh is around 1.44 and the weight is best set between 0.1 and 0.3, for human flesh lower values work really well and make your skin actually look 'fleshy' instead of flat mapped, overdoing this makes it 'waxy' however. This has to be balanced with translucency and transmitted color for the desired realism. This value also accepts maps so you can choose which parts get less or more refraction, interesting for thicker flesh around the thighs and ass cheeks in comparison to flesh just on top of the skull.

Base bump -> Bump map goes here
Normal map -> Normal map goes here

Bump, normal and displacement maps are meant to achieve surface 'bumping' in terms of subtle height differences, bump and normal mapping add an extra to achieve this, displacement actually changes the shape of the mesh on top so be careful when you balance this because it's easy to overdo. Tight clothing might not benefit from high displacemnt values because you get poke-through, increasing the clothing mesh size is an option. Most skin shaders use values between 1 and 2 for the bump map, to extract the finest details out you should use a value between 1.5 and 2.0, some detailed skins even go off-limits and have a bump setting of 3 which brings out very small skin details. On top they sometimes use normal maps for extra detail. Normal maps sometimes tend to have large image sizes which make them inappropriate and an option to leave them out is often included. Standard 4K normal maps can go as high as 100Mb, Genesis 3 figures need 5 normal maps for covering all desired surfaces so 500Mb for normal maps only is a real vram killer, especially if the difference is really subtle. Sometimes I use them, sometimes I don't.

The metallic flakes layer. Mhh, what does that have to do with skin? You have to see it as an extra gloss setting that really adds flavor and that subtle amount of fleshy moisture. Overdoing it results in oily skin, I tend to keep the maximum value at 0.1 but I always use that value for pale caucasian skins, darker skins need lower values around 0.5 but that's really testing. The bitch here is the fact that the final result is only visible after a lot of iterations, kinda the same with the effect with displacement mapping. In the beginning of the cooking process you might see excessive gloss but it disappears with every next iteration and the final result is very good. You should use a greytone color for this to keep the effect subtle without influencing the color of the skin, a mid greytone really works. I tested slightly blueish tints with pale skins and the results are good but you shouldn't put that result next to a greytone result, they both look ok in their own way but too different from each other to mix them.
You're looking at Valentina's skin shader version 3.2 and still uses a top coat layer but I have left that out in skin shader 4 because I have the feeling the mapping disappears in the void and using high values to make them visible messes up the final look because you already use a regular normal or bump map. In this case the bump mode was set to height so you can duplicate the bump map again but forget about it, displacement mapping is the solution for this.

Thin walled settings, aha, volume settings! The interesting thing about this is the color you can set, I have seen a few colors passing by but in most cases it's a reddish or a blueish tone. Compare this to how your skin looks when you run around naked outside in the snow, it will have a slightly (blueish) colder look and when you enter the house near the fire you warm up and start to turn reddish, the look is subtle but defines the 'temperature' of the body if you can call it that way.

Displacement map -> Displacement map goes here

A lot of skins I know don't make use of this because it alters the body mesh but you can make these maps yourself quiet easy. For quick and dirty results you can go to the link on top. You can set contrast and sharpness yourself and the web service uses your GPU to calaculate the results. You can use the bump map as displacement of the original Eva for this but in some cases you will notice the surface lines crossing each other because they are not real displacement maps. The results for me are very promisimng but it's easy to overdo (again). Setting a SubD value of 4 (along with the body mesh) results in crispy sharp rendering but you need the vram to be able to load all this, if not just lower the values. 4Gb vram should be ok to render a body mesh at SubD4 with hair and clothes.

I will most probably update this journal post a few times to add more details because the subject is so complex and there's a lot more to tell but for now this will have to do. Cheers! ;)

This Journal Skin was designed by Night-Beast
  • Listening to: Marc Moulin - Every day is D-Day

CGI comic creation #02 - The next level

Journal Entry: Fri Mar 4, 2016, 4:00 PM
28 december 2132 by Chemicq

   About a year ago I decided to create a CGI science fiction comic from scratch. After searching for solutions on the internet I stumbled upon the Daz Studio website and recognized the style of images from CGI I saw before on Deviantart. Victoria 4 and earlier body meshes don't look bad but all renders looked too similar and I always had the feeling that they needed a lot of improvement to be able to use them for something I want. Nvidia also released the Iray render engine about a year ago and decided to cooperate with Daz studio. Interesting fact since the resource pool for daz studio content is huge on different websites, the import options for external resources are even bigger and iray has lots of great features to make rendering more realistic. A choice I have not regret ever since.

   Only one chance to make a first impression, so better take the time and do this the best possible way. A comic gets only as good as the story gets and storytelling is an art by itself. Most CGI comics I see on Deviantart are focused on the story or the visual part but lack the combination of both, something that I believe is due to the fact that most people don't want to put too much time and effort into something that looks impossible to do by themselves. I like a big challenge like this because 3D is something you can master when your skills improve and your knowledge grows, it's just a matter of time. I can enjoy creating a single prop to use in the bigger thing but I find more joy in creating the bigger thing and let others perfectioning the things I want to use, after all they have already put so much time in creating that I couldn't possibly do it any better. Using someone else's creation in a massive piece like this comic is maybe something that the creator will appreciate, it usually means they have made something versatile enough that reached the highest quality level. Creating a rich universe with characters that tickle your imagination enhances the immersion, a lot of thought has been put in every detailed character to make them believable with their own background, what they want, what their secrets are and how they look. Character profiles are coming up next to reveal parts of the story or to provide background info to make the reader more interested in understanding why these people are who they are.

  I get the question sometimes when I will start with the comic or why it takes so long before there is something to see but I don't want to make the same mistake twice like I did with my prologue chapter, even when it was intentional to have it as an experimental chapter. Extensive testing of all props and figures sometimes reveals things that are unforeseen and changing a character in the middle of a story is not done, it has to be perfect from the start. It is however only logical that characters enhance but not at their very basics. I converted some G2 characters to their G3 version while I kept others at the G2 mesh base, the question is not if one is better than the other but it creates more diversity among characters and the resource pool is bigger that way. Autofit clones are perfectly fine but can become your nighmare when you have to finetune poses. The biggest difference is the fact that iray was fully integrated when G3 was released so skin shadering has improved a lot since G2, most G2 figures I use are using my own experimental skin shaders but look realistic enough to use. Another holy grail to be found is good looking hair, an issue that will always be there when rendering, using enhanced subdivision geometry and adapted hair shaders solve a lot of the visual part but it's trial and error most of the time. True realism is still far off but we have already a lot of tools in our hands to make the best out of it.

   Enhancing subdivision geometry and using 4K textures are my best friends but are a big job to compute so hardware requirements are something to take into account, I had to double my amount of system RAM to 32Gb to be able to work within Daz Studio and its iray preview pane. The Geforce GTX970 with 4Gb vRAM is a good subtopper, even for render tasks so that will do for a while. Compiling shaders and trying to preview a render at high subdivision levels sometimes takes up to 32Gb of system ram, not having that would make one go insane and make Daz a very unresponsive application. Using a lot of different highres textures also makes your Vram fill up fast and will make your Windows OS unresponsive if you want to do something else during rendering.

[Iray tips] Iray render quality settings
   Render quality settings are not always very clear because the outcome is heavily influenced by what it is you are rendering. You have the choice between render quality, render end time and maximum samples value. Thruth is, they are all connected to each other and it is always one of those three that defines your 'end' setting. Rendering props and characters at base resolution or high resolution SubD 1 is mostly ended by the render quality setting. Standard value is 1 and in most cases the render will finish in well-lit environments without grain at that setting. The darker the environment the more chance you will have to see grain in the darkest parts or where lots of high-gloss surfaces influence each other and you will have to increase your max samples value in that case. When using higher SubD values for body mesh, hair and clothing you will notice that render quality 1 will be insufficient for grainless rendering so it's better to adapt your quality setting to something higher during a render to avoid this in a finished render. If you see the number of iterations progress very slowly you might want to leave render quality at value 1 and set the end time to its maximum and visually judge the quality for the presence of grain, your max samples (iterations) value is standard at 5000 and it's possible you might never get to that value under these heavy circumstances.  It's safe to say that after 2000 iterations you might be able to see if a render will be succesful or not, depending on SubD levels the equivalent of 4 hours. Don't take this as a reference, it's just a personal experience.

Thanks for reading!

This Journal Skin was designed by Night-Beast
  • Listening to: Snow ghosts ft. Blue daisy - Covenant

CGI comic creation #01 - The next level

Journal Entry: Sat Aug 29, 2015, 10:11 AM
The prototype by Chemicq

    5 months ago I needed a tool for creating a CGI science fiction comic I had in mind and after searching the internet for appropriate applications and solutions I came across the daz3d website. I knew these kind of images from deviantart but they never were immersive enough to get my jaw dropping. Buying stuff was easy since for me it was like working towards a concept rather than buying stuff and do something interesting enough with it to publish. I know now there a lot of good artists out there who are able to do some magic with the older genesis figures, props and physical based render engines but the end result always looked stylized. I started with a few props, a victoria 6 model and rendering with 3Delight, a very good render engine if you know how to work with it. It didn't take long before running into some limits where colourful dots started to appear in my renders, after looking up this was caused by the total amount of light being over 100%. Working around flaws already after two weeks? That couldn't be true and then Livius70 commented on an early picture and told me to take images  like this to the next level with the newly released iRay engine. Easy choice because I wasn't already entirely emerged into 3Delight, the new engine was made by nVidia and would be using your video card and cpu to render. One month earlier I upgraded my entire system to the next generation with a fast quadcore, 16gb fast ram and a GTX970 with 4gb of ram. Exactly the kind of combination Nvidia said that would benefit from using this new render engine. So a new render engine and a new workflow, easy for me to go all custom made and get to learn daz studio and iRay a lot better. Starting my comic and learning at the same time could be done through a test chapter now being published as the prologue. You can see progress and changes throughout this chapter while still preserving the consistency of the story so more please!

[HDRi-SS Sun node]
    Everyone renders differently in terms of style and used techniques and I slowly developed my own distinctive style. In my search for immersion with iRay it became clear that there are a few things that really add flavor to a scene. I like to build large scenes that can be used from many angles for lots of purposes, in my case an outpost or part of a city for a comic. I believe HDRi maps are great for studio lighting and blurred far distance when building large scenes but still seems a bit off compared to the rest. Maybe it's my fixed idea of thinking but a complete scene built from textures and shadered objects looks too different from the HDRi map picture. iRay provides another way of lighting a scene and comes in the form of what they call a 'Sun node'. Simulating the sun is great to use in outdoor scenes and provides great looking images without much effort. It took me a few weeks to be able to use this how I wanted because the time of day setting that is available is not very handy to use so by accident I discovered when setting the SS Sun node to a dedicated camera the camera position defines the direction of the way the sun shines so you can have the shadows being cast exactly where you want them. While experimenting with this I noticed that lowering the camera and put it in a more horizontal position also defines the time of day so it's pretty easy to simulate dusk or dawn with this with the appropriate amount of light. I tried some closeup portraits when using a ss sun node only and the results are not bad but also far from good. Skin shaders look as if they are missing some essential parts of the light spectrum so adding some emissive lights could help here. SickleYield had some good advice on how to add emissive lights without showing them rendered, great info to remove the hassle of finding a way where all emissive lighting seems to be coming together in the reflection of the eyes.

Sssunnode by Chemicq

Stephja brought this to my attention because I was experiencing some strange artifacts in the form of black spots. His first idea were the little black triangles popping up on body meshes where the mesh polygons were stretched. The default subdivision level value is 1 with Render SubD level minimum is also 1, increasing this last value further divides the surface and minimizes this issue and finally solves it, however at (dramatically) increased render times. I started experimenting with this and increased the minimum value to 3, the results for lighting and shadows for the body mesh are awesome but adding clothes shows another issue. Most clothes don't have the ability to change the SubD levels by default but you can always convert the object to SubD in the menu (Edit-Object-Geometry-Convert to SubD). When you preload the scene in iray there seem to be no issues with pokethrough until the moment you start doing the actual render. You have to increase the size of the clothes, use the good old cutout opacity levels of the body mesh or find some other way to work around this issue. So it's searching a bit for the correct settings to use this but the visual result is stunning, however I have the feeling that setting the minimum value to 3 also triples the render time.

The best ingredient to make a scene breathe and provide immersion is the correct implementation of volumetric effects, easy to overdo and hard to master. When iRay was released it was just a matter of a few weeks before someone found out how to do this in a very easy way with daz3D and it was again SickleYield who pointed out this in one of her journals. The way to do this couldn't be easier but also affects render times a lot and depends on how you use it. One of the most important things when using this kind of technique is to make sure you let your render finish to the end, having it manually stop at 80% provides you with an unfinished image where the fog looks like grain and the background behind it is way too blurry.

This Journal Skin was designed by Night-Beast