miscellaneous/model_comp_sel_template/ormodel_model_display.h
#ifndef __ORMODEL_MODEL_DISPLAY_H__
#define __ORMODEL_MODEL_DISPLAY_H__
#define ORMODELDISPLAY__CLASSNAME ORModelDisplay
#define ORMODELDISPLAY__CLASSSTR "ORModelDisplayForComponentSelection"
#define ORMODELDISPLAY__DESCSTR "OR - Sample Model Display for Component Selection"
class ORModelDisplay : public FBModel
{
public:
virtual bool FBCreate();
virtual void FBDestroy();
virtual void CreateGeometry();
virtual bool HasCustomDisplay() override { return true; }
virtual void CustomModelDisplay( FBCamera* pCamera,
FBModelShadingMode pShadingMode,
FBModelRenderPass pRenderPass,
float pPickingAreaWidth,
float pPickingAreaHeight)
override;
virtual bool CustomModelPicking( int pNbHits, unsigned int *pSelectBuffer, FBCamera* pCamera,
int pMouseX,int pMouseY,
FBMatrix* pGlobalInverseMatrix,
virtual bool FbxStore(FBFbxObject* pFbxObject,
kFbxObjectStore pStoreWhat);
virtual bool FbxRetrieve(FBFbxObject* pFbxObject,
kFbxObjectStore pStoreWhat);
void SetScale(double pScale) { Scale = pScale; CreateGeometry(); }
private:
FBMesh* mMesh;
int mPickedSubItem;
bool mSubComponentSelected[2];
};
#endif