FBShaderLighted Class Reference
 
 
 
FBShaderLighted Class Reference

This reference page is linked to from the following overview topics: FBScene - The Scene Class.


#include <fbshader.h>


Class Description

Lighted shader class.

This type of shader is the default type used by the application. It allows users to control luminosity, contrast and specularity as well as how the transparency is computed, should it be used.

There are two methods to create a FBShaderLighted object: using the FBShaderManager, or simply by instantiating a class object explicitely.

Note:
Please consult the application documentation for more infos on shader properties and their effects.
Warning:
This class should not serve as a base class for another class.

Sample C++ code:

        // Creation of a lighted shader, and setting it to use
        // the constrast and specularity.
        FBShaderLighted* lShader = new FBShaderLighted( "New Shader" );

        lShader->UseContrast  = true;
        lShader->UseSpecular  = true;
        lShader->Specular     = 35.0;
        lShader->Transparency = kFBAlphaSourceTransluscentAlpha;

        // Use the shader.
        FBModel* lModel = FBFindModelByLabelName( "Cube" );
        if( lModel )
        {
        lShader->ReplaceAll( lModel );
        }

        // Do some more things...

        // And then delete it when no longer necessary;
        lShader->FBDelete();

The following sample code does the same task, but in Python.

Sample Python code:

        from pyfbsdk import *

    # Creating the shader.
    lShader = FBShaderLighted( 'New Python Shader' )
    lShader.UseContrast  = True
    lShader.UseSpecular  = True
    lShader.Specular     = 35.0
    lShader.Transparency = FBAlphaSource.kFBAlphaSourceTransluscentAlpha

        # User the shader
        lModel = FBFindModelByLabelName( 'Cube' )
    if lModel <> None:
            lModel.Show = True
        lShader.ReplaceAll( lModel )

Definition at line 779 of file fbshader.h.

Inheritance diagram for FBShaderLighted:
FBShader FBBox FBComponent FBPlug FBWrapperHolder

Public Member Functions

  FBShaderLighted (const char *pName, HIObject pObject=NULL)
  Constructor.
  IObject_Declare (K_IMPLEMENTATION)
virtual FBShaderModelInfo NewShaderModelInfo (HKModelRenderInfo pModelRenderInfo, int pSubRegionIndex)
  Create a new shader-model information object.
virtual void  UpdateModelShaderInfo (FBRenderOptions *pOptions, FBShaderModelInfo *pInfo)
  Update shader-model information when model, material & texture mapping or shader setting change.
virtual void  DestroyShaderModelInfo (FBRenderOptions *pOptions, FBShaderModelInfo *pInfo)
  Destroy shader-model information object callback.
virtual void  ReplaceAll (FBModel *pModel)
  Replace all shader in pModel.
virtual void  Append (FBModel *pModel)
  Append shader to pModel.
virtual bool  ShaderNeedBeginRender ()
  Does the shader need a begin render call.
virtual void  ShaderBeginRender (FBRenderOptions *pOptions, FBShaderModelInfo *pInfo)
  Pre-rendering of shaders that is called only one time for a shader instance.
virtual void  ShadeModel (FBRenderOptions *pOptions, FBShaderModelInfo *pInfo, FBRenderingPass pPass)
  Real-time shading callback for shader without kFBShaderCapacityMaterialEffect.
virtual void  ShadeModelShadow (FBRenderOptions *pRenderOptions, FBShaderModelInfo *pInfo)
  Draw custom shadow shape callback for shader with kFBShaderCapacityDrawShadow but without kFBShaderCapacityMaterialEffect.
virtual void  CloneShaderParameter (FBShader *pNewShader)
  Clone shader.
virtual void  DetachDisplayContext (FBRenderOptions *pOptions, FBShaderModelInfo *pInfo)
  Detach the display context from the shader.
virtual bool  FbxStore (FBFbxObject *pFbxObject)
  Storage of information into the FBX file format.
virtual bool  FbxRetrieve (FBFbxObject *pFbxObject, FBRenderer *pRenderer)
  Retrieval of information into the FBX file format.
void  InvalidateShaderVersion ()
  Invalidate Shader version to trigger model-shader informaton to be updated.
int  GetShaderVersion () const
  Return Shader Version.
FBShaderCapacity  GetShaderCapacity () const
  Return Shader Capacity (bitwise value)
bool  HasShaderCapacity (FBShaderCapacity pCapacity)
  Return true if shader has certain capacity.
void  SetShaderCapacity (FBShaderCapacity pCapacity, bool pOn)
  Set Shader Capacity (bitwise value).
int  GetDrawInstancedMaximumSize () const
  Get shader maximum size for draw instanced.
void  SetDrawInstancedMaximumSize (int pMaxSize)
  Set shader maximum size for draw instanced.
virtual void  UploadModelViewMatrixArrayForDrawInstanced (const double *pModelViewMatrixArray, int pCount)
  Callback for uploading the modelview array when draw instanced.
virtual bool  EvaluateAnimationNodes (FBEvaluateInfo *pEvaluateInfo)
  Evaluation of non TRS nodes that needs to be evaluated.
virtual bool  AnimationNodeNotify (FBAnimationNode *pAnimationNode, FBEvaluateInfo *pEvaluateInfo)
  Notification function for animation thread.
virtual bool  AnimationNodeDestroy (FBAnimationNode *pAnimationNode)
  Destroy an animation node.
virtual bool  AnimationNodeIsUserData (FBAnimationNode *pAnimationNode)
  Is the animation node user data?
virtual void  AnimationNodesOutDisableIfNotWritten (FBEvaluateInfo *pEvaluateInfo)
  This call will disable all out animation nodes from being pull by system (animation thread) for given pEvaluateInfo.
virtual const char *  FbxGetObjectSubType ()
  returns UniqueName if not overloaded.
virtual const char *  FbxGetObjectType ()
  Object Type "Box".
virtual bool  FBCreate ()
  Open Reality Creation function.
virtual void  FBDestroy ()
  Open Reality destruction function.
virtual void  FBDelete () override
  Open Reality deletion function.
virtual bool  SetHIObject (HIObject pObject, bool pSDKComponent) override
  Assign component to an internal pointer.
virtual int  PropertyAdd (FBProperty *pProperty)
  Add a property to the component's property manager.
bool  PropertyAddReferenceProperty (FBProperty *pReferenceProperty)
  Add a reference property to the component's property manager.
void  PropertyRemove (FBProperty *pProperty)
  Remove a Property from the component's Property manager.
void  PropertyGetModifiedList (FBArrayTemplate< FBProperty * > &pPropList, FBPlugModificationFlag pModificationFlags)
  Get list of properties which have been modified since last loading.
FBProperty PropertyCreate (const char *pName, FBPropertyType pType, const char *pDataType, bool pAnimatable, bool pIsUser=false, FBProperty *pReferenceSource=NULL)
  Create user or dynamic property.
FBObjectFlag  GetObjectFlags ()
  Get all Object Flags (concatenated).
void  SetObjectFlags (FBObjectFlag pFlags)
  SetObjectFlags.
bool  HasObjectFlags (FBObjectFlag pFlags)
  Check whether a specific object flag is enabled.
void  EnableObjectFlags (FBObjectFlag pFlags)
  Enable a specific Object Flags.
void  DisableObjectFlags (FBObjectFlag pFlags)
  Disable a specific Object Flags.
void  SetObjectStatus (FBObjectStatus pStatus, bool pValue)
  Enable/Disable a specific Object Status.
bool  GetObjectStatus (FBObjectStatus pStatus)
  Check to see if an object status is enabled.
bool  ProcessNamespaceHierarchy (FBNamespaceAction pNamespaceAction, const char *pNamespaceName, const char *pReplaceTo=NULL, bool pAddRight=true)
  ProcessNamespaceHierarchy.
bool  ProcessObjectNamespace (FBNamespaceAction pNamespaceAction, const char *pNamespaceName, const char *pReplaceTo=NULL, bool pAddRight=true)
  ProcessObjectNamespace.
virtual const char *  ClassName () override
  Get the class name.
virtual bool  UseCustomPropertyViewSet () const
  Use the custom property viewSet or not.
const char *  GetFullName (void)
  Get the full name.
void  SetOwnerNamespace (FBNamespace *pOwnerNSObj)
  Set the owner Namespace object.
FBNamespace GetOwnerNamespace (void)
  Get the owner Namespace object.
FBFileReference GetOwnerFileReference (void)
  Get the owner FileReference object.
void  HardSelect ()
  HardSelect.
  ICallback_Declare (K_IMPLEMENTATION)
virtual bool  Is (int pTypeId)
  Returns true if object is of type TypeId.
virtual int  GetTypeId ()
  GetTypeId( int pTypeId )
void  KObjectEvent (HIRegister pView, HKEventBase pEvent)
virtual HIObject  GetHIObject () const
  Return an internal pointer.
bool  IsSDKComponent ()
  Return whether or not item is an SDK component.
bool  ConnectSrc (FBPlug *pSrc, FBConnectionType pConnectionType=kFBConnectionTypeNone)
  Add a source connection.
bool  ConnectDst (FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone)
  Add a destination connection.
bool  ConnectSrcAt (int pDst_SrcIndex, FBPlug *pSrc, FBConnectionType pConnectionType=kFBConnectionTypeNone)
  Add a source connection.
bool  ConnectDstAt (int pSrc_DstIndex, FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone)
  Add a destination connection.
bool  DisconnectDst (FBPlug *pDst)
  Remove a destination connection.
bool  DisconnectSrc (FBPlug *pSrc)
  Remove a source connection.
void  DisconnectAllSrc ()
  Remove all source connections.
void  DisconnectAllDst ()
  Remove all destination connections.
bool  DisconnectDstAt (int pIndex)
  Remove a destination connection at a specified index.
bool  DisconnectSrcAt (int pIndex)
  Remove a source connection at a specified index.
bool  ReplaceDstAt (int pIndex, FBPlug *pDst)
  Replace a destination connection at a specified index.
bool  ReplaceSrcAt (int pIndex, FBPlug *pSrc)
  Replace a source connection at a specified index.
bool  SwapSrc (int pIndexA, int pIndexB)
  Swap source connection at index A with source connection at index B.
bool  MoveSrcAt (int pIndex, int pAtIndex)
  Move source connection at pIndex to pAtIndex.
bool  MoveSrcAt (FBPlug *pSrc, FBPlug *pAtSrc)
  Move source connection pSrc to the position of pAtSrc.
int  GetSrcCount ()
  Get source connection count.
FBPlug GetSrc (int pIndex)
  Get a source connection's plug at specified index.
FBConnectionType  GetSrcType (int pIndex)
  Get a source connection's type at specified index.
int  GetDstCount ()
  Get destination connection count.
FBPlug GetDst (int pIndex)
  Get a destination connection's plug at specified index.
FBConnectionType  GetDstType (int pIndex)
  Get a destination connection's type at specified index.
bool  BeginChange ()
  Begins a change on multiple plugs.
void  EndChange ()
  Ends a change on multiple plugs.
void  SetSelfModified (FBPlugModificationFlag pFlag, bool pBool)
  Set the plug's self modification flag.
bool  GetSelfModified (FBPlugModificationFlag pFlag)
  Tell if the plug's self has changed.
void  SetContentModified (FBPlugModificationFlag pFlag, bool pBool)
  Set the plug's owned property/object's modification flag.
bool  GetContentModified (FBPlugModificationFlag pFlag)
  Tell if the plug's content has changed.
int  GetPlugConnectionModifiedList (FBPlugList &pPlugList, FBPlugModificationFlag pConnectionModificatonFlag, bool pAddRemove)
  Get plug's modified src/dst property/object connection added/removed List.
bool  RevertModification (FBPlugModificationFlag pFlag=kFBAllModifiedMask)
  Revert the plug's modification to original status.
void  SetStatusFlag (FBPlugStatusFlag pStatus, bool pValue)
  Set the plug's status flag.
bool  GetStatusFlag (FBPlugStatusFlag pStatus) const
  Tell if the plug's status has changed.
FBPlug GetOwner ()
  Get the owner of this plug.
FBPlug GetOwned (int pIndex)
  Get the owned plug at specified index.
int  GetOwnedCount ()
  Get the owned plug count.
virtual bool  PlugDataNotify (FBConnectionAction pAction, FBPlug *pThis, void *pData=NULL, void *pDataOld=NULL, int pDataSize=0)
  PlugDataNotify when overloaded is equivalent of FBSystem.OnConnectionDataNotify but in the context of the derived object only.
virtual bool  PlugStateNotify (FBConnectionAction pAction, FBPlug *pThis, void *pData=NULL, void *pDataOld=NULL, int pDataSize=0)
  PlugStateNotify when overloaded is equivalent of FBSystem.OnConnectionStateNotify but in the context of the derived object only.
virtual bool  PlugNotify (FBConnectionAction pAction, FBPlug *pThis, int pIndex, FBPlug *pPlug=NULL, FBConnectionType pConnectionType=kFBConnectionTypeNone, FBPlug *pNewPlug=NULL)
  PlugNotify when overloaded is equivalent of FBSystem.OnConnectionNotify but in the context of the derived object only.
FBScriptWrapper GetWrapper ()
  Return the wrapper interface of this FBObject.
void  AddWrapper (FBScriptWrapper *)
void  RemoveWrapper (FBScriptWrapper *)
Real-time shading callbacks for kFBMaterialEffectShader.
virtual void  ShaderPassTypeBegin (FBRenderOptions *pRenderOptions, FBRenderingPass pPass)
  For all the shader instances of the same type, to setup the common state for all this type of shaders.
virtual void  ShaderPassTypeEnd (FBRenderOptions *pRenderOptions, FBRenderingPass pPass)
  For all the shader instances of the same type, to clean the common state for all this type of shaders.
virtual void  ShaderPassInstanceBegin (FBRenderOptions *pRenderOptions, FBRenderingPass pPass)
  For all the models associated with this shader instance, to setup the common state for this shader instance.
virtual void  ShaderPassInstanceEnd (FBRenderOptions *pRenderOptions, FBRenderingPass pPass)
  For all the models associated with this shader instance, to clean the common state for this shader instance.
virtual void  ShaderPassMaterialBegin (FBRenderOptions *pRenderOptions, FBRenderingPass pPass, FBShaderModelInfo *pInfo)
  For all the models mapped with this material and associated with this shader instance, to setup the common material state for this shader instance.
virtual void  ShaderPassMaterialEnd (FBRenderOptions *pRenderOptions, FBRenderingPass pPass, FBShaderModelInfo *pInfo)
  For all the models mapped with this material and associated with this shader instance, to clean the common material state for this shader instance.
virtual void  ShaderPassGeometryBegin (FBRenderOptions *pRenderOptions, FBRenderingPass pPass, FBShaderModelInfo *pInfo)
  For all the models instanced from the same geometry, to setup the common VBO state for this shader instance.
virtual void  ShaderPassGeometryEnd (FBRenderOptions *pRenderOptions, FBRenderingPass pPass, FBShaderModelInfo *pInfo)
  For all the models instanced from the same geometry, to clean the common VBO state for this shader instance.
virtual void  ShaderPassModelsDraw (FBRenderOptions *pRenderOptions, FBRenderingPass pPass, const FBArrayTemplate< FBShaderModelInfo * > &pInfoArray)
  For all the models with the same material/geometry mappings, inside this functions, we only need to setup modelview matrix, and draw the meshes.
virtual void  ShaderPassModelDraw (FBRenderOptions *pRenderOptions, FBRenderingPass pPass, FBShaderModelInfo *pInfo)
  Callback for Cg/CgFx shader to setup WorldMaitrx/WorldMatrixIT parameters.
virtual void  ShaderPassDrawShadowBegin (FBRenderOptions *pRenderOptions)
  Shadow draw pass begin notify for shader with kFBShaderCapacityMaterialEffect and kFBShaderCapacityDrawShow.
virtual void  ShaderPassDrawShadowEnd (FBRenderOptions *pRenderOptions)
  Shadow draw pass end notify for shader with kFBShaderCapacityMaterialEffect and kFBShaderCapacityDrawShow.
FBShaderPassActionCallback  GetShaderPassActionCallback () const
  Get Shader Pass Action Callback registration;.
void  SetShaderPassActionCallback (FBShaderPassActionCallback pCallback)
  Set Shader Pass Action Callback registration;.
virtual bool  FbxStore (FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat)
  Storage/Retrieval of information into the FBX file format.
virtual bool  FbxRetrieve (FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat)
virtual FBAnimationNode AnimationNodeInCreate (kReference pUserId, const char *pName, const char *pDataType, bool pIsPublic=false, double *pMin=NULL, double *pMax=NULL, bool pUserData=false)
  Creation of IN/OUT Animation Nodes.
virtual FBAnimationNode AnimationNodeOutCreate (kReference pUserId, const char *pName, const char *pDataType, bool pIsPublic=false, double *pMin=NULL, double *pMax=NULL, bool pUserData=false)
virtual FBAnimationNode AnimationNodeInGet ()
  Get the (IN/OUT) animation node for this box.
virtual FBAnimationNode AnimationNodeOutGet ()
void *  operator new (size_t stAllocateBlock)
void *  operator new (size_t stAllocateBlock, int blockType, const char *filename, int linenumber)
void  operator delete (void *pvMem)
void  RegisterPropertyEvent (FBPropertyEvent *pPropertyEvent)
void  UnregisterPropertyEvent (FBPropertyEvent *pPropertyEvent)
void  InvalidatePropertyEventsParents ()

Static Public Member Functions

static int  GetInternalClassId ()
static void  FBComponentSetName (FBComponent *pObject, const char *pName)
static const char *  FBComponentGetName (FBComponent *pObject)
static void  FBComponentSetLongName (FBComponent *pObject, const char *pName)
static const char *  FBComponentGetLongName (FBComponent *pObject)
static void  PrintClassDefinitions ()
  Print out internal Class (ID) Definition table.

Public Attributes

FBPropertyBool  UseContrast
  Read Write Property: Activate the Contrast option.
FBPropertyDouble  Contrast
  Read Write Property: Changes the contrast of the object when it reflects light.
FBPropertyBool  UseLuminosity
  Read Write Property: Activate the Luminosity option.
FBPropertyDouble  Luminosity
  Read Write Property: Changes the brightness of the object when reflecting light.
FBPropertyBool  UseSpecular
  Read Write Property: Activate the Specularity option.
FBPropertyDouble  Specular
  Read Write Property: Changes an object's level of shininess when it reflects light by affecting the specular highlight.
FBPropertyAlphaSource  Transparency
  Read Write Property: Indicates the computation method of the transparency.
FBPropertyAnimatableDouble  Alpha
  Read Write Property: Controls the actual effect of the shader on the object.
const char *  ShaderDescription
  Description.
FBPropertyBool  Enable
  Read Write Property: Is the shader Enabled
FBPropertyRenderingPass  RenderingPass
  Read Write Property: Rendering pass object are shaded in.
const char *  UniqueName
  internal Unique name.
FBPropertyBool  Animatable
  Read Write Property: Is the box animatable.
FBPropertyBool  Live
  Read Write Property: Is live?
FBPropertyBool  RecordMode
  Read Write Property: Is recording?
DataFBComponent *  mLocalPtr
  Handle on DataFBComponent.
FBPropertyManager  PropertyList
  Read Only Property: Manages all of the properties for the component.
FBPropertyListComponent  Components
  List: List of components.
FBPropertyListComponent  Parents
  List: Parents.
FBPropertyBool  Selected
  Read Write Property: Selected property.
FBPropertyString  Name
  Read Write Property: Unique name of object.
FBPropertyString  LongName
  Read Write Property: Name and namespace for object.
FBPropertyFolder  Folder
  Read Write Property: The folder that contain this component.
KObject *  mDummyObject
  Internal Dummy Object for non KObject Components.
bool  mAllocated
  Contain the Allocation State of the Component.

Static Public Attributes

static int  TypeInfo
  Contains the Type information of the object.
static const char *  ClassGroupName
  ClassGroupName of the object.

Static Protected Member Functions

static FBRenderingPass  GetRenderingPassNeededForAlpha (FBAlphaSource pTransparency)
  In order to be called at the right passes, a shader must set the result of GetRenderingPassNeededForAlpha() to RenderingPass for a given transparency type.

Protected Attributes

FBString  mName
  Name of the component.
HIObject  mObject
  Handle on the Plug.
bool  mSDKComponent
  bool Plug is an SDK component.

Static Protected Attributes

static int  mGlobalTypeInfo
  Represente the Type Index.

Friends

K_DLLIMPORT friend int  __FBRegisterTypeInfo (int pInternalClassId)
  __FBRegisterTypeInfo For internal use only, Register the TypeInfo mapped to internal class id.

Constructor & Destructor Documentation

FBShaderLighted::FBShaderLighted ( const char *  pName,
HIObject  pObject = NULL 
)

Constructor.

Parameters:
pName Name of shader.
pObject Internal parent object to own shader(default=NULL).

Member Function Documentation

FBShader::IObject_Declare ( K_IMPLEMENTATION  ) [inherited]

Reimplemented from FBBox.

virtual FBShaderModelInfo* FBShader::NewShaderModelInfo ( HKModelRenderInfo  pModelRenderInfo,
int  pSubRegionIndex 
) [virtual, inherited]

Create a new shader-model information object.

Parameters:
pModelRenderInfo Internal Model Render Info.
pSubRegionIndex
Returns:
Newly allocated shader-model information object.
virtual void FBShader::UpdateModelShaderInfo ( FBRenderOptions pOptions,
FBShaderModelInfo pInfo 
) [virtual, inherited]

Update shader-model information when model, material & texture mapping or shader setting change.

Parameters:
pOptions Render options.
pInfo Shader-model information object to be updated.
virtual void FBShader::DestroyShaderModelInfo ( FBRenderOptions pOptions,
FBShaderModelInfo pInfo 
) [virtual, inherited]

Destroy shader-model information object callback.

Parameters:
pOptions Render options.
pInfo Shader-model information object to destroy.
virtual void FBShader::ReplaceAll ( FBModel pModel ) [virtual, inherited]

Replace all shader in pModel.

Parameters:
pModel Model to replace all shader to.
virtual void FBShader::Append ( FBModel pModel ) [virtual, inherited]

Append shader to pModel.

Parameters:
pModel Model to append shader to.
virtual bool FBShader::ShaderNeedBeginRender ( ) [virtual, inherited]

Does the shader need a begin render call.

Remarks:
Re-implement this function and return true if you need it. This method is called once per shader on each render pass.
virtual void FBShader::ShaderBeginRender ( FBRenderOptions pOptions,
FBShaderModelInfo pInfo 
) [virtual, inherited]

Pre-rendering of shaders that is called only one time for a shader instance.

Remarks:
ShaderBeginRender is called as many times as the number of models affected by the instance of the shader in a given render pass. (ShaderNeedBeginRender must return true for this function to be called).
virtual void FBShader::ShadeModel ( FBRenderOptions pOptions,
FBShaderModelInfo pInfo,
FBRenderingPass  pPass 
) [virtual, inherited]

Real-time shading callback for shader without kFBShaderCapacityMaterialEffect.

This is called after all the calls to ShaderBeginRender.

Parameters:
pOptions Render options.
pPass Rendering pass.
pInfo Shader-model information.
virtual void FBShader::ShadeModelShadow ( FBRenderOptions pRenderOptions,
FBShaderModelInfo pInfo 
) [virtual, inherited]

Draw custom shadow shape callback for shader with kFBShaderCapacityDrawShadow but without kFBShaderCapacityMaterialEffect.

Parameters:
pRenderOptions Render options.
pInfo Shader-model information.
virtual void FBShader::ShaderPassTypeBegin ( FBRenderOptions pRenderOptions,
FBRenderingPass  pPass 
) [virtual, inherited]

For all the shader instances of the same type, to setup the common state for all this type of shaders.

Parameters:
pRenderOptions Render options.
pPass Rendering pass.
virtual void FBShader::ShaderPassTypeEnd ( FBRenderOptions pRenderOptions,
FBRenderingPass  pPass 
) [virtual, inherited]

For all the shader instances of the same type, to clean the common state for all this type of shaders.

Parameters:
pRenderOptions Render options.
pPass Rendering pass.
virtual void FBShader::ShaderPassInstanceBegin ( FBRenderOptions pRenderOptions,
FBRenderingPass  pPass 
) [virtual, inherited]

For all the models associated with this shader instance, to setup the common state for this shader instance.

Parameters:
pRenderOptions Render options.
pPass Rendering pass.
virtual void FBShader::ShaderPassInstanceEnd ( FBRenderOptions pRenderOptions,
FBRenderingPass  pPass 
) [virtual, inherited]

For all the models associated with this shader instance, to clean the common state for this shader instance.

Parameters:
pRenderOptions Render options.
pPass Rendering pass.
virtual void FBShader::ShaderPassMaterialBegin ( FBRenderOptions pRenderOptions,
FBRenderingPass  pPass,
FBShaderModelInfo pInfo 
) [virtual, inherited]

For all the models mapped with this material and associated with this shader instance, to setup the common material state for this shader instance.

Parameters:
pRenderOptions Render options.
pPass Rendering pass.
pInfo Shader-model information.
virtual void FBShader::ShaderPassMaterialEnd ( FBRenderOptions pRenderOptions,
FBRenderingPass  pPass,
FBShaderModelInfo pInfo 
) [virtual, inherited]

For all the models mapped with this material and associated with this shader instance, to clean the common material state for this shader instance.

Parameters:
pRenderOptions Render options.
pPass Rendering pass.
pInfo Shader-model information.
virtual void FBShader::ShaderPassGeometryBegin ( FBRenderOptions pRenderOptions,
FBRenderingPass  pPass,
FBShaderModelInfo pInfo 
) [virtual, inherited]

For all the models instanced from the same geometry, to setup the common VBO state for this shader instance.

Parameters:
pRenderOptions Render options.
pPass Rendering pass.
pInfo Shader-model information.
virtual void FBShader::ShaderPassGeometryEnd ( FBRenderOptions pRenderOptions,
FBRenderingPass  pPass,
FBShaderModelInfo pInfo 
) [virtual, inherited]

For all the models instanced from the same geometry, to clean the common VBO state for this shader instance.

Parameters:
pRenderOptions Render options.
pPass Rendering pass.
pInfo Shader-model information.
virtual void FBShader::ShaderPassModelsDraw ( FBRenderOptions pRenderOptions,
FBRenderingPass  pPass,
const FBArrayTemplate< FBShaderModelInfo * > &  pInfoArray 
) [virtual, inherited]

For all the models with the same material/geometry mappings, inside this functions, we only need to setup modelview matrix, and draw the meshes.

Parameters:
pRenderOptions Render options.
pPass Rendering pass.
pInfoArray An array of Shader-model information to be displayed.
virtual void FBShader::ShaderPassModelDraw ( FBRenderOptions pRenderOptions,
FBRenderingPass  pPass,
FBShaderModelInfo pInfo 
) [virtual, inherited]

Callback for Cg/CgFx shader to setup WorldMaitrx/WorldMatrixIT parameters.

Parameters:
pRenderOptions Render options.
pPass Rendering pass.
pInfo Shader-model information.
virtual void FBShader::ShaderPassDrawShadowBegin ( FBRenderOptions pRenderOptions ) [virtual, inherited]

Shadow draw pass begin notify for shader with kFBShaderCapacityMaterialEffect and kFBShaderCapacityDrawShow.

Parameters:
pRenderOptions Render options.
virtual void FBShader::ShaderPassDrawShadowEnd ( FBRenderOptions pRenderOptions ) [virtual, inherited]

Shadow draw pass end notify for shader with kFBShaderCapacityMaterialEffect and kFBShaderCapacityDrawShow.

Parameters:
pRenderOptions Render options.
FBShaderPassActionCallback FBShader::GetShaderPassActionCallback ( ) const [inherited]

Get Shader Pass Action Callback registration;.

void FBShader::SetShaderPassActionCallback ( FBShaderPassActionCallback  pCallback ) [inherited]

Set Shader Pass Action Callback registration;.

virtual void FBShader::CloneShaderParameter ( FBShader pNewShader ) [virtual, inherited]

Clone shader.

Parameters:
pNewShader Shader to copy data to.
virtual void FBShader::DetachDisplayContext ( FBRenderOptions pOptions,
FBShaderModelInfo pInfo 
) [virtual, inherited]

Detach the display context from the shader.

Parameters:
pOptions Render options.
pInfo Shader-model information object.
virtual bool FBShader::FbxStore ( FBFbxObject pFbxObject ) [virtual, inherited]

Storage of information into the FBX file format.

Parameters:
pFbxObject Object to interface with FBX file format.
Returns:
true if successful, false otherwise.
virtual bool FBBox::FbxStore ( FBFbxObject pFbxObject,
kFbxObjectStore  pStoreWhat 
) [virtual, inherited]

Storage/Retrieval of information into the FBX file format.

Parameters:
pFbxObject Object to interface with FBX file format.
pStoreWhat Attributes to store in FBX file.
Returns:
true if successful.

Reimplemented in FBConstraint, FBDevice, FBHUDElement, FBMaterial, FBModel, FBModelNull, FBModelMarker, FBDeviceOptical, FBDeviceSync, FBDeviceCamera, and FBUserObject.

virtual bool FBShader::FbxRetrieve ( FBFbxObject pFbxObject,
FBRenderer pRenderer 
) [virtual, inherited]

Retrieval of information into the FBX file format.

Parameters:
pFbxObject Object to interface with FBX file format.
pRenderer Renderer being restored.
Returns:
true if successful, false otherwise.
virtual bool FBBox::FbxRetrieve ( FBFbxObject pFbxObject,
kFbxObjectStore  pStoreWhat 
) [virtual, inherited]
void FBShader::InvalidateShaderVersion ( ) [inherited]

Invalidate Shader version to trigger model-shader informaton to be updated.

int FBShader::GetShaderVersion ( ) const [inherited]

Return Shader Version.

FBShaderCapacity FBShader::GetShaderCapacity ( ) const [inherited]

Return Shader Capacity (bitwise value)

bool FBShader::HasShaderCapacity ( FBShaderCapacity  pCapacity ) [inherited]

Return true if shader has certain capacity.

void FBShader::SetShaderCapacity ( FBShaderCapacity  pCapacity,
bool  pOn 
) [inherited]

Set Shader Capacity (bitwise value).

Only when the shader is not connected to any model, this function will take effect. otherwise, it will be ignored.

int FBShader::GetDrawInstancedMaximumSize ( ) const [inherited]

Get shader maximum size for draw instanced.

void FBShader::SetDrawInstancedMaximumSize ( int  pMaxSize ) [inherited]

Set shader maximum size for draw instanced.

virtual void FBShader::UploadModelViewMatrixArrayForDrawInstanced ( const double *  pModelViewMatrixArray,
int  pCount 
) [virtual, inherited]

Callback for uploading the modelview array when draw instanced.

Parameters:
pModelViewMatrixArray pointer of 4x4 column major modelview matrix array, length is 4*4*pCount;
pCount number of modelview matrixs in the array.
static FBRenderingPass FBShader::GetRenderingPassNeededForAlpha ( FBAlphaSource  pTransparency ) [static, protected, inherited]

In order to be called at the right passes, a shader must set the result of GetRenderingPassNeededForAlpha() to RenderingPass for a given transparency type.

It should not be called at rendering time.

Parameters:
pTransparency Transparency type.
Returns:
a mask of all rendering passes needed for DrawGeometry() to work correctly.
virtual FBAnimationNode* FBBox::AnimationNodeInCreate ( kReference  pUserId,
const char *  pName,
const char *  pDataType,
bool  pIsPublic = false,
double *  pMin = NULL,
double *  pMax = NULL,
bool  pUserData = false 
) [virtual, inherited]

Creation of IN/OUT Animation Nodes.

Parameters:
pUserId User-defined reference number.
pName Name of animation node.
pDataType Type of data being animated.
pIsPublic Determine if the animation node is published, that means whether to show it in property editor and have input / output in relation constraints editor (default is false).
pMin Minimum values for data (default is NULL).
pMax Maximum values for data (default is NULL).
pUserData Is this user data? False means the property is NOT animated, user cannot change the data. Especially for device, it doesn't make sense to make it animated, unless you want to record the device data. (default is false).
Returns:
A handle to the newly created animation node.

Reimplemented in FBDevice.

virtual FBAnimationNode* FBBox::AnimationNodeOutCreate ( kReference  pUserId,
const char *  pName,
const char *  pDataType,
bool  pIsPublic = false,
double *  pMin = NULL,
double *  pMax = NULL,
bool  pUserData = false 
) [virtual, inherited]
virtual bool FBBox::EvaluateAnimationNodes ( FBEvaluateInfo pEvaluateInfo ) [virtual, inherited]

Evaluation of non TRS nodes that needs to be evaluated.

This function is called by the real-time engine in order to process animation information.

Parameters:
pEvaluateInfo Information concerning the evaluation of the animation (time, etc.)
Returns:
true if animation node notification is successful.
virtual bool FBBox::AnimationNodeNotify ( FBAnimationNode pAnimationNode,
FBEvaluateInfo pEvaluateInfo 
) [virtual, inherited]

Notification function for animation thread.

This function is called by the real-time engine in order to process animation information.

Parameters:
pAnimationNode Node containing the modified information.
pEvaluateInfo Information concerning the evaluation of the animation (time, etc.)
Returns:
true if animation node notification is successful.

Reimplemented in FBDevice, FBDeviceOptical, and FBDeviceSync.

virtual bool FBBox::AnimationNodeDestroy ( FBAnimationNode pAnimationNode ) [virtual, inherited]

Destroy an animation node.

Parameters:
pAnimationNode Handle to the animation node to be destroyed.
Returns:
true if destruction was successful.
virtual bool FBBox::AnimationNodeIsUserData ( FBAnimationNode pAnimationNode ) [virtual, inherited]

Is the animation node user data?

Parameters:
pAnimationNode Handle to the animation to be queried.
Returns:
true if node is user data.
virtual void FBBox::AnimationNodesOutDisableIfNotWritten ( FBEvaluateInfo pEvaluateInfo ) [virtual, inherited]

This call will disable all out animation nodes from being pull by system (animation thread) for given pEvaluateInfo.

Parameters:
pEvaluateInfo Evaluation synchronization object (contains evaluation id).
Note:
This can be also done per individual AnimationNode -> FBAnimationNode::DisableIfNotWritten
virtual FBAnimationNode* FBBox::AnimationNodeInGet ( ) [virtual, inherited]

Get the (IN/OUT) animation node for this box.

Returns:
A handle to the animation node for this box.
virtual FBAnimationNode* FBBox::AnimationNodeOutGet ( ) [virtual, inherited]
virtual const char* FBBox::FbxGetObjectSubType ( ) [virtual, inherited]

returns UniqueName if not overloaded.

Reimplemented in FBMaterial, FBModel, FBModelNull, and FBModelMarker.

virtual const char* FBBox::FbxGetObjectType ( ) [virtual, inherited]

Object Type "Box".

Reimplemented in FBDevice, FBMaterial, FBModel, FBModelNull, and FBModelMarker.

FBComponent::GetInternalClassId ( ) [static, inherited]
Returns:
Internal class Id

Reimplemented from FBPlug.

Reimplemented in FBCustomManager.

virtual bool FBComponent::FBCreate ( ) [virtual, inherited]
virtual void FBComponent::FBDestroy ( ) [virtual, inherited]
virtual bool FBComponent::SetHIObject ( HIObject  pObject,
bool  pSDKComponent 
) [override, virtual, inherited]

Assign component to an internal pointer.

Reimplemented from FBPlug.

virtual int FBComponent::PropertyAdd ( FBProperty pProperty ) [virtual, inherited]

Add a property to the component's property manager.

Parameters:
pProperty The property to add to the property manager.
Returns:
Index in the property array where property was inserted.
bool FBComponent::PropertyAddReferenceProperty ( FBProperty pReferenceProperty ) [inherited]

Add a reference property to the component's property manager.

Parameters:
pReferenceProperty The property to from an other object to add a reference to (property cannot be a custom ORSDK property).
Returns:
True if the reference property could be added.
void FBComponent::PropertyRemove ( FBProperty pProperty ) [inherited]

Remove a Property from the component's Property manager.

If the property was dynamically allocated, it is deleted.

Parameters:
pProperty The property to remove from the property manager.
void FBComponent::PropertyGetModifiedList ( FBArrayTemplate< FBProperty * > &  pPropList,
FBPlugModificationFlag  pModificationFlags 
) [inherited]

Get list of properties which have been modified since last loading.

Parameters:
pPropList property list to hold the modified properties.
pModificationFlags type of modification to query.
FBProperty* FBComponent::PropertyCreate ( const char *  pName,
FBPropertyType  pType,
const char *  pDataType,
bool  pAnimatable,
bool  pIsUser = false,
FBProperty pReferenceSource = NULL 
) [inherited]

Create user or dynamic property.

Parameters:
pName The name of the property.
pType Type of the property. See enum FBPropertyType.
pDataType DataType of the property.
pAnimatable To specify if the property can be animated.
pIsUser To specify if the property is available as a custom property or dynamic and attached to the object.
pReferenceSource Specifies the property that a reference refers to.
FBObjectFlag FBComponent::GetObjectFlags ( ) [inherited]

Get all Object Flags (concatenated).

Returns:
Get all object flags in one call. Flags can be concatenated.
void FBComponent::SetObjectFlags ( FBObjectFlag  pFlags ) [inherited]

SetObjectFlags.

Parameters:
pFlags Set flag values. Note: this function overwrites all flags with those passed in parameter.
bool FBComponent::HasObjectFlags ( FBObjectFlag  pFlags ) [inherited]

Check whether a specific object flag is enabled.

Parameters:
pFlags Flags to check if they are present.
Returns:
True if all flags in pFlags are enabled.
void FBComponent::EnableObjectFlags ( FBObjectFlag  pFlags ) [inherited]

Enable a specific Object Flags.

Parameters:
pFlags Flags to enable.
void FBComponent::DisableObjectFlags ( FBObjectFlag  pFlags ) [inherited]

Disable a specific Object Flags.

Parameters:
pFlags Flags to disable.
void FBComponent::SetObjectStatus ( FBObjectStatus  pStatus,
bool  pValue 
) [inherited]

Enable/Disable a specific Object Status.

Parameters:
pStatus Status to change.
pValue Value to change the status to.
bool FBComponent::GetObjectStatus ( FBObjectStatus  pStatus ) [inherited]

Check to see if an object status is enabled.

Parameters:
pStatus Status to query.
bool FBComponent::ProcessNamespaceHierarchy ( FBNamespaceAction  pNamespaceAction,
const char *  pNamespaceName,
const char *  pReplaceTo = NULL,
bool  pAddRight = true 
) [inherited]

ProcessNamespaceHierarchy.

New Namespace name should only contains alphabet, digit and '_', Can't start with digit. This recursive function goes through the whole hierarchy (children) to add/replace the prefix. If you need to work on a single object, use the ProcessObjectPrefix function.

Parameters:
pNamespaceAction Which operation to do on the hierarchy (children).
pNamespaceName The Namespace name on Add/Delete or the prefix to replace in case of replace.
pReplaceTo The new Namespace Name or NULL in case of add or delete.
pAddRight Whether to add the namespace on right-most or left-most side or other namespace.
Returns:
return true if process successful.
bool FBComponent::ProcessObjectNamespace ( FBNamespaceAction  pNamespaceAction,
const char *  pNamespaceName,
const char *  pReplaceTo = NULL,
bool  pAddRight = true 
) [inherited]

ProcessObjectNamespace.

New Namespace name should only contains alphabet, digit and '_', Can't start with digit. This function is the same as ProcessNamespaceHierarchy except that it applies only on the current object and not to the object's children.

Parameters:
pNamespaceAction Which operation to do on the hierarchy (children).
pNamespaceName The Namespace name on Add/Delete or the prefix to replace in case of replace.
pReplaceTo The new Namespace Name or NULL in case of add or delete.
pAddRight Whether to add the namespace on right-most or left-most side or other namespace.
Returns:
return true if process successful.
virtual const char* FBComponent::ClassName ( ) [override, virtual, inherited]

Get the class name.

Returns:
The class name (i.e. "FBComponent").

Reimplemented from FBPlug.

Reimplemented in FBCustomManager.

virtual bool FBComponent::UseCustomPropertyViewSet ( ) const [inline, virtual, inherited]

Use the custom property viewSet or not.

To have custom property view for custom subclass, modification bin/config/propertyview.fbx is required.

Returns:
False if to use internal corresponding object's viewSet of the parent class.

Definition at line 791 of file fbcomponent.h.

{ return true; }
const char* FBComponent::GetFullName ( void  ) [inherited]

Get the full name.

Returns:
the full name of the component.
void FBComponent::SetOwnerNamespace ( FBNamespace pOwnerNSObj ) [inherited]

Set the owner Namespace object.

FBNamespace* FBComponent::GetOwnerNamespace ( void  ) [inherited]

Get the owner Namespace object.

Returns:
the owner Namespace object
FBFileReference* FBComponent::GetOwnerFileReference ( void  ) [inherited]

Get the owner FileReference object.

Returns:
the owner FileReference object
void FBComponent::HardSelect ( ) [inherited]

HardSelect.

Selects the object, and emits a hard select event for UI update notification.

void* FBComponent::operator new ( size_t  stAllocateBlock ) [inherited]
void* FBComponent::operator new ( size_t  stAllocateBlock,
int  blockType,
const char *  filename,
int  linenumber 
) [inherited]
void FBComponent::operator delete ( void *  pvMem ) [inherited]
void FBComponent::RegisterPropertyEvent ( FBPropertyEvent pPropertyEvent ) [inherited]
void FBComponent::UnregisterPropertyEvent ( FBPropertyEvent pPropertyEvent ) [inherited]
void FBComponent::InvalidatePropertyEventsParents ( ) [inherited]
FBComponent::ICallback_Declare ( K_IMPLEMENTATION  ) [inherited]

Reimplemented from FBPlug.

Reimplemented in FBModel, and FBVisualComponent.

virtual bool FBComponent::Is ( int  pTypeId ) [virtual, inherited]

Returns true if object is of type TypeId.

Parameters:
pTypeId TypeId to compare object to.
Returns:
Result of the comparison.

Reimplemented from FBPlug.

Reimplemented in FBCustomManager.

virtual int FBComponent::GetTypeId ( ) [virtual, inherited]

GetTypeId( int pTypeId )

Returns:
The TypeInfo of the object

Reimplemented from FBPlug.

Reimplemented in FBCustomManager.

static void FBComponent::FBComponentSetName ( FBComponent pObject,
const char *  pName 
) [static, inherited]
static const char* FBComponent::FBComponentGetName ( FBComponent pObject ) [static, inherited]
static void FBComponent::FBComponentSetLongName ( FBComponent pObject,
const char *  pName 
) [static, inherited]
static const char* FBComponent::FBComponentGetLongName ( FBComponent pObject ) [static, inherited]
void FBComponent::KObjectEvent ( HIRegister  pView,
HKEventBase  pEvent 
) [inherited]
virtual HIObject FBPlug::GetHIObject ( ) const [virtual, inherited]

Return an internal pointer.

bool FBPlug::IsSDKComponent ( ) [inherited]

Return whether or not item is an SDK component.

bool FBPlug::ConnectSrc ( FBPlug pSrc,
FBConnectionType  pConnectionType = kFBConnectionTypeNone 
) [inherited]

Add a source connection.

Parameters:
pSrc Source plug.
pConnectionType Type of connection, taken from FBConnectionType. Default value should work in all cases.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::ConnectDst ( FBPlug pDst,
FBConnectionType  pConnectionType = kFBConnectionTypeNone 
) [inherited]

Add a destination connection.

Parameters:
pDst Destination plug.
pConnectionType Type of connection, taken from FBConnectionType. Default value should work in all cases.
Returns:
A boolean indicating success (True) or failure (False)
bool FBPlug::ConnectSrcAt ( int  pDst_SrcIndex,
FBPlug pSrc,
FBConnectionType  pConnectionType = kFBConnectionTypeNone 
) [inherited]

Add a source connection.

Parameters:
pDst_SrcIndex Index that tells where to add this source connection in the destination's connection list. if index is out of bound, and this source connection will be appended at the end.
pSrc Source plug.
pConnectionType Type of connection, taken from FBConnectionType. Default value should work in all cases.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::ConnectDstAt ( int  pSrc_DstIndex,
FBPlug pDst,
FBConnectionType  pConnectionType = kFBConnectionTypeNone 
) [inherited]

Add a destination connection.

Parameters:
pSrc_DstIndex Index that tells where to add this destination connection in the source's connection list. if index is out of bound, and this destination connection will be appended at the end.
pDst Destination plug.
pConnectionType Type of connection, taken from FBConnectionType. Default value should work in all cases.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::DisconnectDst ( FBPlug pDst ) [inherited]

Remove a destination connection.

Parameters:
pDst Destination plug.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::DisconnectSrc ( FBPlug pSrc ) [inherited]

Remove a source connection.

Parameters:
pSrc Source plug.
Returns:
A boolean indicating success (True) or failure (False).
void FBPlug::DisconnectAllSrc ( ) [inherited]

Remove all source connections.

void FBPlug::DisconnectAllDst ( ) [inherited]

Remove all destination connections.

bool FBPlug::DisconnectDstAt ( int  pIndex ) [inherited]

Remove a destination connection at a specified index.

Parameters:
pIndex Destination plug index.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::DisconnectSrcAt ( int  pIndex ) [inherited]

Remove a source connection at a specified index.

Parameters:
pIndex Source plug index.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::ReplaceDstAt ( int  pIndex,
FBPlug pDst 
) [inherited]

Replace a destination connection at a specified index.

Parameters:
pIndex Destination plug index.
pDst Plug that will replace the other at index.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::ReplaceSrcAt ( int  pIndex,
FBPlug pSrc 
) [inherited]

Replace a source connection at a specified index.

Parameters:
pIndex Source plug index.
pSrc Plug that will replace the other at index.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::SwapSrc ( int  pIndexA,
int  pIndexB 
) [inherited]

Swap source connection at index A with source connection at index B.

Parameters:
pIndexA Plug index.
pIndexB Other plug index.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::MoveSrcAt ( int  pIndex,
int  pAtIndex 
) [inherited]

Move source connection at pIndex to pAtIndex.

Parameters:
pIndex Plug current index.
pAtIndex Plug new index.
Returns:
A boolean indicating success (True) or failure (False).
Remarks:
This is not like the swap function since the connection at pAtIndex is untouched.
bool FBPlug::MoveSrcAt ( FBPlug pSrc,
FBPlug pAtSrc 
) [inherited]

Move source connection pSrc to the position of pAtSrc.

Parameters:
pSrc Plug.
pAtSrc Plug that mark where we want to insert (will insert before this one).
Returns:
A boolean indicating success (True) or failure (False).
Remarks:
This is not like the swap function since the connection at pAtSrc is untouched.
int FBPlug::GetSrcCount ( ) [inherited]

Get source connection count.

Returns:
Total sources connections count.
FBPlug* FBPlug::GetSrc ( int  pIndex ) [inherited]

Get a source connection's plug at specified index.

Parameters:
pIndex Index of the source connection's plug.
Returns:
Source plug at specified index.
FBConnectionType FBPlug::GetSrcType ( int  pIndex ) [inherited]

Get a source connection's type at specified index.

Parameters:
pIndex Index of the source connection's type.
Returns:
Source connection's type at specified index.
int FBPlug::GetDstCount ( ) [inherited]

Get destination connection count.

Returns:
Total destinations connections count.
FBPlug* FBPlug::GetDst ( int  pIndex ) [inherited]

Get a destination connection's plug at specified index.

Parameters:
pIndex Index of the destination connection's plug.
Returns:
Destination plug at specified index.
FBConnectionType FBPlug::GetDstType ( int  pIndex ) [inherited]

Get a destination connection's type at specified index.

Parameters:
pIndex Index of the destination connection's type.
Returns:
Destination connection's type at specified index.
bool FBPlug::BeginChange ( ) [inherited]

Begins a change on multiple plugs.

Returns:
A boolean indicating success (True) or failure (False).
void FBPlug::EndChange ( ) [inherited]

Ends a change on multiple plugs.

void FBPlug::SetSelfModified ( FBPlugModificationFlag  pFlag,
bool  pBool 
) [inherited]

Set the plug's self modification flag.

Parameters:
pFlag bitwise AND of self modification flags.
pBool true if self changed.
bool FBPlug::GetSelfModified ( FBPlugModificationFlag  pFlag ) [inherited]

Tell if the plug's self has changed.

Parameters:
pFlag bitwise AND of self modification flags.
Returns:
true if self changed
void FBPlug::SetContentModified ( FBPlugModificationFlag  pFlag,
bool  pBool 
) [inherited]

Set the plug's owned property/object's modification flag.

Parameters:
pFlag bitwise AND of content modification flags.
pBool true if content has modification.
bool FBPlug::GetContentModified ( FBPlugModificationFlag  pFlag ) [inherited]

Tell if the plug's content has changed.

Parameters:
pFlag bitwise AND of content modification flags.
Returns:
true if content connection changed.
int FBPlug::GetPlugConnectionModifiedList ( FBPlugList pPlugList,
FBPlugModificationFlag  pConnectionModificatonFlag,
bool  pAddRemove 
) [inherited]

Get plug's modified src/dst property/object connection added/removed List.

Parameters:
pPlugList plug list to fill up.
pConnectionModificatonFlag Src/Dst Property/Object connection modification flag.
pAddRemove Ask for the added list if true, removed list if false.
Returns:
count of list;
bool FBPlug::RevertModification ( FBPlugModificationFlag  pFlag = kFBAllModifiedMask ) [inherited]

Revert the plug's modification to original status.

Parameters:
pFlag the type of modification to be reverted.
Returns:
true if revert successfully.
void FBPlug::SetStatusFlag ( FBPlugStatusFlag  pStatus,
bool  pValue 
) [inherited]

Set the plug's status flag.

Parameters:
pStatus bitwise AND of status flags.
pValue true if status has modification.
bool FBPlug::GetStatusFlag ( FBPlugStatusFlag  pStatus ) const [inherited]

Tell if the plug's status has changed.

Parameters:
pStatus bitwise AND of self modification flags.
Returns:
true if self changed
FBPlug* FBPlug::GetOwner ( ) [inherited]

Get the owner of this plug.

Very useful for properties since they are plugs too.

Returns:
The owner of this plug.
FBPlug* FBPlug::GetOwned ( int  pIndex ) [inherited]

Get the owned plug at specified index.

Parameters:
pIndex Index of the owned plug to get.
Returns:
The owned plug at specified index.
int FBPlug::GetOwnedCount ( ) [inherited]

Get the owned plug count.

Returns:
The owned plug count.
virtual bool FBPlug::PlugDataNotify ( FBConnectionAction  pAction,
FBPlug pThis,
void *  pData = NULL,
void *  pDataOld = NULL,
int  pDataSize = 0 
) [virtual, inherited]

PlugDataNotify when overloaded is equivalent of FBSystem.OnConnectionDataNotify but in the context of the derived object only.

Parameters:
pAction Plug action, the event type.
pThis Plug concerned.
pData Current data, meaning depends of plug action.
pDataOld Previous data, meaning depends of plug action.
pDataSize Size of data.
Returns:
unused should return true
virtual bool FBPlug::PlugStateNotify ( FBConnectionAction  pAction,
FBPlug pThis,
void *  pData = NULL,
void *  pDataOld = NULL,
int  pDataSize = 0 
) [virtual, inherited]

PlugStateNotify when overloaded is equivalent of FBSystem.OnConnectionStateNotify but in the context of the derived object only.

Parameters:
pAction Plug action, the event type.
pThis Plug concerned.
pData Current data, meaning depends of plug action.
pDataOld Previous data, meaning depends of plug action.
pDataSize Size of data.
Returns:
unused should return true except in the case of property rename kFBRename
virtual bool FBPlug::PlugNotify ( FBConnectionAction  pAction,
FBPlug pThis,
int  pIndex,
FBPlug pPlug = NULL,
FBConnectionType  pConnectionType = kFBConnectionTypeNone,
FBPlug pNewPlug = NULL 
) [virtual, inherited]

PlugNotify when overloaded is equivalent of FBSystem.OnConnectionNotify but in the context of the derived object only.

Parameters:
pAction Plug action, the event type.
pThis Plug concerned.
pIndex Index of the plug.
pPlug Other plug concerned.
pConnectionType Connection type between the plugs.
pNewPlug New plug (for the replace event).
Returns:
should by default return true except in the case of connection requests (kFBRequestConnectSrc or kFBRequestConnectDst)
static void FBPlug::PrintClassDefinitions ( ) [static, inherited]

Print out internal Class (ID) Definition table.

For internal debug purpose only.

FBScriptWrapper* FBWrapperHolder::GetWrapper ( ) [inherited]

Return the wrapper interface of this FBObject.

void FBWrapperHolder::AddWrapper ( FBScriptWrapper ) [inherited]
void FBWrapperHolder::RemoveWrapper ( FBScriptWrapper ) [inherited]

Friends And Related Function Documentation

K_DLLIMPORT friend int __FBRegisterTypeInfo ( int  pInternalClassId ) [friend, inherited]

__FBRegisterTypeInfo For internal use only, Register the TypeInfo mapped to internal class id.


Member Data Documentation

Read Write Property: Activate the Contrast option.

Definition at line 791 of file fbshader.h.

Read Write Property: Changes the contrast of the object when it reflects light.

Definition at line 792 of file fbshader.h.

Read Write Property: Activate the Luminosity option.

Definition at line 794 of file fbshader.h.

Read Write Property: Changes the brightness of the object when reflecting light.

Definition at line 795 of file fbshader.h.

Read Write Property: Activate the Specularity option.

Definition at line 797 of file fbshader.h.

Read Write Property: Changes an object's level of shininess when it reflects light by affecting the specular highlight.

Definition at line 798 of file fbshader.h.

FBPropertyAlphaSource FBShaderLighted::Transparency

Read Write Property: Indicates the computation method of the transparency.

Definition at line 800 of file fbshader.h.

Read Write Property: Controls the actual effect of the shader on the object.

At 0.0 it does nothing, and at 1.0 it fully affects the object.

Definition at line 801 of file fbshader.h.

const char* FBShader::ShaderDescription [inherited]

Description.

Definition at line 638 of file fbshader.h.

Read Write Property: Is the shader Enabled

Definition at line 673 of file fbshader.h.

FBPropertyRenderingPass FBShader::RenderingPass [inherited]

Read Write Property: Rendering pass object are shaded in.

Set the property to kFBPassFlat if you want to be called at the first pass, kFBPassPostRender at the second pass, kFBPassFlat | kFBPassPostRender at both. The current pass will be the third argument of ShadeModel()

Definition at line 680 of file fbshader.h.

const char* FBBox::UniqueName [inherited]

internal Unique name.

Definition at line 293 of file fbcore.h.

Read Write Property: Is the box animatable.

Definition at line 299 of file fbcore.h.

Read Write Property: Is live?

Definition at line 300 of file fbcore.h.

Read Write Property: Is recording?

Definition at line 301 of file fbcore.h.

DataFBComponent* FBComponent::mLocalPtr [inherited]

Handle on DataFBComponent.

Reimplemented in FBCustomManager.

Definition at line 650 of file fbcomponent.h.

FBString FBComponent::mName [protected, inherited]

Name of the component.

Definition at line 653 of file fbcomponent.h.

int FBComponent::TypeInfo [static, inherited]

Contains the Type information of the object.

Reimplemented from FBPlug.

Reimplemented in FBCustomManager.

Definition at line 658 of file fbcomponent.h.

Read Only Property: Manages all of the properties for the component.

Definition at line 838 of file fbcomponent.h.

List: List of components.

Reimplemented in FBScene, and FBPropertyInspector.

Definition at line 839 of file fbcomponent.h.

List: Parents.

Definition at line 840 of file fbcomponent.h.

Read Write Property: Selected property.

Definition at line 841 of file fbcomponent.h.

Read Write Property: Unique name of object.

Reimplemented in FBAssetMng, FBConsoleChannel, FBTriggerGroup, FBTrigger, FBMotionClip, and FBTool.

Definition at line 842 of file fbcomponent.h.

Read Write Property: Name and namespace for object.

Definition at line 843 of file fbcomponent.h.

FBPropertyFolder FBComponent::Folder [inherited]

Read Write Property: The folder that contain this component.

Definition at line 846 of file fbcomponent.h.

KObject* FBComponent::mDummyObject [inherited]

Internal Dummy Object for non KObject Components.

Definition at line 871 of file fbcomponent.h.

const char* FBPlug::ClassGroupName [static, inherited]

ClassGroupName of the object.

Definition at line 444 of file fbplug.h.

bool FBPlug::mAllocated [inherited]

Contain the Allocation State of the Component.

Definition at line 450 of file fbplug.h.

int FBPlug::mGlobalTypeInfo [static, protected, inherited]

Represente the Type Index.

Definition at line 500 of file fbplug.h.

HIObject FBPlug::mObject [protected, inherited]

Handle on the Plug.

Definition at line 502 of file fbplug.h.

bool FBPlug::mSDKComponent [protected, inherited]

bool Plug is an SDK component.

Definition at line 503 of file fbplug.h.


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