Finally I found the time to do my little Renderman - MentalRay comparison. I used Maya 6.5 on a Mac OS X - which comes with MentalRay 3.4.1.5 and the Pixar Renderman for Maya plugin version 1.2 evaluation.

As test scenes, I used the tutorial scenes that come with the Renderman for Maya plugin. I am aware, that this might be a bit unfair to MentalRay, but my reasoning is that the features I tested should work in both renderers and the test scenes where not specifially pro Renderman anyway. I also tweaked the scenes to get the best out of Renderman and MentalRay, so as to not penalize either one.

The tested features where:

  • Displacement
  • Motion Blur
  • Instances (as a side effect of the Motion Blur test)
  • Depth of Field
  • Fur and soft shadows
  • Reflections
  • Global Illumination

For a side by side comparison of rendered output and rendertimes please download the following PDF → (link: rmanvsmr_forWeb.pdf text: Renderman vs MentalRay comparison)

Update: MasterZap over at cgTalk pointed me to a few shortcomings in my tests. First he is of the opinion, that I should have used MentalRay’s “Rapid Motion Blur”. Every time I tested this feature, I either got artefacts or it was not significantly faster, so I just didn’t use it here. Second, he points out that MentalRay has something similar to Renderman’s DeepShadow Maps. I forgot about them completely. My bad.

###Displacement

Both renderers can handle really fine displacement really well. However, Renderman wins this contest hands down, as it does displacements with virtually no extra overhead. The surfaces get subdivided into Micropolygons anyway, so the renderer already has the neccessary geometry for displacment. MentalRay however doesn’t handle the large masses of geometry as well and it is much more hassle to tweak it (one has 4 different knobs per object to fiddle around with in MentalRay).

###Motion Blur…

Now Motion Blur is MentalRays (and most of the other renderers out there) Achilles heel. They just don’t cut it. Slow, grainy, memory intensive. That is the common knowledge about 3D Motion Blur.

This is definitely not true for Renderman. Man this renderer flies through it with a quality that is amazing! And the really nice thing about it is, that depending on the scene, Renderman gets even faster with Motion Blur. That is due to the fact, that one is able to give Renderman a second quality parameter for Motion Blur. So you just lower the quality where you won’t see it anyway (meaning in the blurry areas).

MentalRay on the other hand…just sucks…big time. No wonder people have such an expression of panic in their eyes, whenever rendered Motion Blur is the topic. If I didn’t know it better, I would not touch 3D Motion Blur either.

###…and Instances Rendering the Motion Blur scene without blur, a severe bug in the Pixar plugin is revealed. It renders instances way slower then it should. That is a known bug and the big brother Pixar Renderman doesn’t suffer from this.

Nevertheless, at the current time MentalRay wins this category easily and superfast.

###Depth of Field

Both engines work nearly the same here. Nothing special to report. Fast and nice.

###Fur and soft shadows

Well, this one I would say is a matter of personal taste. Renderman renders the fur best with DeepShadowMaps, which is like a shadow map, but with more bells and whistles. MentalRay doesn’t have DeepShadows and has to use Raytracing. That means, MentalRay shadows are always sharp and if you want them soft, you need more samples (=rendertime). The situation is the other way round with Renderman and DeepShadows. The default shadows look a bit blurry, but render fast and to increase the sharpness you have to increase the ShadowMap size and therefor increase rendertime.

I’d say it’s a draw. If you like sharp shadows, go with MentalRay fur. If you like softer shadows (and I do, as real world shadows are never really sharp) go with Renderman.

###Reflections

Now we are entering the domain of MentalRay. It was built from the start as a Raytracing engine. And we can see that instantly in the rendertimes. Renderman however lived happily without Raytracing for ten years (or more) and has just recently (with version 11 I think) got the ability to trace rays.

###Global Illumination

Same here. MentalRay wins hands down. It feels right at home with tracing stuff.

###…but…

Remember the Motion Blur advantage? Well, it is even more evident with Raytracing. MentalRay may rule with Raytracing, but it is unbelieveably slow with Motion Blur. And it gets rediculous with Raytracing/Global Illumination and Motion Blur at the same time.

Renderman however, still slow, gets a big speed boost from lowering the quality in the blurred regions. Again fantastic!

###Fazit

So as a conclusion I would say, that both renderers have their areas where they shine and it would be a wise thing to know when to use which. All sympathies aside picking the best tool for the job. And if you do not need Motion Blur (or very subtle one that can be faked in post) go MentalRay, but for most other cases I would go Renderman any time.

For a side by side comparison of rendered output and rendertimes please download the following PDF → Renderman vs MentalRay comparison