OpenMW
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
NifOsg::LoaderImpl Class Reference
Collaboration diagram for NifOsg::LoaderImpl:

Classes

struct  CompareMaterial
 

Public Member Functions

 LoaderImpl (const std::string &filename)
 
osg::ref_ptr< osg::Node > load (Nif::NIFFilePtr nif, Resource::ImageManager *imageManager)
 
void applyNodeProperties (const Nif::Node *nifNode, osg::Node *applyTo, SceneUtil::CompositeStateSetUpdater *composite, Resource::ImageManager *imageManager, std::vector< int > &boundTextures, int animflags)
 
void setupController (const Nif::Controller *ctrl, SceneUtil::Controller *toSetup, int animflags)
 
void setupParticleController (const Nif::Controller *ctrl, SceneUtil::Controller *toSetup, int particleflags)
 
void optimize (const Nif::Node *nifNode, osg::Group *node, bool skipMeshes)
 
osg::ref_ptr< osg::LOD > handleLodNode (const Nif::NiLODNode *niLodNode)
 
osg::ref_ptr< osg::Image > handleSourceTexture (const Nif::NiSourceTexture *st, Resource::ImageManager *imageManager)
 
void handleEffect (const Nif::Node *nifNode, osg::Node *node, Resource::ImageManager *imageManager)
 
osg::ref_ptr< osg::Node > handleNode (const Nif::Node *nifNode, osg::Group *parentNode, Resource::ImageManager *imageManager, std::vector< int > boundTextures, int animflags, int particleflags, bool skipMeshes, TextKeyMap *textKeys, osg::Node *rootNode=NULL)
 
void handleMeshControllers (const Nif::Node *nifNode, osg::Node *node, SceneUtil::CompositeStateSetUpdater *composite, const std::vector< int > &boundTextures, int animflags)
 
void handleNodeControllers (const Nif::Node *nifNode, osg::MatrixTransform *transformNode, int animflags)
 
void handleVisController (const Nif::NiVisController *visctrl, osg::Node *node, int animflags)
 
void handleMaterialControllers (const Nif::Property *materialProperty, SceneUtil::CompositeStateSetUpdater *composite, int animflags)
 
void handleTextureControllers (const Nif::Property *texProperty, SceneUtil::CompositeStateSetUpdater *composite, Resource::ImageManager *imageManager, osg::StateSet *stateset, int animflags)
 
void handleParticlePrograms (Nif::ExtraPtr affectors, Nif::ExtraPtr colliders, osg::Group *attachTo, osgParticle::ParticleSystem *partsys, osgParticle::ParticleProcessor::ReferenceFrame rf)
 
void handleParticleInitialState (const Nif::Node *nifNode, osgParticle::ParticleSystem *partsys, const Nif::NiParticleSystemController *partctrl)
 
osg::ref_ptr< EmitterhandleParticleEmitter (const Nif::NiParticleSystemController *partctrl)
 
void handleParticleSystem (const Nif::Node *nifNode, osg::Group *parentNode, SceneUtil::CompositeStateSetUpdater *composite, int animflags, int particleflags, osg::Node *rootNode)
 
void triShapeToGeometry (const Nif::NiTriShape *triShape, osg::Geometry *geometry, osg::Node *parentNode, SceneUtil::CompositeStateSetUpdater *composite, const std::vector< int > &boundTextures, int animflags)
 
void handleTriShape (const Nif::NiTriShape *triShape, osg::Group *parentNode, SceneUtil::CompositeStateSetUpdater *composite, const std::vector< int > &boundTextures, int animflags)
 
osg::ref_ptr< osg::Geometry > handleMorphGeometry (const Nif::NiGeomMorpherController *morpher, const Nif::NiTriShape *triShape, osg::Node *parentNode, SceneUtil::CompositeStateSetUpdater *composite, const std::vector< int > &boundTextures, int animflags)
 
void handleSkinnedTriShape (const Nif::NiTriShape *triShape, osg::Group *parentNode, SceneUtil::CompositeStateSetUpdater *composite, const std::vector< int > &boundTextures, int animflags)
 
osg::BlendFunc::BlendFuncMode getBlendMode (int mode)
 
osg::AlphaFunc::ComparisonFunction getTestMode (int mode)
 
osg::Stencil::Function getStencilFunction (int func)
 
osg::Stencil::Operation getStencilOperation (int op)
 
osg::ref_ptr< osg::Image > handleInternalTexture (const Nif::NiPixelData *pixelData)
 
void handleTextureProperty (const Nif::NiTexturingProperty *texprop, osg::StateSet *stateset, SceneUtil::CompositeStateSetUpdater *composite, Resource::ImageManager *imageManager, std::vector< int > &boundTextures, int animflags)
 
void handleProperty (const Nif::Property *property, osg::Node *node, SceneUtil::CompositeStateSetUpdater *composite, Resource::ImageManager *imageManager, std::vector< int > &boundTextures, int animflags)
 
osg::Material * shareMaterial (osg::Material *mat)
 
void applyDrawableProperties (osg::Node *node, const std::vector< const Nif::Property * > &properties, SceneUtil::CompositeStateSetUpdater *composite, bool hasVertexColors, int animflags, bool particleMaterial)
 

Static Public Member Functions

static void loadKf (Nif::NIFFilePtr nif, KeyframeHolder &target)
 

Public Attributes

std::string mFilename
 
size_t mFirstRootTextureIndex
 
bool mFoundFirstRootTexturingProperty
 

Constructor & Destructor Documentation

NifOsg::LoaderImpl::LoaderImpl ( const std::string &  filename)
inline
Parameters
filenameused for warning messages.

Member Function Documentation

void NifOsg::LoaderImpl::applyDrawableProperties ( osg::Node *  node,
const std::vector< const Nif::Property * > &  properties,
SceneUtil::CompositeStateSetUpdater composite,
bool  hasVertexColors,
int  animflags,
bool  particleMaterial 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::applyNodeProperties ( const Nif::Node nifNode,
osg::Node *  applyTo,
SceneUtil::CompositeStateSetUpdater composite,
Resource::ImageManager imageManager,
std::vector< int > &  boundTextures,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

osg::BlendFunc::BlendFuncMode NifOsg::LoaderImpl::getBlendMode ( int  mode)
inline

Here is the caller graph for this function:

osg::Stencil::Function NifOsg::LoaderImpl::getStencilFunction ( int  func)
inline

Here is the caller graph for this function:

osg::Stencil::Operation NifOsg::LoaderImpl::getStencilOperation ( int  op)
inline

Here is the caller graph for this function:

osg::AlphaFunc::ComparisonFunction NifOsg::LoaderImpl::getTestMode ( int  mode)
inline

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleEffect ( const Nif::Node nifNode,
osg::Node *  node,
Resource::ImageManager imageManager 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

osg::ref_ptr<osg::Image> NifOsg::LoaderImpl::handleInternalTexture ( const Nif::NiPixelData pixelData)
inline

Here is the caller graph for this function:

osg::ref_ptr<osg::LOD> NifOsg::LoaderImpl::handleLodNode ( const Nif::NiLODNode niLodNode)
inline

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleMaterialControllers ( const Nif::Property materialProperty,
SceneUtil::CompositeStateSetUpdater composite,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleMeshControllers ( const Nif::Node nifNode,
osg::Node *  node,
SceneUtil::CompositeStateSetUpdater composite,
const std::vector< int > &  boundTextures,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

osg::ref_ptr<osg::Geometry> NifOsg::LoaderImpl::handleMorphGeometry ( const Nif::NiGeomMorpherController morpher,
const Nif::NiTriShape triShape,
osg::Node *  parentNode,
SceneUtil::CompositeStateSetUpdater composite,
const std::vector< int > &  boundTextures,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

osg::ref_ptr<osg::Node> NifOsg::LoaderImpl::handleNode ( const Nif::Node nifNode,
osg::Group *  parentNode,
Resource::ImageManager imageManager,
std::vector< int boundTextures,
int  animflags,
int  particleflags,
bool  skipMeshes,
TextKeyMap textKeys,
osg::Node *  rootNode = NULL 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleNodeControllers ( const Nif::Node nifNode,
osg::MatrixTransform *  transformNode,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

osg::ref_ptr<Emitter> NifOsg::LoaderImpl::handleParticleEmitter ( const Nif::NiParticleSystemController partctrl)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleParticleInitialState ( const Nif::Node nifNode,
osgParticle::ParticleSystem *  partsys,
const Nif::NiParticleSystemController partctrl 
)
inline

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleParticlePrograms ( Nif::ExtraPtr  affectors,
Nif::ExtraPtr  colliders,
osg::Group *  attachTo,
osgParticle::ParticleSystem *  partsys,
osgParticle::ParticleProcessor::ReferenceFrame  rf 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleParticleSystem ( const Nif::Node nifNode,
osg::Group *  parentNode,
SceneUtil::CompositeStateSetUpdater composite,
int  animflags,
int  particleflags,
osg::Node *  rootNode 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleProperty ( const Nif::Property property,
osg::Node *  node,
SceneUtil::CompositeStateSetUpdater composite,
Resource::ImageManager imageManager,
std::vector< int > &  boundTextures,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleSkinnedTriShape ( const Nif::NiTriShape triShape,
osg::Group *  parentNode,
SceneUtil::CompositeStateSetUpdater composite,
const std::vector< int > &  boundTextures,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

osg::ref_ptr<osg::Image> NifOsg::LoaderImpl::handleSourceTexture ( const Nif::NiSourceTexture st,
Resource::ImageManager imageManager 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleTextureControllers ( const Nif::Property texProperty,
SceneUtil::CompositeStateSetUpdater composite,
Resource::ImageManager imageManager,
osg::StateSet *  stateset,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleTextureProperty ( const Nif::NiTexturingProperty texprop,
osg::StateSet *  stateset,
SceneUtil::CompositeStateSetUpdater composite,
Resource::ImageManager imageManager,
std::vector< int > &  boundTextures,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleTriShape ( const Nif::NiTriShape triShape,
osg::Group *  parentNode,
SceneUtil::CompositeStateSetUpdater composite,
const std::vector< int > &  boundTextures,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::handleVisController ( const Nif::NiVisController visctrl,
osg::Node *  node,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

osg::ref_ptr<osg::Node> NifOsg::LoaderImpl::load ( Nif::NIFFilePtr  nif,
Resource::ImageManager imageManager 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

static void NifOsg::LoaderImpl::loadKf ( Nif::NIFFilePtr  nif,
KeyframeHolder target 
)
inlinestatic

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::optimize ( const Nif::Node nifNode,
osg::Group *  node,
bool  skipMeshes 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::setupController ( const Nif::Controller ctrl,
SceneUtil::Controller toSetup,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

void NifOsg::LoaderImpl::setupParticleController ( const Nif::Controller ctrl,
SceneUtil::Controller toSetup,
int  particleflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

osg::Material* NifOsg::LoaderImpl::shareMaterial ( osg::Material *  mat)
inline

Here is the caller graph for this function:

void NifOsg::LoaderImpl::triShapeToGeometry ( const Nif::NiTriShape triShape,
osg::Geometry *  geometry,
osg::Node *  parentNode,
SceneUtil::CompositeStateSetUpdater composite,
const std::vector< int > &  boundTextures,
int  animflags 
)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

std::string NifOsg::LoaderImpl::mFilename
size_t NifOsg::LoaderImpl::mFirstRootTextureIndex
bool NifOsg::LoaderImpl::mFoundFirstRootTexturingProperty

The documentation for this class was generated from the following file: