|
| Effect () |
|
| Effect (const Effect ©, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) |
|
virtual bool | isSameKindAs (const osg::Object *obj) const |
|
virtual const char * | libraryName () const |
|
virtual const char * | className () const |
|
virtual const char * | effectName () const =0 |
|
virtual const char * | effectDescription () const =0 |
|
virtual const char * | effectAuthor () const =0 |
|
bool | getEnabled () const |
|
void | setEnabled (bool v) |
|
virtual void | setUpDemo () |
|
int | getNumTechniques () const |
|
Technique * | getTechnique (int i) |
|
const Technique * | getTechnique (int i) const |
|
int | getSelectedTechnique () const |
|
void | selectTechnique (int i=AUTO_DETECT) |
|
virtual void | traverse (osg::NodeVisitor &nv) |
|
void | inherited_traverse (osg::NodeVisitor &nv) |
|
| Group () |
|
| Group (const Group &, const CopyOp ©op=CopyOp::SHALLOW_COPY) |
|
| META_Node (osg, Group) |
|
virtual Group * | asGroup () |
|
virtual const Group * | asGroup () const |
|
virtual bool | addChild (Node *child) |
|
virtual bool | insertChild (unsigned int index, Node *child) |
|
bool | removeChild (Node *child) |
|
bool | removeChild (unsigned int pos, unsigned int numChildrenToRemove=1) |
|
virtual bool | removeChildren (unsigned int pos, unsigned int numChildrenToRemove) |
|
virtual bool | replaceChild (Node *origChild, Node *newChild) |
|
unsigned int | getNumChildren () const |
|
virtual bool | setChild (unsigned int i, Node *node) |
|
Node * | getChild (unsigned int i) |
|
const Node * | getChild (unsigned int i) const |
|
bool | containsNode (const Node *node) const |
|
unsigned int | getChildIndex (const Node *node) const |
|
virtual void | setThreadSafeRefUnref (bool threadSafe) |
|
virtual void | resizeGLObjectBuffers (unsigned int maxSize) |
|
virtual void | releaseGLObjects (osg::State *=0) const |
|
virtual BoundingSphere | computeBound () const |
|
| Node () |
|
| Node (const Node &, const CopyOp ©op=CopyOp::SHALLOW_COPY) |
|
virtual Object * | cloneType () const |
|
virtual Object * | clone (const CopyOp ©op) const |
|
virtual Transform * | asTransform () |
|
virtual const Transform * | asTransform () const |
|
virtual Camera * | asCamera () |
|
virtual const Camera * | asCamera () const |
|
virtual Switch * | asSwitch () |
|
virtual const Switch * | asSwitch () const |
|
virtual Geode * | asGeode () |
|
virtual const Geode * | asGeode () const |
|
virtual osgTerrain::Terrain * | asTerrain () |
|
virtual const osgTerrain::Terrain * | asTerrain () const |
|
virtual void | accept (NodeVisitor &nv) |
|
virtual void | ascend (NodeVisitor &nv) |
|
const ParentList & | getParents () const |
|
ParentList | getParents () |
|
Group * | getParent (unsigned int i) |
|
const Group * | getParent (unsigned int i) const |
|
unsigned int | getNumParents () const |
|
NodePathList | getParentalNodePaths (osg::Node *haltTraversalAtNode=0) const |
|
MatrixList | getWorldMatrices (const osg::Node *haltTraversalAtNode=0) const |
|
void | setUpdateCallback (NodeCallback *nc) |
|
NodeCallback * | getUpdateCallback () |
|
const NodeCallback * | getUpdateCallback () const |
|
void | addUpdateCallback (NodeCallback *nc) |
|
void | removeUpdateCallback (NodeCallback *nc) |
|
unsigned int | getNumChildrenRequiringUpdateTraversal () const |
|
void | setEventCallback (NodeCallback *nc) |
|
NodeCallback * | getEventCallback () |
|
const NodeCallback * | getEventCallback () const |
|
void | addEventCallback (NodeCallback *nc) |
|
void | removeEventCallback (NodeCallback *nc) |
|
unsigned int | getNumChildrenRequiringEventTraversal () const |
|
void | setCullCallback (NodeCallback *nc) |
|
NodeCallback * | getCullCallback () |
|
const NodeCallback * | getCullCallback () const |
|
void | addCullCallback (NodeCallback *nc) |
|
void | removeCullCallback (NodeCallback *nc) |
|
void | setCullingActive (bool active) |
|
bool | getCullingActive () const |
|
unsigned int | getNumChildrenWithCullingDisabled () const |
|
bool | isCullingActive () const |
|
unsigned int | getNumChildrenWithOccluderNodes () const |
|
bool | containsOccluderNodes () const |
|
void | setNodeMask (NodeMask nm) |
|
NodeMask | getNodeMask () const |
|
void | setStateSet (osg::StateSet *stateset) |
|
osg::StateSet * | getOrCreateStateSet () |
|
osg::StateSet * | getStateSet () |
|
const osg::StateSet * | getStateSet () const |
|
void | setDescriptions (const DescriptionList &descriptions) |
|
DescriptionList & | getDescriptions () |
|
const DescriptionList & | getDescriptions () const |
|
const std::string & | getDescription (unsigned int i) const |
|
std::string & | getDescription (unsigned int i) |
|
unsigned int | getNumDescriptions () const |
|
void | addDescription (const std::string &desc) |
|
void | setInitialBound (const osg::BoundingSphere &bsphere) |
|
const BoundingSphere & | getInitialBound () const |
|
void | dirtyBound () |
|
const BoundingSphere & | getBound () const |
|
void | setComputeBoundingSphereCallback (ComputeBoundingSphereCallback *callback) |
|
ComputeBoundingSphereCallback * | getComputeBoundingSphereCallback () |
|
const ComputeBoundingSphereCallback * | getComputeBoundingSphereCallback () const |
|
| Object () |
|
| Object (bool threadSafeRefUnref) |
|
| Object (const Object &, const CopyOp ©op=CopyOp::SHALLOW_COPY) |
|
virtual void | setName (const std::string &name) |
|
void | setName (const char *name) |
|
const std::string & | getName () const |
|
void | setDataVariance (DataVariance dv) |
|
DataVariance | getDataVariance () const |
|
virtual void | computeDataVariance () |
|
void | setUserDataContainer (osg::UserDataContainer *udc) |
|
osg::UserDataContainer * | getUserDataContainer () |
|
const osg::UserDataContainer * | getUserDataContainer () const |
|
osg::UserDataContainer * | getOrCreateUserDataContainer () |
|
virtual void | setUserData (Referenced *obj) |
|
virtual Referenced * | getUserData () |
|
virtual const Referenced * | getUserData () const |
|
template<typename T > |
bool | getUserValue (const std::string &name, T &value) const |
|
template<typename T > |
void | setUserValue (const std::string &name, const T &value) |
|
template<typename T > |
BoolValueObject UCharValueObject UShortValueObject UIntValueObject DoubleValueObject Vec3fValueObject Vec2dValueObject Vec4dValueObject PlaneValueObject MatrixdValueObject bool | getUserValue (const std::string &name, T &value) const |
|
| Referenced () |
|
| Referenced (bool threadSafeRefUnref) |
|
| Referenced (const Referenced &) |
|
Referenced & | operator= (const Referenced &) |
|
bool | getThreadSafeRefUnref () const |
|
OpenThreads::Mutex * | getRefMutex () const |
|
int | ref () const |
|
int | unref () const |
|
int | unref_nodelete () const |
|
int | referenceCount () const |
|
ObserverSet * | getObserverSet () const |
|
ObserverSet * | getOrCreateObserverSet () const |
|
void | addObserver (Observer *observer) const |
|
void | removeObserver (Observer *observer) const |
|
The base class for special effects. An effect is basically a collection of state attributes and an interface for configuring them in a predefined fashion. The Effect class does more however, as it handles multipass rendering transparently and it allows more than one "technique" to be defined. Each technique tries to implement the effect in a different way, often using different OpenGL extensions. The active technique can be selected either manually, with selectTechnique(), or automatically, in which case the first technique that is supported by all active rendering contexts is chosen. If you are an Effect user, then simply use it as a node group. Create an instance of your desired effect, add it to your scene graph and call its addChild() method to add a child node as you would do with a Group. If you are an Effect developer, you will have to implement the method define_techniques() to define the different techniques that can be used for obtaining the desired effect. In define_techniques() you will usually create one or more instances of custom classes derived from Technique and you will add them to the effect with addTechnique(). The order is important: techniques added first will have higher priority and will be used first as soon as all rendering contexts support it.