This reference page is linked to from the following overview topics: MotionBuilder 2013, FBSystem - The System Class, FBCamera - Cameras.
Open Reality renderer interface.
Definition at line 270 of file fbrenderer.h.
#include <fbrenderer.h>

Public Member Functions |
|
| FBRenderer (HIObject pObject) | |
| Constructor. |
|
| 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.
|
|
| bool | RenderBegin (int pX, int pY, int pW, int pH) |
| RenderBegin. |
|
| bool | RenderEnd (HFBView pView=NULL) |
| RenderEnd. |
|
| 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. |
|
| bool | Render (int pLayer=-1) |
| Renders one frame. |
|
| bool | SetViewingOptions (FBViewingOptions &pOptions) |
| Set the viewing options. |
|
| FBViewingOptions * | GetViewingOptions () |
| Obtain the current viewing options. |
|
| bool | FrameCurrentCameraWithModels (bool pAll) |
| Frame the current camera either with all
models or with the currently selected models. |
|
| bool | MouseInput (int pX, int pY, FBInputType pInputType, int pButtonKey, FBInputModifier pModifier, int pLayer=-1) |
| Mouse input. |
|
| bool | MouseInputNormalized (float pX, float pY, FBInputType pInputType, int pButtonKey, FBInputModifier pModifier, int pLayer=-1, int pPaneId=-1) |
| Mouse input. |
|
| bool | Pick (int pX, int pY, FBPickInfosList &pPickInfosList, bool pNeedIntersectPosition=false) |
| Object picking selection. |
|
| bool | PickNormalized (float pX, float pY, FBPickInfosList &pPickInfosList, bool pNeedIntersectPosition=false, int pPaneId=-1) |
| Object picking selection. |
|
| bool | RectPick (int pX1, int pY1, int pX2, int pY2, FBPickInfosList &pPickInfosList) |
| Object rectangle selection. |
|
| bool | RectPickNormalized (float pX1, float pY1, float pX2, float pY2, FBPickInfosList &pPickInfosList, int pPaneId=-1) |
| Object rectangle selection. |
|
| void | KeyboardInput (FBDeviceKeyboardKey pKeyIndex, bool pKeyState, bool pIsTrigger=false) |
| Keyboard input. |
|
| FBModel * | GetDisplayableGeometry (int pIndex) |
| Get the diplayable geometry model. |
|
| FBLight * | GetDisplayableLight (int pIndex) |
| Get the diplayable light. |
|
| const FBModelList & | GetDisplayableGeometryInCameraFrustum (FBModelList *pModelList=NULL, FBCamera *pCamera=NULL) |
| Get a list of displayable geometry inside
given camera's frustum. |
|
| bool | IsModelInsideCameraFrustum (FBModel *pGeometry, FBCamera *pCamera=NULL) |
| To tell if given model is located inside
camera's frustum. |
|
Public Attributes |
|
| FBPropertyCamera | CurrentCamera |
| Read Write Property: Current camera.
|
|
| FBPropertyBool | UseCameraSwitcher |
| Read Write Property:
Activate/Deactivate usage of camera switcher for the first model
view of main viewer. |
|
| FBPropertyManipulatorTransform | ManipulatorTransform |
| Read Only Property: Manipulator
responsible of moving objects |
|
| FBPropertyListManipulator | Manipulators |
| List: of manipulators. |
|
| FBPropertyScene | Scene |
| Read Write Property: Scene that the
renderer will use/draw |
|
| FBPropertyBool | AutoEvaluate |
| Read Write Property: Indicate if a
call to RenderBegin will also cause a re-evaluation of the scene.
|
|
| FBPropertyBool | Background |
| Read Write Property: The renderer.
|
|
| FBPropertyBool | ShowStats |
| Read Write Property: Show the stats
about FPS, Evaluation rate ... |
|
| FBPropertyBool | FrustumCulling |
| Read Write Property: Turn on/off the
early frustum culling optimization. |
|
| FBPropertyBool | DisplayNormals |
| Read Write Property: Display model
normals in main viewer. |
|
| FBPropertyBool | IDBufferPicking |
| Read write Property: Use ID (Color)
Buffer for picking, instead of OpenGl selection buffer picking.
|
|
| 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. |
|
| FBPropertyBool | IDBufferDisplay |
| Read write Property: Render Model's
unique Color ID into color Buffer (used for picking) |
|
| FBPropertyBool | SelectionOverride |
| Read write Property: Add transparent
color override layer on selected models if true. |
|
| FBPropertyDouble | SelectionOverrideTransparency |
| Read write Property: Selection
override layer transparency. |
|
| FBPropertyColor | SelectionOverrideColor |
| Read write Property: Selection
override layer color. |
|
| FBPropertyInt | DisplaySetUpdateId |
| Read Only Property: Current
DisplaySet Update Id. |
|
| FBPropertyInt | RendererUpdateId |
| Read Only Property: Current Render
Update Id. |
|
| FBPropertyInt | DisplayableGeometryCount |
| Read Only Property: Displyable
geometry count. |
|
| FBPropertyInt | DisplayableLightCount |
| Read Only Property: Displyable light
count. |
|
| FBPropertyBool | AdvancedMaterialMode |
| Read write Property: Turn on/off
advanced material setting UI widgets. |
|
| FBRenderer | ( | HIObject | pObject | ) |
| 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 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 | ( | HFBView | 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 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 Render | ( | int | pLayer = -1 |
) |
Renders one frame.
| pLayer | Rendering layer ID(default=-1). |
| bool SetViewingOptions | ( | FBViewingOptions & | pOptions | ) |
Set the viewing options.
| pOptions | See FBViewingOptions for more detail. |
| FBViewingOptions* GetViewingOptions | ( | ) |
Obtain the current viewing options.
| 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. |
| bool MouseInput | ( | int | pX, |
| int | pY, | ||
| FBInputType | pInputType, | ||
| int | pButtonKey, | ||
| FBInputModifier | pModifier, | ||
| 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). |
| pLayer | Rendering layer ID(default=-1). |
| bool MouseInputNormalized | ( | float | pX, |
| float | pY, | ||
| FBInputType | pInputType, | ||
| int | pButtonKey, | ||
| FBInputModifier | pModifier, | ||
| 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). |
| pLayer | Rendering layer ID(default=-1). |
| pPaneId | specify which pane's dimension used for normalization, default (-1) for the whole viewer. |
| bool Pick | ( | int | pX, |
| int | pY, | ||
| FBPickInfosList & | pPickInfosList, | ||
| bool | pNeedIntersectPosition =
false |
||
| ) |
Object picking selection.
| pX | X position. |
| pY | Y position. |
| pPickInfosList | The list of models hit, and the location of the hit. |
| 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 models hit, and the location of the hit. |
| 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 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 models hit, and the location of the hit. |
| 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 models hit, and the location of the hit. |
| pPaneId | specify which pane's dimension used for normalization, default (-1) for the whole viewer. |
| 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. |
| FBModel* GetDisplayableGeometry | ( | int | pIndex | ) |
Get the diplayable geometry model.
Those geometry models which have Show property ON are considered as "displayable".
| pIndex | displayable geometry model index to query. |
| FBLight* GetDisplayableLight | ( | int | pIndex | ) |
Get the diplayable light.
Those light models which have Show property ON are considered as "displayable".
| pIndex | displayable light 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 resuilt. 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. |
To tell if given model is located inside camera's frustum.
This function will return conservative resuilt. 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. |
| FBPropertyCamera CurrentCamera |
Read Write Property: Current camera.
if UseCameraSwitcher is on, this will Get/Set camera switcher's current camera;
Definition at line 451 of file fbrenderer.h.
Read Write Property: Activate/Deactivate usage of camera switcher for the first model view of main viewer.
Definition at line 452 of file fbrenderer.h.
| FBPropertyManipulatorTransform ManipulatorTransform |
Read Only Property: Manipulator responsible of moving objects
Definition at line 455 of file fbrenderer.h.
| FBPropertyScene Scene |
Read Write Property: Scene that the renderer will use/draw
Definition at line 459 of file fbrenderer.h.
Read Write Property: Indicate if a call to RenderBegin will also cause a re-evaluation of the scene.
Definition at line 460 of file fbrenderer.h.
Read Write Property: The renderer.
Definition at line 461 of file fbrenderer.h.
Read Write Property: Show the stats about FPS, Evaluation rate ...
like when using Shift-F in main viewer.
Definition at line 462 of file fbrenderer.h.
Read Write Property: Turn on/off the early frustum culling optimization.
Definition at line 463 of file fbrenderer.h.
Read Write Property: Display model normals in main viewer.
Definition at line 464 of file fbrenderer.h.
Read write Property: Use ID (Color) Buffer for picking, instead of OpenGl selection buffer picking.
Definition at line 465 of file fbrenderer.h.
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 466 of file fbrenderer.h.
Read write Property: Render Model's unique Color ID into color Buffer (used for picking)
Definition at line 467 of file fbrenderer.h.
Read write Property: Add transparent color override layer on selected models if true.
Definition at line 468 of file fbrenderer.h.
Read write Property: Selection override layer transparency.
Definition at line 469 of file fbrenderer.h.
Read write Property: Selection override layer color.
Definition at line 470 of file fbrenderer.h.
Read Only Property: Current DisplaySet Update Id.
Add/Delete models, Show/Hide models will affect DisplaySet.
Definition at line 471 of file fbrenderer.h.
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 472 of file fbrenderer.h.
Read Only Property: Displyable geometry count.
Definition at line 473 of file fbrenderer.h.
Read Only Property: Displyable light count.
Definition at line 474 of file fbrenderer.h.
Read write Property: Turn on/off advanced material setting UI widgets.
Definition at line 475 of file fbrenderer.h.