Welcome to RenderMan 22.5. This release introduces improvements to the previous RenderMan.
Please dive right into the release notes below for more detailed information on the latest version of your favorite renderer!
Users of custom Integrators will need to recompile their plugins. |
Batched OSL processing is now on by default
The Alembic procedural now correctly supports velocity values (when exported with the Alembic), in order to allow the rendering of motion blur correctly on deforming geometry with varying topology
Setting velocityMultiplier to 0 will now disable any expensive velocity pre-processing in PxrVolume
The renderer now has improved support for interactive editing of volume shading parameters. In particular, editing of parameters which do not affect transmittance remain fast, while editing of density parameters which affect transmittance will correctly trigger a (potentially expensive) rebuild of the volume acceleration structures
The renderer now more gracefully handles attempts to load shading plugins of the wrong type (i.e. trying to load PxrDiffuse as anything other than a Bxdf)
Added a new "enhance" parameter to PxrCamera for magnifying the region around a pixel without moving the camera or affecting dicing and MIP map levels. This feature is intended as an aid for trouble-shooting small areas of the image where you may see noise or changing topology during animation
Exrinfo tool now reports keycode, timecode, string vector attributes, and supports multi-part images (multi-part images are not output by RenderMan in this release)
Variables of type "mpoint" (used by RiBlobby) are once more functional again
When using the Chaikin creasemethod on subdivision surfaces, we no longer average semi-sharp creases with a neighboring crease of infinite strength. This fixes the potential for holes in the surface when a semisharp crease is near a boundary or an infinite crease. This change also increases compatibility with the OpenSubdiv behavior
The Option "trace" "maxdepth" is now ignored. It was a left-over from older versions of RenderMan, and its default value was 25 so it rarely did anything. In modern RenderMan usage, the Integrator "maxPathLength" parameter can be used instead as a similar control. Also note that the "trace" "maxdiffusedepth" and "trace" "maxspeculardepth" Attributes are still valid, and used by most Integrators (the big exception is the PxrUnified integrator that has a unified trace depth.)
Fixed a regression introduced in 22.4 where deformation motion blur describing pronounced rotation was producing some noticeable darkening in surfaces with reverse orientation
Denoise
Various improvements to Denoise stability and filtering results
A bug in the Denoiser where the quality of filtering of a lighting image was affected by the name of the channels in said image has been fixed
The Denoiser will now attempt to correct for negative values in the albedo channels and will issue a warning if it finds any
PxrPathTracer now correctly computes the alpha channel result for holdout objects inside volumes
Curves
Fixed an issue in curve rendering that could lead to crashes with large numbers of curves
The renderer now correctly supports interactive editing of presence and opacity, whether it is cached or not
Oversampling in pixels on bucket edges when adaptively sampling has been fixed. This can provide up to a 15% reduction in number of rays and runtime for multithreaded non-incremental rendering, and a small reduction in the number of rays and runtime for multithreaded incremental rendering. (No change for single-threaded rendering or multithreaded incremental rendering with checkpointing)
Bucket artifacts when PxrDisney "specular" input references a pattern input that switches between zero and non-zero
Fixed a bug that prevented SIMD OSL from running on some processors that only support AVX
Fixed a bug that could lead to blocky artifacts when viewing a light with "visibleInRefractionPath" set inside a surface with interior volumetric extinction
Fixed bug causing potential crash when an OSL shader can not be opened
Visible noise along volume envelopes (in pixels partially covered by a volume) has been fixed. This noise was especially visible with pixelfiltermode "importance"
Issues with wrong LPEs when rendering volumes that overlap surfaces in PxrPathTracer with sampleMode = "manual" have been fixed
A bug that would cause the renderer to crash if the smoothnormals attribute was turned on and the geometry was undergoing deformation motion blur has been fixed
Added projection DOF query from RixRenderState::GetOption as Ri:DepthOfField
k_incidentLobeSampled and k_launchShadingCtxId lookups for RixShadingContext::GetBuiltinVar are correctly implemented in cached presence, opacity, displacement, and meshlight contexts. Note however that the returned values will always indicate invalid incident lobe or invalid launch shading context
The RtFloat2 and RtFloat3 variants of RixShadingContext::GetPrimVar() now correctly allocate and initialize storage with the requested fill value in all cases when the requested primvar is not found
Deformation motion blurred volumes don't currently work with densityFloatPrimVar or densityColorPrimVar. You will need to use a PxrPrimVar node connected to densityFloat and densityColor instead
The Centos KDE style "Oxygen" installs a version of Qt and sets the user's environment variable QT_PLUGIN_PATH forcing "it" and LocalQueue to attempt to load an incompatible Qt library. Either avoid installing the Oxygen theme or unset QT_PLUGIN_PATH before running "it" or LocalQueue. Other KDE styles may also install this theme. |