As you know, I have been using Character Creator in Unity and Unreal projects so far. However, while the UE4 projects are more “high-end” in nature, the Unity project that has used CC3 characters was for PlayStation Vita. And while I then began porting that game to PC and PlayStation 4, it remained a “mid-end” project using the engine’s standard renderer.
As you know, Unity has two alternative rendering pipelines: the High Definition Render Pipeline for high-end systems, and the Universal Render Pipeline for lower-end systems. While I am not using Unity for any high-end game at the moment (I moved Killer Dolls to Unreal Engine a little bit ago, and the other “big” project is also being made in Unreal Engine), I decided to try out CC3 characters in Unity using the HDRP just to see the result. You can create an HDRP game in Unity using two different methods. You can either create a new game from scratch, using the HDRP template, or you can convert an existing game to HDRP. Choosing one or the other depends on your specific situation. You can convert an existing project but the conversion will take a while depending on your project’s size, and, if you’re using custom shaders, they will break. For this specific case, I created a brand-new project. For my tests I used this character.
I import the character the same way I always do. I simply drag and drop the folder containing the exported character into Unity. As you may know, I don’t use Reallusion’s auto-setup tool for Unity because I’ve ran into animation issues when using it in my projects (long story short, Unity’s Mecanim and Avatar systems don’t quite like the bone structure). When imported, this is how the character looks. Unity automatically detects the materials in the FBX file and creates the materials accordingly. The result looks fairly good, but it can be better.
When importing the materials, Unity simply creates the standard HDRP materials. The standard material is meant to be an all-purpose material, which is OK but not really optimal for certain objects. In the case of the skin, the basic standard material will still make it look like plastic. However, Unity’s HDRP standard material includes various material types. For example, I can change the “Standard” material type to “Subsurface Scattering” which is the material used for skin. This type of material lets you choose a Diffusion Profile, so you can define how the SSS behaves. Unity already includes a “Skin” Diffusion Profile, although you can create your own.
Another thing to note is the material import doesn’t apply all the maps. For example, your materials won’t have normal maps. You will need to manually connect those (I assume the auto-setup will do this for you, but, as I’ve said, I don’t use it). This is how the character looks after turning her skin materials into SSS materials, and applying normal maps.
If you look at the hair, and compare it with the one in the previous image, you will notice it also looks different. The HDRP standard material actually has a Hair material type, so you only need to change the hair’s material to Hair and it will look far better, like actual hair (considering it’s still polygon-based hair).
For another test I decided to put the character in a dark scene, with a single spot light. You can see the character has a very nice scattering along the shadow terminator (the edge between the lit and dark part of the skin).
As you can see, you can get pretty amazing results with Character Creator 3 and Unity HDRP. However, you must keep in mind this rendering pipeline is aimed at high end computers.