26.01.2015 Views

The RenderMan Interface - Paul Bourke

The RenderMan Interface - Paul Bourke

The RenderMan Interface - Paul Bourke

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Section 2<br />

LANGUAGE BINDING SUMMARY<br />

In this document, the <strong>RenderMan</strong> <strong>Interface</strong> is described in the ANSI C language. Other<br />

language bindings may be proposed in the future.<br />

2.1 C Binding<br />

All types, procedures, tokens, predefined variables and utility procedures mentioned in<br />

this document are required to be present in all C implementations that conform to this<br />

specification. <strong>The</strong> C header file which declares all of these required names, ri.h, is listed in<br />

Appendix C, Language Binding Details.<br />

<strong>The</strong> <strong>RenderMan</strong> <strong>Interface</strong> requires the following types:<br />

typedef short<br />

typedef int<br />

typedef float<br />

typedef char<br />

RtBoolean;<br />

RtInt;<br />

RtFloat;<br />

*RtToken;<br />

typedef RtFloat RtColor [3];<br />

typedef RtFloat RtPoint [3];<br />

typedef RtFloat RtVector [3];<br />

typedef RtFloat RtNormal [3];<br />

typedef RtFloat RtHpoint [4];<br />

typedef RtFloat RtMatrix [4][4];<br />

typedef RtFloat RtBasis [4][4];<br />

typedef RtFloat RtBound [6];<br />

typedef char *RtString;<br />

typedef void<br />

typedef void<br />

*RtPointer;<br />

RtVoid;<br />

typedef RtFloat (RtFilterFunc)(RtFloat, RtFloat, RtFloat, RtFloat);<br />

typedef RtFloat (RtErrorHandler)(RtInt, RtInt, char *);<br />

typedef RtFloat (RtProcSubdivFunc)(RtPointer, RtFloat);<br />

typedef RtFloat (RtProcFreeFunc)(RtPointer);<br />

typedef RtFloat (RtArchiveCallback)(RtToken, char *, ...);<br />

typedef RtPointer<br />

RtObjectHandle;<br />

7

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!