View Full Version : Translucency in mia_material and Final Gather: swimming artifacts in Animation!

05 May 2007, 04:03 PM
Hi all,
I'm fast coming to the end of my wits on this one.
I'm using Final Gather with a HDRI to light a paper plane and I'm getting these swimming artifacts on the plane. I've spent two days trying to eliminate it! I'm using Maya8.5

I've narrowed the problem down to the translcucency setting in mia_material. If I set the transperancy back to zero, the problem disappears.
The paper plane is shaded with the mia_material. A key reason for using this shader is because of it's "thin wall" translucency option. Using it gives the plane a softer more realistic look and also looks great when the plane is backlit against the sky and light shines through it.

However as you can see above, these black splodges swim across my model as it animates. I've tried everything. I'm fast starting to think it's a bug between the shader and Final Gather. I'm hoping someone can prove me wrong. (or suggest an alternative)

-I've tried scaling the plane to various sizes.
-Turning up the Final Gather accuracy and/or point density simply makes the artifacts sharper and more distinct (turning them down makes my plane render too poorly)
-I also tried upping the ray tracing settings in Render Globals.
-"Optimise for animations" doesn't fix it.
-I went back to setting min and max radius, tuned it. Didn't help.
-Tried various complexity and resolution of HDR images for the IBL node, no difference.
-Combined FG with Global Illumination and a photon casting spot light thrown into the mix and still the swimming splodges remain.

I tried a few other things, but those above being the main ones.

I'm not sure, but there doesn't seem to be an 'accuracy' knob for the translucency effect itself. My plane is made from a folded polygon. It's not a solid, so I've discounted trying the SSS shaders that ship with MR 3.5 for Maya.

I haven't tried setting up a regular light rig, I'm 'very' keen to stick to the IBL method because I have about twenty shots that I have to integrate the plane into, of various different locations and time of day. It's all due soon. (It was looking so good, and so easy until those black splodges appeared.)

Any suggestions?
Otherwise does anyone know of an alternative shader I could try using for this situation?

Any help would be appreciated.


05 May 2007, 06:42 PM
I think what may be happening is the FG points on the underside of the wing are coming though the wing because of the translucency. Since there aren't FG points on the underside, as the camera can't see it, then it is not calculating it very accurately and making a splotch on the underside of the wing.

Honestly I don't know exactly how to fix this, I've never run into it myself or anything quite like it. I would not attribute the problem to the tranlucency though, the translucency should be able to work with this, I would attribute it to the FG. I think that maybe if you got the right settings for FG then it could fill in the splotch on the other side of the wing. Try turning up accuracy, turning down point density, turning up interpolation and set the FG filter to 2. And turn off GI until you get it working. If all else fails you could try using the ambient occlusion nodes to sample your IBL image and fake FG. If it's only one object though, then it won't even look faked prolly.

BTW, the quality settings for translucency are the same for refraction. If you set refraction rays to 0, refraction glossy to 1 and tranlucency weight to 1. This will bring the lighting through the surface as crisp as possibly. Lower the refraction glossy and increase the refraction rays and it will blur the translucent light coming through.

Also, if you can't get it to work right, the SSS shaders may still work on skinny surfaces. Or theres third party SSS shaders you can try as well It is still possible that its a bug with the tranlucency, in that it may not being sending FG rays as it should. But I would try adjusting the FG settings more first.

05 May 2007, 06:55 PM
have you tried increasing the final gathering filtering?

05 May 2007, 07:06 PM
I hope you are not trying to save finalgather to a file - for an animation w. moving objects?

What kind of HDR are you using? Is it smoothed for FG rays? How many FG rays?


05 May 2007, 02:15 PM
Thanks for the responses guys.
I've found a solution. I'm a happier person now :)

No I wasn't caching the results to a file; the results of that certainly create an interesting look though.
And for the HDRI maps, halfway through I put a few of them through a diffuse convolution.

Thanks for all those suggestions. Though no amount of tuning of the FG fixed the problem. I agree with you about what's possibly causing the splotches, and I tried everything to improve the accuracy of the FG and prevent parts not visible to the camera (and hence the FG rays) but showing up because of translucency, interfere with the FG solution.

I was about to move onto trying your next suggestion of AO sampling the environment hooked up to the shader - when I realised I hadn't tried an exclusively G.I. solution. I got rid of the spot light and switched on photons for the IBL sphere.
It worked beautifully.
I tried G.I before with little luck, but only with photons from the spot light. (I kept reading about how the G.I. is supposed to help increase the accuracy of F.G.)
I'm guessing the G.I. works because the photons were being cast from everywhere onto the plane, unlike F.G. which is only from the camera, the whole plane was contributing to the G.I. solution and hence an ideal result.

(Just then, out of curiosity, I turned the F.G. back on combined with my working G.I. and got the old blotchy result. I still don't get how the G.I. solution is supposed to help the accuracy of the F.G. (Maybe I'm doing something wrong, don't I just need to turn on 'Precompute Photon Lookup'?)

Thanks. Looks like I can even enjoy a bit of my weekend now.


CGTalk Moderation
05 May 2007, 02:15 PM
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.