Public Types |
| enum | TState { StateNotAdded = 0,
StateAdding,
StateAdded
} |
Public Methods |
| virtual | ~UInstanceGroup () |
| | Instance group. More...
|
| virtual void | setTransformNameCallback (ITransformName *pTN)=0 |
| | Set up the callback used at loading and instanciating of the instanceGroup. More...
|
| virtual void | setAddRemoveInstanceCallback (IAddRemoveInstance *callback)=0 |
| | set a callback to know when an instance has been added / removed from scene. More...
|
| virtual void | setIGAddBeginCallback (IIGAddBegin *callback)=0 |
| | Set a callback to know when an instance group is being created, and how many instances it contains. More...
|
| virtual void | addToScene (class UScene &scene, UDriver *driver=NULL)=0 |
| | Add all the instances to the scene. More...
|
| virtual void | addToSceneAsync (class UScene &scene, UDriver *driver=NULL)=0 |
| virtual void | stopAddToSceneAsync ()=0 |
| virtual TState | getAddToSceneState ()=0 |
| virtual void | removeFromScene (class UScene &scene)=0 |
| | remove this instance group from the given scene. More...
|
| virtual uint | getNumInstance () const=0 |
| | Return the count of shape instance in this group. More...
|
| virtual const std::string & | getShapeName (uint instanceNb) const=0 |
| | Return the name of the shape refered by an instance of the group. More...
|
| virtual const std::string & | getInstanceName (uint instanceNb) const=0 |
| | Return the name of an instance of the group. More...
|
| virtual void | getInstanceMatrix (uint instanceNb, NLMISC::CMatrix &dest) const=0 |
| | Return the transformation matrix of an instance in the group NB no pivot is added. More...
|
| virtual const NLMISC::CVector & | getInstancePos (uint instanceNb) const=0 |
| | Return the position of an instance of the group. More...
|
| virtual const NLMISC::CQuat & | getInstanceRot (uint instanceNb) const=0 |
| | Return the rotation of an instance of the group. More...
|
| virtual const NLMISC::CVector & | getInstanceScale (uint instanceNb) const=0 |
| | Return the scale of an instance of the group. More...
|
| virtual UInstance * | getByName (std::string &name)=0 |
| | Return the instance at a given position. More...
|
| virtual const UInstance * | getByName (std::string &name) const=0 |
| | Return the instance at a given position (const version). More...
|
| virtual void | setLightFactor (const std::string &LightName, NLMISC::CRGBA nFactor)=0 |
| | Control a lightmap. More...
|
| virtual void | setBlendShapeFactor (const std::string &bsName, float rFactor)=0 |
| | Control a blendshape. More...
|
| virtual void | createRoot (class UScene &scene)=0 |
| | Create the link between scene and instance group before the addToScene to allow the instance group to be moved without being linked to a father cluster system. More...
|
| virtual void | setClusterSystem (class UInstanceGroup *pClusterSystem)=0 |
| | All the instances must be checked against the following cluster system. More...
|
| virtual bool | linkToParentCluster (UInstanceGroup *father)=0 |
| | Link this ig clusters as sons of clusters of 'ig' that conatains them. More...
|
| virtual void | getDynamicPortals (std::vector< std::string > &names)=0 |
| | Get all dynamic portals in the instance group. More...
|
| virtual void | setDynamicPortal (std::string &name, bool opened)=0 |
| | Set the state of a dynamic portal. More...
|
| virtual bool | getDynamicPortal (std::string &name)=0 |
| | Get the state of a dynamic portal. More...
|
| virtual void | setPos (const NLMISC::CVector &pos)=0 |
| | Set the position of the instance group Take care if the instance group is a cluster system, you must not move it outside its father cluster which is assigned at addToScene moment. More...
|
| virtual void | setRotQuat (const NLMISC::CQuat &q)=0 |
| | Set the rotation of the instance group. More...
|
| virtual NLMISC::CVector | getPos ()=0 |
| | Get the position. More...
|
| virtual NLMISC::CQuat | getRotQuat ()=0 |
| | Get the rotation. More...
|
| virtual void | freezeHRC ()=0 |
| | see UTransform::freezeHRC(). Do it for all instances (not clusters), and for the root of the IG. More...
|
| virtual void | unfreezeHRC ()=0 |
| | see UTransform::unfreezeHRC(). Do it for all instances (not clusters), and for the root of the IG. More...
|
|
| virtual void | setPointLightFactor (const std::string &lightGroupName, NLMISC::CRGBA nFactor)=0 |
| | set the Light factor for all pointLights of "lightGroupName". More...
|
| virtual bool | getStaticLightSetup (const std::string &retrieverIdentifier, sint surfaceId, const NLMISC::CVector &localPos, std::vector< CPointLightInfluence > &pointLightList, uint8 &sunContribution, NLMISC::CRGBA &localAmbient)=0 |
| | get the StaticLightSetup for a model at position localPos/retrieverIdentifier/surfaceId. More...
|
|
| virtual void | setDistMax (uint instance, float dist)=0 |
| virtual float | getDistMax (uint instance) const=0 |
| virtual void | setCoarseMeshDist (uint instance, float dist)=0 |
| virtual float | getCoarseMeshDist (uint instance) const=0 |
Static Public Methods |
| UInstanceGroup * | createInstanceGroup (const std::string &instanceGroup) |
| | This is the static function create a stand alone instance group. More...
|
| void | createInstanceGroupAsync (const std::string &instanceGroup, UInstanceGroup **pIG) |
| void | stopCreateInstanceGroupAsync (UInstanceGroup **pIG) |