Im trying to make my RenderMan implementation strict, such that if you
attempt to begin/end or nest elements at invalid locations it throws an
error.
As a result I have a problem. The V3.2 spec (pages 18/19) suggest that any
Ri*Begin/Ri*End construct can be nested... but I thought that
* RiFrame* can only appear at the top level (if at all), and thus cant be
nested. (implicitly inside a RiBegin/RiEnd block)
* RiWorld* can only appear once within a RiFrame block or once within a RIB
stream. Thus it can only appear in a single frame block or the implied
generic frame.
* All other Ri*Begin/End blocks can appear anywhere any number of times as
long as they dont overlap, and this is what pages 18/29 refer to.
Assuming Ive got the right end of the stick with the above statements, am I
missing a part of the document which states this MUST be so? I could do with
knowing if this is optional (but recommended) or mandatory.
Many thanks
Rich