The PrmanObjectStatements is assigned to a specific location or group of locations and translates into prman as setting the state for an AttributeBegin/AttributeEnd block. This node allows you to do things like assign a subdivision approximation to objects to render smooth surfaces, apply a displacement bound for rendering displacements, and changing visibility flags and memberships.

 

In RenderMan, there are different ways to choose how your object and its instances will render. These are conveniently divided in the node. An explanation is below along with links to the relevant settings.

The Attributes Section allows for variation among instances.

The primAttributes are obeyed for all instances.

The Primvars Section contains a control for rendering points.

 

 

Transitional changes from 21 to 22

In RfK21 the PrmanObjectStatements node had only a single "attributes" section for all RenderMan attribuates. For RenderMan 22 this section has been divided according to "attributes", "prim attributes and "primvars" to align with their usage and affect on the object to which the node is assigned. As a result several RenderMan attributes have a new attribute hierarchy in 22.  See the tables below for a list of attributes which have changed from 21 to 22.

Note: attribute names shown are the relevant partial attribute for brevity. For full attribute name simply prefix the noted name with the base "prmanStatements".

Moved from top-level to the "attributes" group:

RfK 21 Attribute Name

RfK 22 Attribute Name

Note

.matte

.attributes.Matte

Capitalization changed

.sides

.attributes.Sides

Capitalization changed

.scopedCoordinateSystem

.attributes.scopedCoordinateSystem

 

Moved from top-level to the "primAttributes" group:

RfK 21 Attribute Name

RfK 22 Attribute Name

Note

.geometricApproximation.motionfactor

.primAttributes.geometricApproximation.motionfactor

 

.geometricApproximation.focusfactor

.primAttributes.geometricApproximation.focusfactor

 

.geometry.flip_t

.primAttributes.geometry.flip_t

 

.subdivisionMesh.scheme

.primAttributes.subdivisionMesh.scheme

 

.orientation

.primAttributes.Orientation

Capitalization changed

Also, see note below 1

Moved from "attributes" to "primAttributes":

RfK 21 Attribute Name

RfK 22 Attribute Name

Note

.attributes.curve.basis

.primAttributes.curve.basis

See note below 2

.attributes.derivatives.extrapolate

.primAttributes.derivatives.extrapolate

 

.attributes.dice

.primAttributes.dice

 

.attributes.displacementbound.sphere

.primAttributes.displacementbound.sphere

 

.attributes.displacementbound.coordinatesystem

.primAttributes.displacementbound.coordinatesystem

 

.attributes.displacementbound.offscreen

.primAttributes.displacementbound.offscreen

 

.attributes.polygon

.primAttributes.polygon

 

.attributes.procedural

.primAttributes.procedural

 

.attributes.trimcurve

.primAttributes.trimcurve

 

.attributes.shade

.primAttributes.shade

 

.attributes.trace.autobias

.primAttributes.trace.autobias

 

.attributes.trace.bias

.primAttributes.trace.bias

 

.attributes.trace.samplemotion

.primAttributes.trace.samplemotion

 

 

  1. .primAttributes.Orientation : The RenderMan21 string param "orientation" settings of "lh", "rh" have been deprecated in RenderMan 22 in favor of "inside/outside". In addition the 21 string value "reverse" has been deprecated in favor of the boolean parameter "ReverseOrientation".
  2. .basis.v :  In 21, basis could be set on u or v. In 22, it is just one master attribute. When converting legacy scenes we use the v basis to set the new attribute (major axis of curve).