Page tree

Versions Compared

Key

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

Release date: April 1922, 2022

Welcome to RenderMan 24.4!

...

Dive right in using the table of contents below!

Table of Contents

What's New

RIS and XPU

...

Add new "live stats enabled" pref for DCCs

Live stats are now enabled by default.
Live stats UI panel will now present an error message in the case of a failed connection.
PxrSetRange: new pattern to remap signals using SeExpr's compress(), expand() and fit() functions.
PxrArithmetic now support many more functions, mirroring Blender's Math node.
The color manager now recognizes colorspace name embedded in filenames for lights and lightfilters, in the ACES and Filmic-Blender configs.

Fixes and Features

Geometry
  • Volumes:
    • Fixed an issue causing an offset in mipmaps generated using vdbmake.
    • Attribute "volume" "aggregate" now supports strings that contain comma delimited names.
    • The msApprox controls on light sources no longer wrongly affect non-aggregate volumes in the presence of aggregate volumes.
    • Aggregate volumes bound to the interior of geometry via PxrSurface now correctly perform multiscattering through the interior aggregate, instead of reverting to the global aggregate after the first scattering event.
  • You can now override the basis for curves using the -shapeedit flag to the Alembic procedural.
  • Fixed a potential crash seen on extraordinary Catmull-Clark meshes with __faceindex primvar attached.
  • Improved performance for edits to large numbers of geometric mesh lights.
  • The Alembic procedural will now attempt to apply velocity based motion blur for single frame archives.
Lighting
  • An issue that could cause suboptimal convergence of direct lighting from scaled geometry lights has been addressed. This fix may cause existing scenes with low sample counts to change direct lighting if they were converging slowly. If the old incorrect behavior is needed, please use Option "lighting" "geometryscalecorrection" [0]. This option will not be available in future releases.
  • A new Option "lighting" "minimumestimate" has been added. Non-distant lights whose importance estimate falls below the specified value will be culled during direct lighting. Increasing this value can speed up scenes where direct lighting is expensive, i.e. due to participating media, but may lead to noticeable differences in lighting. By default, the threshold is 1e-6.
  • Fixed a bug where attempting to edit an invalid light could lead to a crash.
Bxdfs
  • Clamp the topMix parameter of LamaLayer to a [0:1] range to avoid artifacts.
  • LamaDielectric: Dispersion can be specified using Abbe numbers.
  • An additional refraction roughness control has been added to PxrSurface WalterLobe.
  • A crash when LamaLayer parameter "topMix" isn't specified has been fixed.
  • New mapping applied to the roughness parameters of the lamaHairChiang node allowing for a more perceptually linear response that makes it easier the control by the user, in addition of supporting super rough fur rendering, as now roughness values can live in the full [0,PI] range that the Chiang model accepts.
Patterns
  • PxrSetRange: new pattern to remap signals using SeExpr's compress(), expand() and fit() functions.
  • PxrArithmetic now supports many more functions, mirroring Blender's Math node.
  • PxrPhasorNoise: Added direction flow controls to align waves along the vector direction.
  • PxrVariable: fixing typos.
  • PxrRamp: Added a clamp parameter to keep output between 0 and 1.
  • Fixed typo in the argument to Dx() and Dy() in the non-manifold initTxCoords() OSL function. The typo caused incorrect t derivative in non-manifold OSL bump mapping when "invertT" is 1 (which is the default). The bump direction will change in images with OSL bump mapping and "invertT" 1 (which is the default) and the bump amount driven by a non-manifold input. The bump direction now matches the corresponding old C++ bump code and the manifold version of the same code.
  • Fixed a bug that could cause a crash when using OSL fmod() with differing variable types.
  • It is now possible to compile our patterns without HexTiling functionality by passing the PXR_HEXTILE_DISABLED define to oslc.
XPU
  • There was a bug in the lerping between MIP map levels in XPU texture() lookups when lerping between the finest and second-finest MIP map level present in a texture map. This has been fixed.
  • A problem with missing shadowing of semi-transparent curves (i.e. when using the shadowColor or presence inputs on PxrMarschnerHair) which only affected GPU rendering in XPU has been fixed.
  • fixed incorrect shadows which could be cast by volumetric objects in XPU depending on their transform.
  • Fixed a bug that could cause crashes when writing AOV's from OSL shaders driving volume inputs.
Stylized Looks
  • PxrStylizedHatching:
    • New "Blend White Lightest" feature to give control if brightest value is solid color instead of highest hatching texture.
    • Hatching specular invert texture progression support for triplanar projections.
    • Fixed overbrights mapping: eliminates artifact in Screen & Triplanar projections.
    • New "Signal Energy From" option: "Signal AOV Mono" for whiteshader calculations.
  • PxrStylizedControl:
    • New Feature: "Sections Add" for additional random modification for edge detection in PxrStylizedLines.
    • New Feature: "Sections Quantize" for additional random modification for edge detection in PxrStylizedLines.
    • Updated "Sections Spread Scale" functionality for more space between random colors for edge detection in PxrStylizedLines.
    • Fixed bug where AOV's previously overwritten if also written in other Pattern node (like PxrTee).
Live Statistics
  • Add new "live stats enabled" pref for DCCs.

  • Live stats are now enabled by default.
  • Live stats UI panel will now present an error message in the case of a failed connection.
Image Tool
  • Fixed a bug where deleting images that were being rendered to would crash "it"
  • Fixed stability issues when running live stats to the 'it' HUD.
  • The window could fail to resize (Ctrl-F) correctly with non-square pixels images.
  • XPU renders can now be canceled from the IT UI.
  • The Select Object and Surface Tools now work with XPU renders.
  • The Crop Tool now works with XPU renders.

...

PxrPhasorNoise: Added direction flow controls to align waves along the vector direction.
A new Option "lighting" "minimumestimate" has
been added. Non-distant lights whose importance estimate falls
below the specified value will be culled during direct
lighting. Increasing this value can speed up scenes where
direct lighting is expensive, i.e. due to participating media,
but may lead to noticeable differences in lighting. By
default, the threshold is 1e-6.
RIS
  • A crash when LamaLayer parameter "topMix" isn't specified has been
    fixed.
    You can now override the basis for curves using the -shapeedit
       flag to the Alembic procedural.
XPU
  • xpu renders from DCC's can now cancelled from "it" (hotkey escape or stop toolbutton). Select object and select shader tools now also function in "it".

Other

Changes in Stylized Looks

PxrStylizedHatching:

  • New "Blend White Lightest" feature to give control if brightest value is solid color instead of highest hatching texture
  • Hatching specular invert texture progression support for triplanar projections
  • Fixed overbrights mapping: eliminates artifact in Screen & Triplanar projections
  • New "Signal Energy From" option: "Signal AOV Mono" for whiteshader calculations

PxrStylizedControl:

  • New Feature: "Sections Add" for additional random modification for edge detection in PxrStylizedLines
  • New Feature: "Sections Quantize" for additional random modification for edge detection in PxrStylizedLines
  • Updated "Sections Spread Scale" functionality for more space between random colors for edge detection in PxrStylizedLines
  • Fixed bug where AOV's previously overwritten if also written in other Pattern node (like PxrTee)

Other Bug Fixes

RIS and XPU
RELEASE NOTE: (EXTERNAL) Fixed an issue causing an offset in mipmaps generated using vdbmake
RELEASE NOTE: (INTERNAL) Fixed an issue casing an offset in the mipmap generation in libvdb
  • Fixed typo in the argument to Dx() and Dy() in the non-manifold
    initTxCoords() OSL function.  The typo caused incorrect t derivative
    in non-manifold OSL bump mapping when "invertT" is 1 (which is the
    default).  The bump direction will change in images with OSL bump
    mapping and "invertT" 1 (which is the default) and the bump amount
    driven by a non-manifold input.  The bump direction now matches the
    corresponding old C++ bump code and the manifold version of the same
    code.
    Fixed a bug that could cause a crash when using OSL fmod() with 
    differing variable types.
    An issue that could cause suboptimal convergence
    of direct lighting from scaled geometry lights has been
    addressed. This fix may cause existing scenes with low sample
    counts to change direct lighting if they were converging
    slowly. If the old incorrect behavior is needed, please use
    Option "lighting" "geometryscalecorrection" [0]. This option
    will not be available in future releases.
    The msApprox controls on light
    sources no longer wrongly affect non-aggregate volumes in the
    presence of aggregate volumes.
    presets can now be renamed in the preset browser, after
          they've been saved.
    Improved performance for edits to large numbers of geometric mesh lights.
    Attribute "volume" "aggregate" now supports
    strings that contain comma delimited names.
    Fixed a potential crash seen on extraordinary
    Catmull-Clark meshes with __faceindex primvar attached.
    fixing typos in PxrVariable.
    LamaDielectric: Dispersion can be specified using Abbe numbers.
    aggregate volumes bound to the interior of
    geometry via PxrSurface now correctly perform multiscattering
    through the interior aggregate, instead of reverting to the
    global aggregate after the first scattering event.
    RELEASE NOTES: rman 24.3: Clamp the topMix parameter of LamaLayer to a [0:1] range to avoid artefacts.
    RELEASE NOTES: rman 24.3: Added a clamp parameter to PxrRamp to keep its output between 0 and 1.
RIS
An additional refraction roughness control has been added to PxrSurface WalterLobe.
Fixed a bug where attempting to edit an invalid light could lead to a crash.
The Alembic procedural will now attempt to apply velocity
      based motion blur for single frame archives.
XPU
A problem with missing shadowing of semi-transparent curves (i.e.
when using the shadowColor or presence inputs on PxrMarschnerHair) which only
affected GPU rendering in XPU has been fixed.
fixed incorrect shadows which could be cast by volumetric
objects in XPU depending on their transform.
There was a bug in the lerping between MIP map levels in XPU texture()
lookups when lerping between the finest and second-finest MIP map
level present in a texture map.  This has been fixed.
Fixed a bug that could cause crashes when writing AOV's from OSL 
shaders driving volume inputs. 
"it"
Fixed a bug where deleting images that were being rendered to
  would crash "it"
Fixed stability issues when running live stats to the 'it' HUD 
The window could fail to resize (Ctrl-F) correctly with non-square pixels images.

...

Hydra Renderer Delegate
  • Fixed a bug where file textures from material x networks would appear vertically flipped in RenderMan renders. The old behavior can be restored via the env var HD_PRMAN_MATERIALX_VERTICAL_FLIP=false.

  • Bail if we see a "multioutput" connection, since these aren't supported yet (Note, studio has added support, but involves a USD change that we're not using yet).
  • Fixed an issue for mtlx image files where the rtx plug-in gets referenced. The heuristic for grabbing the texture node ptr was sometimes failing.

  • Fixed an issue for tex files: resolve the path, because RenderMan doesn't know about usd file relative paths.

  • For mtlx image file nodes without a texcoord connection automatically wire in a mtlx geompropvalue specifying st texture coords.

  • Fixed

    a

    bug

    where

    toggling

    visibility

    of

    individual

    instances

    would

    lead

    to

    a

    crash.

Miscellaneous Changes

RIS

...

  • Added support for PRMAN_OSL_BEFORE_RIXPLUGINS environment variable when running the RenderMan hydra delegate.
Other
  • The color manager now recognizes colorspace name embedded in filenames for lights and light filters, in the ACES and Filmic-Blender configs.
  • Presets can now be renamed in the preset browser, after they've been saved.
  • Added support for Maya 2023.