Comping Ambient Occlusion on Furry Characters


#1

Hello I was wondering if anybody here have come across the following problem: I have a furry Character and an ambient occlusion pass that I need to comp on top of my fur pass, the problem is the AO pass is on the character with no fur not on the fur itself, so I need to do some tricks in the comp. See image bellow
Click on the link to see this bigger:
Image A

1- If I just multiply the AO pass on top of the fur pass then it looks like the Fur is transparent at the edges, so I tried an edge blur in Nuke, that seems to work for some areas but not all of them. see example below:
Click on the link to see this bigger:
Image B

Also try to blur the pass to cover the problem but it loses too much definition.
Has anybody faked ao on furry characters before , I can’t afford to render the fur with AO. can’t pass the limit of 3 minutes per frame.


#2

There are a couple ways todo this, all of which would require some shader writting skills though!

  1. Ratatoullie method: Write out the occlusion into the underlying surface at 3 points along the hair into a 2d image, interpolate at render time
  2. Render surface occlusion (as youve done here) and look that up into the hair.

If your keen to write some renderman shaders, im happy to give some tips on the above :slight_smile:

This goes into it futher:
http://forums.cgsociety.org/showthread.php?f=2&t=750285&highlight=realistic+fur


#3

I think what a lot of fur shaders do is to pick up the occlusion calculated for the skin geometry at the root of the fur strand.

This occlusion is then mixed in so it is strongest at the base and fades off towards the tip. This gives you a simple occlusion pass on the fur, but without actual fur on fur occlusion.

Simon


#4

This occlusion is then mixed in so it is strongest at the base and fades off towards the tip. This gives you a simple occlusion pass on the fur, but without actual fur on fur occlusion.

Yup, that’s what i meant as option 2. This is what most productions ive worked on do.


#5

Hello thank you very much for your replies I have no shader writing skills at all but I will give it a try with mental ray.

Cheers


#6

Though you didn’t say what are you using for fur ,Shave and hair or Maya Fur ,I suppose you are using Shave and Hair and Mental ray as renderer ,you can easily generate AO Pass of Fur without requiring any third party shader all you need is to optimise your AO pass so that it would render under3 min.
or you can use a very cheap trick for fake AO which is change the root color to black and tip color to white.
Though for all my characters I never used AO on Fur and I think I still receive pretty decent result.

Mohit Sherman

Fur Reel


#7

You can also use p_HairTK [color=Red]for receiving different passes with MentalRay[/color][color=Red]. I hope your issue might get resolved just by using this shader

[color=White]Mohit Sherman
Fur Reel
[/color][/color]


#8

Hey Just wondering is there an easy way to do this with mental ray. The way I would do this would be by pre-rendering the ao as a textures then multiply that on top of my fur texture, seems doable but not good for production specially for tv.


#9

Thanks mohitsherman, yes Im using Shave for maya , I have used pHairTK before, although it takes too long to calculate the occlusion so is not really an option for me, I think the best option would be to bake an AO pass then reuse it in some cleaver way which I am still not sure how!


#10

you are using shave and hair and I would say pre rendering AO as a texture would not work the way you like unless you have some sort of special shader written for mental ray.
I read your comment on the other thread and found out that thread is mostly dedicated to renderman and it’s shaders and unfortunately MR works bit differently.
I would suggest if you can ,you should use point cloud method that would be better as there is not much MR shaders available for shave and Hair and even most available renderman shaders are not tested on any sort of production.


#11

That would be great the only problem is that we have to use mental ray on this show, can’t even look at renderman because of the cost. I will try to bake the AO just to see what kind of result I get of that, hopefully will get at least something that looks half way decent :sad:


#12

So Baking the Ambient Occlusion and Multiplying it on top of my map works nicely. So I have one last question I was hoping any of you Fur Gurus my help me asnwer, How do I update that texture on a frame basis , would a pre render frame mel script work for this sort of things?

Here a image of the shading network


#13

Your character’s Fur seems to be short and you don’t need to update it on per frame basis otherwise texture might look like swimming.That’s the beauty of baking AO you save time on generating AO on every frame.
btw How did you bake it ,using point cloud method,I hope you would like to share your work process.


#14

I dont use maya or shave atm, so this is probably bumkin, but can’t just just multiply the fur map with a mental ray occlusion node? You could posible use the old miLabel trick to make it exclude the hair from occlusion calculations.


#15

This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.