Home Technical Talk

Ben's Hair-Texture-Generator for Haircards

polycounter lvl 6
Offline / Send Message
goekbenjamin polycounter lvl 6
:D  What a great threadname to begin with...

I am an aspiring character artist,
and as an character artist we all have to get some hair textures for our characters of course...

Actually to get some good and naturally looking hairstrands you either have to use:
1. Maya + Xgen + Arnold, then correct lighting etc etc, and than bake that on a plane
OR
2. paint yourself some hair


Because it takes so much time i decided to create an hair-texture-generator inside an BROWSER in which you can define:
- Hairwidth
- Strand count
-  density
- color
- weaviness etc etc..

That is my current stage (ignore the wonderful ui here):



That is some textures it generates:



please let me know what you think about it ;)

Replies

  • goekbenjamin
    Options
    Offline / Send Message
    goekbenjamin polycounter lvl 6
    UPDATE: 
    - UI
    - responsive design
    - changed code base for better maintenance (angular)


  • Obscura
    Options
    Offline / Send Message
    Obscura grand marshal polycounter
    Can we have a link so we could try it out?
  • goekbenjamin
    Options
    Offline / Send Message
    goekbenjamin polycounter lvl 6
    hey Obscura, 
    unfortunately no, because it is still in super-alpha stage and i have no hoster atm.,
    however i will announce it when it is online
  • goekbenjamin
    Options
    Offline / Send Message
    goekbenjamin polycounter lvl 6
    just another test:

  • Mink
    Options
    Offline / Send Message
    Mink polycounter lvl 5
    Could you possibly make it export all the required textures for UE4 hair cards? 
  • Alex_J
    Options
    Online / Send Message
    Alex_J grand marshal polycounter
    Great initiative. 

    Would love to try it out whenever you feel it's ready. 

    One thing I'd love to see is pretty strong clumping parameters. For any character with wet/oily/dirty hair, or basically any animals, having realistic clumping is important. 
  • goekbenjamin
    Options
    Offline / Send Message
    goekbenjamin polycounter lvl 6
    input parameters will be added/refined (just like clumping)

    exporting other maps like normals etc is also on the todo list, even if i am not sure how i will get the desired results :)
  • goekbenjamin
    Options
    Offline / Send Message
    goekbenjamin polycounter lvl 6
    You also may suggest which maps are essential/desired for you all to work with
  • Obscura
    Options
    Offline / Send Message
    Obscura grand marshal polycounter
    ID map and occlusion would be great. They are used in the hair shader in Paragon. Also, I see a lot of aliasing on the thin lines, so maybe an anti aliasing multiplier would be good too.
  • goekbenjamin
    Options
    Offline / Send Message
    goekbenjamin polycounter lvl 6
    Obscura said:
    ID map and occlusion would be great. They are used in the hair shader in Paragon. Also, I see a lot of aliasing on the thin lines, so maybe an anti aliasing multiplier would be good too.
    Thanks for the input!
    Yeah that "aliasing" is something i have to fix too.
  • goekbenjamin
    Options
    Offline / Send Message
    goekbenjamin polycounter lvl 6
    I guess maps for PBR are essentiall too?
  • Obscura
    Options
    Offline / Send Message
    Obscura grand marshal polycounter
    I guess. Here is a link to what the Unreal hair shader would require. Well. Not all of the maps are must needed, but some of them are essential. Scroll down to the hair section:
    https://docs.unrealengine.com/en-us/Resources/Showcases/PhotorealisticCharacter

    Hair implementation varies between engines. Unreal does it like in the link, but I know, in Toolbag, you can use normal map too, while the Unreal one doesn't even allow you to use one.

    I think you should add dilation too. So The edges of the non opacity textures can be expanded.
  • goekbenjamin
    Options
    Offline / Send Message
    goekbenjamin polycounter lvl 6
    Just wanted to let you guys know i am still working on that project,
    i was short with time because of other stuff i had to do, i am also evaluate if i use another language than javascript because when i would "bake", i had to "fake-bake" it, because of the lack of real 3D and lighting.

    For now, here have a Santa Claus Beard texture :smiley:



  • goekbenjamin
    Options
    Offline / Send Message
    goekbenjamin polycounter lvl 6
    Hey, i had to push that project alittle bit to the back because of other stuff.
    From now i can work on that project again, and will keep updating this thread.

    I updated the internal code which generates the hair strands to increase performance, but its still in super-alpha mode, so still no early access here.
  • musashidan
    Options
    Offline / Send Message
    musashidan high dynamic range
    Just saw this now. I currently do hair atlases in Xgen and the main 3 modifiers that seem to get the best results are 3 different clumping layers at low-high frequency, a Cut modifier that randomises the length, and a noise mod on top.

    another factor is tapering the width at the root as well as the tip. It helps blend the root with the scalp geo, along with a slight variation in root position(vertically) and a slight fade out in opacity.

    Great work.
  • goekbenjamin
    Options
    Offline / Send Message
    goekbenjamin polycounter lvl 6
    Alright, update status:

    1. Rebuild that whole thing from ground up to provide real 3D, so the output will be real usable 3d maps

    2. Tapering (finaly)
    Albedo without tapering


    Albedo with tapering

    Notice: no recalculation of strands done here, so the form of strands will stay the same, only the taper will change,
    you have full controll on how  strong the taperis and on what positions it will happen

    Normal (with tapering)



    Define the shape of the haircard it self via controls (like guids in xgen)
    Notice: the controlling will be improved, so just "overlook" that ;)

    Straight Shape


    Curved Shape

    The Controls basically represents the shape of the left-halv side of the hair card itself

    To fully understand the "shape-thing" have a look at this "Shape3":



    - cards can be manually placed by hand, so no restrictions here
    - cards can overlap each other
    - and of course the "usual" basic stuff is also adjustable (Strand-thickness, albedo-color, strand count)



    Let me know what you think.
    Of course i will add more maps, add a cutmodifier as suggested and much more.

    Cheers!
  • Spaceboss
    Options
    Offline / Send Message
    Any more progress on this so far? Cool stuff you're making fam
  • goekbenjamin
    Options
    Offline / Send Message
    goekbenjamin polycounter lvl 6
    Spaceboss said:
    Any more progress on this so far? Cool stuff you're making fam
    Hey, thanks a lot!
    Currently, I am working on something different, but for now, I paused that project!
    I will post here as soon as I will begin to work again on it ;)
  • 3DModelGirl84
    Options
    Offline / Send Message
    I am very interested in this. if you need any testers I would love to help :) 
  • goekbenjamin
    Options
    Offline / Send Message
    goekbenjamin polycounter lvl 6
    I am very interested in this. if you need any testers I would love to help :) 
    Hey, thanks alot for your interest! I will have to do some big rework on the base of the software! ATM i am working on smtn different  bit as soon i will be working on it again i will post it here!
Sign In or Register to comment.