Below is a list of features supported and unsupported in this phase one release of XPU
BxDFs & Patterns | RIS | XPU | Notes |
---|---|---|---|
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 | ✅ | ❌ |
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.
Some builtins known to RIS are not currently available in XPU. The most important changes are summarized in the table below. If an alternative is suggested, it means that OSL patterns should be rewritten to use the alternative to be as forward looking as possible.
Builtin | Supported in XPU | Alternative (if possible) |
---|---|---|
P | ❌ | use global P |
PRadius | ❌ | |
Po | ✅ | |
Nn | ❌ | use global N |
Non | ✅ | supported, but only if displacement took place |
Ngn | ❌ | use global Ng |
Naon | ❌ | point Po; |
Tn | ✅ | |
Vn, VLen | ❌ | |
curvature | ❌ | |
dPdu, dPdv | ❌ | use globals dPdu and dPdv |
u, v | ✅ | |
st | ✅ | |
du, dv | ❌ | use Du(u), Dv(v) |
dPdtime | ❌ | |
time | ❌ | |
id, id2 | ✅ |
Lights | RIS | XPU | Notes |
---|---|---|---|
Analytic Lights | ✅ | ✅ | PxrEnvDaylight, PxrCylinderLight not available; some light parameters not available |
Mesh Lights | ✅ | ❌ | |
Light Filters | ✅ | ❌ | |
Light Linking | ✅ | ❌ | |
Scalability to many lights | ✅ | ❌ |
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 | RIS | XPU | Notes |
---|---|---|---|
Subdivision Surfaces | ✅ | ✅ | Catmull-Clark only |
Polygonal Surfaces | ✅ | ✅ | |
Nurbs | ✅ | ❌ | |
Curves | ✅ | ✅ | |
Points | ✅ | ✅ | Some features not available |
Quadrics and Blobbies | ✅ | ❌ | |
Procedurals | ✅ | ❌ | |
Nested Instancing | ✅ | ✅ | Known Limitation: Varying attributes to drive differences in materials per-instance 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.
Integration & Ray Tracing | RIS | XPU | Notes |
---|---|---|---|
PxrPathTracer | ✅ | ✅ | Some features not available |
PxrUnified | ✅ | ❌ | |
PxrOcclusion | ✅ | ❌ | |
PxrVisualizer | ✅ | ✅ | Some features not available |
PxrDefault | ✅ | ✅ |
Post Processing | RIS | XPU | Notes |
---|---|---|---|
Sample and Display Filters | ✅ | ❌ |
Pipeline | RIS | XPU | Notes |
---|---|---|---|
AOVs and LPEs | ✅ | ❌ | |
EXR, TIFF | ✅ | ✅ | |
Deep Output | ✅ | ❌ | |
Holdouts | ✅ | ❌ | |
PxrCamera | ✅ | ❌ |