8 #include <ThirdParty/EASTL-master/include/EASTL/string.h> 9 #include <ThirdParty/glm/glm/detail/type_vec3.hpp> 33 void SetLightName(eastl::string name);
39 eastl::string GetLightName()
const;
58 void SetLightPosition(glm::vec3 position);
64 glm::vec3 GetLightPosition();
71 void SetLightDirection(glm::vec3 direction);
77 glm::vec3 GetLightDirection();
83 void SetLightColor(glm::vec3 color);
89 glm::vec3 GetLightColor();
96 void SetLightRadius(
float radius);
102 float GetLightRadius()
const;
109 void SetLightConeInnerAngle(
float angle);
115 float GetLightConeInnerAngle();
122 void SetLightConeOuterAngle(
float angle);
128 float GetLightConeOuterAngle();
145 explicit LightComponent(eastl::string name,
LightType type, glm::vec3 position, glm::vec3 direction, glm::vec3 color,
146 float radius,
float attunuation,
float coneInnerAngle,
float coneOuterAngle) noexcept;
157 void InitializeComponent()
override;
159 void Update()
override;
161 eastl::string lightName;
168 eastl::weak_ptr<Renderer> renderer;
171 eastl::weak_ptr<VulkanRenderer> renderer;
This is the base class for components. NOTE: only the Entity class is allowed to create this object...
This object is able a holder object for components. NOTE: only the EntitySystem is allowed to create ...
enum ENGINE_API LightType
Enum containing the different types of lights that can be created.