Open Reality renderer interface. More...
#include <fbrenderer.h>
Public Member Functions | |
FBRenderer (HIObject pObject) | |
Constructor. More... | |
void | SetViewport (int pX, int pY, int pW, int pH) |
Must be called before inputing if the same renderer is used on multiple views/cameras in the same application. More... | |
bool | RenderBegin (int pX, int pY, int pW, int pH) |
RenderBegin. More... | |
bool | RenderEnd (FBView *pView=NULL) |
RenderEnd. More... | |
bool | PreRender (int pLayer=-1) |
PreRenders one frame (needed for some shaders) This functions destroys the frame buffer content and must be called every time a render is called the typical order of call must be Renderer->Prerender // at this point the frame buffer is garbage -Clear the ogl -Do your render functions Renderer->Render. More... | |
bool | Render (int pLayer=-1) |
Renders one frame. More... | |
void | OGLSetupSceneLights (FBRenderOptions &pRenderOptions) |
Setup the scene lights in OpenGL. More... | |
void | OGLModelDisplay (FBRenderOptions &pRenderOptions, FBModel &pModel) |
bool | SetViewingOptions (FBViewingOptions &pOptions) |
Set the viewing options. More... | |
FBViewingOptions * | GetViewingOptions () |
Obtain the current viewing options. More... | |
bool | FrameCurrentCameraWithModels (bool pAll) |
Frame the current camera either with all models or with the currently selected models. More... | |
void | ArrangeSelectedObjectsInSchematic () |
Request to arrange selected objects in schematic view . More... | |
bool | ArrangeObjectsInSchematicFromModel (const FBModel &pModel) |
Request to arrange a node's tree in the Schematic View, given a starting node. More... | |
void | ArrangeAllInSchematic (FBArrangeMode pMode) |
Request to arrange all objects in schematic view . More... | |
bool | GetSchematicNodesBoundingBox (bool pConsiderCollapsedNodes, int &pTop, int &pLeft, int &pBottom, int &pRight) |
Returns the bounding box (top, left, bottom, right) used by all the Schematic View nodes. More... | |
bool | GetSchematicNodesBoundingBoxFromModel (FBModel *pModel, bool pConsiderCollapsedNodes, int &pTop, int &pLeft, int &pBottom, int &pRight) |
Returns the bounding box (top, left, bottom, right) of a node's tree in the Schematic View, given a starting node. More... | |
FBStringList | GetSchematicBookmarkNames () const |
Return the bookmark names available in the Schematic View. More... | |
const char * | GetCurrentSchematicBookmarkName () const |
Return the current bookmark name used by the Schematic View. More... | |
bool | IsCurrentSchematicBookmarkDirty () const |
Return if the current bookmark used by the Schematic View is dirty or not. More... | |
bool | CreateSchematicBookmark (const char *pBookmarkName) |
Create a new bookmark in the Schematic View. More... | |
bool | DeleteSchematicBookmark (const char *pBookmarkName) |
Delete a bookmark from the Schematic View. More... | |
bool | RenameSchematicBookmark (const char *pOldBookmarkName, const char *pNewBookmarkName) |
Rename a bookmark in the Schematic View. More... | |
bool | SelectSchematicBookmark (const char *pBookmarkName) |
Select an existing bookmark in the Schematic View and use it as the current bookmark. More... | |
bool | UpdateCurrentSchematicBookmark () |
Update the current bookmark in the Schematic View. More... | |
bool | MouseInput (int pX, int pY, FBInputType pInputType, int pButtonKey, FBInputModifier pModifier, int pWheelDeltaValue=0, int pLayer=-1) |
Mouse input. More... | |
bool | MouseInputNormalized (float pX, float pY, FBInputType pInputType, int pButtonKey, FBInputModifier pModifier, int pWheelDeltaValue, int pLayer=-1, int pPaneId=-1) |
Mouse input. More... | |
bool | Pick (int pX, int pY, FBPickInfosList &pPickInfosList, bool pNeedIntersectPosition=false) |
Object picking selection. More... | |
bool | PickNormalized (float pX, float pY, FBPickInfosList &pPickInfosList, bool pNeedIntersectPosition=false, int pPaneId=-1) |
Object picking selection. More... | |
bool | RectPick (int pX1, int pY1, int pX2, int pY2, FBPickInfosList &pPickInfosList) |
Object rectangle selection. More... | |
bool | RectPickNormalized (float pX1, float pY1, float pX2, float pY2, FBPickInfosList &pPickInfosList, int pPaneId=-1) |
Object rectangle selection. More... | |
int | GetLastPickInfoList (FBPickInfosList &pPickInfosList) |
Return the last picking info list in the current view pane. More... | |
void | KeyboardInput (FBDeviceKeyboardKey pKeyIndex, bool pKeyState, bool pIsTrigger=false) |
Keyboard input. More... | |
FBModel * | GetDisplayableGeometry (int pIndex) |
Get the displayable geometry model. More... | |
FBLight * | GetDisplayableLight (int pIndex) |
Get the displayable light. More... | |
const FBModelList & | GetDisplayableGeometryInCameraFrustum (FBModelList *pModelList=NULL, FBCamera *pCamera=NULL) |
Get a list of displayable geometry inside given camera's frustum. More... | |
bool | IsModelInsideCameraFrustum (FBModel *pGeometry, FBCamera *pCamera=NULL) |
To tell if given model is located inside camera's frustum. More... | |
int | GetViewerTextureId () |
Viewer texture Id. More... | |
void | CloneViewAdd (FBView *pView) |
Add a new clone view to call when rendering main viewer. More... | |
void | CloneViewRemove (FBView *pView) |
Remove a new clone view to call when rendering main viewer. More... | |
void | CloneViewRender (int pWidth, int pHeight) |
Viewer texture Id. More... | |
void | SetCameraInPane (FBCamera *pCamera, unsigned int pPaneIndex) |
Set the camera to display in the given pane index. More... | |
FBCamera * | GetCameraInPane (unsigned int pPaneIndex) |
Return the camera displayed in the given pane index. More... | |
void | SetPaneCount (unsigned int pPaneCount) |
Set the number of panes to display in the viewer's layout. More... | |
unsigned int | GetPaneCount () |
Return the number of panes displayed in the viewer's layout. More... | |
bool | SetSelectedPaneIndex (unsigned int pPaneIndex) |
Select the pane associated with the given pane index in the active viewer's layout. More... | |
unsigned int | GetSelectedPaneIndex () const |
Return the pane index associated with the selected pane in the active viewer's layout. More... | |
void | SetSchematicViewInPane (unsigned int pPaneIndex, bool pActive) |
Set/Remove the Schematic View in the given pane index. More... | |
int | GetSchematicViewPaneIndex () |
Return the pane index of the pane displaying the Schematic View. More... | |
void | SetCameraSwitcherInPane (unsigned int pPaneIndex, bool pActive) |
Set/Remove the Camera Switcher in the given pane index. More... | |
bool | IsCameraSwitcherInPane (unsigned int pPaneIndex) |
Return the Camera Switcher activeness in the given pane index. More... | |
![]() | |
FBComponent (HIObject pObject) | |
Constructor. More... | |
virtual | ~FBComponent () |
Destructor. More... | |
virtual bool | FBCreate () |
Open Reality Creation function. More... | |
virtual void | FBDestroy () |
Open Reality destruction function. More... | |
virtual void | FBDelete () override |
Open Reality deletion function. More... | |
virtual bool | SetHIObject (HIObject pObject, bool pSDKComponent) override |
Assign component to an internal pointer. More... | |
virtual int | PropertyAdd (FBProperty *pProperty) |
Add a property to the component's property manager. More... | |
bool | PropertyAddReferenceProperty (FBProperty *pReferenceProperty) |
Add a reference property to the component's property manager. More... | |
void | PropertyRemove (FBProperty *pProperty) |
Remove a Property from the component's Property manager. More... | |
void | PropertyGetModifiedList (FBArrayTemplate< FBProperty * > &pPropList, FBPlugModificationFlag pModificationFlags) |
Get list of properties which have been modified since last loading. More... | |
FBProperty * | PropertyCreate (const char *pName, FBPropertyType pType, const char *pDataType, bool pAnimatable, bool pIsUser=false, FBProperty *pReferenceSource=NULL) |
Create user or dynamic property. More... | |
FBObjectFlag | GetObjectFlags () |
Get all Object Flags (concatenated). More... | |
void | SetObjectFlags (FBObjectFlag pFlags) |
SetObjectFlags. More... | |
bool | HasObjectFlags (FBObjectFlag pFlags) |
Check whether a specific object flag is enabled. More... | |
void | EnableObjectFlags (FBObjectFlag pFlags) |
Enable a specific Object Flags. More... | |
void | DisableObjectFlags (FBObjectFlag pFlags) |
Disable a specific Object Flags. More... | |
void | SetObjectStatus (FBObjectStatus pStatus, bool pValue) |
Enable/Disable a specific Object Status. More... | |
bool | GetObjectStatus (FBObjectStatus pStatus) |
Check to see if an object status is enabled. More... | |
bool | ProcessNamespaceHierarchy (FBNamespaceAction pNamespaceAction, const char *pNamespaceName, const char *pReplaceTo=NULL, bool pAddRight=true) |
ProcessNamespaceHierarchy. More... | |
bool | ProcessObjectNamespace (FBNamespaceAction pNamespaceAction, const char *pNamespaceName, const char *pReplaceTo=NULL, bool pAddRight=true) |
ProcessObjectNamespace. More... | |
virtual const char * | ClassName () override |
Get the class name. More... | |
virtual bool | UseCustomPropertyViewSet () const |
Use the custom property viewSet or not. More... | |
const char * | GetFullName (void) |
Get the full name. More... | |
void | SetOwnerNamespace (FBNamespace *pOwnerNSObj) |
Set the owner Namespace object. More... | |
FBNamespace * | GetOwnerNamespace (void) |
Get the owner Namespace object. More... | |
FBFileReference * | GetOwnerFileReference (void) |
Get the owner FileReference object. More... | |
void | HardSelect () |
HardSelect. More... | |
virtual bool | Is (int pTypeId) override |
Returns true if object is of type TypeId. More... | |
virtual int | GetTypeId () override |
GetTypeId( int pTypeId ) More... | |
![]() | |
FBScriptWrapper * | GetWrapper () |
Return the wrapper interface of this FBObject. More... | |
void | AddWrapper (FBScriptWrapper *) |
void | RemoveWrapper (FBScriptWrapper *) |
Public Attributes | |
FBPropertyCamera | CurrentCamera |
FBPropertyBool | UseCameraSwitcher |
FBPropertyManipulatorTransform | ManipulatorTransform |
Read Only Property: Manipulator responsible of moving objects More... | |
FBPropertyListManipulator | Manipulators |
List: of manipulators. More... | |
FBPropertyScene | Scene |
Read Write Property: Scene that the renderer will use/draw More... | |
FBPropertyBool | AutoEvaluate |
Read Write Property: Indicate if a call to RenderBegin will also cause a re-evaluation of the scene. More... | |
FBPropertyBool | EvaluateMode |
Read Write Property: When true (default), call to Render will perform evaluation. Useful when rendering and evaluation needs to be decoupled. More... | |
FBPropertyBool | Background |
Read Write Property: The renderer. More... | |
FBPropertyBool | ShowStats |
Read Write Property: Show the stats about FPS, Evaluation rate ... like when using Shift-F in main viewer. More... | |
FBPropertyBool | FrustumCulling |
Read Write Property: Turn on/off the early frustum culling optimization. More... | |
FBPropertyBool | DisplayNormals |
Read Write Property: Display model normals in main viewer. More... | |
FBPropertyBool | PickingEnabled |
Read Write Property: Is picking in the viewer enabled? More... | |
FBPropertyBool | IDBufferPicking |
Read write Property: Use ID (Color) Buffer for picking, instead of OpenGl selection buffer picking. More... | |
FBPropertyDouble | IDBufferPickingAlpha |
Read write Property: Those Semi-transparent (Alpha Blend) geometry(region) contribute less than this threshold, will be considered as invisible during ID picking. More... | |
FBPropertyBool | IDBufferDisplay |
Read write Property: Render Model's unique Color ID into color Buffer (used for picking) More... | |
FBPropertyBool | SelectionOverride |
Read write Property: Add transparent color override layer on selected models if true. More... | |
FBPropertyDouble | SelectionOverrideTransparency |
Read write Property: Selection override layer transparency. More... | |
FBPropertyColor | SelectionOverrideColor |
Read write Property: Selection override layer color. More... | |
FBPropertyBool | SelectionForceSnapPointsDisplay |
Read write Property: Force show all feature points (pivots and etc) on selected models if true, ignore individual model's settings. More... | |
FBPropertyInt | DisplaySetUpdateId |
Read Only Property: Current DisplaySet Update Id. Add/Delete models, Show/Hide models will affect DisplaySet. More... | |
FBPropertyInt | RendererUpdateId |
Read Only Property: Current Render Update Id. DisplaySet update, material change, texture changes and shader change and other operations will trigger Renderer update. More... | |
FBPropertyInt | DisplayableGeometryCount |
Read Only Property: Displayable geometry count. More... | |
FBPropertyInt | DisplayableLightCount |
Read Only Property: Displayable light count. More... | |
FBPropertyListRendererCallback | RendererCallbacks |
List: Renderer Callbacks attached. More... | |
FBPropertyInt | RegisteredCallbackCount |
Read Only Property: Registered Renderer Callback Count. More... | |
FBPropertyInt | CurrentPaneCallbackIndex |
Read Write Property: Current Pane's Renderer Callback Index. More... | |
FBPropertyInt | CurrentPaneCallbackPrefIndex |
Read Write Property: Current Pane's Renderer Callback Preference Index. More... | |
FBPropertyBool | HideManipulatorsOnManip |
Read Write Property: Hide manipulators UI elements while manipulating. More... | |
FBPropertyBool | HideManipulatorsOnPlayback |
Read Write Property: Hide manipulators UI elements during playback. More... | |
FBPropertyBool | AdvancedMaterialMode |
Read write Property: Turn on/off advanced material setting UI widgets. More... | |
FBPropertyBool | AdvancedLightingMode |
Read write Property: Turn on/off advanced lighting setting UI widgets. More... | |
![]() | |
FBPropertyManager | PropertyList |
Read Only Property: Manages all of the properties for the component. More... | |
FBPropertyListComponent | Components |
List: List of components. More... | |
FBPropertyListComponent | Parents |
List: Parents. More... | |
FBPropertyBool | Selected |
Read Write Property: Selected property. More... | |
FBPropertyString | Name |
Read Write Property: Unique name of object. More... | |
FBPropertyString | LongName |
Read Write Property: Name and namespace for object. More... | |
FBPropertyFolder | Folder |
Read Write Property: The folder that contain this component. More... | |
Additional Inherited Members | |
![]() | |
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 int | TypeInfo |
Contains the Type information of the object. More... | |
![]() | |
bool | IsSDKComponent () |
Return whether or not item is an SDK component. More... | |
bool | ConnectSrc (FBPlug *pSrc, FBConnectionType pConnectionType=kFBConnectionTypeNone) |
Add a source connection. More... | |
bool | ConnectDst (FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone) |
Add a destination connection. More... | |
bool | ConnectSrcAt (int pDst_SrcIndex, FBPlug *pSrc, FBConnectionType pConnectionType=kFBConnectionTypeNone) |
Add a source connection. More... | |
bool | ConnectDstAt (int pSrc_DstIndex, FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone) |
Add a destination connection. More... | |
bool | DisconnectDst (FBPlug *pDst) |
Remove a destination connection. More... | |
bool | DisconnectSrc (FBPlug *pSrc) |
Remove a source connection. More... | |
void | DisconnectAllSrc () |
Remove all source connections. More... | |
void | DisconnectAllDst () |
Remove all destination connections. More... | |
bool | DisconnectDstAt (int pIndex) |
Remove a destination connection at a specified index. More... | |
bool | DisconnectSrcAt (int pIndex) |
Remove a source connection at a specified index. More... | |
bool | ReplaceDstAt (int pIndex, FBPlug *pDst) |
Replace a destination connection at a specified index. More... | |
bool | ReplaceSrcAt (int pIndex, FBPlug *pSrc) |
Replace a source connection at a specified index. More... | |
bool | SwapSrc (int pIndexA, int pIndexB) |
Swap source connection at index A with source connection at index B. More... | |
bool | MoveSrcAt (int pIndex, int pAtIndex) |
Move source connection at pIndex to pAtIndex. More... | |
bool | MoveSrcAt (FBPlug *pSrc, FBPlug *pAtSrc) |
Move source connection pSrc to the position of pAtSrc. More... | |
int | GetSrcCount () |
Get source connection count. More... | |
FBPlug * | GetSrc (int pIndex) |
Get a source connection's plug at specified index. More... | |
FBConnectionType | GetSrcType (int pIndex) |
Get a source connection's type at specified index. More... | |
int | GetDstCount () |
Get destination connection count. More... | |
FBPlug * | GetDst (int pIndex) |
Get a destination connection's plug at specified index. More... | |
FBConnectionType | GetDstType (int pIndex) |
Get a destination connection's type at specified index. More... | |
bool | BeginChange () |
Begins a change on multiple plugs. More... | |
void | EndChange () |
Ends a change on multiple plugs. More... | |
void | SetSelfModified (FBPlugModificationFlag pFlag, bool pBool) |
Set the plug's self modification flag. More... | |
bool | GetSelfModified (FBPlugModificationFlag pFlag) |
Tell if the plug's self has changed. More... | |
void | SetContentModified (FBPlugModificationFlag pFlag, bool pBool) |
Set the plug's owned property/object's modification flag. More... | |
bool | GetContentModified (FBPlugModificationFlag pFlag) |
Tell if the plug's content has changed. More... | |
int | GetPlugConnectionModifiedList (FBPlugList &pPlugList, FBPlugModificationFlag pConnectionModificatonFlag, bool pAddRemove) |
Get plug's modified src/dst property/object connection added/removed List. More... | |
bool | RevertModification (FBPlugModificationFlag pFlag=kFBAllModifiedMask) |
Revert the plug's modification to original status. More... | |
void | SetStatusFlag (FBPlugStatusFlag pStatus, bool pValue) |
Set the plug's status flag. More... | |
bool | GetStatusFlag (FBPlugStatusFlag pStatus) const |
Tell if the plug's status has changed. More... | |
FBPlug * | GetOwner () |
Get the owner of this plug. More... | |
FBPlug * | GetOwned (int pIndex) |
Get the owned plug at specified index. More... | |
int | GetOwnedCount () |
Get the owned plug count. More... | |
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. More... | |
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. More... | |
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. More... | |
![]() | |
static int | GetInternalClassId () |
Internal class Id. More... | |
![]() | |
bool | mAllocated |
Contain the Allocation State of the Component. More... | |
HIObject | mObject |
Handle on the Plug. More... | |
bool | mSDKComponent |
bool Plug is an SDK component. More... | |
![]() | |
static const char * | ClassGroupName |
ClassGroupName of the object. More... | |
static int | TypeInfo |
TypeInfo. More... | |
static int | mGlobalTypeInfo |
Represente the Type Index. More... | |
Open Reality renderer interface.
Definition at line 445 of file fbrenderer.h.
FBRenderer | ( | HIObject | pObject | ) |
void ArrangeAllInSchematic | ( | FBArrangeMode | pMode | ) |
Request to arrange all objects in schematic view .
pMode | Arrange mode. |
bool ArrangeObjectsInSchematicFromModel | ( | const FBModel & | pModel | ) |
Request to arrange a node's tree in the Schematic View, given a starting node.
pModel | The starting node from which the arrange operation is requested. |
void ArrangeSelectedObjectsInSchematic | ( | ) |
Request to arrange selected objects in schematic view .
void CloneViewAdd | ( | FBView * | pView | ) |
Add a new clone view to call when rendering main viewer.
pView | View to be called for expose. |
void CloneViewRemove | ( | FBView * | pView | ) |
Remove a new clone view to call when rendering main viewer.
pView | View to be called for expose. |
void CloneViewRender | ( | int | pWidth, |
int | pHeight | ||
) |
Viewer texture Id.
This function starts/stop rendering to an additional buffer which can be accessed with GetViewerTextureId() without the need to turn VideoOut Online.
pState | Set On/Off texture viewer generation. If false, GetViewerTextureId() will not return a valid texture. |
bool CreateSchematicBookmark | ( | const char * | pBookmarkName | ) |
Create a new bookmark in the Schematic View.
pBookmarkName | The new bookmark name. |
bool DeleteSchematicBookmark | ( | const char * | pBookmarkName | ) |
Delete a bookmark from the Schematic View.
pBookmarkName | The bookmark name to delete. |
bool FrameCurrentCameraWithModels | ( | bool | pAll | ) |
Frame the current camera either with all models or with the currently selected models.
pAll | true to frame with all models. |
FBCamera* GetCameraInPane | ( | unsigned int | pPaneIndex | ) |
Return the camera displayed in the given pane index.
If the Schematic View is displayed in the pane associated with the given pane index, the returned camera is the camera that would be displayed if the Schematic View was deactivated. If the Camera Switcher is on in the pane associated with the given pane index, the returned camera is the switcher's current camera.
Note: To operate current camera in Camera Switcher, it is recommended to use FBCameraSwitcher().
pPaneIndex | The pane index. |
const char* GetCurrentSchematicBookmarkName | ( | ) | const |
Return the current bookmark name used by the Schematic View.
FBModel* GetDisplayableGeometry | ( | int | pIndex | ) |
Get the displayable geometry model.
Those geometry models which have Show property ON are considered as "displayable".
pIndex | displayable geometry model index to query. |
const FBModelList& GetDisplayableGeometryInCameraFrustum | ( | FBModelList * | pModelList = NULL , |
FBCamera * | pCamera = NULL |
||
) |
Get a list of displayable geometry inside given camera's frustum.
This function will return conservative result. It's possible for some geometry outside of the frustum will be considered to be visible, but it will not skip any real visible geometry. This function should only be called in the main rendering thread.
pModelList | ModelList holding the return models. |
pCamera | use current camera if NULL. |
FBLight* GetDisplayableLight | ( | int | pIndex | ) |
Get the displayable light.
Those light models which have Show property ON are considered as "displayable".
pIndex | displayable light index to query. |
int GetLastPickInfoList | ( | FBPickInfosList & | pPickInfosList | ) |
Return the last picking info list in the current view pane.
pPickInfosList | The list of pick infos. |
unsigned int GetPaneCount | ( | ) |
Return the number of panes displayed in the viewer's layout.
FBStringList GetSchematicBookmarkNames | ( | ) | const |
Return the bookmark names available in the Schematic View.
bool GetSchematicNodesBoundingBox | ( | bool | pConsiderCollapsedNodes, |
int & | pTop, | ||
int & | pLeft, | ||
int & | pBottom, | ||
int & | pRight | ||
) |
Returns the bounding box (top, left, bottom, right) used by all the Schematic View nodes.
pConsiderCollapsedNodes | True to also consider nodes which are not visible because collapsed, false otherwise. |
pTop | Top value of the bounding box. Will be filled once the method returns. |
pLeft | Left value of the bounding box. Will be filled once the method returns. |
pBottom | Bottom value of the bounding box. Will be filled once the method returns. |
pRight | Right value of the bounding box. Will be filled once the method returns. |
bool GetSchematicNodesBoundingBoxFromModel | ( | FBModel * | pModel, |
bool | pConsiderCollapsedNodes, | ||
int & | pTop, | ||
int & | pLeft, | ||
int & | pBottom, | ||
int & | pRight | ||
) |
Returns the bounding box (top, left, bottom, right) of a node's tree in the Schematic View, given a starting node.
pModel | The starting node from which the bounding box tree is requested. |
pConsiderCollapsedNodes | True to also consider nodes which are not visible because collapsed, false otherwise. |
pTop | Top value of the bounding box. Will be filled once the method returns. |
pLeft | Left value of the bounding box. Will be filled once the method returns. |
pBottom | Bottom value of the bounding box. Will be filled once the method returns. |
pRight | Right value of the bounding box. Will be filled once the method returns. |
int GetSchematicViewPaneIndex | ( | ) |
Return the pane index of the pane displaying the Schematic View.
unsigned int GetSelectedPaneIndex | ( | ) | const |
Return the pane index associated with the selected pane in the active viewer's layout.
int GetViewerTextureId | ( | ) |
Viewer texture Id.
This function is returning the texture Id of the viewer pane and also making sure the opengl context is current
FBViewingOptions* GetViewingOptions | ( | ) |
Obtain the current viewing options.
bool IsCameraSwitcherInPane | ( | unsigned int | pPaneIndex | ) |
Return the Camera Switcher activeness in the given pane index.
If the Schematic View is displayed in the pane associated with the given pane index, the returned value is the value that would be returned if the Schematic View was deactivated.
pPaneIndex | The pane index. |
bool IsCurrentSchematicBookmarkDirty | ( | ) | const |
Return if the current bookmark used by the Schematic View is dirty or not.
To tell if given model is located inside camera's frustum.
This function will return conservative result. It's possible for some geometry outside of the frustum will be considered to be visible, but it will not skip any real visible geometry. This function should only be called in the main rendering thread.
pGeometry | the geometry to be queried. |
pCamera | use current camera if NULL. |
void KeyboardInput | ( | FBDeviceKeyboardKey | pKeyIndex, |
bool | pKeyState, | ||
bool | pIsTrigger = false |
||
) |
Keyboard input.
pKeyIndex | Key index. (See "enum FBDeviceKeyboardKey" above for supported keys) |
pKeyState | Key state. (True == key is down, False == key is up) |
pIsTrigger | When setting pKeyState to True, resets key state to False right after operation. |
bool MouseInput | ( | int | pX, |
int | pY, | ||
FBInputType | pInputType, | ||
int | pButtonKey, | ||
FBInputModifier | pModifier, | ||
int | pWheelDeltaValue = 0 , |
||
int | pLayer = -1 |
||
) |
Mouse input.
pX | X position. |
pY | Y position. |
pInputType | Type of input. |
pButtonKey | Button/Key pressed. |
pModifier | Modifier pressed (CTRL/ALT/SHIFT). |
pWheelDeltaValue | Mouse wheel delta value |
pLayer | Rendering layer ID(default=-1). |
bool MouseInputNormalized | ( | float | pX, |
float | pY, | ||
FBInputType | pInputType, | ||
int | pButtonKey, | ||
FBInputModifier | pModifier, | ||
int | pWheelDeltaValue, | ||
int | pLayer = -1 , |
||
int | pPaneId = -1 |
||
) |
Mouse input.
pX | X position, normalized to the range of [0, 1] in the view port dimension. |
pY | Y position, normalized to the range of [0, 1] in the view port dimension. |
pInputType | Type of input. |
pButtonKey | Button/Key pressed. |
pModifier | Modifier pressed (CTRL/ALT/SHIFT). |
pWheelDeltaValue | Mouse wheel delta value |
pLayer | Rendering layer ID(default=-1). |
pPaneId | specify which pane's dimension used for normalization, default (-1) for the whole viewer. |
void OGLSetupSceneLights | ( | FBRenderOptions & | pRenderOptions | ) |
Setup the scene lights in OpenGL.
pRenderOptions | See FBRenderOptions for more detail. |
bool Pick | ( | int | pX, |
int | pY, | ||
FBPickInfosList & | pPickInfosList, | ||
bool | pNeedIntersectPosition = false |
||
) |
Object picking selection.
pX | X position. |
pY | Y position. |
pPickInfosList | The list of pick infos. |
pNeedIntersectPosition | require valid intersection position if true, this will take more time to process, and not reliable with very dense mesh. |
bool PickNormalized | ( | float | pX, |
float | pY, | ||
FBPickInfosList & | pPickInfosList, | ||
bool | pNeedIntersectPosition = false , |
||
int | pPaneId = -1 |
||
) |
Object picking selection.
pX | X position, normalized to the range of [0, 1] in the view port dimension. |
pY | Y position, normalized to the range of [0, 1] in the view port dimension. |
pPickInfosList | The list of pick infos. |
pNeedIntersectPosition | require valid intersection position if true, this will take more time to process, and not reliable with very dense mesh. |
pPaneId | specify which pane's dimension used for normalization, default (-1) for the whole viewer. |
bool PreRender | ( | int | pLayer = -1 | ) |
PreRenders one frame (needed for some shaders) This functions destroys the frame buffer content and must be called every time a render is called the typical order of call must be Renderer->Prerender // at this point the frame buffer is garbage -Clear the ogl -Do your render functions Renderer->Render.
pLayer | Rendering layer ID(default=-1). |
bool RectPick | ( | int | pX1, |
int | pY1, | ||
int | pX2, | ||
int | pY2, | ||
FBPickInfosList & | pPickInfosList | ||
) |
Object rectangle selection.
pX1 | Left upper corner X position. |
pY1 | Left upper corner y position. |
pX2 | Right bottom corner X position. |
pY2 | Right bottom corner y position. |
pPickInfosList | The list of pick infos. |
bool RectPickNormalized | ( | float | pX1, |
float | pY1, | ||
float | pX2, | ||
float | pY2, | ||
FBPickInfosList & | pPickInfosList, | ||
int | pPaneId = -1 |
||
) |
Object rectangle selection.
pX1 | Left upper corner X position, normalized to the range of [0, 1] in the viewport dimension. |
pY1 | Left upper corner y position, normalized to the range of [0, 1] in the viewport dimension. |
pX2 | Right bottom corner X position, normalized to the range of [0, 1] in the viewport dimension. |
pY2 | Right bottom corner y position, normalized to the range of [0, 1] in the viewport dimension. |
pPickInfosList | The list of pick infos. |
pPaneId | specify which pane's dimension used for normalization, default (-1) for the whole viewer. |
bool RenameSchematicBookmark | ( | const char * | pOldBookmarkName, |
const char * | pNewBookmarkName | ||
) |
Rename a bookmark in the Schematic View.
pOldBookmarkName | The bookmark name to rename. |
pNewBookmarkName | The new bookmark name. |
bool Render | ( | int | pLayer = -1 | ) |
Renders one frame.
pLayer | Rendering layer ID(default=-1). |
bool RenderBegin | ( | int | pX, |
int | pY, | ||
int | pW, | ||
int | pH | ||
) |
RenderBegin.
pX | X position where to render. |
pY | Y position where to render. |
pW | Width of render area. |
pH | Hight of render area. |
must be called before rendering can happen
bool RenderEnd | ( | FBView * | pView = NULL | ) |
RenderEnd.
pView | If you want the renderer to draw artifacts, such as TimeCode, CameraLabel or SafeArea, you must provide the FBView on which the renderer draws on. |
bool SelectSchematicBookmark | ( | const char * | pBookmarkName | ) |
Select an existing bookmark in the Schematic View and use it as the current bookmark.
pBookmarkName | The bookmark name to select. |
void SetCameraInPane | ( | FBCamera * | pCamera, |
unsigned int | pPaneIndex | ||
) |
Set the camera to display in the given pane index.
If the Schematic View is displayed in the pane associated with the given pane index, the camera will be displayed when the Schematic View will be deactivated from this pane.
Note: If current pane uses Camera Switcher, it will be set to use Camera, rather than old behavior that still uses Camera Switcher and sets Camera to be Camera Switcher's current camera, which introduce a Zombie Camera Switcher problem. By using Camera, the problem is gone.
Note: To operate current camera in Camera Switcher, it is recommended to use FBCameraSwitcher().
pCamera | The camera to set. |
pPaneIndex | The pane index. |
void SetCameraSwitcherInPane | ( | unsigned int | pPaneIndex, |
bool | pActive | ||
) |
Set/Remove the Camera Switcher in the given pane index.
To specify which camera the Camera Switcher should be displaying, use the SetCameraInPane method. If the Schematic View is displayed in the pane associated with the given pane index, the camera switcher will be displayed (if activated) when the Schematic View will be deactivated from this pane.
pPaneIndex | The pane index. |
pActive | True to activate the Camera Switcher in the given pane, False to remove it. |
void SetPaneCount | ( | unsigned int | pPaneCount | ) |
Set the number of panes to display in the viewer's layout.
pPaneCount | The number of panes to display. |
void SetSchematicViewInPane | ( | unsigned int | pPaneIndex, |
bool | pActive | ||
) |
Set/Remove the Schematic View in the given pane index.
When activating the Schematic View in the pane, if the Schematic View is already activated in another pane, the Schematic View will be removed from latter before being activated into the new pane.
pPaneIndex | The pane index. |
pActive | True to activate the Schematic View in the given pane, False to remove it. |
bool SetSelectedPaneIndex | ( | unsigned int | pPaneIndex | ) |
Select the pane associated with the given pane index in the active viewer's layout.
pPaneIndex | The pane index. |
bool SetViewingOptions | ( | FBViewingOptions & | pOptions | ) |
Set the viewing options.
pOptions | See FBViewingOptions for more detail. |
void SetViewport | ( | int | pX, |
int | pY, | ||
int | pW, | ||
int | pH | ||
) |
Must be called before inputing if the same renderer is used on multiple views/cameras in the same application.
pX | X position where to render. |
pY | Y position where to render. |
pW | Width of render area. |
pH | Hight of render area. |
bool UpdateCurrentSchematicBookmark | ( | ) |
Update the current bookmark in the Schematic View.
FBPropertyBool AdvancedLightingMode |
Read write Property: Turn on/off advanced lighting setting UI widgets.
Include UI widgets for various advanced lighting setting, includes: Light: area light, spot light inner/outer angles, barndoors and etc.,; Model: PrimaryVisibility, CastsShadows and ReceiveShadows.
MoBu default render doesn't utilize those advanced lighting properties, they're provided for pipeline interop and custom plugin development purpose. This property must been set to be true before creating any scene light or model objects to allow UI widgets display properly.
it's equivalent to the config item "AdvancedLightingUISetting" at [Rendering] section"
Definition at line 776 of file fbrenderer.h.
FBPropertyBool AdvancedMaterialMode |
Read write Property: Turn on/off advanced material setting UI widgets.
Definition at line 763 of file fbrenderer.h.
FBPropertyBool AutoEvaluate |
Read Write Property: Indicate if a call to RenderBegin will also cause a re-evaluation of the scene.
Definition at line 735 of file fbrenderer.h.
FBPropertyBool Background |
Read Write Property: The renderer.
Definition at line 737 of file fbrenderer.h.
FBPropertyCamera CurrentCamera |
Definition at line 726 of file fbrenderer.h.
FBPropertyInt CurrentPaneCallbackIndex |
Read Write Property: Current Pane's Renderer Callback Index.
Definition at line 755 of file fbrenderer.h.
FBPropertyInt CurrentPaneCallbackPrefIndex |
Read Write Property: Current Pane's Renderer Callback Preference Index.
Definition at line 756 of file fbrenderer.h.
FBPropertyInt DisplayableGeometryCount |
Read Only Property: Displayable geometry count.
Definition at line 751 of file fbrenderer.h.
FBPropertyInt DisplayableLightCount |
Read Only Property: Displayable light count.
Definition at line 752 of file fbrenderer.h.
FBPropertyBool DisplayNormals |
Read Write Property: Display model normals in main viewer.
Definition at line 740 of file fbrenderer.h.
FBPropertyInt DisplaySetUpdateId |
Read Only Property: Current DisplaySet Update Id. Add/Delete models, Show/Hide models will affect DisplaySet.
Definition at line 749 of file fbrenderer.h.
FBPropertyBool EvaluateMode |
Read Write Property: When true (default), call to Render will perform evaluation. Useful when rendering and evaluation needs to be decoupled.
Definition at line 736 of file fbrenderer.h.
FBPropertyBool FrustumCulling |
Read Write Property: Turn on/off the early frustum culling optimization.
Definition at line 739 of file fbrenderer.h.
FBPropertyBool HideManipulatorsOnManip |
Read Write Property: Hide manipulators UI elements while manipulating.
Definition at line 757 of file fbrenderer.h.
FBPropertyBool HideManipulatorsOnPlayback |
Read Write Property: Hide manipulators UI elements during playback.
Definition at line 758 of file fbrenderer.h.
FBPropertyBool IDBufferDisplay |
Read write Property: Render Model's unique Color ID into color Buffer (used for picking)
Definition at line 744 of file fbrenderer.h.
FBPropertyBool IDBufferPicking |
Read write Property: Use ID (Color) Buffer for picking, instead of OpenGl selection buffer picking.
Definition at line 742 of file fbrenderer.h.
FBPropertyDouble IDBufferPickingAlpha |
Read write Property: Those Semi-transparent (Alpha Blend) geometry(region) contribute less than this threshold, will be considered as invisible during ID picking.
Definition at line 743 of file fbrenderer.h.
FBPropertyListManipulator Manipulators |
List: of manipulators.
Definition at line 731 of file fbrenderer.h.
FBPropertyManipulatorTransform ManipulatorTransform |
Read Only Property: Manipulator responsible of moving objects
Definition at line 730 of file fbrenderer.h.
FBPropertyBool PickingEnabled |
Read Write Property: Is picking in the viewer enabled?
Definition at line 741 of file fbrenderer.h.
FBPropertyInt RegisteredCallbackCount |
Read Only Property: Registered Renderer Callback Count.
Definition at line 754 of file fbrenderer.h.
FBPropertyListRendererCallback RendererCallbacks |
List: Renderer Callbacks attached.
Definition at line 753 of file fbrenderer.h.
FBPropertyInt RendererUpdateId |
Read Only Property: Current Render Update Id. DisplaySet update, material change, texture changes and shader change and other operations will trigger Renderer update.
Definition at line 750 of file fbrenderer.h.
FBPropertyScene Scene |
Read Write Property: Scene that the renderer will use/draw
Definition at line 734 of file fbrenderer.h.
FBPropertyBool SelectionForceSnapPointsDisplay |
Read write Property: Force show all feature points (pivots and etc) on selected models if true, ignore individual model's settings.
Definition at line 748 of file fbrenderer.h.
FBPropertyBool SelectionOverride |
Read write Property: Add transparent color override layer on selected models if true.
Definition at line 745 of file fbrenderer.h.
FBPropertyColor SelectionOverrideColor |
Read write Property: Selection override layer color.
Definition at line 747 of file fbrenderer.h.
FBPropertyDouble SelectionOverrideTransparency |
Read write Property: Selection override layer transparency.
Definition at line 746 of file fbrenderer.h.
FBPropertyBool ShowStats |
Read Write Property: Show the stats about FPS, Evaluation rate ... like when using Shift-F in main viewer.
Definition at line 738 of file fbrenderer.h.
FBPropertyBool UseCameraSwitcher |
Definition at line 727 of file fbrenderer.h.