- Added a control for "thickness" for Physical Clear Coats in PxrSurface.
- Added new ground selections to the PxrEnvDaylight simulation:
- Legacy: Old behavior
- Clamped Hemisphere: "Smear" horizon values on the virtual ground plane
- Diffuse Ground: A fake infinite ground plane with diffuse color
The /prman/deepcomp/flagvolumes and Option "deep" "int flagvolumes" controls now interpret the value 1 as an "auto" mode. This is on by default, but off if generating any deep images in DTEX format. Use 2 to force it always on.
Significant performance increase for UDIM textures when many textures are in one directory
- The Alembic procedural now respects the visibility attribute.
- Path Traced Sub-Surface Scattering control Zero Scatter Attenuation has been replaced by an IOR parameter causing total internal reflection.
We now warns if a deep image has a pixel filter on alpha that is a poor match for the pixel filter on the other channels. This can lead to grainy noise across the deep image.
GetBuiltinVar queries of k_lpeState or k_wavelength no longer set the result pointer to null during displacement, cached presence or opacity, and baking.
- Added intensityNearDist parameter to PxrMeshLight.
Improved live-render edit speed in cases where several LPE based AOV's were being used.
For user-debugging purposes the RLFInjector can now be made to print out the exact Attribute Identifier path at each binding site by adding "-printaip 1" to the rif arguments. Rif arguments are set up in RfM via RenderMan_for_Maya.ini (see existing doc re -filtergeom). The path that is printed out is precisely the one that Xpath is matching against in a Dynamic Rule and can also be used (in the case of the new alembic-file-specific rlf's) in the Static Binding table.
RenderMan will now abort when attempting to recover non-incremental renders when bucket order is set to anything other than "vertical" or "horizontal".
In OSL, gettattribute() of the "context" object can be used to access the members of the RixShadingContext scTraits structure "eyePath", "lightPath", "primaryHit", "missContext", "reyesGrid" and "shadingMode".
- Extended widget types for OSL nodes loaded at startup: 'fileInput', 'assetIdInput', 'filename' (non-standard), 'text', 'popup' and 'boolean'.
- Fixed a crash when parsing OSL shaders with int parameters using 'min' or 'max' metadata.
Improved quality of deep output compression when a deep id channel is present.
- Increased the upper range for RixKtoRGB, below we show new values above 10000
Fixed a bug where scalar displacement was backwards when dicing an instanced master and the orientation is either "lh" or "rh".
Fixed bug causing potential crash when using aggregate volumes.
Fixed a bug where using alembic archives (AlembicProcPrim) with motion blur would crash on Windows.
- Fixed a potential issue with infinite lights in very large scenes.
Fixed bug that could cause a crash when using a gprim with very many vertices and/or primvars.
Fixed bug causing reduced thread efficiency and potential hangs when rendering many things with different grouping membership, enabled lights, or enabled lightfilters state.
Fixed a potential crash when a hierarchical subdivision mesh specified an invalid face index in a face edit.
Fixed bug causing a very small chance of crashing when rendering a scene containing both infinite and local lights.
- Some fixes for subsurface scattering with the PxrVCM (and PxrUPBP) integrator(s) that may have cause them to render black or with artifacts.
Fixed potential for crash or extra memory usage when rendering a large polygon mesh having non-quad faces and __faceindex values for per-face textures.
Fixed tile-shaped artifacts on materials with both subsurface and diffuse transmission.
- Added the correct attribute for importanceMultiplier to the PxrMeshLight
Fix of incorrect normals of instanced NURBS patches with non-homogeneous control points. Speedup of ray tracing of some NURBS.
In OSL, trace() and getmessage("trace") now work when hit objects are not shaded.
Fixed a bug that could cause incorrect interpolation of primitive variables in some cases of coarsely tessellated displaced surfaces.
- Fixed a possible issue with alpha values on matte objects and volumes.
- Fixed a bilinear interpolation bug in the EvaluateAtLimitMultiple() call of the SubdivEval API
Fixed a bug where OSL texture() shadeop would return random values on missing textures instead of the "missingcolor" and "missingalpha" or "fill" values.