In file gfx/libpaper/Paper.hxx:

class Paper::PaperPass

A single rendering pass.

Documentation

A single rendering pass. The data members are public to allow modification, but when using a ready-made PaperPass, _choose one_ (and only one) of the following ways to use it:

1) using texgen - call setUp_texgen() with LightParam to use - call glVertex*() directly from the context - teardown_texgen()

2) using a vertex program - call setUp_VP with LightParam to use - call glTexCoord*() and glVertex*() directly from the context _or_ call vertex_VP() with position within the paper in array of 4 floats - call teardown_VP()

3) using explicit coordinates - call setUp_explicit with LightParam to use - call texcoords_explicit() with paper coordinates in arrays of 4 floats and call glVertex*() directly from the context. - call teardown_explicit()


Inheritance:

PaperPass


Public Fields

[more]CallGLCode setupcode
The code to call before beginning to render the pass.
[more]CallGLCode teardowncode
The code to call after rendering the pass.
[more]vector<shared_ptr<TexGen> > texgen
The TexGen objects for the different texture units.
[more]vector<shared_ptr<LightSetup> > setup
The non-texgen light setup routines.

Public Methods

[more]void setUp_texgen (LightParam* param)
Calls setupcode, texgen and setup for the texture.
[more]void tearDown_texgen ()
Calls teardowncode.
[more]void setUp_VP (LightParam* param)
Calls setupcode, texgen and setup for the texture.
[more]void tearDown_VP ()
Calls teardowncode.
[more]void vertex_VP (float* pos, float* ppos)
Vertex program version of the paperpass vertex.
[more]void setUp_explicit (LightParam* param)
Calls setupcode, texgen and setup for the texture.
[more]void tearDown_explicit ()
Calls teardowncode
[more]void texcoords_explicit (float* ppos)
Explicit version of the PaperPass texcoords

oCallGLCode setupcode
The code to call before beginning to render the pass.

oCallGLCode teardowncode
The code to call after rendering the pass.

ovector<shared_ptr<TexGen> > texgen
The TexGen objects for the different texture units.

ovector<shared_ptr<LightSetup> > setup
The non-texgen light setup routines.

ovoid setUp_texgen(LightParam* param)
Calls setupcode, texgen and setup for the texture.

Parameters:
param - light parameters (LightParam object)

ovoid tearDown_texgen()
Calls teardowncode.

ovoid setUp_VP(LightParam* param)
Calls setupcode, texgen and setup for the texture.

Parameters:
param - light parameters (LightParam object)

ovoid tearDown_VP()
Calls teardowncode.

ovoid vertex_VP(float* pos, float* ppos)
Vertex program version of the paperpass vertex. Calling vertex_VP() is optional. It's possible to call glTexCoord*() and glVertex*() directly from the context and choose the best function variant - ie. use vertex arrays (vertex_VP() forces to pass coordinates in arrays of 4 floats).

Parameters:
pos - vertex position (array of 4 floats)
ppos - position within paper (array of 4 floats)

ovoid setUp_explicit(LightParam* param)
Calls setupcode, texgen and setup for the texture.

Parameters:
param - light parameters (LightParam object)

ovoid tearDown_explicit()
Calls teardowncode

ovoid texcoords_explicit(float* ppos)
Explicit version of the PaperPass texcoords


This class has no child classes.

Alphabetic index Hierarchy of classes



This page was generated with the help of DOC++.