TalanSoft Toolkits  201707
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
Public Member Functions | List of all members
iPainterObject Struct Referenceabstract
Inheritance diagram for iPainterObject:
iUnknown iPainterPostProcessBloom

Detailed Description

Painter object interface.

Remarks
This object should be implemented by the Painter module's users. {DispatchWrapper}

Public Member Functions

virtual tPainterObjectFlags GetPainterObjectFlags () const =0
 Get the painter object's flags. {Property}. More...
 
virtual ni::sVec3f PainterObjectCenter () const =0
 Get the painter object's center. More...
 
virtual ni::tBool PainterObjectAddToBoundingVolume (ni::iBoundingVolume *apBV, ePainterRenderMode aRenderMode) const =0
 Add the object to the specified bounding volume. More...
 
virtual ni::tBool PainterObjectCull (ni::iFrustum *apFrustum) const =0
 Check whether the object should be culled early. More...
 
virtual ni::tU32 PainterObjectRender (iPainterRenderContext *apRC, ePainterChannel aChannel, ePainterRenderMode aMode, iPainterDrawSet *apDrawSet)=0
 Render the object. More...
 
- Public Member Functions inherited from iUnknown
virtual tBool IsOK () const =0
 Check if the object is valid. More...
 
virtual tI32 AddRef ()=0
 Signal that one more reference of the object has been created. More...
 
virtual tI32 Release ()=0
 Release a reference of the object. More...
 
virtual void DeleteThis ()=0
 Bypass any reference counting and delete this object. More...
 
virtual void Invalidate ()=0
 Invalidate the object. More...
 
virtual iUnknownQueryInterface (const tUUID &aIID)=0
 Query an interface. More...
 
virtual void ListInterfaces (iMutableCollection *apLst, tU32 anFlags) const =0
 Fill a UUID list containing the UUIDs of the implemented interfaces. More...
 
virtual tI32 SetNumRefs (tI32 anNumRefs)=0
 Set the reference counter directly. More...
 
virtual tI32 GetNumRefs () const =0
 Get the number of references to this object. More...
 

Member Function Documentation

virtual tPainterObjectFlags GetPainterObjectFlags ( ) const
pure virtual

Get the painter object's flags. {Property}.

Remarks
Every time the object's flags changes the object should be set in its draw sets using ni::iPainterDrawSet::SetObject.
virtual ni::sVec3f PainterObjectCenter ( ) const
pure virtual

Get the painter object's center.

virtual ni::tBool PainterObjectAddToBoundingVolume ( ni::iBoundingVolume apBV,
ePainterRenderMode  aRenderMode 
) const
pure virtual

Add the object to the specified bounding volume.

Remarks
eTrue if the object's bounding volume was added, eFalse if not.
virtual ni::tBool PainterObjectCull ( ni::iFrustum apFrustum) const
pure virtual

Check whether the object should be culled early.

Parameters
apFrustumis the frustum against which the objects should be culled. If NULL the object should consider itself visible unless it is disabled.
Returns
eFalse if the object is not visible, else eTrue.
Remarks
This is the method where standard frustum test should be done, aswell as eventual LOD-based distance culling.
virtual ni::tU32 PainterObjectRender ( iPainterRenderContext apRC,
ePainterChannel  aChannel,
ePainterRenderMode  aMode,
iPainterDrawSet apDrawSet 
)
pure virtual

Render the object.