Speed up your Arnold renders in Maya and remove fireflies and noise in low light conditions

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
this video is aimed at animators who for one reason or another have to render their animation in arnold for maya and they want to render it out quickly and possibly without too much noise and without fireflies in the scene so that they can deliver an animation that looks a bit better thanks to the render that maybe they don't have access to render farms or expensive machines sometimes you need to render out your animation and you need a render just to make it look a bit nicer but you're not very focused on getting the render to look super nice although it always helps if the render looks decent right sometimes they're also stuck with render engine that are less than efficient in rendering animation frames quickly maybe you are in a situation from which you cannot benefit from rendering in blender's eve because the company or the school you're working with prefers to render in arnold for maya and maybe you're not familiar with game engines like unreal engines so you can really benefit from real-time render from there or maybe you your school the place you work in prefers not to switch to a redshift license to benefit from gpu assisted rendering in which case your go-to solution would be arnold for maya it comes free with maya so a lot of companies just rely on that despite maybe the benefits of other platforms [Music] the issue with arnold for maya is that unless you have a powerful computer or render farm available it might become time consuming to render out noise-free frame sequences especially in low-light conditions like those you see in this scene which i prepared for the demo the character you see in this scene is the freely available nikkei from character rigs.com when we render a scene like this with the default settings of arnold in maya this is usually what we get at the current resolution of 960x540 the render takes about one minute and depending on the lines you use you might get these nice bright spots which are going of course to change position depending on the frame so they're going to create a very visible noise in your scene which we probably want to get rid of these artifacts are called fireflies and they add on top of the already present noise which you can see in monster in their engines nowadays so in this video we are going to see how to get rid of fireflies and most of the noise in arnold while keeping render time low at the cost of a bit of color range to do that we will first identify the source of the fireflies and the noise and explore several approaches to improve on this issue current render time is 59 seconds or about 1 minute and you see that the result isn't great so we probably want to find a way to render in this amount of time and maybe even faster that would be better and without these render issues the scene is composed by three aria lights a key a field and a rim and area lights tend to be fairly expensive in terms of render time but i don't think they are the problems in this case and then we have a point light which is here in front of the girl point lights in maya aren't arnold native's lights so you can expect in my opinion some additional issues because if you go into the arnold section and you go lights you will see that the point light isn't even there now we know the structure of the scene the render settings are the default render settings you would find in arnold for maya if we check the render once more we will see that these little specks of light they actually change position between frames so this is going to be very difficult to de-noise in post if you think of it those little hotspots are called fireflies in the jargon so let's see a few techniques to get rid of those and maybe speed up the render first of all in the render settings we could go into the adaptive sampling and enable adaptive sampling adaptive sampling will try to give more attention to problematic areas of your render at the cost of performance now i will launch a render with that just to see how long it takes and there you go adapted sampling took 3 minutes and 14 to produce this render let's have a look and compare with the previous render so this previous render was done at 54 seconds see the fireflies there plenty of them and this one with adaptive sampling on rendered at 3 minutes and 14 seconds so it seems that if we could push the quality of adaptive sampling high enough in here you could actually get a good result however in their time just went from one minute to over three minutes so we are seeing a render now that takes three times as long and still doesn't get rid of all the fireflies while i think that i could get rid of the fireflies by incrementing the max camera antialias anti-aliasing adaptive sampling i think this is probably not a viable solution for me remember the scope is to render a frame sequence for an animated project and we just need the project to look nice we don't need to make it look super awesome in terms of rendering so while adaptive sampling is possibly a solution it seems to me it's a bit expensive a solution which is offered by arnold documentation is clamping if we open up the clamping section of arnold you see there is a dedicated indirect clamp value it's worth noticing that by default the indirect clamp value is already active and set to 10 sometimes the component of the render that is generating noise and fireflies is indeed the indirect component how can we quickly troubleshoot that we go over to the aov section of your render settings in arnold and we scroll down the available aovs and we enable the diffusion direct you just have to click on it and click on the arrows pointing to the right hand side of the camera and the aov is open let's also include the diffuse direct now to see that aov in action let's go under arnold open arnold render view and hit play in the top left corner of the honor render view you will find a drop down menu which is by default set to beauty if you click on it you can expand it and see the aovs please notice the fuse directives there and you see that the diffuse direct is actually quite okay well there is noise in the shadows that's okay but apart from that there are no fireflies in there if i click on diffusing direct instead the story is different you see how many fireflies we get in here so the problem is indeed in the indirect section of the render all these aovs they not only help us while compositing the shot but they also make it easier to diagnose the problem so now that we discover that the problem seems to be in the indirect component of the render let's go down to the arnold renderer settings and let's try to do what the documentation suggests which is to lower the direct clamp value so i will lower first to five just to see what's the effect it has and you see the render time has gone down to 34 seconds with clamping still loads of fireflies in here then i want to check with the previous render which was three minutes and 14 seconds so you see we get more fireflies than those we got with adaptive sampling and they're vaguely less bright than the first render we made vaguely so a value of 5 in clamping doesn't seem to make much difference with the clamping set to 2 you see that we get considerably less fireflies than before less intense the render still takes about 33 seconds so not too bad now one thing you need to know is that by clamping the values in here you're actually clamping the color range of your render so if you plan to do aggressive color correction on it you might get some limitations there but nevertheless these fireflies are still here so we'll clamp down 2.5 and you see we have even less fireflies so i'm pretty sure i could lower the clamp value to 0.05 we get practically no fireflies and a render time that is still at around 32 seconds so not bad at all there is still noise in the scene however if i increase the exposure of the render you will notice that this is fairly noisy and this is something you could fix possibly by increasing the samples of the light or by increasing the diffuse samples in the arnold renderer or even possibly by enabling adaptive sampling we will look into this noise later on right now i'm very curious to see if there's an alternative to clamping the values there so we know for a fact that the problem arises in the indirect component of the light so i want to see if maybe there's a way to tackle this issue from another angle and what i'm thinking of right now is maybe to set the indirect clamp value back to 10 so the default we found it at go into the lighter light so the point light which i mentioned could have maybe given us some problems and it's definitely the source of our problems in fact and in the attribute editor for this light i want to go under the arnold section and scroll down until i see visibility and there i want to set the indirect visibility to zero now in practice this will affect the indirect component on the la of the light and you will see that we will lose some color range so i will launch a new render and the result is pretty interesting if you ask me before render time of 36 seconds we have no fireflies whatsoever on the face of the girl or anywhere else in fact without having to clamp the values in the renderer so this is with the light without any indirect component and this is with an indirect component the lighting that we have with the indirect component up here is a lot softer if you think of it and even the shadows are less dark if especially if you track the nose shadow in here you can see that there is also this subtle light coming from underneath the chin but in practice all these nice subtleties of the render come at a price and you see price is noise whereas in the other render we have considerably less noise we have to take a decision when is our render good enough if we are doing a render just to make our animation look a bit nicer then maybe we can lose some color range in there and still get a decent render no noise in there since we are bound to use our note this is already a good solution in my opinion the most reasonable approach to this issue would be not to use in direct lighting for the offending light and call it a day this way we would not need to increase the sampling too much and we will get quick renders out of the box at the cost of color range a way to make these renders even more efficient would be to consider the fact that the camera isn't moving you see the animation is made with a static camera and put the character on its own render layer separated for the environment so that you could tweak the render settings based on the render layer you're on and get the best settings for the environment and the best settings for the characters that your render time would be a lot faster following this approach of splitting the character the static environment and the dynamic environment on different layers i can give each layers different render settings and i get virtually noise free pictures in arnold so with one minute per frame at 960 by 540 i get a pretty good result with the additional advantage that i can separate lighting passes so you see i can control individually the dynamic lighting and the static lighting i can individually control the static background and the dynamic background so to conclude i think there is a good trade-off in this case between the quality of their final render and the speed at which this happens and that's it for now i hope that thanks to these videos you will be able to render your animation a bit quicker way than otherwise if you are stuck with arnold in maya [Music]
Info
Channel: Animation Pandemic
Views: 61,236
Rating: undefined out of 5
Keywords: arnold render, speed up renders, remove fireflies, remove noise, optimize renders, maya render, animation renders
Id: LC2HrEGQVGE
Channel Id: undefined
Length: 10min 54sec (654 seconds)
Published: Sat Oct 17 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.