top of page

Subsurface Skin Shading of New Characters in Survival Ascension

I have continued to work on the new character models for Survival Ascension over the past few weeks. I've been hard at work building out body morphs for the models and re-architecting the meshes for being driven by the character system I'm using in the game. With that work essentially complete, I have begun the work of importing the first character and rigging it in game.

When you render a character in a game, the biggest factor in the "realism" of the character beyond the general physical likeness to a real person is how the skin renders. Most games use a standard lit shader which renders a rather flat and featureless skin. However, skin is incredibly complex in real life. Not only does it have interesting bumps and patterns which need to be replicated in game for a more realistic rendering, it is also translucent and diffuses light throughout its structure. Much of the color actually comes from the light passing through the skin and reflecting off of things behind the skin (like blood vessels, muscle, etc). Pigmentation of the skin plays a role in how the colors blend as the light diffuses through the skin.

To achieve this complex interaction with light and properly render the complex color profile of real skin, many higher end games now use a Subsurface Scattering Shader. Essentially, the shader is designed to replicate the way light diffuses through the skin and how the colors blend and mix. Survival Ascension uses Unity as the 3D game engine, and the default rendering system in Unity (along with the newer Universal Rendering Pipeline or URP) does not support a native subsurface shading system. The new High Definition Rendering Pipeline (HDRP) does allow for this type of rendering, but it is not compatible with mobile devices or with lower end graphics hardware commonly found on budget PCs and laptops.

While I would like to eventually support an HDRP build of Survival Ascension, for now I am using a custom implementation of a subsurface shader for rendering the skin of characters in game. This shader comes at a hefty performance cost, so there will be an option available to disable this type of skin shading if you are in need of additional performance. However, the shader does provide pretty good results, even in the non-optimized scene view rendering of the models. Check out the skin rendering of the new Evita character below.

25 views0 comments

Recent Posts

See All

Things have been pretty busy for me lately, but progress is still being made. I do have another approximately two week period coming up at the end of July and beginning of August where I will likely n

In a previous post I discussed how players will be able to freely build whatever buildings they choose to make, for whatever purpose they want. They will have the ability to build free-form by placing

What fun is a game without the ability to fly? It is practically the universal childhood dream -- to soar among the clouds like the birds. Many open world games provide some mechanism by which the pla

bottom of page