Files
HydraV3/HydraEngine/source/actor/HydraDirectionalLightActor.cpp

43 lines
1.4 KiB
C++

#include "HydraDirectionalLightActor.h"
#include "../engine/HydraEngine.h"
#include "../actor/HydraActorManager.h"
#include "../task/HydraTask.h"
#include "../ecs/HydraECS.h"
#include "../ecs/components/HydraPositionComponent.h"
#include "../ecs/components/HydraMeshComponent.h"
#include "../ecs/components/HydraRenderableComponent.h"
#include "../ecs/components/HydraMaterialComponent.h"
#include "../ecs/components/HydraLightComponent.h"
#include "../ecs/components/HydraDirectionalShadowSourceComponent.h"
#include "../buffer/HydraLightBufferManager.h"
#include "../buffer/HydraLightBuffer.h"
void HydraDirectionalLightActor::InitialiseComponents()
{
HydraLightComponent light_comp = {};
HydraECS *ecs = GetEngine()->ECS();
light_comp.diffuse = glm::vec4(1,1,1,1);
light_comp.intensity = 10000.0f;
light_comp.light_type = static_cast<uint32_t>(HYDRA_LIGHT_TYPE::HYDRA_LIGHT_DIRECTIONAL);
light_comp.entity_id = GetID();
light_comp.shadow_caster =1;
ecs->AddComponent<HydraLightComponent>(GetID(), light_comp);
HydraPositionComponent position_component = {};
ecs->AddComponent<HydraPositionComponent>(GetID(), position_component);
HydraDirectionalShadowSourceComponent shadow_component = {};
ecs->AddComponent<HydraDirectionalShadowSourceComponent>(GetID(), shadow_component);
}
void HydraDirectionalLightActor::Destroy()
{
}