Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Welcome to RenderMan for Maya 22!

This new release of RenderMan for Maya 22 (RfM), includes a number of new features to address feedback as well as many improvements to RenderMan for Maya workflow and performance. Many parts of the plugin have been completely rewritten to improve integration into Maya and simply worflowsimplify workflow.

Please see the release notes below for all the new capabilities and known issues! You may also wish to visit the migration page for selected highlights.

Note

Current support for Maya 2018 only extends to 2018.2, other versions may have errors as the API was changed.

 

What's New

Interactive Rendering

Now you can render through all stages of your pipeline! From modeling to final renders, RenderMan is designed to give you immediate feedback from inside Maya. By skipping the export of a scene to RIB, artists can get an immediate look at their work in full ray traced mode and continue to interact and make changes without needing to restart the render.

Xgen Interactive

Interactive grooming in Xgen is now supported. You can see your updates during IPR.

Centralized Controls

The Render Settings menu now contains most everything you need to create LPEs, change options for final renders, and more.

Render to Viewport 2.0

Render to the same window where you work! Move objects, make modeling changes, add and alter materials and lights, even import and update asserts without needing to stop the render. RenderMan becomes your viewport at all stages!

Scene courtesy of Julien Duval

Interface Simplification

Better organization, smart exposure of options and attributes, and more-native workflows mark this iteration overhaul of the RenderMan for Maya plugin.

 

Per-face assignments

Added per-face shader assignment for SubDivs and Polygon meshes

Improved Layering Logic

PxrLayerSurface and PxrLayer handle lobe disabling and enabling more intuitively. 

Miscellaneous and Important Changes

  • Lights are no longer visible in refraction by default. Enable "visible in refraction" in your lights for the old behavior.
  • Imported older PxrDomeLights now match RenderMan For Katana (but will now be reversed). To correct this, remove the negative scale from the X axis.
  • All TCL code has been removed.
  • Xpath has been removed, use the new Dynamic Rules for assigning materials and creating RLF files.
  • Configuration INI files are now provided in JSON configurationformat.
  • The projection editor is removed, native Maya projections are supported.
  • Alembic Workflow relies on the standard Maya Cache menu.
  • Dynamic Rules have been reworked.
  • Older Maya scenes that had PxrRamp nodes in it may break. To fix, you can run this python script in the script editor --

    Code Block
    import rfm2.utils.scene_updater
    rfm2.utils.scene_updater.update_pxrramp_nodes()
Info

Improvements since RenderMan 22.0b3

  • Added new options for rendering
    • IPR Render - An in-memory render that accepts edits from Maya for interactive rendering and makes use of a separate quality setting, providing the user with an easy "stopping point" while tweaking scenes
    • Preview Render - An in-memory render that is not interactive and renders to the user specified quality
    • Preview Batch Render - An exported render using Mayabatch and LocalQueue, the same as above but it is not in-memory and errors do not affect Maya stability
  • New icons, updated and improved for display and clarity
  • Solve an error with .oso not loading and various OSL bugs
  • Solved issues where parameter changes weren't reflected on the correct node
  • Light Filter selection widget now works
  • Fixed an issue where job files were written to the wrong location
  • We create a GPU cache along with a RIB archive and load the GPU cache for display. This is made a child of the archive
    • Changed the default bucket order to circular, for a better user experience.

    • Xgen : Xgen will crash during live rendering unless you set Window > Preferences > Xgen > Multithreading to "off" (unchecked). See Known Limitations below.

    • PxrImagePlane sample filter now pays attention to the alpha channel of the "plate" image and writes its newly computed alpha into beautyAlpha, added a txmake preset for image planes to the txmanager

    • Trace sets work interactively, however, simple toggling on/off does not work during IPR alone, another geometry edit must happen.

    • Instance Attributes and PrimVars are now split between the transform node and shape node respectively to denote their operation and inheritance.

  • Corrected an issue with improperly displayed icons
  • Corrected a problem where the wrong image type was displayed in the menu
  • Alembic archives in 22 now render animation and motion blur correctly, .zip archives are no longer supported.
  • Removed some obsolete warnings regarding project environment settings
  • Fixed an issue with multiple camera renders
  • Removed redundant Denoise menu option, now found in the AOVs tab
  • Fixed some minor UI bugs and spelling errors
  • Correct an issue where multiple cameras were writing to the same image output
  • The ability to abort renders has been improved
    • Mesh nodes now have a section under the RenderMan extension attributes called "Reference Object" with checkboxes for which data is desired: __Pref, __WPref, __Nref, and __WNref. This data gets emitted for the mesh when a reference object is present (created by the user in Maya with the Texturing > Create Texture Reference Object menu). Maya's place3dTexture node automatically will look for __WPref or __Pref. When using Pxr manifolds like PxrManifold3D, the user needs to set up parameters on that node to make use of the Pref data. This workflow may evolve and simplify further.

    • OSL in RfM 22 does not support osl shaders of type "surface" please use "shader" instead ("Surface" implies a closure which is not supported)

    • The attribute spreadsheet will now show RenderMan attributes, eliminating the need for custom UIs

    • User controls have been added as an option for VP 2.0 rendering: snapshots, restart, and start/stop

    • The PxrRamp UI has been overhauled

    • Maya File Node has linearization improvements

    • LPE syntax highlighting has been added

    • <shape.frame>: the value of the 'frame' attribute on the current shape.

      • Attribute Lookups: This syntax accepts a colon-separated python formatting string, when you need to format a numeric value: if frame == 12.25, <shape.frame:%04d> -> '0012'

    • Added a control for displacementbound:CoordinateSystem, please see the documentation.

    • We now check OpenVDB data to see if it's a volume or mesh when ingesting the VDB file

    • Added PxrMarschnerHair hair lobe names to default lpe option strings

    • Xgen procedural and Xgen groom (non-procedural) now support turning normals on and off (for tubes vs ribbons).

      • NOTE: we no longer support always-facing-camera curves.

    • Alpha and RGBA color sets are now supported. RGBA color sets are emitted as "color colorSetName" and "float colorSetNameA" to allow for ease of shader binding

    • Parameter help can be passed as an attribute in args files

    • An arbitrary node type in Maya can be mapped to an args file with params for a procedural. As an example, locator nodes now have a couple extension attrs (for dso name and data) and they're mapped to an args file called PxrProcedural.args. This can actually be used much like the RenderManProcedural node, and it serves as an example of how to set up an args file and mapping in mayaTranslation.json

      • There's a new RenderManProcedural node that can be created via RenderMan->Archive->Create Procedural Node. This node has fields for dso name and a data string (useful for the older style of procedurals). It supports a preShapeScript that can be used for whatever setup is necessary before translating the procedural, like caching or setting up the data attr.

    Developer Documentation

    You can find a useful Doxygenated developer documentation in the Developers' Guide under RfM2

    Helpful Migration Scripts

    Old scenes may have issues with migration, areas of note are the PxrRamp, subdivision settings, and AOVs. The following python script can correct these or they can be run individually depending on your scene's needs or included features from RenderMan 21

    Code Block
    import rfm2.utils.scene_updater
    rfm2.utils.scene_updater.update_scene()

     

    Older Maya scenes that had PxrRamp nodes in it may break. To fix, you can run this python script in the script editor – 

    Code Block
    import rfm2.utils.scene_updater
    rfm2.utils.scene_updater.update_pxrramp_nodes()

    Older scenes may have incorrect geometry settings and can be updated specifically using the below python script – 

    Code Block
    import rfm2.utils.scene_updater
    rfm2.utils.scene_updater.convert_subdivs()

    Older scenes with AOVs may fail to show in the new UI, the following script can solve this issue – 

    Code Block
    import rfm2.utils.scene_updater
    rfm2.utils.scene_updater.convert_displays()
    Info

    Improvements since RenderMan 22.0b2

    • Improved RenderMan menu and Icons
    • The render camera name is used in the naming of batch rendered output images.
    • Denoise now works correctly, it can be enabled under the Display/AOV menu. The Features Tab controls are not functional and may be removed.
    • New Dynamic Rules editor not yet functional, Xpath-based rules have been removed
    • PxrImagePlane sample filter now pays attention to the alpha channel of the "plate" image and writes its newly computed alpha into beautyAlpha
    • Improved speed of adding lights during IPR
    • Improve handling and messages regarding malformed args files
    • Added a txmake preset for image planes to the txmanager
    • Simplified camera visibility on lights to a single location for each light
    • Image planes now respond to edits during IPR
    • Alembic workflow menus re-enabled
    • Cache sizes matched with RenderMan 21 changes
    • Connections to the global PxrSurface bumpNormal now function correctly when using layered shading
    • Edits to sample and display filters now work during IPR in RfM
    • Trace sets now work in RfM, however, simple toggling on/off does not work during IPR alone, another geometry edit must happen.
    • Fixed an issue where Maya would not draw the correct bounding box for a RIBArchive node
    • All objects in RfM now have a small displacement bound of 0.1 so that displacement renders without users having to set the bounds, this may be changed in a future release
    Info

    Improvements since RenderMan 22.0b1

  • Texture manager now works with UDIMs and the Maya File Node
  • Light linking is now supported
  • Light filter manipulators are now functional
  • Improved user experience for Displays and AOVs
  • Added the OpenVDB visualizer
  • Added per-face shader assignment for SubDivs and Polygon meshes
  • Instances now obey material and visibility overrides
  • Improved RIB viewing and archive generation
  • Meshlights are now available
  • PxrPortalLight editing is significantly faster
  • Fixed issues with the PxrRamp interface
  • Improved the interactivity of Xgen
  • Improved VP 2.0 rendering
  • Bucket markers are now visible in "it"
  • Deleting Pxr nodes no longer deletes downstream nodes
  • Errors emitted if a license cannot be found
  • The renderer now obeys the set number of CPU threads.

     

    Known Limitations

    RenderMan for Maya

    • Deselecting "Receive Shadows" does not work.
    • Light Linking volumes is not currently supported
    • The Holdout shelf button fails to operate, use the shape node render stat setting Maya to create the holdout object.
    • Creating a mesh light from existing geometry during IPR will duplicate the geometry in-render. Restart the render to remove the duplicate.
    Beta Limitations for RfM - These are expected to be resolved before release
    • We do not support Camera Facing Curves in Xgen
    • Xgen will not reflect changes in the Collection
    • Cancelling a preview render may stall Maya

    • Dicing cameras

    • Maya Dynamics, various bugs remain.

    • Render selected objects only not yet supported

    • Texture Projections do not render correctly.

    • View statistics, remaining issues to resolve

    • Alembic procedurals do not yet allow material assignment

    • Stereo cameras do not render

    • Checkpoint + Recovery not available

    • Holdouts not available

    • Baking is not available
    • Maya Fur Feedback is not supported

       

      Warning

      Xgen : Xgen will crash during live rendering unless you set Window > Preferences > Xgen > Multithreading to "off" (unchecked).

      Image Added

      Clipping planes not available