#ifndef GAME_OBJECT_H #define GAME_OBJECT_H #include "utils/rtti.h" #include "utils/maths.h" #include "utils/str.h" class Model; enum EntityComponents { ENTITY_COMPONENTS_NONE, ENTITY_COMPONENTS_VISUAL, ENTITY_COMPONENTS_PHYSICS, ENTITY_COMPONENTS_COLLIDER, ENTITY_COMPONENTS_TRIGGER, ENTITY_COMPONENTS_GHOST, ENTITY_COMPONENTS_SOUND, ENTITY_COMPONENTS_PARTICLESYSTEM, ENTITY_COMPONENTS_MAX }; class Entity { public: DECLARE_RTTI; public: Entity(); ~Entity(); virtual void LoadModel(const char* filename); public: Str m_name; Vec3 m_position; Vec3 m_rotation; Vec3 m_scale; Model* m_model; }; class LightEntity : public Entity { public: DECLARE_RTTI; public: LightEntity(); ~LightEntity(); }; void TestRTTI(); #endif // !GAME_OBJECT_H