Page tree

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 38 Next »

Contents


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

General

  • Behavior of XPU when it runs out of memory on your GPU:  XPU will crash if it runs out of memory on your GPU.  If you are running XPU inside of Maya, Houdini, or Blender, this will bring down your application as well.  Be sure to save often.  We are going to work to mitigate the two biggest causes of this condition.
  • Releasing a license:  It is possible to get XPU into a situation where it doesn't release the license back to the RenderMan license server.  If this happens and you end up using all of your licenses, just restart your application (Maya, Houdini, Katana, or Blender) and you will be able to continue your work.

DCCS

  • Warnings on the console when rendering to XPU from Katana.  There are some warnings you will see on the console about a bad DSO being found for the socket display driver.  You can ignore these.
  • Picking from "it" does not relay the selection back to RenderMan for Maya
  • RenderMan for Maya does not yet support batch renderinng to XPU

Shading

BxDFs & PatternsRISXPUNotes

PxrSurface

Some Subsurface modes are not available

PxrLayerSurface


PxrDisneyBsdf


PxrMarschnerHair


PxrConstant


Lama


PxrVolume, Volumes


OSL Patterns

PxrDirt & PxrCurvature not supported

C++ Patterns



Baking



Point Clouds




  • Lama support will be implemented in a future release.
  • In XPU, we support the following SSS models:
    • Burley Normalized
    • Exponential Path Traced
    • Non-Exponential Path Traced
  • subsurfaceSubset is not yet supported

Patterns & Textures

  • There is no support for custom C++ plugins. Patterns written in OSL are supported
  • Dynamic String construction in your own patterns is not supported
  • It is possible in some cases that strings within OSL patterns are not properly constant folded, resulting in errors at runtime
  • Many "builtin" variables that exist in RIS do not exist in XPU. 
  • PxrSeExpr is not supported
  • 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.
  • Point clouds are not supported
  • PxrBakeTexture and PxrBakePointCloud are not supported
  • 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.
  • We are currently in the process of updating the texture cache for the GPU to give better performance if it isn't large enough to hold the textures required for your render.

OSL

  • In XPU, the first argument to the OSL getbuiltin() shadeop is ignored. The distinction between "primvar", "builtin", and "attribute" that exists in RIS does not exist in XPU.
  • Many builtins that are supported in RIS are not supported in XPU.
  • trace() is not currently supported
  • 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.




Lighting


LightsRISXPUNotes

Analytic Lights

PxrEnvDaylight, PxrCylinderLight not available; some light parameters not available

Mesh Lights


Light Filters



Light Linking



Scalability to many lights




  • Light Filters & Light Linking are currently not supported
  • "shot" based lighting features will be available in future releases.  Examples include:
    • Emission Focus
    • Light groups
    • Manifold Next Event Estimation
  • Thin shadows are currently not implemented.
  •  XPU does not support color temperature on lights yet. This means the correct color space won’t be applied when a temperature is converted to an RGB value


Lighting 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.




Geometry


GeometryRISXPUNotes

Subdivision Surfaces

Catmull-Clark only

Polygonal Surfaces



Nurbs



Curves


Points

Some features not available
Quadrics and Blobbies
Procedurals
Nested InstancingKnown Limitation: Varying attributes to drive differences in materials per-instance is not yet supported.


  • Loop Subdivision.  Catmull-Clark for both quads and triangles is supported
  • Point falloff is not yet supported
  • The built-in curvature is not yet supported
  • Object attributes such as maxdiffusedepth and maxspeculardepth have not yet been implemented
  • Deformation motion blur is not yet supported
  • Shading of nested instancing has artifacts.  In our tests we have seen shading issues with leaves that are rendered as nested instances.

  • Inverted normals are possible when doing displacement, depending on the input file and DCC.  We have seen this with Alembic being imported into Houdini.




Integrators


Integration & Ray TracingRISXPUNotes

PxrPathTracer

Some features not available

PxrUnified


PxrOcclusion 

PxrVisualizer

Some features not available
PxrDefault


  • numBxdfSamples, numLightSamples, numIndirectSamples (and their manually set counterparts) are not supported.
  • clampDepth and clampLuminance (used to suppress fireflies) have not been implemented.
  • Russian Roulette has not been implemented
  • allowCaustics is always 1




Rendering


Post ProcessingRISXPUNotes

Sample and Display Filters







PipelineRISXPUNotes

AOVs and LPEs



EXR, TIFF



Deep Output



Holdouts



PxrCamera


  • XPU currently only outputs EXR or TIFF frames
  • Adaptive sampling is yet to be implemented
  • Motion blur has not been fully implemented. Transformation motion blur is fully functional, but deformation motion blur of geometry is not supported.
  • Trace Subsets have not been implemented.  This impacts the subsurfaceSubset feature of PxrSurface
  • Only some geometric built-in AOVs are available under the same name as they are available for RIS
  • Deep Output. Coming soon.
  • Multi-camera, multi-frame is not yet supported
  • The built-in curvature calculation different is different to RIS, which results in differences in specular mollification.
  • The "weighted" option for the pixelfiltermode parameter to the Hider is not yet supported.
  • Baking - either at the pattern level via PxrBakeTexture or at the renderer level to bake global illumination is not yet supported.