Go to the documentation of this file.00001 #ifndef __NYTRO_ModelEntity_H
00002 #define __NYTRO_ModelEntity_H
00003
00004
00005
00006
00007
00008
00009
00010
00011 #include "system/nyCommon.h"
00012 #include "game/nyGameProvider.h"
00013
00014 namespace Nytro
00015 {
00016 namespace Game
00017 {
00018 class NYTRO_API ModelEntity : public Entity
00019 {
00020 public:
00021
00022 NYTRO_CLASS_NAME( ModelEntity );
00023
00024 ModelEntity();
00025 ~ModelEntity();
00026
00027 virtual Base* clone();
00028 virtual EResult preCache();
00029 void free();
00030 virtual void prepare();
00031 virtual void computeBoundingBox();
00032 virtual bool traceRay( Ray& rRay, SceneNodeHitInfo* pHit, ETraceRayAccuracy aAccuracy = eTraceRayAccuracy_Brute );
00033 virtual void onPropertyValueChanged( voidptr pPropertyData );
00034 virtual bool onEditorDelete();
00035 virtual void onEditorUndoDelete();
00036 virtual void onBeforeUnloadResource( Resource* pRes );
00037 virtual void onAfterReloadResource( Resource* pRes );
00038
00039 NYTRO_CLASS_HAS_PROPERTIES;
00040
00041 Model* m_pModel;
00042 PhysicsBody* m_pRigidBody;
00043 };
00044 };
00045 };
00046
00047 #endif