RenderMan for Maya 3.0


The following is a list of what’s new in RenderMan for Maya 3.0.

New Features

  • PRMan 14 — RenderMan for Maya now features a fully-integrated PRMan 14, providing users access to advanced multi-threading, enhanced shading features, and vastly improved performance. For a more complete look at PRMan 14, please see the current RenderMan Pro Server release notes and documentation. Users who have not used RenderMan Pro Server 13.5 should also review the 13.5 release notes.
  • New Subsurface Scattering Bake Modes — There are now three strategies to choose from for subsurface scattering:
    • Lighting Only computes scattering during the final rendering pass. This is useful during previews when lighting and scattering settings aren’t finalized, and it’s not worth taking time to repeatedly bake.
    • To Point Cloud bakes post-scattered results into an organized point cloud. Baking to a point cloud (or to a brick map) takes some extra rendering time, but when lighting is locked and scattering is finalized, it accelerates lookups during final rendering. Scattering is view-independent, so it doesn’t need to be computed for each final pass.
    • To Brick Map bakes scattering into a brick map. The benefits of baking to a brick map rather than a point cloud are more evident in large scale usage.

    For more information about point clouds and brick maps, please consult the Baking 3D Textures application note.

  • Soft Shadows — Area Lights now use soft (min/max) shadows by default.
  • Normal Maps — Normal maps are now supported as inputs to the Bump Map node.
  • Tcl Parameter Expression Support — Shader parameters of both RenderMan shaders and native Maya materials can now be controlled with Tcl expressions that have access to state variables, allowing for interesting possibilities, like causing one shader to behave differently according to its attachees. For RenderMan shaders, numerical attribute controls have a new button that changes the control to an expression field. For Maya materials, expression attributes can be added as extra attributes on the node with the Tcl Expression Manager, available under the Attributes menu in the Attribute Editor. Here are a few examples of useful commands available for Tcl expressions:
    • [mel "getAttr $OBJNAME.myattribute"]
    • mattr “$OBJNAME.myattribute”]
    • [txmake inputfile -smode "periodic" -tmode "periodic"]
  • Inferred Passes — RfM now infers passes that previously needed to exist as explicit pass nodes in the scene. Pass inference reduces unnecessary proliferation of pass nodes, which can become a problem especially when file referencing is involved. In particular, subsurface passes are now inferred by default. Default settings for inferred passes appear in the globals under the passes tab. Logic for how passes are inferred has been exposed in the RfMPassExpression.tcl and SlimClientExpression.tcl files located in $RMSTREE/lib/rfm.
  • RIB boxes — RenderMan Studio now supports RIB boxes. RIB boxes are added to Shading Groups/Engines via the Attributes menu, like Adaptations. Shading Engines can be named to follow the convention implied by: *rmanFrame*, *rmanWorld*, in order to “inject” the shaders at pre-worldbegin and post-worldbegin. Currently, we only output RIBboxes in the frame context and all shaders in the world context.
  • Slim Co-Shaders — RfM has added support for Slim co-shaders.
  • RSL Templates for Maya Nodes — The RenderMan Shading Language source code (RSL) for Maya shading nodes has been exposed in RSL templates. The following flexibilities are available:
    • Use the PRMan shader compiler of your choice, via pref called ShaderCompiler.
    • Override templates (found in $RMSTREE/lib/rfm/rsl)
    • Override compiler invocation options and output message filtering logic (found in $RMSTREE/etc/RMSCommands.tcl)
    • Control whether .sl files are cleaned up after compilation, via a pref called ShaderCompilerCleanup.
  • Shaders at Transforms — Shaders can now be attached at transform nodes via the Add Custom Shading Group menu entry in the Attribute Editor. The assignment follows the grouping hierarchy of the DAG, so it’s possible to share the same binding across multiple child nodes of a transform. A primary value of this feature is to facilitate co-shaders and shader objects.
  • New DRA Workflow — A new workflow has been added for using Dynamic Read Archives to replace complex geometry in your scene.
  1. Create an archive by exporting selected objects as a RIB archive.
  2. Create a stand-in object, like a poly cube.
  3. Add archive attributes to the shape node of the stand-in via the RenderMan menu in the Attribute Editor.
  4. Browse to the archive, or first in a sequence of archives.
  5. Enable the “resize bounding box” attribute to cause the size of the stand-in to automatically be resized for the archive.

Note, this relies on a comment in the archive file that is inserted for archives generated with RfM.

  • New Nodes
    • Support for Maya nodes has been expanded. Templates for all supported (and partially supported) nodes can be found in $RMSTREE/lib/rfm/rsl/mayaNodes.
    • There is a new MayaUVChooser node in Slim, which can be used as a manifold, enabling users to select a single UV set for a Maya mesh with multiple UV sets.
  • Maya 2009 is now supported.


  • RfM now uses an external shader compiler for all shader compilation, resulting in improved compatibility with external versions of PRMan.
  • Subsurface scattering passes are now consolidated by default. Consequently, multiple materials that are using subsurface scattering will generate their baked data in a single rendering pass.
  • There is a new control for Focus Factor (a shading rate multiplier for Depth of Field calculations) under the Quality tab of the Render Settings. Note, also, that the Motion Factor control (the corresponding multiplier for motion blur) has been moved from the Features tab to the Quality tab.
  • There is a new option for baking “selected” objects: selected (render all). The new option performs the bake for the selected objects and also includes all of the objects (including those not selected) in the render pass.
  • There is a new preference: DisableSwatchRender, which can be used to turn off preview renders of the RenderMan Shader node. This preference is “off” (set to 0) by default, meaning preview swatch rendering is enabled.
  • The Invis attribute now has two modes, chosen via a drop-down menu: prune or proxy. Prune causes the DAG below the node to be ignored entirely, which can significantly speed up scene translation, while proxy causes the shape to be skipped while still outputting shading, attributes, and pre/post shape MEL scripts, which can be useful for stand-ins referencing archives.
  • When rendering in “lazy” mode, all passes with existing outputs are skipped. Users can select Lazy Render via the Advanced tab of the Render Settings.
  • There have been significant improvements in the performance of environment map lookups.

Miscellaneous Changes

  • The settings for the ssDiffusion pass have changed: global settings for motion blur are now ignored, and the pass’s Pixel Samples settings override the global settings.
  • There is a new control for unitlength in subsurface scattering passes.
  • Users can now add an Evaluation Frequency attribute to lights.
  • An Environment Light can now use a sequence of environment maps.
  • Ri for MEL now supports RiClippingPlane.
  • There is a new RenderMan menu item that will open the most recently generated RIB file in a default text editor. Note first that this is available in RfM “Pro” only, and the feature is only aware of RIB files that are created when spooling a RIB-style render job or via the rman genrib MEL command.
  • Maya vector attributes that are flagged with usedAsColor can now be used as RenderMan primitive variables, when attached to geometry.
  • Users can now set x and y resolution for reference passes.
  • There is a new motion blur attribute that can be attached to transform nodes to disable motion blur on a per-object basis.
  • Users can now optionally specify the trace subset for ray-traced shadows.
  • There is a new option to output coordinate systems when exporting objects to a RIB archive.
  • Users can now specify a Pass Reference directly from the Attributes menu of certain Maya nodes.
  • There are three new RenderMan Attributes that can be added to Maya File nodes: Apply sRGB, Lerp, and Texture Filter.
  • Users can now disable Depth of Field globally from the Final render pass settings in the RenderMan Settings. When not disabled, the renderer will, by default, use the associated pass’s render camera settings.
  • The “External Render to Render View” option has been removed.
  • The “Render Selected” option under the Render options now applies to renders to either “it” or the Render View.
  • There are new cache management controls for procedural memory and ray-traced geometry, accessible via the Advanced tab of the Render Settings.
  • Slim collections now appear in Maya’s Attribute Editor for shaders added to the scene.

Bug Fixes

  • A bug that could cause geometry that is not visible to reflection and refraction rays to be similarly invisible to shadow rays has been fixed.
  • Preflight RIBs are now rendered properly during deferred or remote RIB generation.
  • In scenes with multiple cameras and different offsets for the cameras, the Field of View settings now correctly match Maya.
  • A bug with curve attractors that could prevent fur from being rendered has been fixed.
  • A bug that could inadvertently break connections when deleting unused nodes in Hypershade has been fixed.
  • Several minor issues with the default batch render scripts have been addressed.
  • Attaching RenderMan curve attributes to “fifth degree” EP-style curves no longer crashes Maya.
  • Several issues with Render Layers have been fixed, including:
    • A bug that could cause Maya to crash when rendering instances.
    • Shadow maps are no longer generated for hidden lights.
    • Render Selected now works properly.
    • The “Use Default Lights” now works as expected.
  • Objects with light linking turned off no longer improperly cast shadows.
  • Several bugs that could cause errors while navigating the Render Settings tabs have been fixed.
  • A bug that could cause a crash when attempting to render caustics via an Area Light has been fixed. Please note that caustics are still not supported by the default Area Light shader.
  • The animation range in Maya’s default render settings is now interpreted correctly.
  • On NURBS shapes, the Fix Texture Warp checkbox now behaves as expected.
  • Baking lighting now works for multiple frames in batch mode.
  • The behavior of Fur clumping has been improved.
  • Fixed a bug where if the environment light color was changed to black it would revert to white when the scene was saved and reopened.
  • Fixed a bug where Shutter Timing was always Frame Open when using more than two motion samples for motion blur.
  • The “Edit in Slim” behavior has been improved.
  • The behavior of Maya’s SurfaceShader.outMatteOpacity with RfM has been improved.
  • On Windows, a bug that prevented the viewer utilities (e.g ptviewer) from functioning has been fixed.
  • The appearance of refractions in RfM shaders has been improved.
  • Batch renders in Maya 2009 that are not Alfred-spooled are now properly cancelled when so desired.
  • Pre shape MEL scripts can now be run on locators.
  • The RenderMan Environment Light now respects the intensity for the specular reflections on built-in nodes.

Known Issues

  • Render Layers — From the perspective of RfM, Maya’s render layers are multiple pushes of the render button. All of RfM’s passes execute for each render layer. This can lead to some unnecessary over-computation. For example, you may end up rendering shadow maps multiple times when once would have sufficed. If all you want to do is render different groupings of objects, it makes more sense, computation-wise, to use multiple RenderMan Final passes instead of Maya render layers.
  • Co-shader Support — There is currently no way to specify the ordering of co-shader objects for evaluation/compositing in Maya.
  • Legacy Subsurface Scattering — The changes to the subsurface scattering workflow will necessitate some changes to existing scenes that use the previous workflow:
    1. Delete old subsurface passes (if their settings haven’t been changed from defaults).
    2. Re-add subsurface attributes to materials.
  • If you open the Render Settings in Maya 2009 and the Common tab is blank, just switch to a different tab and back.

underlined – RenderMan for Maya “Pro” only.

Posted by toxik on May 12 2009 under Maya, News, Plug-ins, RenderMan |

One Response to “RenderMan for Maya 3.0”

  1. Eric Says:

    using v3 and noticed that when doing the older Digita Tutors Renderman Tut, the motion factor for individual shapes dont seem to work for me. Using the Extra Att for this one.

Leave a Comment

Spam protection by WP Captcha-Free