Ok, a little update on the skin shading, especially the calculation of the stretch correction map.
OPENGL & DERIVATION INSTRUCTIONS
I encountered a problem with the implementation of the stretch-map rendering. I use the ddx() function to get the derivative of the world position in UV space, i.e. how much the world position changes from one pixel to the next. This way you get a nice approximation of the texture coordinate distortion. For more information about the whole process have a look at my previous post here.
skin shading - stretch correction
Tags: Human Skin, OpenGL, Shader, ShaderLab
skin shading - texture space diffusion - part 2
Interactive demo of my skin shader:
For older graphics cards I captured a video of the demo:
Tags: Human Skin, Shader
skin shading - texture space diffusion - part 1
I tried to improve the build-in shaders, to see if it would be enough for a decent skin shading. Often the specularity of virtual skin does not look right, so I decided to take care of that first. The standard shaders had only one fixed value for "shininess" per material and the specular intensity was not angular-dependent. So I extended the Bumped Specular shader to take an additional specular-texture, where the roughness is stored in the alpha channel and an fresnel term, that increases the intensity at very low angles.
Tags: Human Skin, Shader
shader development in unity
In the last weeks I concentrated on shader development, especially the skin shading.
I hadn't used ShaderLab, the shader language of Unity, before and the syntax was... well, a little bit tricky in the beginning. But after studying the build-in shaders a little bit, I quickly became familiar with it. The basic concepts of vertex- and pixelshaders I already knew from the time I wrote shaders in HLSL for a small testgame with Microsofts XNA Framework.
The first thing I implemented was a replacement for the ambient light. Ambient light is in most cases doesn't look very pretty, because it's the same color and brightness just everywhere. Instead of that I used a cubemap, to look up the color for each direction with something like this:
starting this blog
I spend almost the last year finishing my exams at university and doing some jobs. In that time I worked quiet a while with XNA, Microsofts free Game Framework, learning the basics of shader programming and realtime rendering techniques like "Deferred Shading", as well as rigging, sculpting, painting,...
But now I finally started to work on my diploma thesis. My goal is to expore the uncanny valley a little bit, while creating a realistic character. As I did the some scribbles for the character, I noticed that I always start to create more fictitious, than realistic characters. Also it would be fun to develop such a character, it wouldn't suited my "uncanny valley" topic well. I finally decided to create a copy of a real person. Here I have the possibility to take a lot of reference pictures and texture samples and compare the results of real and virtual model.
Tags: Modeling, Uncanny Valley
Uncanny Valley
"...strong negative response humans have to an entity that is nearly human"
"...may stem from an ability to identify - and avoid - people suffering from an infectious disease."
"Part of the problem is fiction being held to higher standards of realism than reality itself is."