Search Unity

Why can't Unity HDRP correctly render AAA looking character models?

Discussion in 'High Definition Render Pipeline' started by cloverme, Sep 9, 2021.

  1. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    This. And I've spent a significant amount of time getting my characters to this level of detail, especially in the face.

    The character I posted earlier in the thread is 252K tris, with most of that triangle count being in the face and hair, especially for cleaner shading and smoother facial performance. I also spent last night tweaking my eye shaders so they can have it's own details, including parallax napping for the iris and a separate roughness mask for the cornea and iris.

    Even with Amplify, I now have Microtextures for things like fabric and various cloth materials. I have a recent where if you zoom in close, you can see the normal and AO maps working together. Still more to do.

    Last night, I even tweaked my skin shader to have dual roughness maps, and changed the scatter radius a bit to make the skin feel softer
     
  2. Deleted User

    Deleted User

    Guest

    I think that its impossible to get same great looking results which we get in a controlled setup lighting, in a directional light setup...even in in UE5 metahumans, if u have used them, they feel more uncanny in directional light (outdoor) setup than in a controlled lighting setup...
     
  3. Deleted User

    Deleted User

    Guest

    Its really looking great already :):eek:....I would recommend baking AO into vertex colors (or textures) for nostrils, lips, mouth, ears, eyes, hair and other concave areas to see if this subtle effect further increases the realism of the character!!
    Edit:- BTW are u using bent normal maps?? they can also improve your shading of the character and most AAA games use it
     
    Last edited by a moderator: Jun 19, 2022
  4. Deleted User

    Deleted User

    Guest

  5. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    I'm using bent normals in my skin shader and it works wonders
     
    Deleted User likes this.
  6. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Still having fun with my skin shader and this time, I've added Enviro to my scene so I can have some idea of how much characters really look in game. So far so good.

    Buuuuuuuuut, I need to get around a long beef I've had with Unity blowing away my blue channel in the normal map during the conversion process. Take a look at these renders with the vanilla normal map without any added details:

    20220620_121008.jpg 20220620_121021.jpg

    See? The normal map is there but it makes the character's face look smoother than a baby's ass and all of the curvature detail on the high detail model is lost.

    I couldn't fix it directly in Unity, so I went into Substance Designer and generated a curvature map based off the original normal map. In order to add the curvature map to the blue channel, I had to split the texture into its individual channels and append the curvature map into a merge node.

    Now it looks nice and crunchy. 20220620_121002.jpg

    Now here's how the character looks in Unity:

    20220620_121015.jpg 20220620_121035.jpg

    Not only do I get my skin details back (the Blue channel can be used as a height map), but the facial curvature now matches what it looks like in Substance Painter. I'm definitely gonna be using this trick a lot more often
     
    cloverme and Deleted User like this.
  7. impheris

    impheris

    Joined:
    Dec 30, 2009
    Posts:
    1,669
    looks metallic... at least for me
     
  8. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    I recently tweaked this. Went a little heavy on the curvature map and looking for a happy medium on the roughness map. In reality, unless you're running around in the heat, your skin will look dry from a distance.

    Lastly I'm using Enviro and in this test scene, there's nothing to reflect except the sky. I'll do another test in a white room, where the lighting should be a lot more even
     
  9. impheris

    impheris

    Joined:
    Dec 30, 2009
    Posts:
    1,669
    yeah for me, the level of reflection is on spot but it needs more roughness in my opinion. But whatever the ambient or room it needs to look not metallic jeje :) but your shader is very nice.
    Most of the time my opinion here is taken as wrong or not accepted hahaha XD so maybe you do not have to take it so seriously, also see the img
     

    Attached Files:

  10. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Actually you're right. Once you add a white plane in the scene, the skin looks properly lit with GI. Also lighting darker skin is a greater challenge in games and film
     
    Last edited: Jun 21, 2022
    Deleted User likes this.
  11. impheris

    impheris

    Joined:
    Dec 30, 2009
    Posts:
    1,669
    I see...
     
  12. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Why do you think everytime a skin shader is demonstrated, the characters almost always very light skin. Google "Subsurface Scattering Face" and you'll see why. Subsurface Scattering isn't visible on darker skin, which adds to the challenge of setting up roughness
     
  13. impheris

    impheris

    Joined:
    Dec 30, 2009
    Posts:
    1,669
    Deleted User, Qleenie and KRGraphics like this.
  14. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
  15. Qleenie

    Qleenie

    Joined:
    Jan 27, 2019
    Posts:
    868
    this also shows how important the movement of meshes are. This is outstanding in the example, probably high poly mesh with complex rigging or blendshapes. That's what we can hope Ziva will do once it becomes integrated.

     
    Deleted User and KRGraphics like this.
  16. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    I'm working on my next character and I'm adding curvature maps into my shader directly, to further enhance the roughness maps
     
  17. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Also, skin and eyes will look great if it has an environment to reflect. A simple skybox isn't enough, hence why my skin looks metallic
     
  18. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Afternoon. Here I am again with some more HDRP goodness and this time I'm showcasing some eye materials from my Character Shader Suite, which now supports Subsurface Scattering. I've also added the option to disable it if you don't want it on, which shouldn't have too much overhead.

    And I've also updated my teeth and tongue shaders along with my skin shaders, which all have support for Bent Normals. I think I can happily say, these shaders are (almost) featured complete, except for the hair which needs a major update and some quality of life improvements.

    But enough of my rambling. Enjoy the screenshots, feel free to ask any questions (the hair on the character has been removed so I can update it). The scene lighting is done with Enviro Sky.


    upload_2022-8-7_12-43-56.png
    Updated skin shader

    upload_2022-8-7_12-45-25.png
    Updated Teeth

    upload_2022-8-7_12-46-46.png
    Eye with SSS Disabled

    upload_2022-8-7_12-47-10.png
    Eye with SSS Enabled.

    upload_2022-8-7_12-53-31.png
    Improved Skin Details.
     
    soleron, Ruchir, Deleted User and 2 others like this.
  19. impheris

    impheris

    Joined:
    Dec 30, 2009
    Posts:
    1,669
    looks good
     
    KRGraphics likes this.
  20. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Thanks. Still need to work on a new hair shader
     
    Last edited: Aug 8, 2022
  21. cloverme

    cloverme

    Joined:
    Apr 6, 2018
    Posts:
    198
    Anyone have any updates on the new hair system Unity is working on? I keep seeing bits and pieces mentioned but nothing solid.
     
  22. Qleenie

    Qleenie

    Joined:
    Jan 27, 2019
    Posts:
    868
    I am testing it right now. Seems fantastic, albeit very complex, and no documentation. But it's finally there:
    https://github.com/Unity-Technologies/com.unity.demoteam.hair

    Will probably post updated screenshots later this week.
     
  23. DEEnvironment

    DEEnvironment

    Joined:
    Dec 30, 2018
    Posts:
    437
    new HDRP hair shaders and hair demo was added in beta and alpha versions you can get from the HUD
     
    KRGraphics likes this.
  24. impheris

    impheris

    Joined:
    Dec 30, 2009
    Posts:
    1,669
    Hi, how can i try that hair demo? i have the 2022 beta and i'm trying to get the hair package from here:
    https://github.com/Unity-Technologies/com.unity.demoteam.hair
    But it shows an error on the console that says something like that package does not have an executable
     
  25. DEEnvironment

    DEEnvironment

    Joined:
    Dec 30, 2018
    Posts:
    437
    open package manager and look inside High Definition RP for Samples upload_2022-8-10_19-10-22.png
     
  26. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    I took
    I looked at the hair samples last night. Would be nicer if it was on a actual head mesh
     
    DEEnvironment and impheris like this.
  27. impheris

    impheris

    Joined:
    Dec 30, 2009
    Posts:
    1,669
    Oh i see thanks, sorry to bother you again, is it the one on the "material samples"? asa.jpg
     
  28. DEEnvironment

    DEEnvironment

    Joined:
    Dec 30, 2018
    Posts:
    437
    yes that is the one
     
    impheris likes this.
  29. impheris

    impheris

    Joined:
    Dec 30, 2009
    Posts:
    1,669
    thanks...
     
  30. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Unity needs to show these off better. Don't they have character artists?
     
    DEEnvironment likes this.
  31. impheris

    impheris

    Joined:
    Dec 30, 2009
    Posts:
    1,669
    maybe they don't want you to be distracted by the character, maybe they do not want to put a character with materials and all that stuffs in the demo, also i guess ziva is not free, so...
     
  32. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    I call bs on this. I can do a hair demo AND show off an amazing character or even a base mesh
     
    Last edited: Aug 11, 2022
  33. impheris

    impheris

    Joined:
    Dec 30, 2009
    Posts:
    1,669
    i don't see any problem or negative point on that, is just a demo to show hair
     
  34. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    And make sure it's user and artist friendly. Hell, your wanna impress a potential user, show how the hair works, how it's created
     
  35. impheris

    impheris

    Joined:
    Dec 30, 2009
    Posts:
    1,669
    Yeah i think is very easy to work with, i was kind of lost at first but after some minutes it was very easy, very cool the demo with the "strands" i guess is just 2 point poly objects
     
    KRGraphics likes this.
  36. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    I was watching their GDC demo from Enemies and I'm very impressed with how it came out and SHOWING how it was made and that it was our of the box piqued my interest.

    I'm about to go home and further refine my skin shaders. Dealing with some grazing on some parts of it. And I'm also interested with reconstructing the skin tension solver in Amplify
     
  37. Qleenie

    Qleenie

    Joined:
    Jan 27, 2019
    Posts:
    868
    Hey, here are some first results with the new strand based hair system. Shader is work in progress, and as announced, the super-hair-compute shader will only come later with 2023.1....
    What the images don't show is the really good movement of hair, the guy writing the hair package did a really, really good job with it:

    hair-1.PNG hair-3.PNG hair-4.PNG hair-5.PNG
     
    blueivy, bdb400, Ryiah and 7 others like this.
  38. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    All of these are extremely impressive!! Once I build some new hardware, I'm definitely playing with this. I love the 4C hair especially. And the improvements in the skin rendering. Very nice.

    And speaking of new stuff, I've been improving my eye shaders trying to keep it artist friendly as possible (and I'm not waiting for Unity 2022 for the eye shader). And this is all done with a parallax map to fake refraction. Might not even need the iris caustics since unless you're in extreme close ups, irises in real life don't really have that glint. And the icing on the cake: added subsurface scattering.

    Just added pupil dilation but the parallax map doesn't react to it. Still working on that. For strand based hair, I need to see if I can use Modo with this and export the curves from the hair tools.

    Eyeball with Parallax.png Eyeball Profile.png unknown-6.png
     
    Last edited: Aug 16, 2022
  39. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467


    After some time this evening trying to figure out how to get the pupils in my eye shader to dilate, I came across an Unreal 4 shader involving eyes and was able to reverse engineer it in Unity. I'm so frickin happy it works!!

    Now I can make a bunch of irises procedurally and place them on the model.
     
    Ryiah, Safemilk and Deleted User like this.
  40. Safemilk

    Safemilk

    Joined:
    Dec 14, 2013
    Posts:
    42
    upload_2022-8-17_9-15-17.png
    Here's my SORRY attempt at putting my Demon Bassist, Longilizekhla into Unreal. I've messed with UE5 only a handful of times so this is absolutely a skill issue.

    Unity example is using Unity 2022.1.13f1 HDRP NO RTX just regular lighting.
    Unreal is using Lumen

    Tried to create a similar lighting setup for both. Failed miserably with Unreal... def a skill issue.

    Like, SEARCH ME as to why the white hair strands didn't come in, I have no clue.

    One thing I noticed so far for me is that it's a lot easier to do micro changes in Unity than it is in Unreal, I always feel like things are just a bit out of my control when messing with Unreal.

    I'd love to learn more about Unreal, it's lighting and it's material editing etc. but as it stands I can definitely get closer to the look I want in Unity, but I genuinely think that's just skill/experience with the engine.

    ---
    I think one thing (you all might have mentioned in this thread sorry if I missed it) but the tech demos these engines are releasing are AAA quality teams pouring cutting edge tech into getting what they want out of it, so comparing Enemies and the Matrix demo is a pretty fair comparison in some regards, but comparing OUR work as individuals or small teams who don't have access to a room full of 1000 cameras to take scans of real people and then teams of artists to convert those assets into finished runtime products that then use experimental pre baked technology to allow for realistic facial capture BLAH BLAH BLAH, you get the point... I don't think that's as good of a comparison. I've seen some really awesome stuff by all of you in this thread alone, but I do think we have some aspects here that are the tools fault sure, but also, hey, we are operating in a different realm than the multimillion dollar tech demos as well.
    ---

    So I guess I see some various angles by which to evaluate things, and I think if it's a COD:MW 2 level of visual fidelity you're hoping to achieve as an individual dev or a small team, both engines are going to struggle to do that because a large part of that relies on the assets. I know I haven't yet made something that could look that good regardless of which engine I'm using, I'm just not that good of an artist.

    But I do think Unity CAN make characters look good, it just requires a lot of know-how and effort, and I think Unreal CAN make characters look bad, it just requires a dummy like me to try and use it.

    I'd love to see more direct comparisons of your assets in both engines, they are both free after all, also I'd love any tips on how to use Unreal better... Unity will mostly always have my heart but it's always going to be fun to mess around in both... and learning all the stuff that's out there while time consuming isn't going to make you less hirable or skilled...

    Just some random thoughts after seeing the thread!
     
    Ryiah, cloverme, valarnur and 2 others like this.
  41. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    The hair definitely needs work and it's the hardest. For the quality that we're aiming for, is definitely a matter of skill. I've been using my soldier model to author shaders and figuring out lighting for my game project, and I'll say this: it can be done in Unity. I can put my character in Unreal 5 with a similar setups and I promise you, it will be on the same level of visual parity. Doing it in Unity requires a bit of elbow grease, especially with HDRP. Hell, my eye shader was a fun challenge to do in Unity and I reverse engineered it from Unreal 4.

    Quality wise, I'm aiming at God of War (2018) level and I know I can
     
    Deleted User likes this.
  42. impheris

    impheris

    Joined:
    Dec 30, 2009
    Posts:
    1,669
    that is pretty cool
     
    KRGraphics likes this.
  43. shma_unity

    shma_unity

    Joined:
    Jun 13, 2018
    Posts:
    118
    Just as I was getting the hang of card hair, the new strand hair finally drops. I played around with it a little bit, and I'm very impressed. Due to the shaders only being available on beta, I won't use it for production just yet, but I for sure will continue to get get everything ready, once the new unity versions come out.

    I've been working solo on a project for about a year now next to doing another project full time, and slowly but surely I'm getting to something presentable, even though it's still far from AAA.

    1.jpg 2.jpg 3.jpg 4.jpg
     
    Last edited: Apr 15, 2024
  44. KRGraphics

    KRGraphics

    Joined:
    Jan 5, 2010
    Posts:
    4,467
    Is this video with the hair strands or the hair cards? If it's hair strands, a little more time with it and your hair will look marvelous
     
  45. shma_unity

    shma_unity

    Joined:
    Jun 13, 2018
    Posts:
    118
    This is just regular hair with cards. I can't get this project to run with the beta and the new HDRP 14+ yet, as some of my plugins aren't compatible and crashes unity, so I will have to test which ones are causing it first, or wait for an LTS version so plugin support catches up.
     
  46. nehvaleem

    nehvaleem

    Joined:
    Dec 13, 2012
    Posts:
    438
    you can use hair strands with the Unity 2020.2.0f1+, I've tested it today in 2021.3.7f and it works just fine. Only 1 of 3 rendering modes won't be available tho.
     
  47. shma_unity

    shma_unity

    Joined:
    Jun 13, 2018
    Posts:
    118
    Yeah. I tried it in unity 2021 as well, but I don't think the shaders are available for HDRP 12 (so only the rainbow color buildin render mode), so it wasn't more than playing around with it. Getting it into production once I can upgrade shouldn't be too much of a problem, since the alembic imports seem to work great.

    (edit: or do the shaders work in HDRP12?)
     
    Last edited: Aug 18, 2022
  48. Qleenie

    Qleenie

    Joined:
    Jan 27, 2019
    Posts:
    868
    The shaders from HDRP 14 samples work fine in HDRP 12. You just need to rewire some stuff with VertexNode and VertexVolume nodes from hair package. And switch to UV1 instead of UV0 for the hair length calculations.
     
  49. shma_unity

    shma_unity

    Joined:
    Jun 13, 2018
    Posts:
    118
    Oh neat, I'll try that
     
  50. Safemilk

    Safemilk

    Joined:
    Dec 14, 2013
    Posts:
    42
    This looks fantastic.