Announcement

Collapse
No announcement yet.

Subsurface Scattering Research and Experimentation

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Subsurface Scattering Research and Experimentation

    Hey guys I am just going to start this thread off with a small overview of the progress that I have made so far.

    I am in the process of completing this project as part of a masters dissertation titled 'An investigation into creating physically accurate real-time skin shaders'





    In terms of research I have been looking at technical skin rendering papers such as

    Jorge Jimenez's - Screen-space perceptual rendering of human skin

    and

    Eugene d'Eon's - Effiecent Rendering of Human Skin

    I have also been investigating both the texture space and screen space subsurface scattering solutions that are availible in both UDK and Crysis.(Crysis 1 & 2, UDK DX9 & DX11)

    From my research I managed to identify strengths and weaknesses of each of the skin shading approaches. This has lead me to the stage where I am going to attempt to merge both the texture based solution (DT 3d - http://forums.epicgames.com/threads/...DK-Skin-Shader), with some of the newer intigrated screen space features from the newer DX11 UDK.

    Current Problem: Miguel's shader works by the use of both a custom lighting and custom diffuse parameters, which is overwriting the extra screen-space attributes.

    Once I have finished prepping the head then I plan on exporting it to UDK and see what elelments of Miguel's shader can be used without the use of the custom lighting and custom diffuse.

    I am also planning on investigating the SSS withing Crysis and testing them in a physchophysical test with a series of check boxes so that I can see which technique is the most accurate.

    If you got this far , Thanks for reading
    Attached Files

    #2
    My dang computer has not been playing nice recently and my Graphics card died. I have managed to get a new grahics card through in the post today so I have managed to play around with implementing this new SSS stuff.






    I think this project is HEADing in the right direction now as I have been able to get some realtime SSS working in UDK.

    After a lot of tweaking I was able to alter Miguels shader, making it possible to remove the custom lighting and diffuse so that I could use my own lighting solution along with the new SSS features.

    I still have much tweaking and testing to do to get the result right. I also need to test the FPS of each of the solutions and create a questionnaire to perceptually validate the shader.



    Picture 1 is a shader using only the default UDK material slots along with the new SSS.

    Picture 2 is Miguels full layer shader. It looks very noisy from the side , where as it is much better from the front.



    Image 3 is the new hybrid shader, the specularity is quite poor so I have began tweaking it in pic 4.

    Comment


      #3
      Would you like my pretty blue eyes? =P

      http://forums.epicgames.com/threads/...l-Shader/page2

      If it can be of any use to you? I made this and its free to download and use. =)
      Here is the download link
      http://www.sendspace.com/file/vwiger

      Your skin shader looks impressive! Did you model the meshes as well? how long have you been working on this. I've noticed that getting the look of skin is the most hardest and frustrating thing to do in udk. Also I read on one of these forums that materials and shaders handle differently on a skel mesh compared to static mesh. Since a skel mesh is a dynamic object it needs a dynamic material or something along those lines etc..

      Comment


        #4
        Thankyou,

        I had a look at your eye shader thread ,that looks really good. I tried downloading and opening the UPK but it was corrupt I could do with snazzing up the etes of this head abit

        yep the models and textures are my own, the real credit should go to Miguel , his shader is awesome - http://forums.epicgames.com/threads/...DK-Skin-Shader

        Yeah that is correct with the way that the objects handle the light. It seems that static meshes are used for environment assets with collision etc and skeletal meshes are used for characters with sockets, skeletons and animations etc



        I tried importing the head as a static mesh (ASE) but I couldn't get it to handle overlapping UV's so I ended up exporting the eyes as separate objects. Strangely enough it still thinks that either UV's are out of bounds or are overlapping for the head despite me triple checking in max. I deleted the eyes, applied a single material and a single material ID etc and it is still playing up, crazy UDK.



        The static mesh heads look fine before the lighting is baked. Once it is baked they get strange shadows on them. It suggested applying physics to the model in the error log, so I applied Phys_Interpolate which has not changed anything :s

        I have been doing some testing on how each shader reacts to different lighting conditions, as it was a issue that was raised in the literature review. (Default udk approach (right), DT3D's shader (middle), DX11 UDK (left)
        For the screenshots and renders etc , I will place each of the heads in the same position so that the lighting is the same etc. At the moment they are all layed out so that I can set up the correct testing environment for a future psychophysical test. The test will be based off the results of the questionnaire.





        I am in the process of creating a questionnaire to evaluate the perceptual characteristics of human skin at the moment.
        The questions I am currently asking are broken into 3 themes at the moment;

        The idea I have at the moment is that I want measure their perception of current characters skin accuracy against the newer SSS shaders. I also want to asses the order of importance in which they validate the perception of accurate skin so that I can apply it a new shader.

        I have broken the questionnaire down into 3 sections, Existing Real-time solutions, Shader Comparison, General Perception and Extra Characteristics
        Most of the questions are closed with the answer of 1 to 5. 1 being very bad and 5 being very good.

        Existing real-time solutions

        overall glow (sub surface scattering)
        1-5

        high frequency details (pores)
        1-5

        Skin Surface (Oil/Grease)
        1-5

        Colour Variation (Fleshy Colours)
        1 - 5


        Shader Comparison


        overall glow (sub surface scattering)
        1-5

        high frequency details (pores)
        1-5

        Skin Surface (Oil/Grease)
        1-5

        Color Variation (Fleshy Colours)
        1-5

        General Perception


        What 4 colours do you associate with human skin?
        (make a choice out of 8 colours)

        List the order in which you would navigate around a head to measure its accuracy?

        eye brow 4
        ear 3
        hair 2
        nose
        lip 1
        cheek 5


        Extra Characteristics

        Age
        SSS, Spec, Normal Blur

        Race
        SSS , Spec ,Normal Blur

        I am in the process of thinking up a way in which i can test perception that the shader has on the age and race of skin. I am planning on having 3 images with different amounts of blur, spec and SSS values, and seeing how the change in settings effects the appearance of aging. This will make it possible to measure the impact that each characteristic has on the shader. I just need to think of how I can measure the answer :s

        Testing the FPS and lighting environments will happen in the psycho-physical tests. The where questions will be forced 2 choice eg Which looks better A or B?
        As you can see in the image above of the interior lighting, there isn't much to go by to measure the perception in the dark haha

        If you would like to see other questions asked please just say

        Comment


          #5
          Thankyou,

          I had a look at your eye shader thread ,that looks really good. I tried downloading and opening the UPK but it was corrupt I could do with snazzing up the etes of this head abit

          yep the models and textures are my own, the real credit should go to Miguel , his shader is awesome - http://forums.epicgames.com/threads/...DK-Skin-Shader

          Yeah that is correct with the way that the objects handle the light. It seems that static meshes are used for environment assets with collision etc and skeletal meshes are used for characters with sockets, skeletons and animations etc



          I tried importing the head as a static mesh (ASE) but I couldn't get it to handle overlapping UV's so I ended up exporting the eyes as separate objects. Strangely enough it still thinks that either UV's are out of bounds or are overlapping for the head despite me triple checking in max. I deleted the eyes, applied a single material and a single material ID etc and it is still playing up, crazy UDK.



          The static mesh heads look fine before the lighting is baked. Once it is baked they get strange shadows on them. It suggested applying physics to the model in the error log, so I applied Phys_Interpolate which has not changed anything :s

          I have been doing some testing on how each shader reacts to different lighting conditions, as it was a issue that was raised in the literature review. (Default udk approach (right), DT3D's shader (middle), DX11 UDK (left)
          For the screenshots and renders etc , I will place each of the heads in the same position so that the lighting is the same etc. At the moment they are all layed out so that I can set up the correct testing environment for a future psychophysical test. The test will be based off the results of the questionnaire.





          I am in the process of creating a questionnaire to evaluate the perceptual characteristics of human skin at the moment.
          The questions I am currently asking are broken into 3 themes at the moment;

          The idea I have at the moment is that I want measure their perception of current characters skin accuracy against the newer SSS shaders. I also want to asses the order of importance in which they validate the perception of accurate skin so that I can apply it a new shader.

          I have broken the questionnaire down into 3 sections, Existing Real-time solutions, Shader Comparison, General Perception and Extra Characteristics
          Most of the questions are closed with the answer of 1 to 5. 1 being very bad and 5 being very good.

          Existing real-time solutions

          overall glow (sub surface scattering)
          1-5

          high frequency details (pores)
          1-5

          Skin Surface (Oil/Grease)
          1-5

          Colour Variation (Fleshy Colours)
          1 - 5


          Shader Comparison


          overall glow (sub surface scattering)
          1-5

          high frequency details (pores)
          1-5

          Skin Surface (Oil/Grease)
          1-5

          Color Variation (Fleshy Colours)
          1-5

          General Perception


          What 4 colours do you associate with human skin?
          (make a choice out of 8 colours)

          List the order in which you would navigate around a head to measure its accuracy?

          eye brow 4
          ear 3
          hair 2
          nose
          lip 1
          cheek 5


          Extra Characteristics

          Age
          SSS, Spec, Normal Blur

          Race
          SSS , Spec ,Normal Blur

          I am in the process of thinking up a way in which i can test perception that the shader has on the age and race of skin. I am planning on having 3 images with different amounts of blur, spec and SSS values, and seeing how the change in settings effects the appearance of aging. This will make it possible to measure the impact that each characteristic has on the shader. I just need to think of how I can measure the answer :s

          Testing the FPS and lighting environments will happen in the psycho-physical tests. The where questions will be forced 2 choice eg Which looks better A or B?
          As you can see in the image above of the interior lighting, there isn't much to go by to measure the perception in the dark haha

          If you would like to see other questions asked please just say

          Comment

          Working...
          X