...
...
Resources
Resources generally encapsulate some part of the graphics state, or other information specific to the renderer such as a in-memory RIB archive. Resources are always named and have a type associated with them. Resources are unique in that they can exist outside the rest of the graphics state, and are thus not subject to standard scoping rules; instead, they have their own scoping block mechanism. An example of a resource is the ability to save the entirety of the current attribute state, and restore it at a future point, independent of the current attribute stack.
...
Subset Name | Attributes Restored by Subset |
---|---|
shading |
|
transform | Transformation calls (RiConcatTransform, RiTranslate, etc.) |
geometrymodification | |
geometrydefinition | |
hiding | Attribute "hide" |
Note
PRMan currently has limitations related to user attributes and scoped coordinate systems: user attributes or coordinate systems whose values are overridden while in anAttributeBegin-AttributeEnd scope may not save the correct value (the last value set in the current scope will be restored). In other words:
AttributeBegin Attribute "user" "string mytex" ["grass.tex"] Resource "grass" "attributes" "string operation" "save" Attribute "user" "string mytex" ["flowers.tex"] AttributeEnd Resource "flowers" "attributes" "string operation" "save" Resource "grass" "attributes" "string operation" "restore" "string subset" "shading"
When the named attribute state "grass" is restored, the attribute user:mytex will contain flowers.tex, not grass.tex. This limitation may be addressed in a future release.
...