Page tree

Versions Compared

Key

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

Below is a list of features supported and unsupported in this phase one release of XPU

BxDFs

The following BxDFs are supported in this release :

  • PxrSurface
  • PxrLayerSurface
  • PxrDisneyBsdf
  • PxrDiffuse
  • PxrMarschnerHair
  • PxrConstant
  • PxrVolume


Notes :  

Known XPU Limitations and Rendering Differences Compared to RIS

This first release of RenderMan XPU™ is targeted for interactive look development on an artist's desktop.  While you can likely use it to put renders on the farm in batch mode, that isn't the primary use case for this release.  Because this first release is meant for look development, it does not include several features that you would need for shot lighting.  Rather than waiting for XPU to have every feature of RenderMan RIS before releasing it, we want to give our commercial customers the ability to have their artists be more creative because of the reduced iteration time and improved performance, and at the same time allowing them to reach their creative goals more rapidly – also because of the improved performance.

Before we dive into the list of differences and limitations, a word is necessary about performance.  The performance of the GPU vs the CPU is difficult to quantify and discuss.  The best we can say is that the performance of XPU exceeds RIS.  How much faster it is than RIS, and how much faster the GPU side is compared to the CPU side is governed by money – the more you spend on a particular component, the better it will perform compared to the other.

In general, we recommend a large amount of RAM, both on the CPU side and the GPU side.  Due to the constrained memory on GPUs, the more memory you have here is especially important.

Below is the list of items that XPU does not support compared to RIS.

...

Subsurface modes

...

In RIS we support:

  • Jensen Dipole

  • DEon Better Dipole

  • Burley Normalized

  • Multiple Mean Free Paths

  • Exponential Path Traced

  • Non-Exponential Path Traced

...

  1. Lama support will be implemented in a future release

  2. In XPU, we support the following SSS models

  1. Burley Normalized
    Exponential Path Traced
    Non-Exponential Path Traced

...

  • XPU does not support color temperature on lights yet, so we cannot apply the right color space when converting a temperature to an RGB value

...

  • Facesets.  Facesets for shading are not supported.
  • Loop Subdivision.  Catmull-Clark for both quads and triangles is supported
  • Points.  Have been partially implemented.  Point falloff is not yet supported.
  • NURBS
  • Quadrics
  • Blobbies
  • The built-in curvature doesn't match RIS and will be receiving enhancements in a future release
  • Nested instancing

...

  • Motion blur has not been fully implemented
  • Trace Subsets have not been implemented.  This then impacts the subsurfaceSubset feature of PxrSurface

...



  1. subsurfaceSubset is not yet supported


...


Lighting


The following lights are supported in this release :

  • PxrRectLight
  • PxrDiskLight
  • PxrDistantLight
  • PxrSphereLight
  • PxrDomeLight

Notes : 

  1. Light Filters & Light Linking are currently not supported

  2. "shot" based lighting features will be available in future releases.  Examples include:
    1. Emission Focus
    2. Light groups
    3. Manifold Next Event Estimation

  3. Thin shadows are currently not implemented.

  4. Mesh lights, PxrCylinderLight and PxrEnvDaylight are yet to be supported.

  5.  XPU does not support colour temperature on lights yet. This means the correct colour space won’t be applied when a temperature is converted to an RGB value


Info
titleLighting Limitations
As the light selection scheme in this phase one release of XPU is yet to be implemented, we recommend keeping the number of lights in your scene to a minimum, preferring to look develop your assets illuminated via a single PxrDomeLight for example.


...


Patterns & Textures

  • Most RenderMan shipped OSL patterns are currently supported.
  • Custom OSL shaders are supported

Notes : 

...

  1. Dynamic String construction in your own patterns is not supported

  2.  There is no support for custom plugins

  3. PxrSeExpr not supported

  4. PxrDirt & PxrCurvature require the trace() OSL call, which is not yet supported.
    Support for a single level of recursion will be added in a future release.


  5. Point clouds not supported

  6. PxrBakeTexture and PxrBakePointCloud not supported

  1. Dynamic path construction in your own patterns is not supported, but please note that we do support the following path tokens <UDIM>, <u>, <v>, <U>, <V> and <primstr:varname> that will result in a "dynamic" path to your textures.  <primstr:varname> can be used to reference the value in a constant primvar or user attribute to build a dynamic path.  Also note that <primstr:varname> is not in beta1 for XPU, but will be in a later beta.

  2. XPU samples textures at one MIP level coarser than RIS so that it may store more textures in limited GPU memory.  This results in slightly blurrier renders from XPU than RIS.

...





...


Geometry

  • Needs info here
  • and here 
  • and here
  • Catmull-Clark Subdivision


Notes : 

  1. Facesets.  Facesets for shading are not supported.

  2. Loop Subdivision.  Catmull-Clark for both quads and triangles is supported

  3. Points.  Have been partially implemented.  Point falloff is not yet supported

  4. NURBS

  5. Quadric

  6. Blobbies

  7. The built-in curvature doesn't match RIS and will be receiving enhancements in a future release

  8. Nested instancing

  9. Object attributes such as maxdiffusedepth and maxspeculardepth not yet implemented


...



Integrators

  • PxrPathTracer
  • PxrDefault
  • PxrDirectLighing
  • PxrVCM


Notes : 

  1. numBxdfSamples, numLightSamples, numIndirectSamples (and their manually set counterparts) are not supported.

  2. PxrOcclusion, PxrVisualizer and PxrUnified are not yet supported.

  3. clampDepth and clampLuminance (used to suppress fireflies) have not been implemented

  4. Russian Roulette has not been implemented

  5. allowCaustics is always 1


...


Rendering


Notes :

...

  • Dynamic String construction in your own patterns is not supported
  • PxrSeExpr not supported
  • trace() OSL call is not yet supported.  In the future when it is implemented, it will only support one level of recursion.
  • Point clouds not supported
  • PxrBakeTexture and PxrBakePointCloud not supported
  • Transformations between color spaces are ignored

...

  • Light Filters
  • Light Linking
  • "shot" oriented Lighting features.  Examples include:
    • Visible in Refraction Paths
    • Emission Focus
    • Light groups
    • Manifold Next Event Estimation
  • Thin shadows
  • Mesh lights
  • Color temperature
  • Cylinder Light
  • PxrEnvDaylight
  • Large numbers of lights.  XPU does not have a light selection scheme that allows it to scale to large number of lights.

...

  1. XPU currently only outputs EXR or TIFF frames

  2. PxrCamera not supported yet.

  3. Adaptive sampling is yet to be implemented

  4. Motion blur has not been fully implemented

  5. Trace Subsets have not been implemented.  This then impacts the subsurfaceSubset feature of PxrSurface

  6. Volumes not yet implemented

  7. User defined AOVs or LPEs not yet implemented


  1. Only some geometric built-in AOVs are available under the same name they are available for RIS

...


...

  • numBxdfSamples, numLightSamples, numIndirectSamples (and their manually set counterparts)
  • clampDepth and clampLuminance have not been implemented as a way to supress fireflies
  • Russian Roulette has not been implemented
  • allowCaustics is always 1

...

  • maxdiffusedepth
  • maxspeculardepth

...


  1. Holdouts, shadow collectors not yet implemented

  2. Deep Output. Coming soon.

  3. Multi-camera, multi-frame are not yet supported

  4. PxrOcclusion, PxrVisualizer, PxrUnified integrators are not supported.

  5. The built-in curvature calculation different is different to RIS, which results in differences in specular mollification.

...



  1. The "weighted" option for the pixelfiltermode parameter to the Hider is not yet supported.

  2. Procedurals not supported.  However, if you are using the latest XGen in Maya, you should get renders of your data.

...

Validating XPU renders with RIS

XPU produces renders that are predictive of RIS.  However, there are features in RIS that don't exist in XPU yet.  Some of these features are the reason why your XPU images may differ slightly from RIS.  If you find yourself in the situation where you need to validate the results you see in XPU using RIS, use the hints below to make your RIS renders achieve that comparison.  However, if tweak these knobs, be aware you may be artificially slowing down RIS, so proceed with caution.

...


  1. Baking - either at the pattern level via PxrBakeTexture or at the renderer level to bake global illumination is not yet supported.