Page tree

Versions Compared

Key

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

...

RenderMan 24 RIS brings improvements and innovations in the following areas:


  • RenderMan XPU™ - Pixar’s new hybrid CPU + GPU rendering technology makes its first debut outside the studio in RenderMan 24.  This next-gen rendering engine is being adopted internally at Pixar for look development work and will now be available to commercial RenderMan customers as well for similar tasks.

  • Lama - A state of the art material layering system developed at Industrial Light & Magic introduces a modular approach to building material networks and includes recent shading R&D work on energy conservation and dispersion. These new physically based shading nodes will also form the basis of future MaterialX support in RenderMan.

  • Stylized Looks - Move beyond physically based shading and lighting and into a world where you can easily create a variety of styles for your projects - create unique styles thanks to Non-Photorealistic rendering.  With Stylized Looks you can non-destructively control outlines, create sketch patterns, and develop a huge range of unique looks, including Anime, by using the same familiar toolset.  Stylized Looks is available only in the Commercial version of RenderMan.

  • Interactive Instrumentation and statistics - (coming in a later beta) Watch your rendering resource usage live, thanks to a completely redesigned statistics system with focus on interactivity and extensibility.

  • OpenColorIO - Robust support for the industry standard ACES color management system and other color spaces in all bridge products including the interactive RenderMan Image Tool.

  • New patterns, such as PxrHexTileManifold and PxrPhasorNoise - We are continually working to provide more artistic options for your look development, in this case, a Hex Tiling manifold and a new noise pattern called Phasor Noise.  The technology within these patterns has seen production proven use used within different entities of the Disney organization, including Pixar and ILM.

  • Light Baking - Greatly enhance your real-time and VR rendering needs by baking your lighting to 2D texture maps or Point Clouds. 

  • Professional Artist Tools - Support for Maya, Blender, Katana, and Houdini, including new support for LPEs and AOVs in Solaris, Houdini’s USD-centric toolset.
  • Patterns are now OSL - We have converted the great majority of RIS' C++ patterns to OSL.  This conversion allows us to share code between RIS and XPU, which in turn gives you confidence that the renders you see from RenderMan XPU are representative of what you will see in RenderMan RIS.  C++ patterns are still supported, but they will only work in RIS.

  • Blender New support for cutting edge RenderMan features in the popular open source content creation tool


  • Better Sampling -  New blue noise dithering improves the visual appearance of noise by organizing the sampling pattern distribution, resulting in a perceptually cleaner image sooner.

...

RenderMan version 24 offers a holistic experience, with tools that improve artist workflows and complement the creative process. By collaborating closely with Industrial Light & Magic and Pixar Animation, the latest innovations represent industry developments which that have been battle tested in the most ambitious VFX and animation in the world. 

...

  • Dispersion - The new layered materials system supports a sophisticated prismatic fringing effect for refractive objects.

  • USD - hdPrman includes dynamic rendering of LPEs and AOVs in all compatible Hydra viewers, such as Houdini’s Solaris and USDView.

  • Bump Roughness - Innovative system developed at Pixar Animation for rendering micro details such as scratches efficiently and automatically, without expensive sampling.

  • Bloom — Add gleams and blooms directly to your live renders with this physically-based tool for RenderMan’s Image Tool (IT).

...

As with every RenderMan release, we continue to push the capabilities of the renderer forward.  At times, this can result in minor look differences from one major version of RenderMan to another.  We have added backwards backward compatibility flags and switches when possible.

  • OSL pattern differences to the old C++ implementation – particularly with noise patterns.  The default implementation of various noises in OSL is different than it is in C++, so if your renders use these noises, you will see different results.  We have provided a backwards backward compatibility switch on the relevant OSL patterns.  However, we don't recommend using the switch unless you absolutely must because the patterns will have better performance in their native mode.

  • OSL noise differences.  In RenderMan 24.0, we have upgraded to OSL 1.10.  Several of the noise patterns have changed implementations in this new version of OSL, causing look differences if you had written your own OSL patterns that leveraged the affected shadeops.

  • The PxrPathTracer and PxrUnified integrators now treat subsurface scattering the same as diffuse with respect to the "maxIndirectBounces" integrator parameter and "maxdiffusedepth" Attribute: 0 means direct diffuse and "direct" subsurface scattering; 1 means 1 bounce of indirect diffuse and 1 bounce of subsurface scattering, etc.  Please note that this results in a slight look change between R24 and R23.x.  We feel that this change is more intuitive for artists and TDs.  It is also consistent with XPU.  Also please note that this results in slight performance differences between R24 and R23.x.  R24 renders slightly slower in scenes with large amounts of subsurface.  If you want to have the same look as R23.x with the same performance characteristics, you can set an Attribute on any subsurface object in your scene to set "maxdiffusedepth" one less than it was previously.

  • PxrSurface now supports two lobed Henyey-Greenstein for single scattering. Existing scenes will need to migrate the "g" parameter to the "g0" parameter.

  • PxrMix parameter "mix" is now "mixer".  This change was necessary because the nodes are now OSL, and "mix" is a reserved keyword in OSL.  The parameter "clampMix" changed accordingly to "clampMixer".

  • The OSL texture3d() function no longer transforms the P parameter from world space to object space.

  • VFX Reference Platform 2019 support.  Note that in some instances, the look will be affected if you have written your own OSL patterns as at least one OSL noise functions has changed. It is known that at least one of the built-in noise operators within OSL has changed, so if you have written your own OSL patterns that use the built-in noises, you may see differences.

  • PxrFlake: Fixed moire artifacts and lower the cost of multiple flake layers (octaves). The pattern has changed but has the same characteristics as the previous version.

  • Blue Noise: In RenderMan 24, we are introducing a new tiled blue noise sample scheme that builds on top of our pmj02 samples. This new sampling scheme shows most visual improvement for low sample counts and simple sample domains such as strong motion blur, strong depth of field, direct illumination from large area lights and dome lights, ambient occlusion, and volumes.  When the image is fed to a denoiser, the new scheme can also help the denoiser better distinguish between noise (that should be smoothed) and actual image features (that should be preserved).  Ironically, the new scheme does not give lower error or improved convergence for each pixel by itself.  But the visual quality is improved when the pixels are considered together. An option is being provided to revert back to the old random number sample sequence if you need the old behavior

  • The default "pixelfiltermode" setting for the Hider is now "importance" instead of "weighted".  This change was made to align RIS to XPU.  If you are not using the denoiser and are using RIS, you may want to consider changing the mode back to "weighted" because in many cases it will render to full convergence more quickly than if "importance" is used.  However, if you're using the denoiser, you need to use "importance" 

  • The default for glassIor initialization within the code was set to match the Args file.  If you see differences with shading, you may need to explicitly set the IOR to 1.0 within the shading network.

  • For volumes, Oi used to return a single float value to an AOV when a color is expected.  The transparencyAccum of PxrUnified is now a color. This allows PxrUnified to correctly output a colored Oi when given volume with colored extinction. Previously, the monochromatic transparencyAccum was promoted to colored Oi and this is wrong.

  • The PTM occlusion term is no longer automatically applied to the denoising albedo

...

  • Performance:
    • OSL startup.  We have upgraded to OSL 1.10 for both RIS and XPU in RenderMan 24.  We have found that this upgrade (and its dependencies) have slowed down time downtime to start up.  We will work in the time between beta1 and the time we release to see if there is anything we can do to mitigate this problem.

    • Volume integration with patterns.  Because of the switch from C++ to OSL patterns and the sensitivity of volume integration to pattern execution, there are performance regressions with volumes in RenderMan 24 compared to RenderMan 23 that remain to be addressed.

    • There are other performance slowdowns we have seen in RIS compared to RenderMan 23.  They only occur in some circumstances.  We will be working to address as many of these as we can.

  • Known crashes:
    • OSL networks wired into PxrVolume.  If anything but trivial OSL patterns are wired into the inputs of PxrVolume, RenderMan 24 will crash.

  • Lama:
    • Several defaults may change between beta1 and beta2.

    • Minor bugs

  • Color Management:
    • There are a few nodes that have not been made aware of color management.  PxrEnvDayLight is one such node.

  • Interactive instrumentation/statistics:
    • This feature is coming in beta2

  • OSL Patterns:
    • <primstr:nameofvalue> needs to be implemented as a way of specifying primvar references within dynamic filenames.  This is being done to match XPU.

  • Bridge Products:
    • Preset Browser:
      • Continued improvements for ACES/Color Management support

      • Continued improvements for moving Stylized Looks between DCCs

...

  • VFX Reference Platform 2019.  RenderMan 24 supports the VFX Reference Platform 2019.  If you haven't already upgraded your systems with the requirements for the VFX Reference Platform 2019, you will need to do so in order to run RenderMan 24.

  • OSL 1.10: We have upgraded our OSL to version 1.10.  Note that in some instances, the look will be affected if you have written your own OSL patterns as some OSL noise functions have changed.

  • OSL shaders now support connecting scalar values to individual elements of an array shader parameter in the same way C++ shaders do

  • Allow explicitly setting dynamic array parameters in OSL shaders

  • To take advantage of the new Color Management and Bump to Roughness features, you will need to expand your txmake workflows when converting your textures for RenderMan

  • _MAPID_ and atlasStyle will become deprecated in future releases. Please use <UDIM>, <u><v> and <U><V> for all texture atlas specifications

  • The PxrPrimvar built-in names "curvature_u" and "curvature_v" for principal curvatures are now "curvatureU" and "curvatureV" to better follow naming conventions.

  • Dynamic String Construction within any in-house patterns: XPU does not support dynamic string construction within Patterns, so if your Studio has any in-house Patterns that do this, you will need to pre-compute any strings you need.

  • Dynamically Building Filenames for Textures: While XPU does not support dynamic string construction, we are adding the capability to specify primvar references within a filename to have the system dynamically reference a filename for you.  This feature will be in beta2 for XPU, but is available in RIS now.  Use the <primstr:varname> token for this.

  • The contrast-v22 and variance-v22 adaptive sampling metrics continue to be deprecated.  They will be removed in a future RenderMan release.

  • In PxrUnified, volume render Oi returns single float value to an AOV when a color is expected.  The transparencyAccum of PbsWavePayload is now a color. This allows PxrUnified to correctly output a colored Oi when given volume with colored extinction. Previously, the monochromatic transparencyAccum was promoted to colored Oi and this is wrong. It is impossible to correctly composite such volumes with only the alpha channel a correct colored Oi is required.

  • RfK: the "prmanPattern" terminal type has been removed from material nodes.

  • RfK: The widget is now automatically set to "null" for all OSL outputs, so there is no longer a requirement that shader writers add this to their output parameters' metadata

  • RfK: Alembic_In_Prman has been removed as the multithreaded advantage it had has been supplanted by the new multithreading features in Alembic_In from Foundry

  • RfH: all RenderMan node versions have changed to ::2.0. please convert your nodes with provided script.

  • RfH: RenderMan errors are now warnings in Houdini

...