Troubleshooting Flicker in VRay


One of the more agonizing things about being a lighter is finishing a shot to render but getting back files that are unusable due to unaesthetic flicker. While the flicker can be fixed by increasing render settings globally, that method comes at the cost of increased render times. Instead, narrow down where the flicker is coming from and solve the issue at the root instead of trying to "throw more money at the screen and hope for the best".

Super important to render things out in passes so that not only will you have control over every single aspect in comp but it breaks the render down into its elements for trouble shooting.

The Pass column is the pass that you want to check if the flicker is coming from. The material column is the source of the flicker. The Flicker column is what needs to be changed to resolve the flicker. If the flicker seems to be coming from the lighting pass, the source is the diffuse of the material, and what you want to do is increase the light rays for the shadow. If the flicker is in the specular pass, increase the subdivisions of the light.

The exception to the above is hair. Hair shows up in the reflection and refraction passes but the VRayHairMtl doesn't have subdiv attributes to make adjustments on. In the case of hair, to resolve flicker, what instead needs to be done is increase the subdivision/fine tune the GI. This is because the flicker shows up in the refraction pass which is a secondary light ray. As there are no refraction subdivision settings in the VRayHairMtl, the only other way to adjust the secondary light ray settings in this situation is to adjust the GI.

The other type of flicker that may be seen is what is known as “fireflies”. Fireflies appear as large dots of light and are most prominent in the specular and reflection passes.

As of VRay 3.0, it has been found that VRay Sphere Lights tend to cause fireflies in the reflection pass. Disabling “affect reflection” of the light does not solve the issue and neither does increasing the material’s reflection subdivision amount. If this issue occurs, the solution is to go to the Render Settings, under the VRay tab, expand Global Options - Advanced and enable Clamp Max Ray Intensity and set the value to 1.0.

The State of Rendering

As an texture and lighting artist, rendering is extremely important to what I do. Not only does the render have to look beautiful and accurate but there is the problem of rendering time. The faster the render is the less I'm sitting around, twiddling my finger, waiting to see what my work looks like, and more and better iterations can be done. With so many renders out there, some proprietary, some I never heard of or use, there is a big question of which render engine to use. The ever so popular Renderman by Pixar, Arnold which I first learned about from watching Merlin, V-Ray, Maxwell Render, Mantra, Cinema 4D, Modo, Lightwave, Mental Ray, 3Delight, FinalRender, Octane, Clarisse iFX, and Lagoa. Particularly for vfx houses, such as ILM, they don't necessarily only always pick one and go with it but find an appropriate render engine depending on the cost and time production of the film that is being worked on.

On FXGuide, Mike Seymour writes an excellent article detailing each of the different rendering engines, how they are used, evolution, and strengths. Part one introduces the various issues that rendering engines have to meet while part two talks about each of the rendering engines. It is quite a long read, I haven't finished it myself yet so am slowly working through it.

Arnold Renderer

While the major VFX houses such as ILM, Weta, and Digital Domain, are often mentioned, as they tend to be the exception in their size, there are also many other VFX houses, while smaller, still do some great work. One such house is Vine located in London, known for their work on the television show, Merlin. Vine is a small company that started with 5 people and now have grown to 20. With a limited production team, Vine has to have software that works well but also fast. For that, they chose the Arnold Renderer. In season 5 of Merlin, there are two new CG characters that Vine had to work on, the white dragon and a humanoid creature who is the key to all knowledge. What Vine really liked about the Arnold Renderer is that it simplified a lot of the lighting for it calculated a lot of the bounce lights. They can put in a single light into an environment and get all the indirect lighting through calculations. Arnold doesn't need to precalculate secondary data such as shadow maps before actually going into renders thus reducing the render time and server load. As a lighter, I'm a bit skeptical on hearing about letting computers do the majority of calculations to achieve a certain result. It's like animating without breakdowns and hoping that the tweens that Maya creates between poses will work. The final rendered shots look good though and the process of the pipeline seems to be working well with their limited team.