Inheritance diagram for I3DShInstance:

Public Types | |
| enum | EInstanceKind { kPrimitiveInstance = 1, kSceneInstance = 2, kCameraInstance = 3, kLightInstance = 4, kInstanceKind_Max = 0x7fffffff } |
| These are the constants returned from GetInstanceKind(). More... | |
Public Member Functions | |
| virtual MCCOMErr MCCOMAPI | Get3DObject (I3DShObject **object)=0 |
| virtual MCCOMErr MCCOMAPI | Set3DObject (I3DShObject *object)=0 |
| virtual MCCOMErr MCCOMAPI | SetShader (I3DShMasterShader *masterShader)=0 |
| virtual MCCOMErr MCCOMAPI | GetShader (I3DShMasterShader **masterShader)=0 |
| virtual boolean MCCOMAPI | UsesDefaultShader ()=0 |
| virtual uint32 MCCOMAPI | GetUVSpaceCount ()=0 |
| virtual MCCOMErr MCCOMAPI | GetUVSpace (uint32 uvSpaceID, UVSpaceInfo *uvSpaceInfo)=0 |
| virtual MCCOMErr MCCOMAPI | GetShadingFlags (ShadingFlags &theFlags)=0 |
| virtual void MCCOMAPI | ShadeAndLight (LightingDetail &result, const LightingContext &lightingContext)=0 |
| virtual MCCOMErr MCCOMAPI | DoShade (ShadingOut &shadingOut, ShadingIn &shadingIn)=0 |
| virtual MCCOMErr MCCOMAPI | GetBump (TVector3 &result, ShadingIn &shadingIn)=0 |
| virtual MCCOMErr MCCOMAPI | GetMainColors (TMCColorRGBA &color1, TMCColorRGBA &color2)=0 |
| virtual MCCOMErr MCCOMAPI | ShaderModified ()=0 |
| virtual MCCOMErr MCCOMAPI | GetFlatennedTexturesSync (uint32 uvSpaceID, UVMaps &maps, boolean wantsProgress, TMCRealRect *range=nil) const =0 |
| virtual MCCOMErr MCCOMAPI | GetFlatennedTexturesAsync (uint32 uvSpaceID, UVMaps &maps, TextureAvailableProc proc, void *privData, TMCRealRect *range=nil) const =0 |
| virtual MCCOMErr MCCOMAPI | FlushFlatennedTextureCaches ()=0 |
| virtual MCCOMErr MCCOMAPI | SetShadingFromMaps (uint32 uvSpaceID, UVMaps &maps, MapParams *mapParams, TMCRealRect *range=nil)=0 |
| virtual void MCCOMAPI | GetBoundingBox (TBBox3D &bbox, ETreeDeformBBoxModes deformMode)=0 |
| virtual void MCCOMAPI | GetFacetBoundingBox (TBBox3D &bbox, ETreeDeformBBoxModes deformMode, TMatrix33 &mappingTransform, void *listener, uint32 matrixChangedPhase)=0 |
| virtual MCCOMErr MCCOMAPI | Dehydrate (int16 level)=0 |
| virtual boolean MCCOMAPI | RayHit (RayHitParameters ¶m)=0 |
| virtual boolean MCCOMAPI | RayHitFacet (RayHitParameters ¶ms, uint32 facetIndex, real lod)=0 |
| virtual MCCOMErr MCCOMAPI | GetDeformed3DObject (I3DShObject **object)=0 |
| virtual MCCOMErr MCCOMAPI | GetURL (TMCString &name, int16 &kind)=0 |
| virtual MCCOMErr MCCOMAPI | SetURL (const TMCString &name, int16 kind)=0 |
| virtual int32 MCCOMAPI | GetClassSignature ()=0 |
| virtual int32 MCCOMAPI | GetInstanceKind ()=0 |
| virtual boolean MCCOMAPI | IsVolumeInstance ()=0 |
| virtual MCCOMErr MCCOMAPI | GetFMesh (real lod, FacetMesh **mesh)=0 |
| virtual MCCOMErr MCCOMAPI | GetIndex (int32 &index)=0 |
| virtual MCCOMErr MCCOMAPI | GetVertexUV (boolean &res, const TVector3 &theVertex, TVector2 &theUV)=0 |
| virtual boolean MCCOMAPI | CastsShadow ()=0 |
| virtual boolean MCCOMAPI | ReceivesShadow ()=0 |
| virtual MCCOMErr MCCOMAPI | GetReflectionFeature (I3DExReflectionFeature **reflectionFeature)=0 |
| virtual MCCOMErr MCCOMAPI | GetRefractionFeature (I3DExRefractionFeature **refractionFeature)=0 |
| virtual MCCOMErr MCCOMAPI | SetReflectionFeature (I3DShReflectionFeature *feature, ECloneMode cloneMode)=0 |
| virtual MCCOMErr MCCOMAPI | SetReflectionFeatureByID (int32 kindID)=0 |
| virtual MCCOMErr MCCOMAPI | GetReflectionFeature (I3DShReflectionFeature **reflectionFeature)=0 |
| virtual MCCOMErr MCCOMAPI | SetRefractionFeature (I3DShRefractionFeature *feature, ECloneMode cloneMode)=0 |
| virtual MCCOMErr MCCOMAPI | SetRefractionFeatureByID (int32 kindID)=0 |
| virtual MCCOMErr MCCOMAPI | GetRefractionFeature (I3DShRefractionFeature **refractionFeature)=0 |
| virtual MCCOMErr MCCOMAPI | SetBackfaceMode (EBackfaceMode BackfaceMode)=0 |
| virtual EBackfaceMode MCCOMAPI | GetBackfaceMode ()=0 |
| virtual I3DShTreeElement *MCCOMAPI | GetTreeElement ()=0 |
| virtual void MCCOMAPI | SetTemporaryCache (IMCUnknown *cache)=0 |
| virtual const IMCUnknown *MCCOMAPI | GetTemporaryCache ()=0 |
Instances always support the following interfaces : I3DShTreeElement, I3DShShadableTree, ISelectableObject
|
|
These are the constants returned from GetInstanceKind().
|
|
|
Returns true if the instance is casting shadows on other objects. |
|
|
|
|
||||||||||||
|
Returns the shading of a point located on this instance.
|
|
|
Delete the caches of the flattened textures. |
|
|
Returns a pointer to the Master Object that stores the geometry associated with this instance. Note that you should call GetDeformed3DObject() if you want to have the geometry of the instance once the deformers have been applied.
|
|
|
Returns the backface culling mode (see EBackfaceMode). |
|
||||||||||||
|
Returns the bounding box of the instance in local coordinates.
|
|
||||||||||||
|
Not implemented. |
|
|
Returns the Class ID of the external object that is associated with the instance. For a primitive it is the class ID of the external primitive, for a light it is the class ID of the light source, for a camera it is the class ID of the camera. |
|
|
Returns a master object that stores the geometry of the instance once the deformer have been applied.
|
|
||||||||||||||||||||||||
|
The bounding box calculated here fit exactly the facets of the object in a given direction. The FacetBounding boxes are cached inside the Object because it can take a long time to calculate. We added a listener here to accelerate the Get. So we don't have to compare mappingTransform (TMatrix33) in the look-up table. A last hit is provide inside the GetFacetBoundingBox method to make the Get on same listener very fast. Each time the BoudingBox of the object changed , the list is flushed. Each time you ask with a new mappingTransform, increment the matrixChangedPhase
|
|
||||||||||||||||||||||||
|
Same as GetFlatennedTexturesSync() but the calculation is done in a thread and the maps are only returned once they have been calculated. |
|
||||||||||||||||||||
|
Calculates a set of texture maps that approximates the shading on the instance.
|
|
||||||||||||
|
Returns the facet mesh of the instance for a given level of details.
|
|
|
Returns the index of the instance in the master group that contains it. This is the index that is stored in the instance index GBuffer.
|
|
|
Returns the instance Kind (see EInstanceKind). |
|
||||||||||||
|
Return an approximation of the shading. |
|
|
Returns a pointer to the reflection feature of this instance.
|
|
|
Returns a pointer to the reflection feature of this instance.
|
|
|
Returns a pointer to the refraction feature of this instance.
|
|
|
Returns a pointer to the refraction feature of this instance.
|
|
|
Returns the master shader.
|
|
|
Returns the flags of the master shader.
|
|
|
Returns a pointer to the temporary cache store with SetTemporaryCache |
|
|
Returns a pointer to the I3DShTreeElement interface. |
|
||||||||||||
|
Returns the URL associated with the instance. |
|
||||||||||||
|
Return the description of a given shading domaine.
|
|
|
Returns the number of shading domaine on the instance. |
|
||||||||||||||||
|
Returns the texture coordinates of a 3D point on the surface of the instance.
|
|
|
Returns true if the instance is a volume primitive. |
|
|
Calculates the intersection of a Ray and the instance. (The ray should be in local coordinates of the instance.
|
|
||||||||||||||||
|
calculates the intersection between a ray and a triangle of a primitive. Note that if the primitive is self-Raytracable, the facetIndex is ignored and the intersection is calculated with the whole primitive.
|
|
|
Returns true if other objects can cast shadows on this object. |
|
|
Sets the Master Object that stores the geometry associated with this instance.
|
|
|
Sets the backface culling mode (see EBackfaceMode).
|
|
||||||||||||
|
Sets reflection feature of this instance.
|
|
|
Sets type of reflection feature of this instance.
|
|
||||||||||||
|
Sets refraction feature of this instance.
|
|
|
Sets type of refraction feature of this instance.
|
|
|
Sets the master shader that is applied to the instance.
|
|
||||||||||||||||||||
|
Undocumented. |
|
|
Sets a temporary cache on the instance (example when calculating a postrenderer per instance such as Aura3D)
|
|
||||||||||||
|
Sets the URL associated with the instance. |
|
||||||||||||
|
Calculate the lighting and shading of a point located on this instance.
|
|
|
Notify the instance that its shader has been modified. |
|
|
Returns true if the instance has the default shader applied to it. |
1.3.9.1