00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef __LIGHTCOMPONENT_H__
00017 #define __LIGHTCOMPONENT_H__
00018
00019
00020 #include "../../dependencies.h"
00021 #include "SceneComponent.h"
00022
00023
00024
00033 class LightComponent : public SceneComponent
00034 {
00035 public:
00036
00037
00042 LightComponent(Entity *parent, const SColorf &color = SColorf(1.0f, 1.0f, 1.0f),
00043 f32 radius = 100.0f);
00045 ~LightComponent();
00046
00047
00049 ILightSceneNode* getLightSceneNode();
00050
00052 bool getCastShadow() const;
00054 E_LIGHT_TYPE getLightType() const;
00056 f32 getRadius() const;
00057
00066 void setCastShadow(bool shadow = true);
00075 void setLightType(E_LIGHT_TYPE type);
00084 void setRadius(f32 radius);
00085
00086
00089 static bool parseXML(IXMLReader *file, Entity *entity);
00090
00091 private:
00092
00093
00094 ILightSceneNode *mLightSN;
00095 };
00096
00097 #endif