Edit: here is newer version of this article.
Update: look at post of helder Cunha who actually took some time to explain how correctly setup cycles to get clean result with non-progressive integrator in Cycles. Update2: I finally had some time to test Cunha settings (see update above with link to his post). I adjusted Cycles with settings provided by Cunha and I just set total AA samples to 11 so render time was close to 12 minutes, for easier comparison with other render. Most of images in this post were updated with this Cycles setup. Cycles settings were:
- nonprogressive integrator with 11 AA samples and 8 diffuse, 4 glossy, 26 transmission samples. AO, SSS and Emision were set to 1 sample.
- MIS for HDR envrionament light was ON with 16 samples, and resolution of 128.
End of Updates In 2011 I did free render engines comparison – NOX, Luxrender, Cycles, Mitsuba, Yafaray. Cycles was the slowest and Mitsuba fastest. Did anything changed in past 2 years? Right now I did 3 test Cycles, Mitsuba 0.4.3, Luxrenderer. All engines were setup with same material and lightning (HDR image). Render setup was adjusted for each renderer based on feedback I got from forums of comments belove. (update) For Luxrender i used Metropolis sampler, and paused it at 13min so I’m not sure how many samples there were(/update). Here are results with similar render times (see bottom of post my my rig specs):
Difference between Cycles and Mitsuba in not that big. It is big step forward compared to year 2011, where cycles gave more noisy renders (back then it was actually worse than Luxrender). But then how much longer will it take to clean up Cycles render? I bumped samples AA samples from 11 to around 24 and result seems comparable to Mitsuba, but render time increased to 27 minutes.
About Luxrender, I’m not sure If my setup was correct but it seems slowest – (update) even with Metropolis sampler and QBVH, as some people were suggesting, render time did not improved much. About BVH: SQBVH build time was something like 9 sec, QBVH -around 3 seconds, so in the end they take small % of overall time. Screen with example of material setup for wheels: In Mitsuba to setup metal material I just put chemical symbol – MgO (Magnesium Oxide), and it’s roughness – 0.08 Luxrender support metal nk data too, however loading MgO.nk file caused error, so I set it up with brown color metal. Pylux didn’t worked for material preview – maybe because I was using latest unstable Blender build. Cycles has material setup was similar to Lux – brown glossy material, with 0.08 roughness. Summary:
- ease of use – for me Mitsuba wins – all I have to do is increase number of samples to get rid on noise. Lux is second. Cycles seems most complex see post of Cunha here. I spent (wasted from my point of view) most time adjusting it
- render speed 1. Mitsuba; 2. Cycles 3. Lux. Not sure why lux is so slow, but it is supposed work much better in more complex scenarios. But then Photon Mapping in Mitsuba is very, very fast too – and default settings are ok in most of cases – so it is one click setup render.
- flexibility of material setup: 1. Cycles – definitely winner – great integration with blender and nodes are fun to work with. 2. Lux – will support nodes too, and has lot of cool features (displacement, spectral rendering, realistic sun&sky model – same as mitsuba actually; cycles sun&sky is really unrealistic/outdated). 3. Mistuba – no nodes support for now, not as flexible, but easy to use.
- fun and workflow speed – definitely Cycles wins with interactive render preview, scene setup is quick and fun. Lux will have this too. Someone want add support for realtime render preview in Mitsuba? 😉 It is to complex programming for me… For now scene setup in Mutsuba is slow and not fun, because of constant need to render scene preview manually.
- animation – cycles definitely is the best enough said; lux – seems to be to slow for that (maybe with direct lightning you could render animation in reasonable render time, and there is big hope for quick renders with GPU openCL). Mitsuba would be great for animaion, but exporter is not optimized for that. For each frame it exports whole scene data, so it is not usable for heavy scenes. It could be improved with better exporter and use of Mitsuba python libraries, but it is above my programming skills.
Other stuff: And bunch of cycles tests -progressive vs non-progressive sampler, HDR MIS ON and OFF. PS Car model – Lexus CS 2054 form Minority Report – is not mine. You can download it form here. My setup is – AMD 3 core, 2,6GHz, 8GB of ram DDR 2. Is is very old, so on newest hardware, you could probably expect half the time to render those images.