Public Types | |
| typedef std::map< std::string, TargetMap > | FlattenConf |
| typedef CoreModel::Textures2D | Textures2D |
| typedef std::vector < osg::ref_ptr< osg::Drawable > > | Drawables |
| typedef std::map< int, Drawables > | CoreMeshId2Drawables |
| typedef std::vector< int > | VectorInt |
Public Member Functions | |
| META_Object (osgCal, Model) | |
| Model () | |
| Model (const Model &, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
| bool | create (void) |
| Create model from a templated CoreModel. Remember to set CoreModel with setCoreModel function. | |
| void | update (void) |
| CoreModel * | getCoreModel () |
| Retrieves CoreModel. | |
| bool | setCoreModel (CoreModel *coreModel) |
| Sets CoreModel. | |
| CalCoreModel * | getCalCoreModel (void) |
| Retrieves the Cal3d CalCoreModel. | |
| CalModel * | getCalModel (void) |
| Retrieves the Cal3d CalModel associated with the current osgCalModel instance. | |
| Textures2D * | getTextures2D (const std::string &materialName) |
| Retrieves the 2D textures given a material name. | |
| Textures2D * | getTextures2D (int coreMaterialId) |
| Retrieves the 2D textures given a material id. | |
| Drawables * | getDrawables (const std::string &materialName) |
| Retrieves the drawables given a material name. | |
| Drawables * | getDrawables (int coreMaterialId) |
| Retrieves the drawables given a material id. | |
| bool | hasDrawables (int coreMeshId) |
| bool | setActiveMesh (const std::string &_meshName) |
| Activates meshes. | |
| bool | setActiveMeshes (const std::vector< int > &activeMeshes) |
| const std::vector< int > & | getActiveMeshes (void) const |
| bool | bindMaterials (const std::string &meshName, const std::vector< std::string > &materials) |
| bool | setInvisibleMesh (const std::string &meshName) |
| bool | setInvisibleMeshes (const std::vector< int > &invisibleMeshes) |
| const std::vector< int > & | getInvisibleMeshes (void) const |
| bool | setCollisionMesh (const std::string &meshName) |
| bool | setCollisionMeshNames (const std::vector< std::string > &meshNames) |
| const std::vector< std::string > & | getCollisionMeshNames (void) const |
| bool | setCollisionMeshes (const std::vector< int > &collisionMeshes) |
| const std::vector< int > & | getCollisionMeshes (void) const |
| bool | setUseVertexProgram (bool useVertexProgram, unsigned int contextID=0) |
| bool | getUseVertexProgram (void) |
| bool | setUseColorOrTexture (bool useColorOrTexture) |
| bool | getUseColorOrTexture (void) |
| bool | bindMesh (const CoreModel::MeshDescription &meshDescription) |
| void | unapplySlot (const std::string &slotType, int slotIndex) |
| std::vector< int > & | getCoreMeshIdUsedForMesh (const std::string &_itemName) |
| const std::string & | getItemUsedForMesh (int _coreMeshId) |
| std::vector< std::string > | getMeshFromSlot (const std::string &slotType, int index=0) |
| bool | getSlotListFromSlotType (const std::string &name, CoreModel::SlotBank &result) |
| bool | applySlot (const std::string &slotType, const std::string &slotName, int slotIndex) |
| void | setupLayers (const std::string &slotType, const std::string &slotName, int slotIndex) |
| void | setupTLF (const std::string &slotType, int slotIndex) |
| void | freeAllLayersRessource () |
| void | setFXGroup (osg::Group *_grp) |
| osg::Group * | getFXGroup () |
| void | setFXState (osg::State *_state) |
| osg::State * | getFXState () |
| bool | setParam (const std::string &name, const std::string &type, int value) |
| FlattenConf & | getFlattenConfFromSlotType (const std::string &_type) |
| void | flushTextureCache () |
| bool | removeCollisionMesh (const std::string &meshName) |
| bool | removeInvisibleMesh (const std::string &meshName) |
| bool | unBindMesh (const CoreModel::MeshDescription &meshDescription) |
| OutfitDescription * | getOutfit () |
| bool | initOutfitFromFile (const std::string &fname, std::vector< std::string > *excludeMesh=0) |
| bool | initOutfitFromXMLString (const std::string &xmlString, std::vector< std::string > *excludeMesh=0) |
| bool | installOutfitFromXMLString (const std::string &xmlString) |
| bool | applyParameterFromOutfitDescription () |
| bool | loadOutfit (OutfitDescription *outfit, std::vector< std::string > *toBeIgnored=NULL) |
Static Public Member Functions | |
| static void | freeLayersRessource () |
Protected Member Functions | |
| virtual | ~Model () |
| bool | createSoftware (void) |
| bool | createSubMeshSoftware (int coreMeshId) |
| bool | createHardware (void) |
| bool | setupMaterial (osg::Drawable *drawable, CalSubmesh *calSubmesh) |
| void | invertUVs (int coreMeshId) |
| bool | isInvisibleMesh (int coreMeshId) |
| bool | isCollisionMesh (int coreMeshId) |
| bool | find (const std::vector< int > &vector, int item) |
| bool | isSlotAlreadyApplied (const std::string &_slotType, const std::string &_slotName) |
| void | fixNormalSW (float ptThreshold) |
| void | fixNormalHW (int nbVertices, osg::Vec3f *pos, osg::Vec3f *normal, char *imesh, float ptThreshold) |
Protected Attributes | |
| GlueCalHardwareModel * | mHardwareModel |
| bool | _useVertexProgram |
| bool | _useColorOrTexture |
| unsigned int | _vbo [MODEL_VBO_SIZE] |
| osg::ref_ptr< CoreModel > | _coreModel |
| std::vector< int > | _activeMeshes |
| std::vector< int > | _invisibleMeshes |
| std::vector< int > | _collisionMeshes |
| std::map< int, std::string > | _coreMeshId2Item |
| std::map< std::string, VectorInt > | _mesh2CoreMeshId |
| std::map< CalCoreSubmesh *, SubMeshSoftware * > | _calCoreSubmesh2SubMeshSoftware |
| OutfitDescription | _outfit |
| std::vector< std::string > | _collisionMeshNames |
| CoreMeshId2Drawables | _coreMeshId2Drawables |
| CalModel * | _calModel |
| osg::ref_ptr< osg::VertexProgram > | _vp |
| osg::BoundingBox | _bbox |
| std::string | _outfitName |
| std::map< std::string, FlattenConf > | slotName2FlattenConf_ |
| std::map< std::string, osg::ref_ptr< osg::Texture2D > > | targetmap2texture_ |
| osg::ref_ptr< osg::Group > | fxGroup_ |
| osg::ref_ptr< osg::State > | fxState_ |
| std::map< std::string, std::vector< std::string > > | slotDependencies_ |
| osg::NotifySeverity | _notify |
Friends | |
| class | SubMeshHardware |
Classes | |
| struct | OutfitDescription |
| class | TargetMap |
| typedef std::map<std::string, TargetMap> osgCal::Model::FlattenConf |
| typedef std::vector<osg::ref_ptr<osg::Drawable> > osgCal::Model::Drawables |
| typedef std::map<int,Drawables> osgCal::Model::CoreMeshId2Drawables |
| typedef std::vector<int> osgCal::Model::VectorInt |
| osgCal::Model::Model | ( | ) |
| osgCal::Model::Model | ( | const Model & | , | |
| const osg::CopyOp & | copyop = osg::CopyOp::SHALLOW_COPY | |||
| ) |
| virtual osgCal::Model::~Model | ( | ) | [protected, virtual] |
| osgCal::Model::META_Object | ( | osgCal | , | |
| Model | ||||
| ) |
| bool osgCal::Model::create | ( | void | ) |
| void osgCal::Model::update | ( | void | ) |
| bool osgCal::Model::setCoreModel | ( | CoreModel * | coreModel | ) |
| CalCoreModel* osgCal::Model::getCalCoreModel | ( | void | ) | [inline] |
Retrieves the Cal3d CalCoreModel.
| CalModel* osgCal::Model::getCalModel | ( | void | ) | [inline] |
Retrieves the Cal3d CalModel associated with the current osgCalModel instance.
| Textures2D* osgCal::Model::getTextures2D | ( | const std::string & | materialName | ) |
Retrieves the 2D textures given a material name.
| materialName | a valid materialName |
| Textures2D* osgCal::Model::getTextures2D | ( | int | coreMaterialId | ) |
Retrieves the 2D textures given a material id.
| materialId | a valid material Id |
| Drawables* osgCal::Model::getDrawables | ( | const std::string & | materialName | ) |
Retrieves the drawables given a material name.
| materialName | a valid materialName |
| Drawables* osgCal::Model::getDrawables | ( | int | coreMaterialId | ) |
Retrieves the drawables given a material id.
| materialId | a valid materialId |
| bool osgCal::Model::hasDrawables | ( | int | coreMeshId | ) |
| bool osgCal::Model::setActiveMesh | ( | const std::string & | _meshName | ) |
Activates meshes.
| meshName | name of the mesh to active |
| bool osgCal::Model::setActiveMeshes | ( | const std::vector< int > & | activeMeshes | ) | [inline] |
| const std::vector<int>& osgCal::Model::getActiveMeshes | ( | void | ) | const [inline] |
| bool osgCal::Model::bindMaterials | ( | const std::string & | meshName, | |
| const std::vector< std::string > & | materials | |||
| ) |
| bool osgCal::Model::setInvisibleMesh | ( | const std::string & | meshName | ) |
| bool osgCal::Model::setInvisibleMeshes | ( | const std::vector< int > & | invisibleMeshes | ) | [inline] |
| const std::vector<int>& osgCal::Model::getInvisibleMeshes | ( | void | ) | const [inline] |
| bool osgCal::Model::setCollisionMesh | ( | const std::string & | meshName | ) |
| bool osgCal::Model::setCollisionMeshNames | ( | const std::vector< std::string > & | meshNames | ) |
| const std::vector<std::string>& osgCal::Model::getCollisionMeshNames | ( | void | ) | const [inline] |
| bool osgCal::Model::setCollisionMeshes | ( | const std::vector< int > & | collisionMeshes | ) | [inline] |
| const std::vector<int>& osgCal::Model::getCollisionMeshes | ( | void | ) | const [inline] |
| bool osgCal::Model::setUseVertexProgram | ( | bool | useVertexProgram, | |
| unsigned int | contextID = 0 | |||
| ) |
| bool osgCal::Model::getUseVertexProgram | ( | void | ) | [inline] |
| bool osgCal::Model::setUseColorOrTexture | ( | bool | useColorOrTexture | ) | [inline] |
| bool osgCal::Model::getUseColorOrTexture | ( | void | ) | [inline] |
| bool osgCal::Model::bindMesh | ( | const CoreModel::MeshDescription & | meshDescription | ) |
| void osgCal::Model::unapplySlot | ( | const std::string & | slotType, | |
| int | slotIndex | |||
| ) |
| std::vector<int>& osgCal::Model::getCoreMeshIdUsedForMesh | ( | const std::string & | _itemName | ) | [inline] |
| const std::string& osgCal::Model::getItemUsedForMesh | ( | int | _coreMeshId | ) | [inline] |
| std::vector<std::string> osgCal::Model::getMeshFromSlot | ( | const std::string & | slotType, | |
| int | index = 0 | |||
| ) |
| bool osgCal::Model::getSlotListFromSlotType | ( | const std::string & | name, | |
| CoreModel::SlotBank & | result | |||
| ) |
| bool osgCal::Model::applySlot | ( | const std::string & | slotType, | |
| const std::string & | slotName, | |||
| int | slotIndex | |||
| ) |
| void osgCal::Model::setupLayers | ( | const std::string & | slotType, | |
| const std::string & | slotName, | |||
| int | slotIndex | |||
| ) |
| void osgCal::Model::setupTLF | ( | const std::string & | slotType, | |
| int | slotIndex | |||
| ) |
| void osgCal::Model::freeAllLayersRessource | ( | ) |
| static void osgCal::Model::freeLayersRessource | ( | ) | [static] |
| void osgCal::Model::setFXGroup | ( | osg::Group * | _grp | ) | [inline] |
| osg::Group* osgCal::Model::getFXGroup | ( | ) | [inline] |
| void osgCal::Model::setFXState | ( | osg::State * | _state | ) | [inline] |
| osg::State* osgCal::Model::getFXState | ( | ) | [inline] |
| bool osgCal::Model::setParam | ( | const std::string & | name, | |
| const std::string & | type, | |||
| int | value | |||
| ) |
| FlattenConf& osgCal::Model::getFlattenConfFromSlotType | ( | const std::string & | _type | ) | [inline] |
| void osgCal::Model::flushTextureCache | ( | ) |
| bool osgCal::Model::removeCollisionMesh | ( | const std::string & | meshName | ) |
| bool osgCal::Model::removeInvisibleMesh | ( | const std::string & | meshName | ) |
| bool osgCal::Model::unBindMesh | ( | const CoreModel::MeshDescription & | meshDescription | ) |
| OutfitDescription* osgCal::Model::getOutfit | ( | ) | [inline] |
| bool osgCal::Model::initOutfitFromFile | ( | const std::string & | fname, | |
| std::vector< std::string > * | excludeMesh = 0 | |||
| ) |
| bool osgCal::Model::initOutfitFromXMLString | ( | const std::string & | xmlString, | |
| std::vector< std::string > * | excludeMesh = 0 | |||
| ) |
| bool osgCal::Model::installOutfitFromXMLString | ( | const std::string & | xmlString | ) |
| bool osgCal::Model::applyParameterFromOutfitDescription | ( | ) |
| bool osgCal::Model::loadOutfit | ( | OutfitDescription * | outfit, | |
| std::vector< std::string > * | toBeIgnored = NULL | |||
| ) |
| bool osgCal::Model::createSoftware | ( | void | ) | [protected] |
| bool osgCal::Model::createSubMeshSoftware | ( | int | coreMeshId | ) | [protected] |
| bool osgCal::Model::createHardware | ( | void | ) | [protected] |
| bool osgCal::Model::setupMaterial | ( | osg::Drawable * | drawable, | |
| CalSubmesh * | calSubmesh | |||
| ) | [protected] |
| void osgCal::Model::invertUVs | ( | int | coreMeshId | ) | [protected] |
| bool osgCal::Model::isInvisibleMesh | ( | int | coreMeshId | ) | [inline, protected] |
| bool osgCal::Model::isCollisionMesh | ( | int | coreMeshId | ) | [inline, protected] |
| bool osgCal::Model::find | ( | const std::vector< int > & | vector, | |
| int | item | |||
| ) | [protected] |
| bool osgCal::Model::isSlotAlreadyApplied | ( | const std::string & | _slotType, | |
| const std::string & | _slotName | |||
| ) | [protected] |
| void osgCal::Model::fixNormalSW | ( | float | ptThreshold | ) | [protected] |
| void osgCal::Model::fixNormalHW | ( | int | nbVertices, | |
| osg::Vec3f * | pos, | |||
| osg::Vec3f * | normal, | |||
| char * | imesh, | |||
| float | ptThreshold | |||
| ) | [protected] |
friend class SubMeshHardware [friend] |
GlueCalHardwareModel* osgCal::Model::mHardwareModel [protected] |
bool osgCal::Model::_useVertexProgram [protected] |
bool osgCal::Model::_useColorOrTexture [protected] |
unsigned int osgCal::Model::_vbo[MODEL_VBO_SIZE] [protected] |
osg::ref_ptr<CoreModel> osgCal::Model::_coreModel [protected] |
std::vector<int> osgCal::Model::_activeMeshes [protected] |
std::vector<int> osgCal::Model::_invisibleMeshes [protected] |
std::vector<int> osgCal::Model::_collisionMeshes [protected] |
std::map<int, std::string> osgCal::Model::_coreMeshId2Item [protected] |
std::map<std::string, VectorInt> osgCal::Model::_mesh2CoreMeshId [protected] |
std::map<CalCoreSubmesh*, SubMeshSoftware*> osgCal::Model::_calCoreSubmesh2SubMeshSoftware [protected] |
OutfitDescription osgCal::Model::_outfit [protected] |
std::vector<std::string> osgCal::Model::_collisionMeshNames [protected] |
CalModel* osgCal::Model::_calModel [protected] |
osg::ref_ptr<osg::VertexProgram> osgCal::Model::_vp [protected] |
osg::BoundingBox osgCal::Model::_bbox [protected] |
std::string osgCal::Model::_outfitName [protected] |
std::map<std::string, FlattenConf> osgCal::Model::slotName2FlattenConf_ [protected] |
std::map<std::string, osg::ref_ptr<osg::Texture2D> > osgCal::Model::targetmap2texture_ [protected] |
osg::ref_ptr<osg::Group> osgCal::Model::fxGroup_ [protected] |
osg::ref_ptr<osg::State> osgCal::Model::fxState_ [protected] |
std::map<std::string, std::vector<std::string> > osgCal::Model::slotDependencies_ [protected] |
osg::NotifySeverity osgCal::Model::_notify [protected] |
1.5.5