mental ray for Maya 2015 SP4

mental ray for Maya 2015 SP4 is now available for download. It ships with mental ray version 3.12.1.18.


These are the most important fixes:

  • We are glad to announce that we were able to remove the cause for freezes and crashes on Mac OS X version 10.9, “Mavericks”.   To our Mac OS X users, test it out and let us know your experiences.
  • Some problems around motion blur of XGen geometry were fixed. Please, note that we still recommend setting the Motion Steps parameter to 1 when using XGen hair with motion blur (see mental ray Motion Blur Settings in the XGen Preview/Output window) . This issue will be fixed in the future.XGenMotionSteps
  • Artifacts with texture caching of Tiff textures as well as a problem with imf_copy and multiple level support were fixed.

Check out the Maya 2015 SP4 release notes inside the download for the complete list of fixes and the complete mental ray documentation

Thanks for your feedback.

I am on a Mac, and use mental ray for Maya. But…

Hello Mac users,

you love to stay on your Mac and use mental ray for Maya?

No problem, since Maya offers the same Qt user interface and experience like on Windows or Linux. Maya scene files and mental ray .mi files that have been generated on other platforms can simply be used on the Mac. Even the configuration files, “Maya.env” and “maya.rayrc”, work identically. All true, but…

Several things are different. For example, the unique use of Mac specific keyboard shortcuts is puzzling, like in the “open scene” window. Switching to the “OS native” file dialog is possible in the Maya preferences. Although it might even be more confusing to use Qt and non-Qt side by side.

What about mental ray ? Well, it is only dependent on the underlying Unix basis “Darwin” with its stable and standardized interfaces. That keeps it quite independent from frequent Mac OS X updates, which typically just touch the application levels of the operating system.

Normally. But the most recent “Mavericks” update of OS X, version 10.9, seem to have changed some multi-threading behavior of the kernel. mental ray is obviously also affected, and shows unexpected interruptions, or even gets blocked completely during rendering. Our developers are currently diving into it, to come up with a solution as soon as possible.

Here is another little annoyance:

The message log for mental ray preview rendering has disappeared a few Mac OS X versions back, also due to a system change that handles console output. The batch rendering is not affected since it writes the messages to a file. There is a workaround for preview rendering, though, using mental ray for Maya’s built-in log facility that works separately to the system log. It can be enabled on the Maya command line like this (also useful for a Shelf button):

Mayatomr -preview -log

It will create a file with the fixed name “mentalray.log”, typically residing in the last opened scene file directory. Double-clicking on the file in the Mac Finder will open the Console App, giving a similar experience to the message display on other platforms. If you enable the Console preference “bring log window to front” it will pop up automatically with each mental ray rendering of that scene using the -log command.

mental ray messages

mental ray for Maya log messages

Happy rendering!

mental ray for Maya 2015 SP3

mental ray for Maya 2015 SP3 is now available for download here.

This service pack ships with mental ray 3.12.1.17


The most important fixes are:

  • Progressive rendering in the IPR is more responsive now, especially when finalgather is off
  • Refractions and reflections are enabled for maya_volumefog
  • Deforming animation in Alembic files imported using GPU Cache is fixed for batch rendering
  • Fixes in the mental ray core:
    • Unified sampling: fixed possible crash if coverage framebuffer was used in combination with unified sampling
    • Light importance sampling: reduction of noise artifacts when using point lights with non-physical falloff
    • Stabilize flushing mechanism for rendering very large scenes.
  • Shader fixes:
    • For layering material shaders (MILA), added support for back_scatter LPE pass.

Check out the Maya 2015 SP3 release notes inside the download for the complete list of fixes.

Complete mental ray documentation can be found here.

BTW, some of these problems were reported here and on the beta forum. Thanks for your feedback!

NVIDIA mental ray Standalone is here

image by Jamir Blanco

image courtesy Jamir Blanco

Today we are happy to announce that our NVIDIA mental ray® Standalone software is now directly available from us at NVIDIA.  mental ray Standalone is a command line software necessary for large distributed rendering processes typically on render farms.  With a purchase from NVIDIA you receive the current and previous versions of mental ray.  This includes immediate access to a private forum with direct support from our development teams.   Upgrades of the initial license purchase includes one year of maintenance as well.

Prices start at $695 per license and discounts for large quantities are given.  For full details of the pricing and product information visit mental ray Standalone webpage

mental ray’s GPU accelerated GI engine prototype

Autodesk 3ds Max 2015 and Autodesk Maya 2015 ship with mental ray 3.12 which includes a prototype of our new global illumination engine accelerated by the GPU.  We encourage our 3ds Max and Maya users to try it out. Your feedback will help us in making this a big step forward into the future of rendering with mental ray. While the current version is in prototype status and not yet feature complete, we are constantly improving the algorithms and adding new features. Your input is most welcome in this process.

The key idea of the new GI engine is full and exact simulation of the lighting interactions in a scene. This way, we overcome drawbacks from caching techniques and interpolation, and make mental ray more interactive and predictable. The brute-force raytracing approach is accelerated on CUDA capable NVIDIA GPUs making it particularly attractive in this set-up. Its result gets combined seamlessly and automatically with the primary rendering done on the CPU. This ensures full compatibility with existing custom shaders, which do not need to be touched in order to take benefit of the new GI engine.

The following Maya scene is rendered using the new GPU GI prototype in 11 min 34 sec (2 x Quad-core Xeon E5620 @ 2.4 GHz in hyper-threading, 8 GB RAM, Quadro K5000)

Mosque - mental ray 3.12 GI GPU diffuse

                                                                                            Autodesk Maya scene courtesy Lee Anderson, environment from openfootage

 

For comparison, this image is rendered with the classical finalgather automatic mode in 20 min 52 sec (2 x Quad-core Xeon E5620 @ 2.4 GHz in hyper-threading, 8 GB RAM, Quadro K5000)

mosque_fg_auto

 

In the current version, the GI GPU mode considers diffuse-diffuse bounces only, similar to what final gathering typically computes.  In fact, if this mode is enabled without setting further parameters then finalgather settings are used to derive reasonable default  parameters to render towards the same quality. If certain prominent ray tracing effects like mirror reflections or transparent  windows are not used in a scene then the fastest diffuse mode is best suited. For current limitations, see below.

 

The following image is rendered with the GI prototype in diffuse mode in 37 minutes (Core i7-3930K (6 cores), 16 GB RAM, Quadro K5000)

Medieval - mental ray 3.12 GI GPU diffuse

                                                                                                                                             Autodesk 3dsMax scene courtesy David Ferreira

 

The following 3dsMax scene is rendered on the CPU with finalgather force in 13 hours (Core i7-3930K (6 cores), 16 GB RAM, Quadro K5000)

Medieval - mental ray 3.12 CPU

 

The GI GPU mode can be enabled and controlled with scene options or on the command line of the standalone mental ray. We also provide scripts for Maya and 3dsMax that provide a simple GUI for enabling GI GPU (see screenshot). Please, note, that this is by no means how we envision it to be integrated in the applications. It’s rather to provide easy access to users that would like to test the prototype.

 

max-screenshot

Script Download

The scripts to easily enable and access the GI GPU prototype can be downloaded directly from us here:

 

Current limitations

GI GPU transfers the scene geometry, presampled shader data, and some constant amount of buffer memory onto the GPU. Textures are not needed on the GPU. In the case that the GPU memory is not sufficient, there is an equivalent CPU mode. The new GI engine can still be used but the GPU acceleration must be disabled (uncheck the ‘Use GPU’ checkbox). There is also an absolute limit of 25 million triangles.

For GI GPU to be effective, finalgather must be turned on. Some features are not yet supported: distorting lens shaders, motion blur, particles, volume shaders, camera clipping planes, progressive rendering. There is only limited support for scattering shaders, emissive materials, and hair rendering.

Before testing GI GPU, we recommend to install a recent version of the NVIDIA graphic card driver.

 

Feedback and discussion

We would like to hear your feedback and see your renderings using this prototype.  Please join our NVIDIA Advanced Rendering forum, if you have not already, and send us your comments and discuss the mental ray GI GPU prototype.  The dedicated mental ray GI GPU Prototype forum topic here

mental ray for Maya 2015 SP2

mentalray for Maya 2015 SP2 is now available and provides important fixes around XGen hair rendering, layering shaders, massive assembly scenes, native IBL and more. Here’s a short list of fixes that come with the new mental ray 3.12.1.16 and the new version of the mental ray plugin.
Please, consult the mental ray and the Maya 2015 SP1 and SP2 release notes for the complete list.

  • XGen
    The performance of the XGen hair shader has been significantly improved for scenes with dense hair.
  • Layering shaders (Mila)
    Several fixes in the shaders and the UI – namely, possible crash with subsurface scattering initialization, possible NaN values and a too bright contribution of the user IBL environment shader in glossy components, reordering layers with bump or weight connection.
  • Binary Maya file compatibility with Maya 2014 restored
    Some mental ray shader nodes saved in .mb files were not compatible between 2014 and 2015. This is now fixed.
  • GI GPU
    Improved performance of the GPU and multi-CPU rendering, and added support for NVIDIA Maxwell GPUs.
  • Large scene with assemblies
    Fixed possible crash when rendering large scenes with multiple assemblies exceeding physical memory.
  • Native environment lighting
    IPR now automatically updates when changing the new “emit light” features which control the native environment lighting. Fixed brightness difference in IPR versus Render Current Frame.

Happy rendering,

Julia

Load ‘em On Demand

Recently, we were asked about a not-so-well-known feature to help rendering heavy scenes with mental ray inside Maya, or 3ds Max.

You may skip the introduction and jump down to the setting at the end of this article. For those who are into details, here is a little background.

As you might know, mental ray is based on the concept of “loading on demand”, which helps to cope with huge amounts of data that won’t ever fit into the available memory at once. Buying more memory for your rendering machine will help, but, at the same time, your scene size and texture needs have grown again. Well, typically you should not notice since mental ray takes care of handling these cases automatically. It delays all operations that are memory exhausting or expensive to compute to the latest point in time, and only executes them when really needed to render the current pixel. That is true for scene data, when loading elements from an assembly or Alembic archive, but also for textures, reading and decoding only those textures needed, possibly even keeping just pieces of it in memory, so-called “tiles. Most importantly, the tessellation of source geometry into triangle data is done on demand only, absolutely critical when working with very detailed displacement. Finally, this mental ray machinery of demand loading is also exposed to shader writers.

Let’s look at mental ray for Maya and its use of this technique for scene translation. Normally, if you do a preview render in Maya (like “Render Current Frame“), the whole scene will be converted to the mental ray database before the actual rendering starts, often referred to as the “translation” step. This will include every scene element independent of its contribution to the rendering of the frame or animation. What is usually OK for most scenarios, might become a bottleneck in extreme situations with many large pieces of geometry or several big chunks of hair, especially if they are not really actively involved when rendering the current view. Like in the example below (a quickly painted cityscape in Maya, but you get the idea)

City Far Away - rendered with mental ray

City Asset

City Street View - rendered with mental ray

City Rendered View

The usual answer to this problem would be: create a mental ray assembly for those scene parts and reference that in your master scene. But, there is an easier way right from within Maya:

Enable “Render Settings > Options > Translation > Performance > Export Objects On Demand“, as marked below.

mental ray for Maya - Export On Demand

Render Settings – Export Objects On Demand

What is it doing ?

It does not pre-translate geometry before rendering starts, as it usually does, but delays it to rendering time. The translation just creates so-called “placeholders” – basically bounding boxes around the pieces of geometry – that will trigger execution of the actual translation only when a ray hits that box (or a certain feature is requesting the actual geometry). Because translation becomes very fast it finishes almost unnoticed, so that the Maya progress bar typically starts with “mental ray rendering…” . Leaving the “threshold” setting at 0 (zero) will cause all objects to be demand-loaded, even if tiny. That may be inefficient. Increasing this to a higher number, only those objects with its number of points/vertices beyond the value will be considered for demand loading, the rest gets pre-translated.

Please remember, that in a ray tracing or global illumination context all the objects may be demand-translated immediately anyway even if out of sight! In that case there may be no real benefit using this mode. And, this translation mode has a certain runtime overhead attached to it, so it may pay off only in certain cases, and only with an appropriately chosen threshold.

This setting is saved with your scene. That means, it will also work with “Maya Batch”.

You are working with 3ds Max ? The same feature is available here too, enabled with “Render Setup > Processing > Translator Options > Memory Options > Use Placeholder Objects“, as shown below.

mental ray for 3ds Max - Use Placeholder

Render Setup – Use Placeholder Objects

Just give it a try, and leave a comment if you find it useful.

BTW,
the mental ray Standalone has a similar feature if bounding boxes are given in the .mi file. It is enabled on the command line with:

> ray -reload

Happy rendering,
Steffen